Proxypool搭建
自动抓取tg频道、订阅地址、公开互联网上的ss、ssr、vmess、trojan节点信息,聚合去重测试可用性后提供节点列表,仅作为学术研究用途。
Github高赞的同名Proxypool项目有两个, Germey的抓取全网HTTP代理用作爬虫使用,zu1k的则抓取Vmess,SS等用作流量中转用途。
目前存在的问题是,全网公开的节点信息良莠不济,节点速度慢,连通率低。另一方面则是部署在外网只能测试连通性,无法检测是否被墙。
机场代理筛选(推荐):https://github.com/ssrlive/proxypool
解决方案就是:
1.抓取列表全部选为TG频道,毕竟即时通讯软件的信息时效有天然优越性,频道选少众的偏UGC化的(各种服务器测试频道,而非节点分享)。
2:部署在国内,只在爬取过程中加一道代理,验证依旧使用国内IP。或者反过来 部署在国外,验证加一道国内代理即可。
部署安装:
1、从源码编译
需要 安装 Golang , 然后拉取代码,
go get -u -v github.com/ssrlive/proxypool@latest
或者,拉取代码的另一种方式
git clone https://github.com/ssrlive/proxypool.git
cd proxypool
go get
go build
然后编辑 config/config.yaml 和 config/source.yaml 最后运行命令
./proxypool -c ./config/config.yaml
或者从源代码运行
go run main.go -c ./config/config.yaml
2、下载预编译程序
从这里下载预编译好的程序 release
3、使用docker
运行下面的命令下载 proxypool 镜像
docker pull lukemin/ssrlive-proxypool
下载config.yaml&source.yaml到/path/to/config
wget https://raw.githubusercontent.com/ssrlive/proxypool/master/config/config.yaml
wget https://raw.githubusercontent.com/ssrlive/proxypool/master/config/source.yaml
然后运行 proxypool 即可
XML/HTML代码
- docker run -d --restart=always \
- --name=proxypool \
- -p 12580:12580 \
- -v /opt/proxypool/config:/config \
- -c /config/config.yaml \
- lukemin/ssrlive-proxypool
使用 -p 参数映射配置文件里的端口
使用 -v 参数指定配置文件夹位置(配置文件要自行下载放到目录,方便修改)
使用 -c 参数指定配置文件路径,支持http链接
使用
运行该程序需要具有访问完整互联网的能力。
修改配置文件
首先修改 config.yaml 中的必要配置信息,带有默认值的字段均可不填写
source.yaml 文件中定义了抓取源,需要定期手动维护更新
完整的配置选项见配置文件说明
启动程序
使用 -c 参数指定配置文件路径,支持http链接
./proxypool -c ./config/config.yaml
简单一键Docker
XML/HTML代码
- docker run -d --name=proxypool -p 12580:12580 -v /opt/proxypool/config:/config --restart=always lukemin/ssrlive-proxypool -c /config/config.yaml
如果需要部署到VPS,更多细节请查看wiki。
Clash配置文件
远程部署时Clash配置文件访问:https://domain/clash/config
本地运行时Clash配置文件访问:http://127.0.0.1:[端口]/clash/localconfig
本地检查节点可用性
此项非必须。为了提高实际可用性,可选择增加一个本地服务器,检测远程proxypool节点在本地的可用性并提供配置,见proxypoolCheck。
也可以傻瓜无脑搜索人家服务器自己验证后使用,比如谷歌搜索 Theme by Sansui233 Powered by Bulma 。
或者使用下面渗透专用搜索引擎搜索关键字:免费的ss、ssr、vmess、torjan节点
ProxyPool 爬虫代理IP池(http/https/socks)
ProxyPool爬虫代理IP池项目,主要功能为定时采集网上发布的免费代理验证入库,定时验证入库的代理保证代理的可用性,提供API和CLI两种使用方式。同时你也可以扩展代理源以增加代理池IP的质量和数量。
运行项目
下载代码:
git clone
XML/HTML代码
- git clone git@github.com:jhao104/proxy_pool.git
XML/HTML代码
- https://github.com/jhao104/proxy_pool/releases 下载对应zip文件
XML/HTML代码
- pip install -r requirements.txt
XML/HTML代码
- # setting.py 为项目配置文件
- # 配置API服务
- HOST = "0.0.0.0" # IP
- PORT = 5000 # 监听端口
- # 配置数据库
- DB_CONN = 'redis://:pwd@127.0.0.1:8888/0'
- # 配置 ProxyFetcher
- PROXY_FETCHER = [
- "freeProxy01", # 这里是启用的代理抓取方法名,所有fetch方法位于fetcher/proxyFetcher.py
- "freeProxy02",
- # ....
- ]
启动项目:
XML/HTML代码
- # 如果已经具备运行条件, 可用通过proxyPool.py启动。
- # 程序分为: schedule 调度程序 和 server Api服务
- # 启动调度程序
- python proxyPool.py schedule
- # 启动webApi服务
- python proxyPool.py server
Docker Image
XML/HTML代码
- docker pull jhao104/proxy_pool
- docker run --env DB_CONN=redis://:password@ip:port/0 -p 5010:5010 jhao104/proxy_pool:latest
docker-compose
项目目录下运行:
XML/HTML代码
- docker-compose up -d
使用Api
启动web服务后, 默认配置下会开启 http://127.0.0.1:5010 的api接口服务,详细设置参考官方说明文档。
支持流媒体加强版