您的位置: 首页 > 新闻资讯 > 正文

middlewear要怎么使用代理IP?

发布时间:2019-11-22 14:27:40 来源:

代理IP其实可以配置到很多软件上面去使用,middlewear要怎么使用代理IP?今天,黑洞代理向大家介绍使用的教程帮助大家去操作。

middlewear要怎么使用代理IP?

middlewear中使用代理:

# -*- coding: utf-8-*-

from scrapy import signals

from Application import redis_conn

class ProxyMiddleware(object): # 代理

def __init__(self):

pass

@classmethod

def from_crawler(cls, crawler):

s = cls()

crawler.signals.connect(s.spider_opened, signal=signals.spider_opened)

return s

def process_request(self, request, spider):

'''

更换ip

:param request:

:param spider:

:return:

'''

proxy_ip = redis_conn.brpoplpush(src='proxies', dst='proxies', timeout=3)

request.meta['proxy'] = proxy_ip

return None

def spider_opened(self, spider):

spider.logger.info('Spider opened: %s' % spider.name)

添加IP:

r = redis.Redis(connection_pool=redis.ConnectionPool(

host="localhost",

port=6379,

# password="",

decode_responses=True, # 设置为str,不然可能会是bytes

db=1

))

proxy_list = ["ip1", "ip2"]

count = 0

for proxy in proxy_list:

if not r.sismember('proxies_set', proxy):

r.sadd('proxies_set', proxy)

r.lpush('proxies', proxy)

count += 1

print('代理加入队列成功, 共加入代理:' + str(count))

以上,我们就成功设置好代理了,只需要操作使用就可以了。


相关文章内容简介

1 middlewear要怎么使用代理IP?

  代理IP其实可以配置到很多软件上面去使用,middlewear要怎么使用代理IP?今天,黑洞代理向大家介绍使用的教程帮助大家去操作。  middlewear中使用代理:  #∵-*-∵coding:∵utf-8-*-  from∵scrapy∵import∵signals  from∵Application∵import∵redis_conn  class∵ProxyMiddleware(object):∵#∵代理  def∵__init__(self):  pass  @classmethod  def∵from_crawler(cls,∵crawler): ... [阅读全文]