一、爬虫引言
距离最近一次博客的更新,已经快半年了。这么久一直没写博客,是因为最近半年在跟几个小伙伴打造一个tiktok的数据平台,乐不思蜀。今天抽空特意记录分享一下我认为的爬虫技术的顶端——逆向。这里的逆向主要是指app逆向,这里的app逆向又主要是指安卓的。至于原因,咱们待会聊。
再次回归到爬虫技术,一方面是因为,在这信息爆炸的时代,信息的抽取、分析和总结是一项非常重要的技能。另一方面,虽然之前一直热衷于dnn和算法领域的探索,后来才意识到,神经网络和算法的落地,一定得基于(大)数据,同时。。。现在算法(尤其是dnn领域)的落地面还是非常有限的(不知道大家认同不认同)。所以,回归到爬虫技术、大数据分析技术,才是当下的大势所趋。
Long long years ago,当时的爬虫几乎没有封禁措施,基本就是随意抓;接着开始出现服务端验证(开销大,极少数采用)、客户端验证(js加密)、客服端双向验证,这些呢,基本就是伪造参数,最主要的技术就是js逆向;接着又出现了诸如滑块验证、点击验证、加减乘除验证,甚至12306和谷歌这些变态级的验证,都随着dnn技术的普及而变得脆弱;再到后来因为智能机的普及,出现了app端的数据采集,app数据采集的话,不加密还好,加密的话基本上就只能做逆向了。是吧。
二、反爬技术攻坚
Part1
对于js逆向破解,我接触过有腾讯新闻(当时最简单的)、淘宝(当时算一般的)、拼夕夕(当时最难的)的。腾讯新闻的js简单到什么程度,直接断点就能找到,而且是固定加密字符无expire失效。怎么说,就是你甚至可以自己伪造加密参数都能通过;淘宝的js加密经过几道工序的断点调试,也能找到方法,无非就是对加密参数的处理需要注意转义字符;
![](https://i-blog.csdnimg.cn/blog_migrate/ff45ac3db7d590a200d5aff3f286f97d.png)