python - 无法在 Google App Engine 生产中使用 Pycrypto

标签 python google-app-engine pycrypto

我在 Python 2.7 下的 GAE 开发环境中成功使用了 Pycrypto 与 2.6。但是,将其部署到 Google 生产环境时,我在日志中看到以下错误:

from Crypto.Cipher import _AES ImportError: cannot import name _AES

我的应用程序.Yaml:

application: appname
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: .*
  script: main.app
  secure: always

libraries:
- name: webapp2
  version: "2.5.2"
- name: pycrypto
  version: "2.6"

有问题的 Python 调用:

from Crypto.Cipher import AES

检查 Google 支持文档,他们确实将 Pycrypto 2.6 列为受支持。我还尝试输入“最新”版本并收到相同的错误。再次在我的本地计算机上开发 GAE 时,它运行得很好。

最佳答案

问题已解决。我的 Windows 安装中有一个名为“Crypto”的目录,位于我的 App Engine 项目目录中。当应用程序加载器加载文件时,它还包含此目录,该目录与 Google 在生产中加载的目录相冲突。从本地项目目录中删除此目录解决了下次推送到 Google 时的问题。

关于python - 无法在 Google App Engine 生产中使用 Pycrypto,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24252835/

相关文章:

python - 如何在 GAE(python)中解码 encodeURIComponent?

python - MT5 Python API 的平仓无效

python - 如何在 Maya 网格上找到选定顶点的对称对

python - 客户端,Google Flex App Engine和Cloud SQL之间的高延迟

google-app-engine - Go中的image/jpeg库是否支持JPEG渐进格式

php - key 长度问题: AES encryption on phpseclib and decryption on PyCrypto

python - 编译 - OsError : Cannot load native module 'Cryptodome.Cipher._raw_ecb'

javascript - 如何使用 Python AES 解密以 Javascript 加密的数据?

python - 从 Pandas DataFrame 高效返回数字列名称

python - "bumpy-function"的 Matplotlib 3D-Surface 不起作用