当前位置:   article > 正文

pyton爬虫之request的POST方法_payton请求方法

payton请求方法
'''对化妆品生产许可信息管理系统相关数据爬取
动态加载数据
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)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/939782
推荐阅读
相关标签
  

闽ICP备14008679号