首页 > 其他分享 >qBittorrent如何运行脚本 BT实现自动改名并方便Jellyfin的搜刮器

qBittorrent如何运行脚本 BT实现自动改名并方便Jellyfin的搜刮器

时间:2023-08-24 22:12:56浏览次数:41  
标签:脚本 qBittorrent argv BT first 运行 Jellyfin

qBittorrent

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-nox

by 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,argv,BT,first,运行,Jellyfin
From: https://www.cnblogs.com/itgeeker/p/17655271.html

相关文章

  • IPC-7093A-CN 中文 2020底部端子元器件(BTCs)设计和组装工艺的实施
    IPC-7093A标准为实施底部端子元器件(BTCs)提供了基本的设计和组装指南。具体而言,IPC-7093A提供了与BTCs相关的关键设计、材料、组装、检查、维修、质量和可靠性问题的指南。https://pan.baidu.com/s/1Xs3iAvQa_HmhefazZb_3fwhttps://share.weiyun.com/94N9Vxcd 底部端子......
  • Failed to execute 'btoa' on 'Window': The string to be encoded contains characte
    在使用浏览器内置APIbtoa()编码base64时:报错Failedtoexecute'btoa'on'Window':ThestringtobeencodedcontainscharactersoutsideoftheLatin1range报错信息解释:报错信息中指出字符串中包含了Latin1范围之外的字符,导致无法使用window.btoa进行解析。根据你提供......
  • 2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subte
    2023-08-18:用go写算法。你会得到一个字符串text,你应该把它分成k个子字符串(subtext1,subtext2,…,subtextk)。要求满足:subtexti是非空字符串,所有子字符串的连接等于text,(即subtext1+subtext2+...+subtextk==text),subtexti==subtextk-i+1表示所有i的有......
  • 2023-08-18:用go写算法。你会得到一个字符串 text, 你应该把它分成 k 个子字符串 (subte
    2023-08-18:用go写算法。你会得到一个字符串text,你应该把它分成k个子字符串(subtext1,subtext2,…,subtextk)。要求满足:subtexti是非空字符串,所有子字符串的连接等于text,(即subtext1+subtext2+...+subtextk==text),subtexti==subtextk-i+1表示所有......
  • 删除windows版Adobe Photoshop (Btea)的Creative Cloud Files文件夹快捷方式
    计算机\HKEY_USERS\S-1-5-21-3673781915-3232438367-201350203-500\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace我的电脑是win11,其中的S-1-5-21-3673781915-3232438367-201350203-500可能有变化,其他的都是一样的,{0E270DAA-1BE6-48F2-AC49-A60F94A42F2......
  • 命令 nbtstat -R 的使用场合
    nbtstat是一个在Windows系统中用于诊断NetBIOSoverTCP/IP(NBT)的命令行工具。NetBIOSoverTCP/IP是一种可以在TCP/IP网络上使用NetBIOS服务的协议。NetBIOS是一种较旧的网络协议,主要用于小型局域网中的名称解析和数据共享。虽然现代网络通常使用DNS进行名称解析,......
  • dbt 官方提供的一些强大的周边扩展
    官方提供的一些不错的dbt周边扩展metricflow此功能属于dbt语义曾的一个核心组件这个是官方在推广的,对于我们进行数据分析很不错,参考玩法dbt-meshify这个属于dbtcore的一个扩展,提供了创建group,contract,access,version以及进行项目split的能力dbt-docs自动生成文档的,基于......
  • 利用IPV6随时访问家中影音Jellyfin
    本文章主要记录通过ipv6实现家庭影音中心在互联网上的访问。之前很多方案都是通过第三方进行内网穿透,实际体验不是很好。目前ipv6发展迅速,完全可以取代这种以ipv4为中心的内网资源外网访问的方式。ipv6使得ip地址不再紧缺,只需要家中网络一点小小的改变即可实现在外访问家庭影音......
  • 利用IPV6随时访问家中影音Jellyfin
    本文章主要记录通过ipv6实现家庭影音中心在互联网上的访问。之前很多方案都是通过第三方进行内网穿透,实际体验不是很好。目前ipv6发展迅速,完全可以取代这种以ipv4为中心的内网资源外网访问的方式。ipv6使得ip地址不再紧缺,只需要家中网络一点小小的改变即可实现在外访问家庭影音中......
  • Subtree 题解
    Subtree题目大意给定一颗树,你可以选出一些节点,你需要对于每个点求出在强制选这个点的情况下所有选择的点联通的方案数,对给定模数取模。思路分析对于这种求树上每一个点方案数的题目,首先考虑换根DP。强制嵌定树根为\(1\),设\(f_i\)表示在\(i\)的子树中选点,\(i\)强制选,所......