爬取思想流程
最近两天写爬虫比较多, 总结一下书写爬虫的思路步骤.
获取url.
浏览器打开.
如果无法直接打开, 则判断哪里有验证,根据平台修改User-Agent等请求头.
信息页面路径上是否有所验证. 登录验证, IP验证. 有则一一解决.
登录验证
-
登录验证主要分两种:
- 图片验证: 抓下图片, 训练识别.
- 滑块验证: 截图, 缺口距离判断, 模拟操作.
-
IP限制:
- 维护IP池代理访问
动态页面
信息页面是否为动态页面. 检查源代码与前端显示是否一致.
- 动态页面:
- js,css,字体: 高效率的方法就是直接通过selenium/puppeteer.获取转化后的页面元素. 也可以根据动态策略一一还原.
页面下拉
页面信息无法一次加载完成, 需不断下拉才能再次加载.
- 下拉页面:
- 根据js元素操作页面.
- browser driver 发送键盘操作
反selenium策略
页面有反selenium策略.
- 应对反selenium
- 更改browser driver设置. 隐藏selenium调试标识.
- 使用远程调试
- 避免使用browser driver对js进行操作.
爬虫对弈无止境, 如有新得再补.