使用Python如何实现抓包并解析json爬虫

  介绍

本篇文章给大家分享的是有关使用Python如何实现抓包并解析json爬虫,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强> Python抓包并解析json爬虫

在使用Python爬虫的时候,通过抓包url,打开url可能会遇见以下类似网址,打开后会出现类似这样的界面,无法继续进行爬虫:

使用Python如何实现抓包并解析json爬虫

<强>例如:

需要爬取网页中第二页的数据时,点击F12& # 10145;网络(网络),# 10145;XHR,最好点击清除键,如下图:

使用Python如何实现抓包并解析json爬虫

通过点击”第二页”,会出现一个帖子请求(有时会是得到请求),点击后请求的url,(这里网址以帖子请求为例),

如图:

使用Python如何实现抓包并解析json爬虫

然后复制参数代码

代码展示:

进口要求
  进口json
  
  url=& # 39; https://m.ctrip.com/restapi/soa2/13444/json/getCommentCollapseList& # 63; _fxpcqlniredt=09031130211378497389 & # 39;
  
  头={
  & # 39;权威# 39;:& # 39;m.ctrip.com& # 39;
  & # 39;方法# 39;:& # 39;文章# 39;
  & # 39;path & # 39;: & # 39;/restapi/soa2/13444/json/getCommentCollapseList& # 63; _fxpcqlniredt=09031130211378497389 & # 39;
  & # 39;计划# 39;:& # 39;https # 39;
  & # 39;接受# 39;:& # 39;*/* & # 39;
  & # 39;accept-encoding& # 39;: & # 39; gzip、缩小、br # 39;
  & # 39;接收语言# 39;:& # 39;应用,zh型;q=0.9 & # 39;
  & # 39;cache - control # 39;: & # 39; no - cache # 39;
  & # 39;内容长度# 39;:& # 39;278 & # 39;
  & # 39;内容类型# 39;:& # 39;应用程序/json # 39;
  & # 39;饼干# 39;:& # 39;__utma=1.1986366783.1601607319.1601607319.1601607319.1;__utmz=1.1601607319.1.1.utmcsr=(直接)| utmccn=(直接)| utmcmd=(没有);_RSG=blqD1d4mGX0BA_amPD3t29;_RDG=286710759 c35f221c000cbec6169743cac;_RGUID=0850 c049 c137 - 4 be5 - 90 - b7 - 0 - cd67093f28b;MKT_CKID=1601607321903. rzptk.lbzh;_ga=GA1.2.1986366783.1601607319;nfes_isSupportWebP=1;appFloatCnt=8;_gcl_dc=GCL.1601638857.CKzg58XqlewCFQITvAodioIJWw;会话=SmartLinkCode=U155952& SmartLinkKeyWord=, SmartLinkQuary=, SmartLinkHost=, SmartLinkLanguage=zh型;联盟=OUID=index& AllianceID=4897, SID=155952, SourceID=, createtime=1602506741,到期=1603111540922;MKT_OrderClick=ASID=4897155952,援助=4897,CSID=155952, OUID=index& CT=1602506740926,旋度3=https % % 2 f % 2 fwww.ctrip.com % 2 f % 3 fsid % 3 d155952 % 26 allianceid % 3 d4897 % 26 OUID % 3 dindex& VAL={“pc_vid":“1601607319353.3 cid9z"};MKT_Pagesource=个人电脑;_RF1=218.58.59.72;_bfa=1.1601607319353.3cid9z.1.1602506738089.1602680023977.4.25;_bfi=p1 % 3 d290510 % 26 p2 % 3 d290510 % 26 v1 % 3 d25 % 26 v2 % 3 d24;MKT_CKID_LMT=1602680029515;__zpspc=9.5.1602680029.1602680029.1 % 232% 7 cwww.baidu.com % 7 c % 7 c % 7 c % 25 25英航% e6 % 2590% 25 25 a8 % 258 b % e7 % 7 c % 23;_gid=GA1.2.1363667416.1602680030;_jzqco=% 7 c % 7 c % 7 c % 7 c1602680029668 % 7 c1.672451398.1601607321899.1602506755440.1602680029526.1602506755440.1602680029526.undefined.0.0.16.16& # 39;,
  & # 39;cookieorigin& # 39;: & # 39; https://you.ctrip.com& # 39;
  & # 39;起源# 39;:& # 39;https://you.ctrip.com& # 39;
  & # 39;编译指示# 39;:& # 39;no - cache # 39;
  & # 39;推荐人# 39;:& # 39;https://you.ctrip.com/& # 39;
  & # 39;sec-fetch-dest& # 39;: & # 39;空# 39;
  & # 39;sec-fetch-mode& # 39;: & # 39;歌珥# 39;
  & # 39;sec-fetch-site& # 39;: & # 39; same-site& # 39;
  & # 39;用户代理# 39;:& # 39;Mozilla/5.0 (Windows NT 10.0;Win64;x64) AppleWebKit/537.36 (KHTML,像壁虎)Chrome/85.0.4183.121 Safari 537.36 & # 39;
  }
  
  dat={
  “arg": {
  & # 39;channelType& # 39;: 2
  & # 39;collapseType& # 39;: 0,
  & # 39;commentTagId& # 39;: 0,
  & # 39;pageIndex& # 39;: 1,
  & # 39;页大小# 39;:10,
  & # 39;poiId& # 39;: 75648,
  & # 39;sortType& # 39;: 3,
  & # 39;sourceType& # 39;: 1,
  & # 39;starType& # 39;: 0
  },
  “head": {
  & # 39;auth # 39;:““,
  & # 39;cid # 39;:“09031117213661657011”,
  & # 39;ctok& # 39;:““,
  & # 39;cver& # 39;:“1.0“,
  & # 39;扩展# 39;:[],
  & # 39;朗# 39;:“01”,
  & # 39;sid # 39;:“8888”;
  & # 39;syscode& # 39;:“09年“,
  & # 39;xsid& # 39;:““
  }
  }
  
  r=请求。帖子(url, data=https://www.yisu.com/zixun/json.dumps (dat),标题=头)
  s=r.json ()
  印刷(s) 

使用Python如何实现抓包并解析json爬虫