无法导入is_secure_transport

fhl*_*lkm 7 python oauth pycharm

我正在使用python的TwitterAPI(ubuntu + pycharm).

我通过"pip install networkx TwitterAPI"安装TwitterAPI.我只是导入TwitterAPI如下:

from TwitterAPI import TwitterAPI
Run Code Online (Sandbox Code Playgroud)

当我执行python文件时,有一个错误如下:

  File "/home/hanlu/PycharmProjects/cs579/a1.py", line 29, in <module>
    from TwitterAPI import TwitterAPI
  File "/home/hanlu/.local/lib/python2.7/site-packages/TwitterAPI/TwitterAPI.py", line 7, in <module>
    from requests_oauthlib import OAuth1
  File "/home/hanlu/.local/lib/python2.7/site-packages/requests_oauthlib/__init__.py", line 3, in <module>
    from .oauth2_auth import OAuth2
  File "/home/hanlu/.local/lib/python2.7/site-packages/requests_oauthlib/oauth2_auth.py", line 3, in <module>
    from oauthlib.oauth2 import is_secure_transport
ImportError: cannot import name is_secure_transport
Run Code Online (Sandbox Code Playgroud)

我的python和pycharm如下:

>> python
python 2.7.7
>>import oauthlib
>>oauthlib__version__
  '0.6.3'
Run Code Online (Sandbox Code Playgroud)

我还是弄清楚,我的环境有什么问题?

小智 7

使用oauthlib-0.7.1来解决问题.

  sudo pip install oauthlib --upgrade
Run Code Online (Sandbox Code Playgroud)


小智 5

删除旧的oauthlib包

apt-get remove python-oauthlib
Run Code Online (Sandbox Code Playgroud)

并安装最后的oauthlib版本0.7.1

pip install oauthlib -U
Run Code Online (Sandbox Code Playgroud)