auto-proxy-pool
这是一个请求自己部署的项目地址获取星空、携趣、巨量、熊猫代理池的代理地址,而且能通过最简JS调用让特定某个JD脚本使用代理运行。能够有效避免某一脚本在高并发环境下本地IP被拉黑导致无法正常请求的问题,这个项目可以同时设置多个代理池上游,能够有效利用各大代理平台所提供的免费额度。
代理平台推荐
星空代理支持自动设置白名单,代理可用性也还不错。
携趣代理1000短效ip每日自动发放,需要配合脚本实现自动加白(针对家宽动态IP用户),固定IP的话可手动添加白名单
巨量IP每日需要手动签到过验证码才能领取免费IP,其公众号无需滑动验证码,点击按钮即可
星空有自动签到并兑换IP的脚本,这个以后再讲,Github搜的话也能搜到
星空代理(最低8r/1wIP,签到星币免费兑ip)
携趣网络(每日免费1000短效测试ip)
巨量IP(每日签到1000ip)
部署教程
根目录终端执行以下命令
mkdir -p /root/proxypool && cd /root/proxypool
继续执行docker容器创建命令(端口8899可自定义修改)
docker run -itd -v "$(pwd)":/run/data -p 8899:8080 --restart=always --name=auto-proxy-pool mzzsfy/auto-proxy-pool
对于已安装可视化管理面板(宝塔面板、1Panel等)的,可以直接去编辑/root/proxypool/proxy.template.yml这个文件,先将其重命名为proxy.yml再编辑
对于命令行用户可直接用vi命令在/root/proxypool/目录下创建proxy.yml并编辑
我的自用配置文件
对于使用星空、携趣、巨量的,可直接套用,或者微调,各项参数说明后面可以看到。只需更改apiUrl即可,我这个配置默认先从星空、携趣请求代理,二者都失败(用完)后再从巨量提取,修改groupIndex后面的数字即可修改优先顺序,例如把第三个groupIndex后面的2改成1则同时使用以上三个代理。
此处内容需要评论回复后(审核通过)方可阅读。
更改完成配置文件后需要重启容器
docker restart auto-proxy-pool
部署完成效果展示
后台地址为http://你的项目地址/admin,密码为/root/proxypool/admin.password文件内容,状态地址为http://你的项目地址/admin/status
![日志输出就是这个 日志输出就是这个](https://assets.qninq.cn/typecho/usr/uploads/2024/02/2178252296.png)
![后台也可编辑配置 后台也可编辑配置](https://assets.qninq.cn/typecho/usr/uploads/2024/02/3841625027.png)
![一部分展示 一部分展示](https://assets.qninq.cn/typecho/usr/uploads/2024/02/229372170.png)
代理调用效果展示
![正常日志 正常日志](https://assets.qninq.cn/typecho/usr/uploads/2024/02/4100578654.png)
![新农场 新农场](https://assets.qninq.cn/typecho/usr/uploads/2024/02/829017102.png)
配置文件解释
在后台和默认配置文件都能看到各项说明
#获取到的上游多久后失效,兼容格式 30s,20s100ms,0或者负数不自动失效(非长效不建议),建议30秒过期设置25秒,1分钟过期设置55秒
lifecycle: 27s
#保留几个上游,也就是代理池保留的坑位
maxSize: 2
#请求代理池提取API最低间隔,防止被封
requestInterval:1000ms
#已请求到的代理使用50s后请求新的代理,与lifecycle配合使代理请求更合理
proactive:50s
脚本调用
Python设置代理
局部代理
proxies = {"http":"http://ip:port","https":"http://ip:port"}
requests.get(url,proxies=proxies)
全局代理
我们只需要在青龙的config.sh文件添加http_proxy、https_proxy环境变量即可:
//仅支持http代理
export GLOBAL_AGENT_HTTP_PROXY="http://ip:port"
//支持http和https代理
export GLOBAL_AGENT_HTTPS_PROXY="http://ip:port"
JavaScript设置代理
JavaScript脚本并不像Python那样默认使用系统代理变量,如果需要使用代理进行请求,那只能在代码中设置。
nodejs依赖栏目中安装global-agent依赖
局部代理
在需要用代理的js脚本开头加入一行代码:
require('global-agent/bootstrap');
global.GLOBAL_AGENT.HTTP_PROXY="http://ip:port";
全局代理
我们只需要在青龙的config.sh文件添加GLOBAL_AGENT_HTTP_PROXY、GLOBAL_AGENT_HTTPS_PROXY环境变量即可:
//仅支持http代理
export GLOBAL_AGENT_HTTP_PROXY="http://ip:port"
//支持http和https代理
export GLOBAL_AGENT_HTTPS_PROXY="http://ip:port"
这部分内容来自autMan论坛
87 条评论
我再来学习一下
终于找到篇详细的教程了,想用一下配置文件
非常详细的教程,学习一下,感谢!
终于找到篇详细的教程了,想用一下配置文件
谢谢分享 学习学习
看看配置文件,其他文件一直错误
学习一下
学习一下
学习一下!