我用
这是我到目前为止尝试过的(有效的):
Scrapy
写了一个Python脚本,通过代理向网页发送请求,而不需要更改settings.py
或DOWNLOADER_MIDDLEWARES
。现在它运行得很好。然而,我唯一不能利用的是创建一个代理列表,以便如果一个失败了,另一个就会被使用。如何调整这部分os.environ["http_proxy"] = "http://176.58.125.65:80"
来逐个获取代理列表,因为它只支持一个。对此的任何帮助将不胜感激。这是我到目前为止尝试过的(有效的):
import scrapy, os
from scrapy.crawler import CrawlerProcess
class ProxyCheckerSpider(scrapy.Spider):
name = 'lagado'
start_urls = ['http://www.lagado.com/proxy-test']
os.environ["http_proxy"] = "http://176.58.125.65:80" #can't modify this portion to get list of proxies
def parse(self, response):
stat = response.css(".main-panel p::text").extract()[1:3]
yield {"Proxy-Status":stat}
c = CrawlerProcess({
'USER_AGENT': 'Mozilla/5.0',
})
c.crawl(ProxyCheckerSpider)
c.start()
我不想改变settings.py
中的任何内容,也不想创建任何自定义middleware
来实现这个目的。我希望通过一个单独的代理(外部)实现与上述相同的效果。谢谢。