scrapy爬虫代理——利用crawlera神器,无需再寻找代理IP

一、crawlera平台注册

    首先申明,注册是免费的,使用的话除了一些特殊定制外都是free的。

    1、登录其网站 https://dash.scrapinghub.com/account/signup/

    填写用户名、密码、邮箱,注册一个crawlera账号并激活

    2、创建Organizations,然后添加crawlear服务

    

然后点击 +Service ,在弹出的界面点击Crawlear,输入名字,选择信息就创建成功了。

创建成功过后点击你的Crawlear名字便可以看到API的详细信息。


二、部署到srcapy项目

    1、安装scarpy-crawlera

    pip install 、easy_install 随便你采用什么安装方式都可以

?
1
pip install scrapy - crawlera

    2、修改settings.py

        如果你之前设置过代理ip,那么请注释掉,加入crawlera的代理

?
1
2
3
4
5
DOWNLOADER_MIDDLEWARES  =  {
     # 'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware': 110,
     # 'partent.middlewares.ProxyMiddleware': 100,
'scrapy_crawlera.CrawleraMiddleware' 600
}

    为了是crawlera生效,需要添加你创建的api信息(如果填写了API key的话,pass填空字符串便可)

?
1
2
3
CRAWLERA_ENABLED  =  True
CRAWLERA_USER  =  '<API key>'
CRAWLERA_PASS  =  ''

    为了达到更高的抓取效率,可以禁用Autothrottle扩展和增加并发请求的最大数量,以及设置下载超时,代码如下

?
1
2
3
4
CONCURRENT_REQUESTS  =  32
CONCURRENT_REQUESTS_PER_DOMAIN  =  32
AUTOTHROTTLE_ENABLED  =  False
DOWNLOAD_TIMEOUT  =  600

    如果在代码中设置有 DOWNLOAD_DELAY的话,需要在setting.py中添加

?
1
CRAWLERA_PRESERVE_DELAY  =  True

    如果你的spider中保留了cookies,那么需要在Headr中添加

?
1
2
3
4
5
DEFAULT_REQUEST_HEADERS  =  {
   # 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
   # 'Accept-Language': 'zh-CN,zh;q=0.8',
   'X-Crawlera-Cookies' 'disable'
}

三、运行爬虫

    这些都设置好了过后便可以运行你的爬虫了。这时所有的request都是通过crawlera发出的,信息如下


更多的crawlera信息请参考官方文档:http://doc.scrapinghub.com/index.html


转载请注明 :http://my.oschina.net/u/2463131/blog/512384

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值