无法使用Raspberry Pi

时间:2015-05-01 15:17:06

标签: python ssl virtualenv

我有一个奇怪的问题,我希望得到帮助。我的Python代码使用HTTPS上的Requests模块通过Internet获取JSON信息。尽管我必须按照this link中的讨论安装OpenSSL / PyOpenSSL以删除不安全的平台通知,但在非virtenv Python实例中一切运行顺利。

现在,作为使用Flask的一部分,我创建了一个虚拟环境。不幸的是,SSL错误又回来了,上面链接中列出的每个方法都不起作用。以下是错误消息:

  

/home/pi/.virtualenvs/flasktest1/local/lib/python2.7/site-packages/requests/packages/urllib3/util/ssl_.py:90:   InsecurePlatformWarning:真正的SSLContext对象不可用。   这可以防止urllib3适当地配置SSL并可能导致   某些SSL连接失败。有关更多信息,请参阅   https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning。   InsecurePlatformWarning

最明显的解决方案是在virtenv中安装OpenSSL / PyOpenSSL,但不幸的是安装失败并出现下面列出的错误。

  

命令" /home/pi/.virtualenvs/flasktest1/bin/python -c" import   setuptools的,   tokenize; file =' /tmp/pip-build-6D2PfU/cffi/setup.py' ;; exec(compile(getattr(tokenize,' open',打开)(文件)。read()。replace(' \ r \ n',' \ n'),文件 ,   ' EXEC'))"安装--record /tmp/pip-o43kpB-record/install-record.txt   --single-version-external-managed --compile --install-headers /home/pi/.virtualenvs/flasktest1/include/site/python2.7/cffi"失败   / tmp / pip-build-6D2PfU / cffi

中的错误代码为1

我现在不知道如何解决这个问题。需要说明的是,此应用程序是在防火墙后开发的,仅用于实验目的,不会公开访问。但是,这个错误导致了困难,我只想让它停止。

提前谢谢!

1 个答案:

答案 0 :(得分:4)

对我来说(OS X 10.10),pip install pyopenssl ndg-httpsclient pyasn1解决了这个问题。