scrapy 带认证的代理

Posted walkonmars

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scrapy 带认证的代理相关的知识,希望对你有一定的参考价值。

官方方法:

from w3lib.http import basic_auth_header

class CustomProxyMiddleware(object):
    def process_request(self, request, spider):
        request.meta[‘proxy‘] = "https://<PROXY_IP_OR_URL>:<PROXY_PORT>"
        request.headers[‘Proxy-Authorization‘] = basic_auth_header(
            ‘<PROXY_USERNAME>‘, ‘<PROXY_PASSWORD>‘)

 

DOWNLOADER_MIDDLEWARES = {
    ‘<PROJECT_NAME>.middlewares.CustomProxyMiddleware‘: 350,
    ‘scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware‘: 400,
}

 

来源: https://support.scrapinghub.com/support/solutions/articles/22000219743-using-a-custom-proxy-in-a-scrapy-spider

经过测试,不带认证的这么写也没有问题

以上是关于scrapy 带认证的代理的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET Core 实现带认证功能的Web代理服务器

Selenium + Chrome Diver使用带用户名密码认证的HTTP代理的方法

scrapy主动退出爬虫的代码片段(python3)

aProxy: 带认证授权和权限控制的反向代理

aProxy: 带认证授权和权限控制的反向代理

全网最全Requests库详解,实例引入,代码分析(ip代理,用户认证,证书检测)