逆向分析美团API参数
近年来由于python的兴起,爬虫等业务也随即火热起来,那么外卖电商等平台首当其冲是要被爬取的对象.于是一场爬虫与反爬虫的攻坚战就此展开.本文逆向美团外卖平台获取商品信息的加密参数来应对美团采取的反爬虫措施.
分析请求接口
老规矩,我们获取一次商品信息,然后看一看请求接口都包含了哪些东西
可以看见这个请求地址后面包含了很多参数,带着一样的参数重新发送请求会发现请求失败,所以这里后面的加密参数应该就是验证参数了.由于这样可读性过差我们在chrome上往下拉
这样可读性就高多了,我们可以通过参数的命名来分析每个参数具体的作用,上面的参数就不一一分析了,毕竟我们是带着研究的心态来分析美团的接口,而不是用于爬虫等其他用途.
重复刷新页面可以发现,唯一变的值只有_token
这个参数,说明它用于验证请求等操作.于是我们打开chrome的调试窗口 ctrl+shift+f搜索API开头的getPoiList
这个路由,很快就能定位到我们想要的地方
可以发现美团的程序员比想象中的亲切,代码可读性并不低,可以看见_token
参数来自于变量d,而变量d又来自于d = window.Rohr_Opt.reload(p);
,于是我们在这一行下个断