为了账号安全,请及时绑定邮箱和手机立即绑定

爬虫被封的原因和对策

标签:
大数据

大数据时代下,爬取常用的方法是写一个爬虫程序向网络服务器请求数据,然后对数据进行解析,然后提取所需要的信息,但是总会有阻碍请求数据时经常受到访问限制,对IP进行封禁,导致爬虫程序被终止,timeout httperror等。那么爬虫被封的原因有哪些呢?

https://img1.sycdn.imooc.com//5f6c076300014eaf04250255.jpg

一、首先,检查JavaScript。如果你从网络服务器收到的页面是空白的,缺少信息,或其遇到他不符合你预期的情况(或者不是你在浏览器上看到的内容),有可能是因为网站创建页面的JavaScript执行有问题。


二、检查正常浏览器提交的参数。如果你准备向网站提交表单或发出POST请求,记得检查一下页面的内容,看看你想提交的每个字段是不是都已经填好,而且格式也正确。用Chrome浏览器的网络面板(快捷键F12打开开发者控制台,然后点击“Network”即可看到)查看发送到网站的POST命令,确认你的每个参数都是正确的。


三、是否有合法的Cookie?如果你已经登录网站却不能保持登录状态,或者网站上出现了其他的“登录状态”异常,请检查你的cookie。确认在加载每个页面时cookie都被正确调用,而且你的cookie在每次发起请求时都发送到了网站上。


四、IP被封禁?如果你在客户端遇到了HTTP错误,尤其是403禁止访问错误,这可能说明网站已经把你的IP当作机器人了,不再接受你的任何请求这个时候需要使用到全球ip资源的IPIDEA。如果你确定自己并没有被封杀,那么再检查下面的内容。


五、确认你的爬虫在网站上的速度不是特别快。快速是一种恶习,会对网服务器造成负担,也是IP被封首要原因。


六、要修改你的请求头!有些网站会封杀任何声称自己是爬虫的访问者。如果你不确定请求头的值怎样才算合适,用自己浏览器的请求头。


七、确认你没有点击或访问任何人类用户通常不能点击或接入的信息。


那么,有哪些对策来解决这些问题呢?


网站防爬的前提就是要正确地区分人类访问用户和网络机器人。虽然网站可以使用很多识别技术(比如验证码)来防止爬虫,但还是有一些十分简单的方法,可以让你的网络机器人看起来更像人类访问用户。


1、构造合理的HTTP请求头,设置User-Agent。


2、正常的时间访问间隔,不要在极短的短时间内访问。


3、多用ip,让服务器认为是不同的用户在访问。


4、申请多个key,各个key轮流使用,突破QPS限制和访问次数限额。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消