首先,检查
JavaScript
。如果你从网络服务器收到的页面是空白的,缺少信息,或其遇到他不符合你预期的情况(或者不是你在浏览器上看到的内容),有可能是因为网站创建页面的
JavaScript
执行有问题。
检查正常浏览器提交的参数。如果你准备向网站提交表单或发出
POST
请求,记得检查一下页面的内容,看看你想提交的每个字段是不是都已经填好,而且格式也正确。用
Chrome
浏览器的网络面板(快捷键
F12
打开开发者控制台,然后点击“
Network
”即可看到)查看发送到网站的
POST
命令,确认你的每个参数都是正确的
是否有合法的
Cookie
?如果你已经登录网站却不能保持登录状态,或者网站上出现了其他的“登录状态”异常,请检查你的
cookie
。确认在加载每个页面时
cookie
都被正确调用,而且你的
cookie
在每次发起请求时都发送到了网站上。
4.IP
被封禁?如果你在客户端遇到了
HTTP
错误,尤其是
403
禁止访问错误,这可能说明网站已经把你的
IP
当作机器人了,不再接受你的任何请求。你要么等待你的
IP
地址从网站黑名单里移除,要么就换个
IP
地址(可以去星巴克上网)。如果你确定自己并没有被封杀,那么再检查下面的内容。
确认你的爬虫在网站上的速度不是特别快。快速采集是一种恶习,会对网管的服务器造成沉重的负担,还会让你陷入违法境地,也是
IP
被网站列入黑名单的首要原因。给你的爬虫增加延迟,让它们在夜深人静的时候运行。切记:匆匆忙忙写程序或收集数据都是拙劣项目管理的表现;应该提前做好计划,避免临阵慌乱。
还有一件必须做的事情:修改你的请求头!有些网站会封杀任何声称自己是爬虫的访问者。如果你不确定请求头的值怎样才算合适,就用你自己浏览器的请求头吧。
在网上完成网站的信息采集时,常常出现无缘无故的
ip被禁的情况,正爬取呢就没法继续了,造成日常业务也没办法正常进行了,整个人都不好了呢。一部分人完全不清楚被禁的原因,这么简单的就给禁掉了,究竟是哪个地方不对呢?
首先,和大家介绍下
Python爬虫的工作原理。Python爬虫是根据一些规则,自动抓取网络数据的程序或脚本,它能够快捷的实现采集、整理任务,极大的省去时间成本。因为Python爬虫的反复采集,容易导致服务器压力过大,服务器为了保障自身,必然会做一些限制,就是大家平时讲的反爬虫机制,用以防止爬虫的持续抓取。
当
Python爬虫被禁之后,势必要查处缘由,利用研究反爬机制,不断的改变爬虫方式,预防重蹈覆辙。所以,大家一起看看常出现的爬虫被禁的原因有什么?
一、检查
JavaScript
要是出现网页空白、缺少信息情况,很有可能是因为网站创建页面的
JavaScript出现问题。
二、检查
cookie
要是出现登录不了、无法保持登录状态情况,请检查你的
cookie.
三、
IP地址被封
要是出现页面无法打开、
403禁止访问错误,很有可能是IP地址被网站封禁,不再接受你的任何请求。
当出现这种情况时,则需要选择更优秀的代理
IP资源,比如掘金网ip代理,日流水量大,千千万万个代理IP;可用率高,业务成功率强,提高工作效率;稳定性好,让Python爬虫能够可持续性的工作;安全性高,高匿名代理IP。
除此之外,在进行
Python爬虫抓取页面信息时还应尽量放慢速度,过快的抓取频率,不仅更容易被反爬虫阻拦,还会对网站造成沉重负担,这样是很不好的
。
所以得出结论,选一个好的稳定的
ip
,会解决这一系列的问题,我来说一下我自己用过好用的
ip
(仅提供参考),无不良诱导,根据个人需求来
那就是
Smart
,
smart ip
用起来很是稳定,不存在呢种网络不纯的问题,只要电脑环境不是特别差的话用的妥妥滴