最近在学习Scrapy爬虫系列,在公司写测试代码是需要设置代理,而在家是不需要的。在代理来回切换之间让人很抓狂。
下面记录下如何在Scrapy设置代理。
- 在Scrapy工程下新建”middlewares.py”,和settings.py同级
#!usr/bin/env
# -*-coding:utf-8 -*-
class ProxyMiddleware(object):
# overwrite process request
def process_request(self, request, spider):
# Set the location of the proxy
request.meta['proxy'] = "http://YOUR_PROXY_IP:PORT"
- 修改settings.py文件,这里one是你的项目名称
DOWNLOADER_MIDDLEWARES = { 'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware': 110,
'one.middlewares.ProxyMiddleware': 100,}