代理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): ... [阅读全文]
最新标签
推荐阅读
31
2019-10
爬虫要怎么设计运行?
互联网时代,网络爬虫是常规操作了,比较常见的就有像搜索引擎蜘蛛,它通过每天抓取不同网站的信息,当用户进行搜索的时候,才能够进行返回有效信息。黑洞代理下面为大家介绍爬虫要怎
31
2019-10
Urllib库怎么使用?
用pyhton来进行爬虫是很多爬虫工作者的选择,大数据在各行各业都发挥着作用,企业也对数据分析给予更多的关注,黑洞代理今天给大家介绍Urllib库的使用。
07
2019-11
正向代理、反向代理的对比
代理服务器可以分为正向代理、反向代理,使用的时候,大家可能感受不出来具体有什么不同。但是这两种其实存在不少差异,使用场景也不一样。
31
2019-10
网络爬虫为什么会出现乱码?
代理IP让爬虫变得更加方便,降低了准入门槛,让很多人也开始学习如何编写爬虫程序。在爬虫的时候,会出现很多情况,黑洞代理跟大家分享当你的爬虫出现乱码如何解决。
热门文章
在线咨询
客户经理
公众号
关注公众号,免费领试用
大客户