帮助中心

   

热门搜索: 免费续期  推广  永久会员

在Scrapy使用代理IP池

爬虫与代理IP是无法分割的,要有代理IP,爬虫才能够顺利进行。用Scrapy爬虫怎么设置代理IP池进行使用?新手也能够马上上手掌握,下面的教程分享给大家。

 

在Scrapy使用代理IP池

 

在Scrapy设置IP池教程步骤:

 

(1)设置IP池

 

步骤1:在settings.py文件中添加代理服务器的IP信息,如:

 

# 设置IP池

IPPOOL = [

{“ipaddr”: “221.230.72.165:80”},

{“ipaddr”: “175.154.50.162:8118”},

{“ipaddr”: “111.155.116.212:8123″}

]

 

步骤2:创建下载中间文件middlewares.py(与settings.py同一个目录),如:

 

#创建方法,cmd命令行,如项目为modetest,

E:\workspace\PyCharm\codeSpace\modetest\modetest>echo #middlewares.py

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

# 导入随机模块

import random

# 导入settings文件中的IPPOOL

from .settings import IPPOOL

# 导入官方文档对应的HttpProxyMiddleware

from scrapy.contrib.downloadermiddleware.httpproxy import HttpProxyMiddleware

class IPPOOlS(HttpProxyMiddleware):

# 初始化

def __init__(self, ip=”):

self.ip = ip

# 请求处理

def process_request(self, request, spider):

# 先随机选择一个IP

thisip = random.choice(IPPOOL)

print(“当前使用IP是:”+ thisip[“ipaddr”])

request.meta[“proxy”] = “http://”+thisip[“ipaddr”]

 

步骤3:在settings.py中配置下载中间件

 

# 配置下载中间件的连接信息

DOWNLOADER_MIDDLEWARES = {

‘scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware’:123,

‘modetest.middlewares.IPPOOlS’ : 125

5 }

关闭
0797-8539189
关注微信公众号,免费送2小时时长