Scrapy爬虫系列笔记之十:反爬虫之动态代理,限速,登录以及验证码_by_书訢

3.2ip代理

反爬:发现某个时段访问大量增加,ip相同,需要登录才能访问
处理方式:IP代理池,利用免费资源

动态ip代理
思路很简单直接书写中间件利用代理(同user-agent在settings文件中放了一堆的代理ip地址和端口,资源见“西刺网”)

from settings import random_proxy
class RandomProxyMiddleware(object):
  #动态设置ip代理
  def process_request(self, request, spider):
   import random 
   random_index=random.randint(0,len(proxy_list)-1)
   random_proxy = proxy_list[random_index]
   request.meta["proxy"]=random_proxy 

这个方式有点low,每天需要自己去西刺网copy

其实可以自己写爬虫将ip和端口爬下来,然后再从文件或者数据库获取使用,返回码无效的ip和端口进行删除

3.2注册账号,每次请求带cookie

反爬:要求进行登录的时候
处理方式:注册账号,每次请求的时候带上Cookie
同样先放在settings.py文件中,设置Cookie只是对headers进行一下处理

3.4模仿人限制速度

反爬:请求过于频繁,从而对ip访问频率进行限制
处理方式:限速
具体方式见官方文档

百度scrapy-chs
配置一下就好了

3.5验证码识别

反爬:弹出验证码

处理方式:
1.在线打码平台
百度一下,调用接口即可
2.机器学习验证码识别

github上模型使用

3.6selenium进行动态网站数据爬取

反爬:增加动态网站,增加网络分析复杂,使用Ajax进行数据交互
处理方式:第二章已经说明
笔记一到十链接
http://blog.csdn.net/sx_csu2016sw/article/details/79284369
http://blog.csdn.net/sx_csu2016sw/article/details/79284427
http://blog.csdn.net/sx_csu2016sw/article/details/79284449
http://blog.csdn.net/sx_csu2016sw/article/details/79284469
http://blog.csdn.net/sx_csu2016sw/article/details/79284481
http://blog.csdn.net/sx_csu2016sw/article/details/79284491
http://blog.csdn.net/sx_csu2016sw/article/details/79284509
http://blog.csdn.net/sx_csu2016sw/article/details/79284525
http://blog.csdn.net/sx_csu2016sw/article/details/79284547
http://blog.csdn.net/sx_csu2016sw/article/details/79284567

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值