IP 地址验证
有的站点,如果发现同一个 IP 地址,频繁的请求数据,就认为这是一个爬虫程序。
解决方法是,让 Scrapy
随机更换代理服务器,需要设置中间件,middlewares.py
中,增加如下类
def RandomProxyMiddleware(object):
def process_request(self, request, spider):
request.meta["proxy"] = get_random_proxy()
- 这里并没有定义
get_random_proxy
函数,需要你自己定义。
-
get_random_proxy
函数,要能随机返回一个代理服务器的 IP 和端口号。
- 至于代理服务器从哪里来?当然是你自己想办法准备了。
settings.py
中
DOWNLOADER_MIDDLEWARES = {
'NoticeSpider.middlewares.RandomProxyMiddleware...