AttributeError:'module'对象没有属性'get'

时间:2014-08-03 00:38:39

标签: python json

我有以下代码加载JSON:

import json
import requests
r = requests.get('http://api.reddit.com/controversial?limit=5')
if r.status_code = 200:
    reddit_data = json.loads(r.content)
    print reddit_data['data']['children'][1]['data']
else:
    print "Errror."

我收到了这条消息。

arsh@arsh:~$ python q.py
Traceback (most recent call last):
  File "q.py", line 1, in <module>
    import json
  File "/home/arsh/json.py", line 5, in <module>
    reddit_data = json.loads(r.content)
AttributeError: 'module' object has no attribute 'loads'

1 个答案:

答案 0 :(得分:2)

您的主目录中有一个名为json.py不同文件:

File "/home/arsh/json.py", line 5, in <module>

这个文件挡住了,你没有导入标准库版本。将其重命名为其他内容或将其删除。您还必须删除json.pyc文件。

请注意,requests响应对象已经可以为您处理的JSON响应

import requests

r = requests.get('http://api.reddit.com/controversial?limit=5')
r.raise_for_status()
reddit_data = r.json()
print reddit_data['data']['children'][1]['data']

Response.json() method处理解码JSON,包括检测解码时使用的正确字符集。