js 破解,爬取淘鲜达,盒马商品sign参数破解

通过抓包获取详情页得到商品网址

https://market.m.taobao.com/app/locallife/app-taoxianda-detail/detail?spm=a21zu.8430341.sidebar1.1_1&itemId=593554056745
电脑端打开网址后,打开F12进行抓包,查找内容,很快,就能在js的请求中发现商品详情的内容
js 破解,爬取淘鲜达,盒马商品sign参数破解_第1张图片

接下来分析请求参数

js 破解,爬取淘鲜达,盒马商品sign参数破解_第2张图片
可以发现,其中困难的参数就只有sign。其中data中的数据,itemId和shopIds可以猜想到是商品ID和商店ID,poi通过测试是地理位置,其实可以为空,接下来就破解sign参数

分析sign

通过请求的lnitiator可以在index.min.js中找到sign的信息
js 破解,爬取淘鲜达,盒马商品sign参数破解_第3张图片
js 破解,爬取淘鲜达,盒马商品sign参数破解_第4张图片
可以看到sign是一个函数,函数传递的参数为i.token + “&” + s + “&” + a + “&” + n.data的字符串。接下来断点调试
js 破解,爬取淘鲜达,盒马商品sign参数破解_第5张图片
其中查看i可以发现token=
先不管,继续可以发现是s = t也就是时间戳 a=固定值
n.data
继续调试可以发现n.data,其实就是传递的data值,

去请求页面搜索i.token可以发现
js 破解,爬取淘鲜达,盒马商品sign参数破解_第6张图片

token=请求cookie中的_m_h5_tk参数

也就是sign=一个函数(i.token + “&” + s + “&” + a + “&” + n.data),这个函数其实就是md5
也就是sign=md5(i.token + “&” + s + “&” + a + “&” + n.data)

接下来撸代码

js 破解,爬取淘鲜达,盒马商品sign参数破解_第7张图片
第一次请求网页会失败,网址会返回cookie,也就是token值,将token值获取下来,构造sign参数。成功

js 破解,爬取淘鲜达,盒马商品sign参数破解_第8张图片

你可能感兴趣的:(分析js的爬虫)