首页
/ `tvnamer` 技术文档

`tvnamer` 技术文档

2024-12-23 09:39:59作者:仰钰奇

1. 安装指南

通过 pip 安装

tvnamer 的官方推荐安装方式是通过 pip 进行安装:

pip install tvnamer

此命令将安装 tvnamer 命令行工具及其依赖项。

通过平台/发行版特定的包管理器安装

tvnamer 也被社区打包在多种平台和发行版的包管理器中,包括:

  1. Homebrew for OS X:

    brew install tvnamer
    
  2. Debian:

    apt-get install tvnamer
    
  3. FreeBSD/DragonFlyBSD/MacPorts:

    pkg install py36-tvnamer
    
  4. Nix package manager:

    nix-env -iA nixpkgs.python37Packages.tvnamer
    

安装开发版本

虽然不推荐普通用户使用,但如果你想安装不稳定的开发版本,可以参考 CONTRIBUTING.md 中的详细说明。

2. 项目使用说明

基本用法

tvnamer 是一个用于重命名电视节目文件的工具,它可以将文件名从 some.show.s01e03.blah.abc.avi 重命名为 Some Show - [01x03] - The Episode Name.avi。它通过从 tvdb_api 获取剧集信息来实现这一功能。

命令行使用

在命令行中,只需运行以下命令:

tvnamer the.file.s01e01.avi

例如:

$ tvnamer brass.eye.s01e01.avi
####################
# Starting tvnamer
# Found 1 episodes
# Processing brass.eye.s01e01.avi
TVDB Search Results:
1 -> Brass Eye [en] # http://thetvdb.com/?tab=series&id=70679&lid=7
Automatically selecting only result
####################
# Old filename: brass.eye.s01e01.avi
# New filename: Brass Eye - [01x01] - Animals.avi
Rename?
([y]/n/a/q)

输入 y 并按回车键,文件将被重命名为 Brass Eye - [01x01] - Animals.avi。你也可以直接按回车键选择默认选项,默认选项用 [] 表示。

批量重命名

你可以通过指定多个文件或目录来批量重命名文件:

$ tvnamer file1.avi file2.avi etc
$ tvnamer .
$ tvnamer /path/to/my/folder/
$ tvnamer ./folder/1/ ./folder/2/

递归重命名

默认情况下,tvnamer 只会递归到目录的第一层。如果你希望重命名所有文件,可以使用 -r--recursive 标志:

tvnamer --recursive dir1/

3. 项目API使用文档

命令行参数

tvnamer 提供了多种命令行参数,可以通过以下命令查看所有可用参数及其简短描述:

tvnamer --help

常用参数

  • --batch: 自动选择第一个搜索结果并自动重命名所有文件。
  • --selectfirst: 选择第一个搜索结果,但不自动重命名。
  • --always: 选择正确的剧集后,自动重命名所有文件。
  • --series-id: 允许你使用来自 theTVdb 的特定 ID,有助于解决名称检测问题。

4. 项目安装方式

通过 pip 安装

pip install tvnamer

通过平台/发行版特定的包管理器安装

  • Homebrew for OS X:

    brew install tvnamer
    
  • Debian:

    apt-get install tvnamer
    
  • FreeBSD/DragonFlyBSD/MacPorts:

    pkg install py36-tvnamer
    
  • Nix package manager:

    nix-env -iA nixpkgs.python37Packages.tvnamer
    

安装开发版本

参考 CONTRIBUTING.md 中的详细说明。

5. 配置文件

生成默认配置文件

你可以通过以下命令生成默认的 JSON 配置文件:

tvnamer --save=./mytvnamerconfig.json

使用自定义配置

要使用自定义配置,你可以通过以下方式指定配置文件路径:

tvnamer --config=/path/to/mytvnamerconfig.json

或者将配置文件放在 ~/.config/tvnamer/tvnamer.json 路径下。

配置选项

你可以在配置文件中自定义 tvnamer 的行为,例如更改默认语言:

{
    "language": "fr"
}

更多配置选项的详细描述,请参考 config_defaults.py 中的注释。

6. 自定义输出文件名

tvnamer 允许你自定义输出文件名的格式。你可以通过修改配置文件中的相关选项来实现。例如,如果你想将文件名格式设置为 Show Name 01x24 Episode Name.avi,可以将 filename_with_episode 选项设置为:

"filename_with_episode": "%(seriesname)s %(seasonno)02dx%(episode)s %(episodename)s%(ext)s"

这个格式化语言使用的是 Python 的字符串格式化功能。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
861
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
596
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K