实现基础:傻妞、qbittorrent、docker
自从有了傻妞,我就想着得让她成为我的小助理,有事儿了呼叫一下,剩下的就不管了。然后,今天就带来一个一键下载功能。
仓库开源,https://github.com/LeanFly/qBit-api
## 拉取镜像:
docker pull leanfly/qbit-api:latest
## 创建文件夹x,然后在x下创建一个qbit.py脚本,复制以下代码到qbit.py,也可以去仓库拿:https://github.com/LeanFly/qBit-api
# coding=utf-8
from qbittorrent import Client
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get("/qbit")
async def qBitDownload(magnet: str):
# 连接qbit的webUI,填写相应的qbit webUI访问地址
qbit = Client("http://ip:port")
# 登录webUI,填写相应的用户名、密码
qbit.login("username", "password")
# 开始下载
qbit.download_from_link(magnet)
return "done"
if __name__ == "__main__":
uvicorn.run(app, host='0.0.0.0', port=8000)
上面的代码中,qbit=Client("http://ip:port"),这里请填入自己的qbit的webUI访问地址,比如:qbit=Client("http://192.168.1.233:8080")。然后qbit.login("username", "password"),这里请填写qbit的用户名密码
## 一键梭哈:
docker run -dit --name qbit-api -p 8008:8000 -v $PWD/qbit.py:/code/qbit.py leanfly/qbit-api:latest
## 浏览器访问:http://ip:port/qbit?magnet=(下载链接),要传入的下载链接填在=后面,没有括号
## 对接傻妞:
- 进入傻妞主代码目录的develop下的replies目录,创建一个js文件,比如qbit.js,然后将下面的代码复制到qbit.js,获取直接去仓库拿 https://github.com/LeanFly/qBit-api
// [rule: 下载 ? ]
// 获取传入的下载链接
var key = param(1);
var data = request({
url: "http://ip:port/qbit?magnet=" + key,
method: "get",
})
sendText(data)
上面的代码中,rule可以自定义,需要的自己添加,复制一行,然后改掉文字就行。url这里填写上面搭建的qbit API的访问地址
## 重启傻妞,加载插件,然后就可以使用了。
#### 附上群晖的
拉取镜像

创建qbit.py文件,可以复制上面的代码,也可以去仓库下载:https://github.com/LeanFly/qBit-api

修改自己的配置

创建容器,在高级里面挂载qbit.py文件,在端口配置里配置自己喜欢的端口,配置完应用然后启动容器


对接傻妞的部分参考上面👆
对接完之后发送指令的效果如下


支持一下呀
前来顶贴!
32位的用不了傻妞