爬虫作为抓取信息的工具,有很多 难点和技巧。现代爬虫反制措施也是越来越强大,很多网站的信息越来越不容易抓取,想做好一个爬虫越来越难。
反制措施:
ip限制:针对大流量频繁访问的ip,直接封掉。
user-agent:浏览器标识。
验证码反爬虫:12306的验证码是个最极端的例子。,
ajax异步加载:动态的,点击响应的加载信息。
爬虫分析:
传统的分析手段有,字符串截取,正则匹配。
web自动化测试与爬虫
著名的爬虫框架phtomjs脱胎于测试框架,自动化测试目的为测试网页的有效性,但是间接的实现了网页的信息浏览和记录,这点和爬虫不谋而合,而它天生的模拟浏览器特性又刚好避开了种种发爬虫措施,而测试神器loadrunner更是可以录制操作的形式来实现网页信息获取。
无头浏览器
无头浏览器是将常规浏览器去掉渲染界面而保留内核的一种精简版浏览器,它占用资源相对较小,因而成为很好的爬虫载体
无头浏览器的种类:
phtomjs,headless chrome
关于无头浏览器参见我的另外一篇文章XXXX
无头浏览器的检测:
这几种措施很容易造成误伤,但是和传统的反爬虫措施结合起来应该可以使用。
CRI协议