Import error pycrypto google app engine

2019-07-28 09:51发布

I'm running a local server in Python with GAE, and importing a 3rd party library, which in turn imports pycrypto. I installed it locally using pip and included it in my app.yaml file, but when I run the server, I get the following error:

ImportError: cannot import name OSRNG

Here's what my app.yaml looks like:

runtime: python27
threadsafe: 1

handlers:
- url: /.*
  script: main.app

libraries:
- name: pycrypto
  version: "latest"

I'm running homebrew python 2.7.

2条回答
不美不萌又怎样
2楼-- · 2019-07-28 10:17

Official documentation seems to suggest that api_version in app.yaml is required.

查看更多
家丑人穷心不美
3楼-- · 2019-07-28 10:22

The pycrypto library is built-in in the runtime environment, however you need to install it locally in order to run the local development server, as you did. It might just be a problem with versions, as the supported pycrypto versions are 2.3, 2.6 and 2.6.1.

Try installing the proper version with pip install pycrypto==2.6.1.

Then, change your app.yaml file to the appropriate version:

libraries:
- name: pycrypto
  version: "2.6.1"
查看更多
登录 后发表回答