【爬⾍成长之路】(七)【⼤众点评】PC⼩程序+requests爬
取数据
本系列⽂章共⼗篇:
【爬⾍成长之路】(⼀)爬⾍系列⽂章导读
【爬⾍成长之路】(⼆)各篇需要⽤到的库和⼯具
【爬⾍成长之路】(三)【⼤众点评】selenium爬⾍编程入门教程网站
【爬⾍成长之路】(四)【⼤众点评】selenium登录+requests爬取数据
【爬⾍成长之路】(五)【⼤众点评】浏览器扫码登录+油猴直接爬取数据
【爬⾍成长之路】(六)【⼤众点评】mitmproxy中间⼈代理爬⾍
【爬⾍成长之路】(七)【⼤众点评】PC⼩程序+requests爬取数据
【爬⾍成长之路】(⼋)【⼤众点评】安卓APP爬⾍
声明:本⽂相⽐于前⾯的⽂章来说,算是进阶爬⾍了,由于涉及到较多的加解密算法,故只提供相关的加解密算法,不提供加解密算法的秘钥。读者在学习过程中,主要还是以学习爬⾍思想为主
本⽂需要⽤到的⼯具:Fiddler、JSON解析⼯具、⼩程序逆向⼯具玩具模板织梦猫
本⽂需要⽤到的库:requests、json、base64、Crypto、xxtea、zlib、
爬取⽬标数据:
1. 指定城市的店铺列表及其评分数据
2. 指定店铺下的⽤户评论数据
⼀、需求分析
这⼀篇总共需要爬取两个页⾯的数据,分别是:
为什么现在都用cmake
1. 某城市的店铺列表页⾯
2. 某店铺的评论列表页⾯
⼆、获取⽬标页⾯的URL
由于这⾥的⽬标对象是⼩程序,获取接⼝就必须借助第三⽅⼯具了,⽂中使⽤的是Fiddler,当然你也可以⽤你顺⼿的⼯具,接下来简单讲下如何操作:
1. 打开Fiddler,进⼊localhost://[port]获取Fiddler的证书,安装证书
2. 配置好Fiddler,使其可以抓HTTPS的包
3. 打开电脑客户端点评的⼩程序,进⼊到对应的页⾯,如果配置没有问题就能在Fiddler中看到数据包了
4. 如果Fiddler⾥全是Tunnel to 443,请重新安装证书,并重启Fiddler,如果还有别的问题,请⾃⾏百度
5. 开启代理后,⼩程序的很容易出现获取不到数据的状况,这个多刷新⼏次,到处点⼏下就好了,多试⼏次就能到接
9openid Hv**********提供给⼩程序的唯⼀ID
10openidPlt oPp***********服务端⽣成11platform windows平台
12platformversio
n
1064平台版本win10,64位
13sdkversion  2.13.2SDK版本14token12a**********服务端⽣成15wechatversion7.0.9版本
爬虫软件 app16Referer servicewechat/wx734c1ad7b3562129/231/page-
frame.html
来源
17Accept-
Encoding
gzip,deflate,br接受的编码格式
silverlight下载文件异常
Header参数值说明
URL 参数:
URL参数值说明
1tagType1评论类型,美⾷评论or其他类型评论
2tag全部获取全部评论,也可进⾏筛选
3offset10页偏移,从0开始,以10为步进
4shopUuid H58vsmtj2*****店铺ID,店铺列表获取
5cx WX__ver1.2.0_CCCC_QZ+jty4u********XU=本地⽣成
6mtsiRefer
rer
/packages/ugc/pages/reviewlist/reviewlist?
msource=wxappmain&shopUuid=H58vsmtj2*****&tag=全部&tagType=1
类似于refer
7_token eJx*********本地⽣成8optimus_uuid176******本地⽣成
9optimus_p
latform
13平台类型
1 0optimus_p
artner
203未知,可固定
1 1optimus_ri
sk_level
71风险等级,可固定
1 2optimus_c
ode
10可固定
1
3
pullDown false可固定1
4reLoad false可固定
URL参数值说明
点评⼩程序评论列表接⼝及参数分析
店铺列表接⼝相关参数:
序号名称参数个数重点参数是否加密是否固定1⽅法类型GET---
2URL参数14wxuuid,sessionId,optimus_uuid,_token是否3Header参数17openid,openidPlt,token是否4response-reviewList否否Header参数(不变,同评论列表接⼝):
URL参数:
名称值说明
1cityId4城市ID
2wxuuid Hvc***同openid 3page2页码
linux操作系统版本号怎么看4lat**纬度
5lng**经度
6sessionId e7ef***会话ID
/pages/index/index?