Python|解决:Windows 下 PyCrypto 出错的正确姿势

by 穿卡芦苇 #Python手册

如何简单又可靠的解决 Windows 下 PyCrypto 报错。

问题描述

直接 pip install pycrypto 安装该第三方库时, 或使用 PyInstaller 的加密参数时, 都可能会遇到 pycrypto 报错,通常是 “cl.exe failed with exit status 2”。

网上很多人遇到这个问题,也有很多文章讨论和给出解决办法。在我两次遇到这个头疼的问题之后,

解决方法

找到了一个最简单又真正可靠的解决办法——换成 PyCryptodome 这个库。 原来的 Python 脚本都不用改,即可正常使用。

安装 PyCryptodome 之前记得先卸载 PyCrypto。

pip uninstall pycrypto pip install pycryptodome

解释说明

PyCrypto 已经停止维护更新很久了,最近的更新是在 2014年。最新的正式版本是 2.6.1。 PyCryptodome 是 PyCrypto 的一个分支,所以在替换掉 PyCrypto 库之后,原来按照 PyCrypto API 写的代码仍然可以正常运行。 而 PyCryptodome 仍然(2020年)在持续的维护,并有多项增强功能。 最重要的是(也是相较 PyCrypto 的优点)—— PyCryptodome 是一个独立的(低层加密基元的)Python 包。 在 Windows 下使用时,不用再依赖(要安装)什么 VC++ 了!

更多信息可以前往官方文档: https://www.pycryptodome.org/en/latest/index.html


(正文结束。芝士就是力量!