Jac*_*ova 9 python google-app-engine pycrypto
我有一个使用Crypto.Hash但导入失败但错误的脚本:
ImportError: No module named Crypto.Hash
Run Code Online (Sandbox Code Playgroud)
在我的sys.path打印sys.path列表中,有这个条目(以及其他):
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/pycrypto-2.6
Run Code Online (Sandbox Code Playgroud)
如果我打开上面的路径,则没有pycrypto-2.6目录.
我怎样才能加载pycrypto 2.6?
如果我Crypto.Hash从命令行导入运行python它的工作原理
我必须指出app Engine支持pycrypto,它包含在此列表中.
此外,我已将模块包含在我的app.yaml文件中:
libraries:
- name: webapp2
version: "2.5.2"
- name: pycrypto
version: latest
- name: lxml
version: "2.3"
- name: ssl
version: latest
Run Code Online (Sandbox Code Playgroud)
如果我在生产中发送代码在appengine它工作,问题是在我的系统我应该下载pycrypto的编译版本并把它放在某处appengine可以使用它
Jac*_*ova 10
这似乎是在MAC OSX上发生的问题,我设法做的就是:
首先,您需要知道运行pycripto的位置
sudo pip install pycrypto
Run Code Online (Sandbox Code Playgroud)
要么安装库,要么获得安装库的路径
要求已经满足(使用--upgrade升级):pycrypto in ...
那么,考虑到这是一个在appengine生产中不会发生的问题,我这样做了:
try:
from Crypto.Hash import SHA
except ImportError:
import sys
sys.path.append('/[mypath]/anaconda/lib/python2.7/site-packages')
from Crypto.Hash import SHA # requires PyCrypto
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10745 次 |
| 最近记录: |