Python Scrapy框架替换代理ip问题的一个困惑

Python Scrapy框架替换代理ip问题的一个困惑,python,scrapy,Python,Scrapy,我目前正在尝试在Scrapy框架中随机尝试代理ip(我使用Python3.6,Scrapy版本是1.5.1,我的项目名是ip,工作名是ip_test),我遇到了这个令人困惑的错误: raise SchemeNotSupported(“不支持的方案:%r”%(uri.scheme,)) twisted.web.error.SchemeNotSupported:不支持的方案:b'' 我不知道哪里错了,这是我的中间产品 class IpDownloaderMiddleware(object): PRO

我目前正在尝试在Scrapy框架中随机尝试代理ip(我使用Python3.6,Scrapy版本是1.5.1,我的项目名是ip,工作名是ip_test),我遇到了这个令人困惑的错误:

raise SchemeNotSupported(“不支持的方案:%r”%(uri.scheme,))
twisted.web.error.SchemeNotSupported:不支持的方案:b''
我不知道哪里错了,这是我的中间产品

class IpDownloaderMiddleware(object):
PROXY = ["117.95.7.27:11170", "119.114.17.24:38715", "183.149.2.23:28970", "117.60.3.6:26965",
         "123.245.11.50:25550"]
def process_request(self, request, spider):
    proxy = random.choice(self.PROXY)
    request.meta["proxy"] = proxy
这是我的设置.py

DOWNLOADER_MIDDLEWARES = {'ip.middlewares.IpDownloaderMiddleware': 100,}

谢谢

如错误消息所示,Scrapy(或者准确地说,Twisted)要求代理URL包含一个方案,而不仅仅是


例如,您不需要设置
request.meta[“proxy”]=“117.95.7.27:11170”
,而需要设置
request.meta[“proxy”]”http://117.95.7.27:11170“

如错误消息所示,Scrapy(或者准确地说,Twisted)要求代理URL包含一个方案,而不仅仅是


例如,您不需要设置
request.meta[“proxy”]=“117.95.7.27:11170”
,而需要设置
request.meta[“proxy”]”http://117.95.7.27:11170“

不确定这是否重要,但第2行上的缩进看起来不正确。不确定这是否重要,但第2行上的缩进看起来不正确。