前言
P(๐•ᴗ•๐)lish Helper是一个基于Python 3.10和PyQt6开发的具有图形化界面的处理视频资源软件,并可以实现一键发布到PT站点。本软件界面清晰简洁,操作逻辑明了,即便是新手也可以轻松使用。
目前的一些简单的功能有:
- 自动获取PT-Gen简介信息(需要PT-Gen API)
- 自动获取MediaInfo信息
- 自动截图
- 自动获取缩略图
- 并上传图床(需要自行获取图床的API)
- 根据简介信息和MediaInfo信息自动分析生成主副标题和文件名
- 自动将资源塞入文件夹并重命名
- 自动将资源制作种子
- 剧集、短剧资源自动批量重命名(新)
- 支持剧集短剧分集命名(新)
- 自定义重命名规则(新)
- 结合auto_feed脚本实现一键上传内容(新)
- 短剧一键生成简介(新)
- 重命名时制作硬链接(新)
以上的所有功能均可以独立运行,各位可以根据需要选择使用不同的功能,点击对应功能下方的按钮即可,也可以一键启动所有功能。此软件的用途不局限于发布原创资源,如果您转载资源时遇到了图片失效、简介不规范、缺少MediaInfo,或者已下载的资源命名不规范导致无法刮削,均可以使用此软件的独立功能帮助您。
一些废话
v1.1.x的P(๐•ᴗ•๐)lish Helper还是一个bug满天飞的非常不成熟的辣鸡项目,经过几个(๐•ᴗ•๐)的实际使用,修复了无数bug,现在我们的P(๐•ᴗ•๐)lish Helper迎来了全新版本!
现在的PH:一个软件就可以支持电影、剧集、短剧的处理。经过此软件处理的资源可以使用NT、MP、MS等自动化软件完美刮削,处理后可以一键发布。
在v1.2.0版本重构了绝大部分代码,将电影处理和短剧处理从两个独立的软件合并到一起,并结合产生了剧集的处理功能。
在v1.2.6版本重构了所有的命名逻辑代码,命名不再是固定格式,用户可以根据自己的需求去自定义命名规则。
在v1.3.0版本适配了基于auto feed脚本的将信息一键上传功能,在这里感谢脚本作者明日大佬和脚本维护者N佬!
在v1.4.0版本新增了RESTful风格的API接口功能,可以方便其他软件直接调用,详见【API文档】。
软件界面预览图
电影
剧集
短剧
软件的安装
1. 下载软件
打开本仓库Releases,下载最新的zip文件。
如果中国大陆GitH(๐•ᴗ•๐)下载缓慢,可访问Gitee仓库Releases,内容会同步更新。
2. 解压软件
解压下载后的zip压缩包,获取解压后的文件夹,并且储存到你想要存的地方。
3. 运行软件
打开解压后的P(๐•ᴗ•๐)lish Helper文件夹,双击运行P(๐•ᴗ•๐)lish Helper.exe应用程序,耐心等待软件启动。
至此,软件安装已完成,如果后期需要移动软件位置,请将文件夹整个移动,不要仅移动exe文件。
使用软件
使用软件前请先看设置!!!
设置
我们先从设置开始了解P(๐•ᴗ•๐)lish Helper。
常规
如上图所示,这个页面是常规设置页面,内部包含一些基本的参数设置,下面将一一讲述其功能。
- PT Gen地址:PT Gen是一个开源的API接口方案,对其发送资源的豆瓣链接或者IMDb链接即可获取一定格式的资源简介信息,本软件通过此接口获取资源信息。有很多公共开放的PT Gen接口,例如
https://ptgen.lgto.workers.dev
https://ptgen.caosen.com
等,也可以自行搭建,GitH(๐•ᴗ•๐)上就有相关的开源项目,各位可以根据自己的网络情况自行选择。
- 图床API地址:用于自动上传图片功能,目前支持的免费公共图床:【freeimage】 【imgbb】,支持的公共图床架构:【兰空图床(Lsky Pro)】。后续将支持更多图床,注意图床的API地址需要到图床官网注册后从API页面获取,官网地址不是API地址!(如果不需要自动上传图床功能可以不填)
- 图床API令牌:用于自动上传图片功能,同理,从图床官网免费获取。(如果不需要自动上传图床功能可以不填)
- 截图储存地址:用于储存截图功能和获取缩略图功能所产生图片的位置,可以自行选择。
- 种子储存地址:用于储存制作种子的位置,可以自行选择。
- 截图数量:获取的截图总数。(一次最多5张,可以多次获取)
- 关键帧复杂度:截图时用于判断画面的复杂性,从而避免截取黑帧、纯色或极度模糊等无意义的画面。建议参数设置在20-40之间,可以适当调整,不建议太高。
- 截图起始点:截图开始时间点占整部影片时长的百分比(用小数表示),建议大于0.08,从而避免截取到片头。
- 截图终止点:截图终止时间点占整部影片时长的百分比(用小数表示),建议小于0.92,从而避免截取到片尾。
- 自动上传图床:选择后会将获取的截图自动上传到指定图床,需要提前配置图床API地址和令牌,上传图床速度取决于个人网速,不要反复点击。
- 将链接粘贴到简介后:选择后当获取到图床返回的图片链接时,会自动将BBS代码粘贴到简介后面,方便各位发布。
- 上传后删除本地图片:选择后当图片成功上传到图床,将自动删除本地的图片,从而节省(๐•ᴗ•๐),上传失败不会删除图片。
- MediaInfo工具后缀:选择后会在生成的MediaInfo信息最后自动加上
Created by P(๐•ᴗ•๐)lish Helper
后缀,就是一个小广告啦,平常MediaInfo是收起状态,不会显示。
- 生成缩略图:选择后会自动根据你设置的横向数量和纵向数量创建缩略图。
- 自动将文件(文件夹)重命名:选择后在获取标准命名时会自动给文件(文件夹)重命名为标准格式。
- 将电影放入同名文件夹:选择后在获取标准命名时会将电影放入与其标准命名同名的文件夹,方便后续刮削。
- 二次确认文件名:选择后将在重命名前向您二次确认,您可以手动修改命名或者取消命名。
- API功能,可以通过调用API接口实现相关功能,请参考【API文档】。
命名
如上图所示,这个页面是命名规则设置页面,用于自定义的命名规则。本页面有三个子页面,可以分别对电影、剧集和短剧设置命名规则。
每个子页面都有三个栏目,分别对主标题、副标题和文件名定义命名规则。默认我已经填好了一个比较普遍认同的命名规则,参考的是末日种子库官方WiKi。如果您需要自定义,可以参考格式对其进行修改,下方的占位符可以用于替换可识别的信息。
红色选项可通过修改static/abbreviation.json
文件进行自定义,蓝色选项可通过修改static/source.json
static/team.json
进行自定义,从而满足您的需要。
上传
如上图所示,这个页面是上传设置页面,用于设置上传规则。
在使用此软件的一键上传功能前,您需要在您的浏览器中安装最新版本的auto_feed脚本,具体脚本安装过程省略。
此脚本目前适配了绝大部分的PT站点,本人精力有限,无法逐一测试,望理解。您需要将链接最前方的example.com
替换为您需要发布的站点域名,如果您不确定怎么使用请不要对除了域名外任何地方做任何修改!!!
选择下方的自动打开链接后,在点击获取auto feed链接后会自动通过默认浏览器打开链接,真正意义上的实现一键上传,注意您的默认浏览器需要安装auto feed。
发布
电影
以电影《狗神》为例
- 从豆瓣电影获取影片的豆瓣链接。
- 将链接粘贴到PH对应位置,点击文件选择资源,选择资源来源和小组。
- 点击获取标准命名,并确认文件名是否符合要求。
- 依次点击获取MediaInfo、获取截图、制作种子。
- 等待图片上传完毕、种子制作完毕后,点击将当前信息生成auto feed链接,会自动打开发布页面,选择上传在上一步软件制作好的种子文件。
- 确认无误后可点击发布。
PS:熟练后可以尝试一键启动。
剧集
逻辑大体与电影相同,批量命名时默认按文件名排序,使用前可以在资源管理器里检查一下文件顺序是否错误。季数请手动选择,如果不是从第一集开始,请手动设置开始集数。
处理完毕的剧集:
短剧
逻辑大体与剧集相同,短剧指没有被豆瓣收录的资源,兼容横竖屏。您需要手动输入年份、季数、简介、上传封面和选择类型,英文名称会自动获取汉语拼音。
处理完毕的短剧:
Q&A
我想修改默认的小组选项,从而适配我的站点
用记事本打开static/combo-box-data.json
,按照格式修改成你想要的内容,资源来源、短剧类型同理,均可自定义。
{
"team": [
"YOURTEAM",
"YOURWEB",
"YOURMUS",
""
]
}
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
我在获取文件名称时,我想使用H.264、H.265来代替AVC、HEVC
用记事本打开static/abbreviation.json
,按照格式修改成你想要识别的内容。
"HEVC": "H.265",
"AVC": "H.264",
"你想修改的信息": "你想要的信息",
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
我在获取文件名称时,分辨率或者音频编码不能正确识别
用记事本打开static/abbreviation.json
,按照格式添加你想要识别的内容,视频编解码、色深、HDR信息、帧数信息、音频信息、声道数同理,均可自定义。
"1 920 pixels": "1080p",
"x265": "x265",
"SMPTE ST 2086, HDR10 compatible": "HDR10",
"60.000 FPS": "60FPS",
"DTS-HD Master Audio": "DTS-HD MA",
"L R C LFE Ls Rs Lb Rb": "7.1",
"没有正确识别所产生的信息": "你想要的缩略信息",
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
我在获取文件名称时,不想表示24FPS的信息
用记事本打开static/abbreviation.json
,按照以下格式填写代码。
"24.000 FPS": "",
"不想识别的信息": "",
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
用记事本打开static/picture-bed-data.json
,按照以下格式填写代码。
"lsky-pro": [
"https://your.picture.bed/API/v1/upload",
"https://example1.picture.bed/API/v1/upload",
"https://example2.picture.bed/API/v1/upload"
],
if(window.hljsLoader && !document.currentScr(๐•ᴗ•๐).parentNode.hasAttribute('data-s9e-livepreview-onupdate')) {
window.hljsLoader.highlightBlocks(document.currentScr(๐•ᴗ•๐).parentNode);
}
结语
本软件永久免费开源,作为一个自动处理视频资源的解决办法,任何组织和个人可以在遵守GPL-3.0开源协议的前提下使用此软件或二次开发用于任何非盈利性目的。
软件在Releases中自行下载,如果帮助到您请帮忙在GitH(๐•ᴗ•๐)仓库点个Star,非常感谢!