由于查了很多资料,发现丁香园越来越dog了,前端找不到数据了(白嫖失败
我把目光放到了腾讯爸爸的身上 当然也是参照了一个视频下面的学霸博主的文章,
实时更新:新冠肺炎疫情最新动态 (qq.com)
快乐的F12 然后F5 用巧妙的搜索 在表头找到url!!
然后用浏览器打开这个url,芜湖 就是国内疫情数据的快乐呀~https://api.inews.qq.com/newsqa/v1/query/inner/publish/modules/list?modules=statisGradeCityDetail,diseaseh5Shelf
然后我们创建一个py的file
1、我们需要找到数据源(get)
2、创建连接 requests(方法是在cmd不用打开python直接输入 pip install requests)
3、获取数据 我们需要打印这个url中的json 就用
#2、获取数据 #:响应体:状态码 发送请求成功 # print(response.text)#打印网址中的text # 数据解析:xpath css re bs4(现在不用了) # json字典类型 {K1:V1,K2:V2,K3:V3} # 把网站中的一些部分删掉 来让数据分析简单一点 # print(response.json()) # json_data = response.json()["data"] #是json类型的数据 #打印data的json数据 # print(json_data)
可以直接打印出text里的data的json类型的数据
3、解析数据
# 3、解析数据 # 转变为字典类型 import json # json.loads(json_data) json_data= json.dumps(response.json()['data']) pprint.pprint(json_data)
但是我疯狂报错- - 就是说
the JSON object must be str, bytes or bytearray, not dict
查了资料后发现是关于loads和dumps的这个大原因!!(自己查资料哈)
原来写的是
json_data= json.loads(response.json()['data'])
改进之后
很好还是错的 我就是不清楚那个loads
(1条消息) json.loads()和response.json()的区别_touryung的博客-CSDN博客_json.loads(response.text) 然后终于找到了答案!!!!!
就是本来读取出来的就是json 不需要从dict转过来了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)