当前位置: 首页 > 工具软件 > PythonMagick > 使用案例 >

【Python】图片处理之“PythonMagick”库简易安装笔记

赵雪峰
2023-12-01

更新一(2020-07-31)

看到个人这篇早期的古董博文有这么多访问量并且偶尔还会有读者遇到问题时的留言,这里做一个更新,重新阐述一下对本文的理解。

首先,极力不推荐在你的应用中使用“PythonMagick”包,个人认为的best practice是于自己本地的操作系统安装“ImageMagick”,然后对图片处理的所有需求以Shell脚本的方式开发,这是非常友好的跨平台兼容方式。在我的历史工作中碰到的各种对图片处理的需求,发现最终都可以以Shell脚本调用“ImageMagick”命令集实现。原因如下

  • “PythonMagick”是“ImageMagick”的面向对象Python接口,即是对C实现的“ImageMagick”的Python语言封装,具体参考官网说明https://imagemagick.org/script/develop.php#python
  • “ImageMagick”在各种操作系统平台的安装都非常简单,比如rpm包系列系统可以直接yum超级命令安装;deb包系列系统可以直接apt超级命令安装。
  • 安装和部署一套“PythonMagick”环境可能比直接使用“ImageMagick”困难得多。印象中年月日第一次准备使用“PythonMagick”的环境是公司的一台CentOS 6系统,编译安装时各种依赖缺失error满屏飞,简直要抓狂。安装“PythonMagick”时既需要区分各种操作系统平台,又需要解决复杂的包依赖,然后还要考虑操作系统版本和你的Python版本,如果能在网上找到跟你环境完全匹配的现成的二进制包那当然很理想了,但是官方只提供源码包,参考https://imagemagick.org/download/python/,需要自己手动编译。

如果你看懂了以上内容并认同我的观点,那么可以看到这里就结束了。以下部分是“渣渣”内容。

其次,如果你的开发需求一定需要使用Python那我同样建议你安装和使用“ImageMagick”,然后用Python调用操作系统里的“ImageMagick”命令行工具集来开发应用。

最后,如果你实在是不听劝要安装“PythonMagick”,我看到原文里面有个下载链接挂掉了,而且蝈鸡橘柿越来越严峻,以后可能会有更多不是国内的网站无法访问,我在下面多贴一些提供“PythonMagick”二进制包的网站,希望总有一款能帮到你。

https://rpmfind.net/linux/rpm2html/search.php?query=pythonmagick

https://pkgs.org/search/?q=pythonmagick

http://free.nchc.org.tw/mageia/distrib/5.1/SRPMS/core/release/

http://ftp.uni-erlangen.de/mirrors/Mageia/distrib/cauldron/SRPMS/core/release/?C=N;O=D

以下是原文


“ImageMagick”可以说是开源的代码/命令行版PS,它支持包括创建、编辑、构图再到格式转换的图片处理功能。更重要的是,它几乎完整支持大部分编程语言,其中Python的接口库就是“PythonMagick”了。具体参考http://www.imagemagick.org/script/index.php。以下整理了“PythonMagick”库在各操作环境的简易安装方法。

 

①RPM式系统

wget ftp://ftp.icm.edu.pl/vol/rzm5/linux-mageia/distrib/cauldron/x86_64/media/core/release/pythonmagick-0.9.12-6.mga6.x86_64.rpm

rpm -ivh pythonmagick-0.9.12-6.mga6.x86_64.rpm

#安装可能会报缺少依赖软件包的error按照列表信息一一安装即可

 

②DEB式系统

apt install python-pythonmagick

 

③Windows

http://www.lfd.uci.edu/~gohlke/pythonlibs/#pythonmagick下载对应OS版本和Python版本的“PythonMagick”whl文件,然后CMD

里面以“pip”+路径+whl完整文件名的方法安装。例如

pip install C:\Users\Student\Desktop\PythonMagick-0.9.12-cp35-none-win_amd64.whl

 


 类似资料: