爬虫中常见的4种反爬虫策略

  • 更新时间:2021-08-09 08:18:07
  • 编辑:傅同济
本站精选了一篇相关的编程文章,网友怀承允根据主题投稿了本篇教程内容,涉及到爬虫、请求、信息、渲染、服务相关内容,已被283网友关注,涉猎到的知识点内容可以在下方电子书获得。

参考资料

正文内容

《爬虫中常见的4种反爬虫策略》是一篇值得学习的技术文章,代码整理的很实用,扩充了更多相关实例,为了大家阅读方便。

爬虫中常见的4种反爬虫策略

1.IP封锁

站点运行人员在分析日志时,有时会发现在同一时间段内有一个或多个IP访问量特别大,因为这种爬虫是通过程序自动完成爬虫爬取页面信息的,所以它的请求量在单位时间内很大,并且相邻请求时间间隔比较固定,这时就可以基本判断出此类行为系爬虫所为。

解决方案:可以使用太阳爬虫http代理或自建ip池,http代理可以助力采集,突破限制轻松抓取数据。

2.封User-Agent

User-Agent是请求领域之一,服务器从与User-Agentent对应的值中使用的信息。

User-Agent的角色是客户端的身份识别。许多爬虫请求头是默认情况下一些非常明显的爬虫头python-requests/2.18.4,等等,当发现带有此类headers的数据包时,直接拒绝访问,返回403错误。

解决方案:

除User-Agent外,还可以使用Host和Referer。这一验证请求头信息中特定头域的方法,不仅能有效地屏蔽长期无人维护的爬虫程序,而且还能拒绝一些初学者发出的网络请求。

3. javascript渲染,由 JavaScript 改变 HTML DOM 导致页面内容发生变化的现象称为动态渲染。

由 JavaScript 改变 HTML DOM 导致页面内容发生变化的现象称为动态渲染。

由于编程语言没有像浏览器一样内置JavaScript解释器和渲染引擎,所以动态渲染是天然的反爬虫手段。

网页开发者将重要信息放在网页中但不写入html标签中,而浏览器会自动渲染<script>标签中的js代码将信息展现在浏览器当中,而爬虫是不具备执行js代码的能力,所以无法将js事件产生的信息读取出来。

4.封Cookie

Cookie反爬虫指的是服务器通过校验请求头中的Cookie值来区分正常用户和爬虫程序的手段,服务器对每一个访问网页的人都会给其一个Cookie,有的扫描爬虫单纯为了爬取链接,并不会对Cookie进行处理和响应。

当某个Cookie访问超过某一个阀值时,就对其进行封禁,过一段时间再放出来。

也可以把Cookie和JavaScript结合起来实现反爬虫从而提高爬虫难度,这种手段被广泛应用在Web应用中。

(推荐操作系统:windows7系统、Internet Explorer 11,DELL G3电脑。)

相关教程

  • jQuery Ajax实现跨域请求

    这篇文章主要为大家详细介绍了jQuery Ajax实现跨域请求的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    发布时间:2019-07-24

  • axios发送post请求springMVC接收不到参数的解决方法

    下面小编就为大家分享一篇axios发送post请求springMVC接收不到参数的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    发布时间:2019-07-24

用户留言