Proxy池-模块使用
Proxy池-模块说明
由于爬虫业务大部分涉及电商、行业数据、资讯价值数据,被爬方一般为了反爬取,大部分会采用初级的反爬措施,其中较为常用的就是IP限制。
为方便爬取网站,搭建了IP池模块,供大家可以使用。
- 项目结构:
proxypool
│ __init__.py
│ proxy_provider.txt
│ requirements.txt
│ run.py
│ README.md
└───proxypool
│ __init__.py
│ crawler.py
│ db.py
│ error.py
│ getter.py
│ importer.py
│ scheduler.py
│ setting.py
│ tester.py
│ utils.py
│
-
IP代理池调用
- 调用Get_Proxy()中的 process_request 返回随机得分高的IP
import logging
import redis
from random import choice
class Get_Proxy():
def __init__(self,host,port):
self.logger = logging.getLogger(__name__)
self.REDIS_KEY = 'proxies' #
self.MAX_SCORE = 100
# 连接数据库
pool = redis.ConnectionPool(host=host,port=port)
self.db