python请求导入错误

当我尝试导入请求模块时:

import requests
r = requests.get('https://github.com/timeline.json')

我收到此错误:

Traceback (most recent call last):
  File "C:\Users\gek0n\Desktop\requests.py", line 1, in <module>
    import requests
  File "C:\Users\gek0n\Desktop\requests.py", line 3, in <module>
    r = requests.get('https://github.com/timeline.json')
AttributeError: 'module' object has no attribute 'get'

然后我检查了堆栈溢出并发现了这一点:

print dir(requests)

而不是这样:

['ConnectionError', 'HTTPError', 'Request', 'RequestException', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__build__', '__builtins__', '__copyright__', '__doc__', '__file__', '__license__', '__name__', '__package__', '__path__', '__title__', '__version__', '_oauth', 'api', 'auth', 'certs', 'codes', 'compat', 'cookies', 'defaults', 'delete', 'exceptions', 'get', 'head', 'hooks', 'models', 'options', 'packages', 'patch', 'post', 'put', 'request', 'safe_mode', 'session', 'sessions', 'status_codes', 'structures', 'utils']

我有这个:

['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'requests']
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'requests']

是!有两个字符串,只有六个元素.这是为什么?有什么问题,我该如何解决?

解决方法:

您已将脚本命名为request.py,并且正在导入脚本而不是库.

因为导入请求行是模块中的第一行,所以它也是模块再次导入自身时在模块中找到的唯一对象(除了标准双下划线值),这就是为什么看到“请求”列于dir()输出.

重命名脚本.

上一篇:Python类方法抛出AttributeError


下一篇:成功解决AttributeError: ‘DataFrame‘ object has no attribute ‘ix‘