基于clash 核心运作的、进行全量订阅测试的telegram机器人
FullTclash bot 是承载其测试任务的Telegram 机器人(以下简称bot),目前支持以clash配置文件为载体的批量流媒体测试,支持以下流媒体测试条目:
-
Netflix
-
Youtube
-
Disney Plus
以及 HTTP ping 的体感延迟测试。
要成功运行该项目代码,首先需要准备以下信息:
-
Telegram 的api_id 、api_hash 获取地址 不会请Google。
-
去 @BotFather 那里创建一个机器人,获得该机器人的bot_token,应形如:
bot_token = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
这步不会请Google。
-
一个clash 核心, 下载地址。(可选,你可以用Releases里默认的)
-
字体文件。(可选,可以用默认的)
-
Python 3.5 以上
-
aiohttp>=3.8.1
-
async_timeout>=4.0.2
-
beautifulsoup4>=4.11.1
-
Pillow>=9.2.0
-
pilmoji>=2.0.1
-
Pyrogram>=2.0.26
-
PyYAML>=6.0
-
requests>=2.26.0
您可以用以下命令,在当前项目目录下运行以快速安装环境(Windows):
pip install -r requirements.txt
您需要在项目文件目录下,放置一个已经登陆好的.session后缀文件,这个文件是程序生成的,形如: my_bot.seesion
方法1: 您可以参阅这篇文档,以快速获得后缀为 .session 的文件
方法2: 项目中有一个文件名为 login.py ,可以通过指令运行它:
python .\login.py
当程序退出后即可自动生成一个名为 my_bot.session 的文件
一般是7890端口,但是该端口会与目前项目冲突,因此请将7890端口留给本项目使用,具体方法google搜索:Clash 更改代理端口
-
代理配置
如果是在中国大陆地区使用,则程序需要代理才能连接上Telegram服务器。位于testurl.py 的第14行proxies变量那里,将代理端口改为代理软件的服务端口
-
修改 USER_TARGET 变量, 在testurl.py 的第8行,将其修改您想要的目标人物,该目标将拥有使用权。注意:如果此步不修改,那机器人是不会理您的
-
修改 USERNAME 变量,在testurl.py 的第11行,将其修改为您自己bot的用户名
在项目目录下运行以下指令
python .\testurl.py
如果什么反应都没有,请按 Ctrl + C 一次,出现“程序已启动!”字样就说明在运行了. 运行之后和bot私聊命令: /testurl 订阅地址 即可开始测试
-
FullTclash bot 默认采取远程clash 订阅配置,因此部分测试结果会不准确(这种情况涉及到您的代理提供商的配置写法)
-
如果节点名称含有国旗等emoji ,最后图片输出时可能会失败。
目前项目尚未成熟,我们欢迎各方朋友提出针对性的反馈:
在项目页面提出issue