qBittorrent如何运行脚本 BT实现自动改名并方便Jellyfin的搜刮器
qBittorrent如何运行脚本 BT实现自动改名并方便Jellyfin的搜刮器
很多影视网站下载的视频名字大概是为了规避监测,命名非常奇葩,比如:z灼f流,y骨y等等。如果你使用了Jellyfin,Emby又或者是其他视频管理软件,搜刮器就会搜不到相应的电视剧的介绍,图片和字幕了,但是40多集电视剧每一集都要改就有些麻烦了。
还有一些电影,BT下载后会带有网站的一些网址或名称,比如:【高清影视之家发布 www.HDBTHD.com】,【高清影视之家首发 www.BBEDDE.com】等。还有目录里会放一些以MP4或者PNG结尾的假的宣传文件,这就会影响Jellyfin之类的搜刮相关的影视介绍和字幕。
如果你使用的是qBittorrent的话,那么你就可以使用它的“运行外部程序”功能,可以再BT下载创建时或者完成时运行不同的脚本。依据所有开发语言都是脚本语言的概念,你可以运行Bash脚本,也可以运行Python,当然也可以运行JS或者其他任何语言的脚本。如果你使用的是Windows系统,安装一下Python语言,然后就可以让qBittorrent自动运行你的python脚本了。比如:
- 自动重命名文件夹
- 删除图片及网站的宣传文件
- 重命名视频文件的名称
- 删除完成的种子
- 或者其他任何你想要的行动等等
如何找到qBittorrent“运行外部程序”功能?
可能有些人在qBittorrent的设置里并没有找到可以配置运行外部脚本的选项,其实这个选项并不在桌面应用的设置界面,而是在网页版界面的设置里。

这是我设置了8181端口,这个可以在桌面应用-设置的“Web UI”选项里配置。
by itgeeker.net
这里有两个方式运行自定义脚本,qBittorrent称之为外部程序。一个是新增BT现在时,另一个是完成下载后运行。分别是:
- 新增 torrent 时运行外部程序
- torrent 完成时运行外部程序
ITGeeker技术奇客这里 以BT下载完成后如何运行Python脚本为例与大家分享。
qBittorrent脚本参数
qBittorrent在配置的下方很贴心的附上了脚本运行可能需要的变量。这些是qBittorrent支持的参数(区分大小写):
- %N:Torrent 名称
- %L:分类
- %G:标签(以逗号分隔)
- %F:内容路径(与多文件 torrent 的根目录相同)
- %R:根目录(第一个 torrent 的子目录路径)
- %D:保存路径
- %C:文件数
- %Z:Torrent 大小(字节)
- %T:当前 tracker
- %I: 信息哈希值 v1
- %J:信息哈希值 v2
- %K: Torrent ID
提示:使用引号将参数扩起以防止文本被空白符分割(例如:”%N”)
qBittorrent的脚本运行命令如何配置?
WINDOWS运行PYTHON脚本命令格式:
D:\pyenv311_itgeeker_dev\Scripts\python.exe D:\download_dev\qbit_after.py "%F"
UBUNTU运行PYTHON脚本命令格式:
/bin/python3 /opt/qbit_after.py "%F"
#或者使用Bash脚本
sh /opt/qbit_after.sh "%F"
- 前面是Python命令的完整路径,ITGeeker技术奇客在Windows里用的python虚拟环境,也建议使用虚拟环境以免和其他python环境冲突。
- 中间是脚本的完整路径,根据你脚本的实际位置填写。这里也可以是其他脚本,比如sh,js,perl等,但要和前面的运行命令统一。
- 最后是qBittorrent支持的参数”%F”,值得是下载后的BT内容完整目录。这里是把该参数传递给qbit_after.py这个脚本使用。
Ubuntu安装带有WebUI的qBittorrent
sudo apt install -y qbittorrent-noxby itgeeker.net
Python运行脚本
接下来就是python命令的编写,这里分享ITGeeker技术奇客写的部分脚本:
if len(sys.argv) > 1:
first_argv = sys.argv[1]
print('first_argv: %s' % first_argv)
is_file = check_is_a_file(first_argv)
if not is_file:
remove_files_from_folder(first_argv)
else:
update_film_name(first_argv)
提示:这里需要先判断一下(check_is_a_file)下载的是文件还是目录,有些BT下载后直接是文件,有些是目录。然后再进行相应操作。
by itgeeker.net
qBittorrent如何运行脚本 BT实现自动改名并方便Jellyfin的搜刮器的更多相关文章
- msf客户端渗透(七):跳板、post模块、自动运行脚本
跳板 假设有这样一个场景,有一个局域网内网网关是1.1.1.1,局域网里的主机1是kali,它经过一个防火墙连接到公网,主机2和主机3在另一个内网网关为2.1.1.1的局域网,由于防火墙做了设置,只有 ...
- Crontab无法自动执行,直接运行脚本却能执行
Crontab无法自动执行,直接运行脚本却能执行 http://bbs.chinaunix.net/thread-1926428-1-1.html crontab -e crontab内容为* * * ...
- 安卓8.0真机运行appium1.4遇到的问题:运行自动化脚本,手机自动安装 settings.apk和unclock.apk,执行脚本时提示安装UnicodeIME-debug.apk失败,怎么关掉自动安装?
运行自动化脚本,手机自动安装 settings.apk和unclock.apk,执行脚本时提示安装UnicodeIME-debug.apk失败,怎么关掉自动安装? 这3个apk的目录分别是: D:\P ...
- ubuntu20.04开机自动运行脚本实例
在 Ubuntu 20.04 中,/etc/rc.local 文件仍然存在,但不再默认启用,因为它已经被 systemd 代替.下面是使用systemd开机执行的脚本的实例: 1.编写脚本myscri ...
- 用 crontab 实现开机自动运行脚本
开发「bufpay.com 个人即时到账收款平台」的时候,订单状态和支付二维码的状态如果过期了要实时修改状态,最大效率利用支付二维码. 过期脚本需要开机启动,并且 deamon 运行,有很多办法可以开 ...
- 用expect做自动运行脚本
下面的脚本演示了在Ubuntu上安装expect,写一个切换用户的expect脚本,并运行脚本看到效果的过程. root@guserver:~# apt-get install expect godu ...
- Windows 上的应用程序在运行期间可以给自己改名(可以做 OTA 自我更新)
原文:Windows 上的应用程序在运行期间可以给自己改名(可以做 OTA 自我更新) 程序如何自己更新自己呢?你可能会想到启动一个新的程序或者脚本来更新自己.然而 Windows 操作系统允许一个应 ...
- inno安装卸载时检测程序是否正在运行卸载完成后自动打开网页-代码无效
inno安装卸载时检测程序是否正在运行卸载完成后自动打开网页-代码无效 inno setup 安装卸载时检测程序是佛正在运行卸载完成后自动打开网页-代码无效 --------------------- ...
- Oracle12c中多宿主容器数据库(CDBs)和可插拔数据库(PDBs)新特性之运行脚本
对开发者和DBA们来说,对shell脚本批量任务的影响成了多宿主选项带来的最大改变之一.因为多宿主环境通过服务来连接到可插拔数据库,因此,依靠CRON和OS认证成了换成多宿主环境后的一个最大问题.本文 ...
- loadrunner 运行脚本-Run-time Settings-Browser Enmulation设置详解
运行脚本-Run-time Settings-Browser Enmulation设置详解 by:授客 QQ:1033553122 浏览器模拟 所有Internet Vuser Header包含一个标 ...
随机推荐
- odoo开发教程十五:仪表板
仪表盘可以通过外部ID引用其他视图文件的内容,整合到一个界面进行显示. 一:建立仪表盘视图文件 views/session_board.xml: 通过外部id引入要展示的视图文件--定义仪表板form ...
- Dapr在Java中的实践 之 服务调用
服务调用 通过服务调用(Service-to-service Invocation),服务可以使用 gRPC 或 HTTP 这样的标准协议来发现并可靠地与其他服务通信. Dapr采用边车(Sideca ...
- Vue3从入门到精通(二)
vue3 侦听器 在Vue3中,侦听器的使用方式与Vue2相同,可以使用watch选项或$watch方法来创建侦听器.不同之处在于,Vue3中取消了immediate选项,同时提供了新的选项和API. ...
- 【python基础】复杂数据类型-字典(遍历)
一个字典可能只包含几个键值对,也可能包含数百万个键值对,所以Python支持字典遍历.字典可用于以各种方式存储信息,因此有多种遍历字典的方式:可遍历字典的所有键值对.键或值. 1.遍历所有的键值对 其 ...
- 爬取豆瓣Top250图书数据
爬取豆瓣Top250图书数据 项目的实现步骤 1.项目结构 2.获取网页数据 3.提取网页中的关键信息 4.保存数据 1.项目结构 2.获取网页数据 对应的网址为https://book.douban ...
- 一个支持WinForms换肤的开源组件
推荐一个一键换肤的WinForms皮肤组件. 项目简介 这是一个支持自定义WinForms窗口.控件颜色.禁用状态.动画效果的皮肤组件. 支持的组件有:多选框.分割线.按钮.文本框.单选按钮.输入框. ...
- 【HarmonyOS】【ArkTS】如何使用HTTP网络请求获取动态数据刷新UI界面
[关键字] HttpRequest.ArkTS.网络数据请求.@ohos.net.http [前言] 在使用ArkTS开发HarmonyOS应用时,需要调用HTTP网络请求 @ohos.net.h ...
- .NET源码解读kestrel服务器及创建HttpContext对象流程
.NET本身就是一个基于中间件(middleware)的框架,它通过一系列的中间件组件来处理HTTP请求和响应.因此,本篇文章主要描述从用户键入请求到服务器响应的大致流程,并深入探讨.NET通过kes ...
- 【笔试实战】LeetCode题单刷题-编程基础 0 到 1【二】
1822. 数组元素积的符号 题目链接 1822. 数组元素积的符号 题目描述 已知函数 signFunc(x) 将会根据 x 的正负返回特定值: 如果 x 是正数,返回 1 . 如果 x 是负数,返 ...
- Windows 环境下Docker 安装伪分布式 Hadoop
1.环境 Windows 11 Docker 20.0.2 2.拉取镜像 我选择 ubuntu20.04: docker pull ubuntu:20.04 然后我们用命令看一下本地镜像: docke ...