首先是《饿了吗》 最简单没有做任何防护 ,直接模拟器加fiddler得到请求然后用postman做分析 可以发现根本没有任何加密参数 直接伪造请求用代理进行爬取
然后是《美团》 两次加密 +假数据+封ip+流量限制 别问我是怎么知道的 其中滋味 自己体会
简单说说第一层加密是用的RSA加密 (java层面)可以通过分析代码进行还原 第二次就是后面的几个(字段上面有_的)在so里面 因为本人不是安全专业出生的所以还原不出来
用的方法就是 字段全随机 然后用这两个加密数据进行加密然后请求出去可以请求到数据
但是他会返回假数据也会返回真数据然后会一直报403 写出了一套方案爬了半天 数据少 而且因为他有一个加密方式我不知道怎么破解,所以我用的是模拟器的方式 但是模拟器反应慢 所以根本不行
那怎么办呢 不慌 美团还有一个网页的外卖网站相信大家都懂了吧 然后需要注意的request 里面cookie会出不来 建议用fiddler抓包然后 你就可以找到你需要请求了 因为我这边需要的数据他刚刚好没有进行字段加密所以很快的就拿完了
最后是《京东到家》先说下他的限制吧 反hook+字段加密 单单是反hook这一点相信就可以劝退很多人了吧 在加上他有几个字段都是加密字段 短时间很难搞定 然后想的办法就是从《京东》上面找入口 进入京东到家 但是你会发现根本进不去 闪退 最后我用以前的老版本发现可以进去单是只能进去一次而且动作一定要快 我发现我要的数据完全没有加密随便改字段都行
以上就是三个app的 爬取过程 终结一下 《饿了吗》 一坨翔 《美团》就是铁桶阵 《京东到家》如果不是侥幸发现老版本 简直是噩梦(我是写代码的但是不是专业搞爬虫的) 所以不对之处还请各位前辈不吝赐教!!!!!!!