今天继续带来破解拼多多的 anti_content 参数破解,代码已经放在github上:https://github.com/SergioJune...(点击原文阅读直达)html
若是对你有用的麻烦给个 star 支持下哈。node
这个项目我也会持续更新,这两周暂不更新,只发文章,可能我前两周成天作这个,有点腻了,歇会。另外能够借这个文章复习下思路,大家也能够学习下思路,学了以后最好本身实践一遍,这样才会真正学到东西。python
废话很少说,开始正文。git
拼多多网址为:http://yangkeduo.com/github
点击搜索,而后开始滑动下一页,你能够看到这个:浏览器
这里有三个参数须要找的,其余参数均可以看得出是什么,有些也是固定不变的。cookie
先从第一个参数 list_id 开始,通常都会打开搜索,进行搜索这个参数ide
随便一找,便可找到这里函数
这个是咱们在第一次请求搜索页返回的,也就是发送这个请求:工具
经过屡次实验,这个请求只须要带上关键字参数便可请求成功,好比这样:http://yangkeduo.com/search_r...
只是关键字须要解析一下便可,问题不大。
在这个页面还给咱们返回了 flip 这个参数,因此咱们可使用正则来获取这两个参数,剩下的就是 anti_content 了
咱们能够试试再和上面那样,试试经过搜索 anti_content,能够看到,也能够经过搜索看到,通过查找并屡次断点,能够找到这个为位置:
打上断点,能够看到就是咱们须要的数据,可是如何找到加密的位置呢?请继续往下看。
若是你单纯是想经过上面这种方式查找的话,估计会一成天都在那里按执行下一行代码,最后还有可能得不到本身想要的结果,今天告诉一个很简单的方法,由于每次都是发一个请求,因此咱们能够在开发者工具下打个 xhr 断点,这样在咱们滑动请求的时候就能够抓到这个请求,并查看调用栈便可快速找到,经过这个方法,最多就只须要半个小时吧(夸大了不太好)。
打 xhr 断点在这里打:
这里还能够根据请求的请求路径进行断点,我就不写上了,我直接捕获任何 xhr 断点了,你能够本身尝试下,固然,除了这个 xhr 断点,还有不少断点,好比事件监听等,这些在对反爬更加厉害的须要用到的时候就越多,因此,闲着没事的话能够研究这些断点,会了能够大大提升本身的工做效率,都是爬虫必会的。
打上断点以后,咱们能够进行滑动,能够看到这里:
这里第一次捕获到的是咱们浏览器的配置和咱们活动的距离好像,这个能够直接忽略,进行下一个断点便可。
这里就能够看到咱们须要找的参数了,可是这里已经生成了,咱们能够直接查看右边的调用栈
通过屡次查看,能够很容易就发现这个地方有点东西,当即下断点
这时咱们能够先去掉 xhr 断点,而后刷看查看,获取不断点下一个断点直到运行结束再滑动到下一页便可。通过调试能够看到这个:
因此咱们的 anti_content 参数就是从这里生成的,因此接下来就是继续查看这个语句执行的语句,再次通过屡次调试,能够发现是从这里生成的:
ep("0xd2", "jLF%") 便是 anti_content 的生成语句,能够继续在函数内部打上断点便可查看内部生成过程。
由于这里的代码太多,并且我又不太懂里面的加密过程,因此我才说这类加密一般都是只须要找到加密位置便可,接下来就是把所须要的加密 JS 代码扣下来使用 python 的 pyexecjs 来运行便可,可是若是你懂它里面的加密方法,就能够直接使用 python 提供的对应的加密方法进行使用便可,这样子就更容易得出结果,因此接下来须要学习的地方就是各类加密方法。
这里的加密方法我猜想是经过 deflate 加密方法,有兴趣的能够本身查看。
这里扣代码没什么好说的,说下这里的坑吧。坑有两个,
一个是须要使用到一个 cookie,不过固定便可,无须要获取,这个 cookie 是下面这个:
使用到的地方为这里:
经过 split 切割就是获取上面箭头所指的 cookie,下面的函数就是进行赋值而后返回给一个对象,这里经过本身慢慢调试都是能够知道的。
另外一个坑就是须要使用到咱们的第一次的搜索请求,有两个地方
到时调用函数传参便可。其余的就没有什么了,若是有请在留言区提问。
咱们可使用 execjs 来执行 JS,或者使用node来执行而后提供给python 接口也是可行,看你我的,这里我直接使用 execjs 来执行了。
若是你 运行以后出现编码问题的话,能够看看这篇文章:https://sergiojune.com/2019/0...
能够获取了,完毕。源码放在了个人gihub,想要的能够点击原文阅读获取,对你有用的话记得给个 star 哈。
一开始写这个每周一爆的系列是由于,我看到如今网上的爬虫文章质量广泛都很低,能应用到实际工做的并很少,因此想写一些真正实用的文章,而且能够显著提升你们爬虫水平的。不知道你们想不想看这类文章,仍是想看点基础类的文章,由于每次都很是用心写出来,原觉得阅读量可能会很好,但最后都是很惨淡,在想本身是否是陷入了自嗨式写做,因此想你们给点建议,你们都想看哪类的文章。能够在下面投票下,谢谢。
本文仅用于交流学习,请勿用于非法用途,后果自负!
点个赞支持下?