以下是我要抓的网站:https://s2.coinmarketcap.com/generated/search/quick_search.json
我不知道如何从URL中抓取JSON文件并打印出内容。 我尝试过阅读,但我得到的最多的是这段代码,当我运行它时它不起作用:
import requests
import json
url = "https://s2.coinmarketcap.com/generated/search/quick_search.json"
r = requests.get(url)
cont = json.loads(r.content)
print(cont)
答案 0 :(得分:1)
几乎正确。应该是r.json()。请求有一个内置的json解析器。
import requests
import json
url = "https://s2.coinmarketcap.com/generated/search/quick_search.json"
r = requests.get(url)
cont = r.json()
print(cont)
另外,如果你想要打印特定内容,只需像其他任何json obj那样迭代它
for k in cont:
if k['name'] == 'VapersCoin':
do_something()
答案 1 :(得分:1)
看起来你遇到了地狱般的地狱。有时使用Python3,您必须执行encode()或decode()以将字节字符串转换为unicode字符串。
在示例代码中,如果您将第6行更改为
cont = json.loads(r.content.decode())
它会运行。 @PhilippeT的解决方案也没问题,因为json()函数似乎会自动返回一个unicode字符串。