好用的免费代理池搭建

项目地址:https://github.com/lin423497786/ProxyPool.git

效果图

在这里插入图片描述

免费代理池,提供如下功能:

  • 定时抓取免费代理网站的代理信息, 可扩展。
  • 定时验证爬取下来的代理, 剔除不可用代理, 留下可用代理, 保证代理的可用性。
  • 提供api, 方便提取可用的代理。

运行项目

  • Python>=3.6
  • 下载代码:
git clone https://github.com/lin423497786/ProxyPool.git
cd ProxyPool
  • 安装依赖:
pip install -r requirements.txt
  • 更改配置:
# proxypool/setting.py 为项目配置文件
import logging

# redis key
REDIS_KEY = 'proxies'

# redis 服务器的地址
REDIS_HOST = '192.168.174.128'

# redis服务器的监听端口
REDIS_PORT = 6379

# 连接redis服务器所使用的密码
REDIS_PASSWORD = ''

# api服务绑定的ip地址
API_HOST = '0.0.0.0'

# api服务监听的端口
API_PORT = 9999
...
  • 启动项目:
python3 run.py

使用

  • Api

启动服务后, 默认会在 http://127.0.0.1:9999 开启api接口服务:

apimethodDescriptionparams
/GETapi介绍None
/random/GET随机获取多个代理可选参数:
max_delay 代理的最大延迟
min_success_count最小的连续检测成功次数,
连续检测成功次数越多代表代理越稳定
number代理个数,默认为1
/pop/GET随机获取并删除多个代理可选参数:
max_delay 代理的最大延迟
min_success_count最小的连续检测成功次数,
连续检测成功次数越多代表代理越稳定
number代理个数,默认为1
/all/GET获取所有代理None
/count/GET查看代理数量None
/clear/GET删除所有代理None
/delete/GET删除代理proxy={PROTOCOL}://{IP}:{PORT}"
  • 示例
import requests

# 获取一个随机代理
url = 'http://127.0.0.1:9999/random/'
requests.get(url)

# 获取一个延时不超过1秒的代理
url = 'http://127.0.0.1:9999/random/?max_delay=1'
requests.get(url)

# 获取5个延时不超过1秒的代理
url = 'http://127.0.0.1:9999/random/?max_delay=1&number=5'
requests.get(url)

# 获取1个延时不超过1秒且连续检测成功4次的代理, 连续成功越多次代表代理越稳定
url = 'http://127.0.0.1:9999/random/?max_delay=1&number=1&min_success_count=4'
requests.get(url)





评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值