自动PikPak离线下载+aria2下载+释放网盘空间的TG机器人
得益于PikPak网盘与迅雷之间千丝万缕的联系,PikPak网盘的离线下载功能常常能做到秒离线。其服务器上资源之多,使其被戏称为”迅雷新加坡分雷“。对于已经下载不动的老磁力,不妨试试PikPak的离线下载,或许会有惊喜。
本项目实现了一个可以一键将磁力链接经pikpak离线后再下载到本地并删除对应网盘文件的tg机器人。只需简单配置,即可做到:磁力不担心,来去无痕迹。我只为磁力而来,不沾染一片尘埃。
不建议将存储重要文件的PikPak账号用于本项目!
因为部分命令删除文件的机制较强劲,容易在使用中操作不慎导致误删。
将项目文件下载到本地同一目录下。
安装依赖:
pip install -r requirements.txt
配置config.py
文件信息:
# TG机器人的令牌,tg找@BotFather创建机器人即可获取
TOKEN = 'token'
# TG用户ID,指定用户才能使用机器人
ADMIN_IDS = ['12345678']
# pikpak账号,可以为手机号、邮箱,支持任意多账号
USER = ["example_user1", "example_user2"]
# 账号对应的密码,注意与账号顺序对应!!!
PASSWORD = ["example_password1", "example_password2"]
# 自动删除配置,未配置默认开启自动删除,留空即可
# AUTO_DELETE = {"example_user1": "True", "example_user2": "False"}
AUTO_DELETE = {}
# 以下分别为aria2 RPC的协议(http/https)、host、端口、密钥
ARIA2_HTTPS = False
ARIA2_HOST = "example.aria2.host"
ARIA2_PORT = "port"
ARIA2_SECRET = "secret"
# aria2下载根目录
ARIA2_DOWNLOAD_PATH = "/mnt/sda1/aria2/pikpak"
# 可以自定义TG API,也可以保持默认
TG_API_URL = 'https://api.telegram.org'
最后:
python pikpakTgBot.py
这样你的机器人就上线工作啦!当然最好还是使用如pm2
等进程守护工具在后台守护运行。
git clone 本项目
# 编辑`config.py`文件,配置信息如上所述。
# 构建镜像
docker-compose build
# 启动容器,后台运行
docker-compose up -d
其他参考命令:
# 查看容器状态
docker-compose ps
# 停止、启动、重启容器
docker-compose stop | start | restart
# 停止容器并删除容器
docker-compose down
# 启动容器,后台运行
docker-compose up -d
# 查看日志信息
docker logs pikpakbot
git clone
本项目。config.py
文件,配置信息如上所述。PikPakAutoOfflineDownloadBot
├── Dockerfile
├── README.md
├── __init__.py
├── config.py
├── docker-compose.yml
├── pikpakTgBot.py
└── requirements.txt
4.制作docker镜像,运行容器
cd /root/PikPakAutoOfflineDownloadBot
docker build . --tag pikpakbot
docker run \
--name=pikpakbot \
--restart=always \
-d \
-v /root/PikPakAutoOfflineDownloadBot:/code \
pikpakbot
6.运行文件采用挂载方式,如果需要修改配置,可以直接修改/root/PikPakAutoOfflineDownloadBot
下的文件,然后重启容器即可。
机器人监听的命令如下:
命令 | 含义 | 用法 | 备注 |
---|---|---|---|
/start |
获取帮助信息 | /start |
无 |
/help |
获取帮助信息 | /help |
无 |
/p |
一键下载磁力到本地 | /p magnet1 [magnet2] [...] |
支持多个磁力链接;直接发送磁力链接也能识别;支持pikpak能够解析的普通链接,如Twitter视频、ed2k链接等 |
/clean |
清空指定账号的网盘 | /clean account1 [account2] [...] |
/clean all 清空所有账号网盘 |
/account |
管理账号 | /account l/a/d/n [parameters] |
向机器人发送/account 获取详情 |
/clean
命令清空文件无法找回!请慎用!
部分命令使用情况如下图所示:
xx not saved successfully!
的信息,
原因为pikpak
默认不离线广告文件/p
命令不会阻塞进程,意味着可以在正在下载上一个磁力的过程中,继续添加磁力,但是依然会排队等待下载/p
命令可能存在部分文件下载失败的情况,tg机器人会发送消息给出解决方案,也欢迎带日志反馈失败的情况/clean
命令会阻塞进程,这是为了避免出现一边下一边删的情况