赞
踩
'''对化妆品生产许可信息管理系统相关数据爬取 动态加载数据 1.主页url并没有数据,而是通过HXR加载的数据,获取对应的post请求url,拿到爬取数据的所有的id 2.获取详情页面的post请求url 3数据获取 ''' import requests import json if __name__ == '__main__': #UA伪装 headers ={ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36' } #批量获取企业的id url_post = 'http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsList' #首页的url url_xq = 'http://scxk.nmpa.gov.cn:81/xk/itownet/portalAction.do?method=getXkzsById' #详情页的url json_ids = [] #获取的所有的id all_data_list = [] # 存储所有的数据信息 for page in range(1,5): #获取前5页的数据 5*15 page = str(page) #封装参数 data = { 'on': 'true', 'page': page, 'pageSize': '15', 'productName': '', 'conditionType': '1', 'applyname': '', 'applysn': '' } #发起请求 response_ids = requests.post(url=url_post,headers=headers,data=data).json() for dic in response_ids['list']: json_ids.append(dic['ID']) # print(json_ids) #根据所有的id获取企业详情数据 for id in json_ids: data = { 'id':id } data_json = requests.post(url=url_xq,headers=headers,data=data).json() # print(data_json) all_data_list.append(data_json) #持久化存储 fp = open('./alldatajson.json','w',encoding='utf-8') json.dump(all_data_list,fp=fp,ensure_ascii=False)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。