思路
1 先调用模块
2 定义一个函数
2.1 获取网址(点击评论 找到JSON的文件(分析评论preview)获取Request URL后面的地址)
2.2 添加用户的请求头
2.3 使用get方法发送请求
2.4 转化格式 并返回(return)格式(.text)
3. 应为要以键值对的格式保存 所以定义一个函数删除并且返回 删除(replace)
4. 类型转换并且返回
4.1 return json.loads(传入参数的名称)
5. 保存获取到的JSON数据
5.1 open 一定要注意格式utf-8
6. 传入参数的函数
6.1 data = 2
6.2 s = 3(data)
6.3 5(s)
7. 运行调用
7.1 if __name__ ==‘__main__’:
6()
例题代码
import requests import json def name_1(): # 获取网址 点击评论 找到有JSON的文件(分析评论 preview)获取Request URL后面的地址 url = 'https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100007080973&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1' # 添加用户请求头 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'} # 使用get方法发送请求 resp = requests.get(url,headers=headers) # 转换格式 并返回(return) return resp.text def name_2(data_1): # 因为是键值对的形式 所以要删除一些东西 并且返回 return data_1.replace('fetchJSON_comment98(','').replace(');','') #如果为str类型 def name_3(data_2): # 类型转换 并且返回 return json.loads(data_2) def name_4(obj): # 保存获取到的JSON数据 json.dump(obj,open('京东销量最好的固态数据.txt','w',encoding='utf-8'),ensure_ascii=False) def name(): data = name_1() s = name_2(data) print(type(name_3(s))) print(s) name_4(s) if __name__ == '__main__': name()