美文网首页
scrapy代理ip之使用动态转发IP设置

scrapy代理ip之使用动态转发IP设置

作者: 越大大雨天 | 来源:发表于2019-02-21 17:08 被阅读0次

以阿布云提供的ip动态转发为例,在python3中接入随机动态ip只需要在middleware中添加如下代码:

import base64

# 代理服务器

proxyServer = "[http://http-dyn.abuyun.com:9020](http://http-dyn.abuyun.com:9020/)"

# 代理隧道验证信息

proxyUser="H01234567890123D"       #用户名

proxyPass = "0123456789012345"        #密匙

proxyAuth = "Basic" + base64.urlsafe_b64encode(bytes((proxyUser + ":" + proxyPass), "ascii")).decode("utf8")

class ProxyMiddleware(object):

    def  process_request(self,request,spider):

        request.meta["proxy"] = proxyServer 

        request.headers["Proxy-Authorization"] = proxyAuth

在使用Basic认证的代理ip时,scrapy不同于python的requests包,这里不能直接把用户名和密码与代理ip放在一起。正确的做法是应该将验证消息加到headers的Proxy-Authorization中。

最后只需将ProxyMiddleware添加进settings的DOWNLOAD_MIDDLEWARES中即可。
注意根据ip请求限制设置DOWNLOAD_DELAY。
完美避开ip限制,动态转发ip价格便宜,可通过爬取规模来选择使用套餐。

相关文章

  • scrapy代理ip之使用动态转发IP设置

    以阿布云提供的ip动态转发为例,在python3中接入随机动态ip只需要在middleware中添加如下代码: 在...

  • 动态ip代理的介绍

    网络代理ip资源一般使用以动态代理ip为主,今天我们来了解一下动态ip代理的来源以及与静态ip的区别。 使用动态I...

  • scrapy1.5 代理设置

    1、下载设置代理ip2、正常访问设置代理ip 下载设置代理ip 1、设置setting 2、编写代码 正常访问设置...

  • aiohttp与requests效率对比

    之前使用scrapy爬取了一些代理网站的代理,因为像知乎等网站针对ip进行了反爬,如果限制了ip地址,需要使用代理...

  • 如何设置代理IP?常用工具及语言

    本文列举常用语言or工具如何配置or设置代理IP。 cURL Wget Python Scrapy参见:HttpP...

  • 代理

    同一ip单位时间访问次数过多,被封ip,需要借助代理伪装ip进行爬取。 代理设置 request设置代理 sele...

  • Python实现爬取可用代理IP

    在实现爬虫时,动态设置代理IP可以有效防止反爬虫,但对于普通爬虫初学者需要在代理网站上测试可用代理IP。由于手动测...

  • Ubuntu16.04动态静态ip设置

    Ubuntu16.04 动态静态ip设置 1. 动态ip设置(eth0是网卡名称) 2. 静态ip设置(eth0是...

  • ip代理中的动静态ip以及独享、共享ip

    有接触过代理IP的用户可能对于代理ip的一些分类有所了解,像动态ip、静态ip、独享ip、共享ip这些分类,都是i...

  • scrapy反爬-动态IP代理

    爬取免费IP 在setting.py同级目录下创建GetIP.py ip代理中间件 在middlewares.py...

网友评论

      本文标题:scrapy代理ip之使用动态转发IP设置

      本文链接:https://www.haomeiwen.com/subject/vzldyqtx.html