动态爬取
原理:用户-浏览器-网页代码响应-发送请求-服务器接收请求并返回数据
一般抓取方法:
- 用selenium + chromedriver 模拟浏览器行为进行操作
- 用chrome + F12 抓包分析,写出相应代码
想法:跳过网页渲染和网页代码响应
- 先用浏览器操作过程,期间抓取post包和接收包
- 得到操作和收发包的关联,选取需要的关联即浏览器操作
- 二次抓取:根据接收包和post包 的信息和顺序模拟用户发送请求
难点:
浏览器操作和发包关联
疑问:
怎么实现
缺点:有些内容需要运行 js 代码才能完成
启示:反爬虫的技术有很多方式,用js只是其中一中。最根本的解决办法还是要模拟人视觉获取
改进:第二步骤:得到操作,网页代码运行,收发包的关联,选取需要的关联。
即 去掉不必要的渲染,代码运行,收发包以在完全模拟用户行为的前提下增加爬取速度