Skip to content

代理ip

代理ip是在中间件设置的,因为有不同的HTTP库,所以设置代理的时候要根据自己使用的下载器来设置

class ProxyMiddleware:
    def process_request(self, request, spider_ins):
        # 判断下载器
        if spider_ins.downloader_cls == const.AiohttpDownloader:
            request.proxy = "http://127.0.0.1:7890"
        else:
            request.proxies = {'https': "http://127.0.0.1:7890", 'http': "http://127.0.0.1:7890"}

如果ip是通过接口获取,可以在这里直接使用http请求获取。

class ProxyMiddleware:
    def process_request(self, request, spider_ins):
        # 判断下载器
        if spider_ins.downloader_cls == const.AiohttpDownloader:
            request.proxy = "http://127.0.0.1:7890"
        else:
            request.proxies = {'https': "http://127.0.0.1:7890", 'http': "http://127.0.0.1:7890"}