当前爬虫的特点和反爬虫的难点:
随着技术的发展,特别是云计算技术的发展,恶意爬虫所使用的技术越来越先进,他们不再是简单的脚本或者程序,而是能够在一定程度上模拟人的行为,模拟浏览器的行为进行信息爬取。
- UserAgent和Referer是两个HTTP请求里面重要的header,通常用来表示客户端和来源,但很遗憾,这两个标识很容易被伪造,很多爬虫都伪造成百度的spider或者是普通浏览器的UserAgent进行爬取,所以单纯的依靠判断ua来识别爬虫作用非常有限
- 过去我们一般认为程序爬虫无法处理JavaScript请求,只能获取静态资源,但目前市面上已经有不少开源的浏览器内核包括DOM+JS解析引擎,目前一些爬虫已经具备了处理JS+CSS的能力,所以我们也没法利用是否只处理静态资源这个维度来识别爬虫
- 过去爬虫一般是使用IDC机房的IP进行爬取,这样导致IP段变化不大,并且也比较好识别,但是目前随着云计算的普及,特别是弹性IP越来越多,很多爬虫完全是利用云计算资源进行爬取,这样可以以很低的成本就拥有大量的代理IP池
- 过去反爬虫主要是依靠频率限制,这个方法目前看作用很有限,首先,单纯的频率限制导致了大量误拦误判,另外,现在的爬虫很多是低频爬虫,数据窃取者动用大量IP进行恶意抓取,但每个IP本身的抓取量不大,所以依靠频率限制作为反爬虫手段的弊端很大,而且有可能根本起不到效果
对于现阶段爬虫的特点和反爬虫的难点,大家还有什么补充的吗?欢迎探讨哦!