反爬:服务器通过访问者请求中的一些信息来识别访问者,并对访问者进行限制。常见的网站反爬有以下几种:
浏览器在发送请求的时候,会附带一部分浏览器及当前系统环境的参数给服务器,服务器会通过User-Agent的值来区分不同的浏览器;
服务器通过请求识别到访问者IP,一个IP在单位时间内访问频率如果超过了预设的阈值,将会对该IP进行访问限制,此时访问就会出现问题;
也有很多网站要求访问者必须通过验证码才能继续访问,此时访问网站被限制与访问频率无关。
对于常见的反爬手段,也有对应的解决方案:
模拟 User-Agent :通过发送模拟 User-Agent 来通过检验,将要发送至网站服务器的请求的 User-Agent 值伪装成一般用户登录网站时使用的 User-Agent 值。用户注册后可以直接在线获取UA;
调整访问频度:可以先通过代理IP测试网站的访问频率阈值,然后设置访问频率低于阈值。快代理-会员中心可以实时监控爬取状态;
验证码:使用IP代理,更换爬虫IP;通过算法识别验证码;使用 cookie 绕过验证码。
模拟登录:这类网站需要登陆,一般是由于服务器识别用户账号,并限制用户账号访问速度导致的,建议通过模拟登录的方法如注册为多个账号;也可以采用维持一个会话的方式,例如使用requests库来申明一个session对象,将我们登陆的信息以表单形式发送登陆后,通过这个会话发送get请求或者post请求,但需要测试服务器对账号进行限制的规律
代理 IP :通过代理IP 进行更换的方式可有效规避网站检测,kuaidaili会根据您实际场景需求选择合适的代理IP,但也要注意合法使用。
领取专属 10元无门槛券
私享最新 技术干货