to learn goupby learn pandas groupby groupby learn pandas groupby 优化正则提取番号和集数 待理解下载图片逻辑 还有剪裁+背景图逻辑 修改所有config[ 将整理生成nfo的代码 可缓存番号信息和缩略图和海报 可以识别番号后集数和尾部集数,赞不能分辨-C中文字幕片 改正一个错误 嵌套字典存储数据 整理函数 修正匹配时间正则 pipenv 添加依赖 修改优先取三位数字的规则:heyzo四位数除外 添加了依赖 和 有番号的优化 修改了啥 我也记不得了
327 lines
11 KiB
Markdown
Executable File
327 lines
11 KiB
Markdown
Executable File
# AV Data Capture (CLI)
|
||
|
||
CLI 版本
|
||
<a title="Hits" target="_blank" href="https://github.com/yoshiko2/AV_Data_Capture"><img src="https://hits.b3log.org/yoshiko2/AV_Data_Capture.svg"></a>
|
||

|
||

|
||

|
||

|
||
<br>
|
||
[GUI 版本](https://github.com/moyy996/AVDC)
|
||
<a title="Hits" target="_blank" href="https://github.com/moyy996/avdc"><img src="https://hits.b3log.org/moyy996/AVDC.svg"></a>
|
||

|
||

|
||

|
||

|
||

|
||
<br>
|
||
|
||
|
||
**日本电影元数据 抓取工具 | 刮削器**,配合本地影片管理软件 Emby, Jellyfin, Kodi 等管理本地影片,该软件起到分类与元数据(metadata)抓取作用,利用元数据信息来分类,供本地影片分类整理使用。
|
||
##### 本地电影刮削与整理一体化解决方案
|
||
|
||
# 目录
|
||
* [声明](#声明)
|
||
* [FAQ](#FAQ)
|
||
* [故事](#故事)
|
||
* [效果图](#效果图)
|
||
* [如何使用](#如何使用)
|
||
* [下载](#下载)
|
||
* [简要教程](#简要教程)
|
||
* [完整文档](#完整文档)
|
||
* [模块安装](#模块安装)
|
||
* [配置](#配置configini)
|
||
* [多目录影片处理](#多目录影片处理)
|
||
* [多集影片处理](#多集影片处理)
|
||
* [中文字幕处理](#中文字幕处理)
|
||
* [异常处理(重要)](#异常处理重要)
|
||
* [写在后面](#写在后面)
|
||
|
||
# 声明
|
||
* 本软件仅供**技术交流,学术交流**使用
|
||
* 本软件作者编写出该软件旨在学习 Python ,提高编程水平
|
||
* 用户在使用本软件前,请用户自觉遵守当地法律法规,如果本软件使用过程中存在违反当地法律法规的行为,请勿使用该软件
|
||
* 用户在使用本软件时,若产生一切违法行为由用户承担
|
||
* 严禁用户将本软件使用于商业和个人其他意图
|
||
* 本软件作者保留最终决定权和最终解释权
|
||
|
||
**若用户不同意上述条款任意一条,请勿使用本软件**
|
||
|
||
# FAQ
|
||
### 软件能下片吗?
|
||
* 本软件不提供任何影片下载地址,仅供本地影片分类整理使用
|
||
### 什么是元数据(metadata)?
|
||
* 元数据包括了影片的封面,导演,演员,简介,类型......
|
||
### 软件收费吗?
|
||
* 本软件永久免费,**除了作者<ruby>钦<rt>yìng</rt></ruby>点以外**
|
||
### 软件运行异常怎么办?
|
||
* 认真看 [异常处理(重要)](#异常处理重要)
|
||
### 为什么软件要单线程运行?
|
||
* 多线程爬取可能会触发网站反爬机制,同时也违背了些道德,故单线程运行
|
||
|
||
# 效果图
|
||
**图片来自网络**,图片仅供参考,具体效果请自行联想
|
||

|
||

|
||
|
||
# 如何使用
|
||
## 下载
|
||
* release的程序可脱离**python环境**运行,可跳过 [模块安装](#模块安装)
|
||
### Windows
|
||
Release 下载地址(**仅限Windows**):
|
||
|
||
[](https://github.com/yoshiko2/AV_Data_Capture/releases)
|
||
|
||
* 若 Windows 用户需要运行源代码版本,请安装 Windows Python 环境:[点击前往](https://www.python.org/downloads/windows/) 选中 executable installer 下载
|
||
|
||
### MacOS, Linux
|
||
* MacOS, Linux 用户请下载源码包运行
|
||
* MacOS Python环境:开箱即用,[可选安装最新版本](https://docs.brew.sh/Homebrew-and-Python)
|
||
* Linux Python环境:开箱即用,可选安装最新版本,恕 Linux 版本众多请自行搜索
|
||
|
||
## 简要教程:
|
||
1. 把软件拉到和电影的同一目录
|
||
2. 设置 config.ini 文件的代理(路由器拥有自动代理功能的可以把 proxy= 后面内容去掉)
|
||
3. 运行软件等待完成
|
||
4. 把 JAV_output 导入至 Kodi, Emby, Jellyfin 中。
|
||
|
||
详细请看以下完整文档
|
||
|
||
# 完整文档
|
||
|
||
## 模块安装
|
||
如果运行**源码**版,运行前请安装**Python环境**和安装以下**模块**
|
||
|
||
在终端 cmd/Powershell/Terminal 中输入以下代码来安装模块
|
||
|
||
```python
|
||
pip install requests pyquery lxml Beautifulsoup4 pillow
|
||
```
|
||
|
||
## 配置config.ini
|
||
### 运行模式
|
||
```
|
||
[common]
|
||
main_mode=1
|
||
```
|
||
1为普通模式,
|
||
2为整理模式:仅根据女优把电影命名为番号并分类到女优名称的文件夹下
|
||
|
||
```
|
||
success_output_folder=JAV_outputd
|
||
failed_output_folder=failed
|
||
```
|
||
设置成功输出目录和失败输出目录
|
||
|
||
---
|
||
#### 软链接
|
||
方便PT下载完既想刮削又想继续上传的仓鼠党同志
|
||
```
|
||
[common]
|
||
soft_link=0
|
||
```
|
||
1为开启软链接模式
|
||
0为关闭
|
||
|
||
---
|
||
### 网络设置
|
||
```
|
||
[proxy]
|
||
proxy=127.0.0.1:1081
|
||
timeout=10
|
||
retry=3
|
||
```
|
||
#### 针对某些地区的代理设置
|
||
```
|
||
proxy=127.0.0.1:1081
|
||
```
|
||
|
||
打开```config.ini```,在```[proxy]```下的```proxy```行设置本地代理地址和端口,支持Shadowxxxx/X,V2XXX本地代理端口
|
||
素人系列抓取建议使用日本代理
|
||
**路由器拥有自动代理功能的可以把proxy=后面内容去掉**
|
||
**本地代理软件开全局模式的用户同上**
|
||
**如果遇到tineout错误,可以把文件的proxy=后面的地址和端口删除,并开启代理软件全局模式,或者重启电脑,代理软件,网卡**
|
||
|
||
---
|
||
#### 连接超时重试设置
|
||
```
|
||
timeout=10
|
||
```
|
||
10为超时重试时间 单位:秒
|
||
|
||
---
|
||
#### 连接重试次数设置
|
||
```
|
||
retry=3
|
||
```
|
||
3即为重试次数
|
||
|
||
---
|
||
#### 检查更新开关
|
||
```
|
||
[update]
|
||
update_check=1
|
||
```
|
||
0为关闭,1为开启,不建议关闭
|
||
|
||
---
|
||
### 媒体库选择
|
||
```
|
||
[media]
|
||
media_warehouse=emby
|
||
#emby plex kodi
|
||
```
|
||
可选择emby, plex, kodi
|
||
如果是PLEX,请安装插件:```XBMCnfoMoviesImporter```
|
||
|
||
---
|
||
### 排除指定字符和目录
|
||
```
|
||
[escape]
|
||
literals=\
|
||
folders=failed,JAV_output
|
||
```
|
||
|
||
```literals=``` 标题指定字符删除,例如```iterals=\()```,则删除标题中```\()```字符
|
||
```folders=``` 指定目录,例如```folders=failed,JAV_output```,多目录刮削时跳过failed,JAV_output
|
||
|
||
---
|
||
### 调试模式
|
||
```
|
||
[debug_mode]
|
||
switch=1
|
||
```
|
||
|
||
如要开启调试模式,请手动输入以上代码到```config.ini```中,开启后可在抓取中显示影片元数据
|
||
|
||
---
|
||
### (可选)设置自定义目录和影片重命名规则
|
||
```
|
||
[Name_Rule]
|
||
location_rule=actor+'/'+number
|
||
naming_rule=number+'-'+title
|
||
```
|
||
已有默认配置
|
||
|
||
---
|
||
#### 命名参数
|
||
```
|
||
title = 片名
|
||
actor = 演员
|
||
studio = 公司
|
||
director = 导演
|
||
release = 发售日
|
||
year = 发行年份
|
||
number = 番号
|
||
cover = 封面链接
|
||
tag = 类型
|
||
outline = 简介
|
||
runtime = 时长
|
||
```
|
||
|
||
上面的参数以下都称之为**变量**
|
||
|
||
#### 例子:
|
||
自定义规则方法:有两种元素,变量和字符,无论是任何一种元素之间连接必须要用加号 **+** ,比如:```'naming_rule=['+number+']-'+title```,其中冒号 ' ' 内的文字是字符,没有冒号包含的文字是变量,元素之间连接必须要用加号 **+**
|
||
|
||
目录结构规则:默认 ```location_rule=actor+'/'+number```
|
||
|
||
**不推荐修改时在这里添加 title**,有时 title 过长,因为 Windows API 问题,抓取数据时新建文件夹容易出错。
|
||
|
||
影片命名规则:默认 ```naming_rule=number+'-'+title```
|
||
|
||
**在 Emby, Kodi等本地媒体库显示的标题,不影响目录结构下影片文件的命名**,依旧是 番号+后缀。
|
||
|
||
---
|
||
|
||
### 更新开关
|
||
```
|
||
[update]
|
||
update_check=1
|
||
```
|
||
|
||
1为开,0为关
|
||
|
||
## 多目录影片处理
|
||
可以在多个有影片目录的父目录下搜索影片后缀,然后剪切到和程序同一目录下
|
||
|
||
## 多集影片处理
|
||
**建议使用视频合并合并为一个视频文件**
|
||
可以把多集电影按照集数后缀命名为类似```ssni-xxx-cd1.mp4m,ssni-xxx-cd2.mp4,abp-xxx-CD1.mp4```的规则,只要含有```-CDn./-cdn.```类似命名规则,即可使用分集功能
|
||
|
||
## 中文字幕处理
|
||
|
||
运行 ```AV_Data_capture.py/.exe```
|
||
|
||
当文件名包含:
|
||
中文,字幕,-c., -C., 处理元数据时会加上**中文字幕**标签
|
||
|
||
## 异常处理(重要)
|
||
|
||
### 请确保软件是完整地!确保ini文件内容是和下载提供ini文件内容的一致的!
|
||
---
|
||
### 关于软件打开就闪退
|
||
可以打开cmd命令提示符,把 ```AV_Data_capture.py/.exe```拖进cmd窗口回车运行,查看错误,出现的错误信息**依据以下条目解决**
|
||
|
||
---
|
||
### 关于 ```Updata_check``` 和 ```JSON``` 相关的错误
|
||
跳转 [网络设置](#网络设置)
|
||
|
||
---
|
||
### 关于字幕文件移动功能
|
||
字幕文件前缀必须与影片文件前缀一致,才可以使用该功能
|
||
|
||
---
|
||
### 关于```FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'JAV_output''```
|
||
在软件所在文件夹下新建 JAV_output 文件夹,可能是你没有把软件拉到和电影的同一目录
|
||
|
||
---
|
||
### 关于连接拒绝的错误
|
||
请设置好[代理](#针对某些地区的代理设置)
|
||
|
||
---
|
||
### 关于Nonetype,xpath报错
|
||
同上
|
||
|
||
---
|
||
### 关于番号提取失败或者异常
|
||
**目前可以提取元素的影片:JAVBUS上有元数据的电影,素人系列:300Maan,259luxu,siro等,FC2系列**
|
||
|
||
>下一张图片来自 Pockies 的 blog 原作者已授权
|
||
|
||

|
||
|
||
目前作者已经完善了番号提取机制,功能较为强大,可提取上述文件名的的番号,如果出现提取失败或者异常的情况,请用以下规则命名
|
||
|
||
|
||
```
|
||
COSQ-004.mp4
|
||
```
|
||
|
||
条件:文件名中间要有下划线或者减号"_","-",没有多余的内容只有番号为最佳,可以让软件更好获取元数据
|
||
对于多影片重命名,可以用 [ReNamer](http://www.den4b.com/products/renamer) 来批量重命名
|
||
|
||
|
||
---
|
||
### 关于PIL/image.py
|
||
暂时无解,可能是网络问题或者pillow模块打包问题,你可以用源码运行(要安装好第一步的模块)
|
||
|
||
### 拖动法
|
||
针对格式比较奇葩的番号
|
||
影片放在和程序同一目录下,拖动至```AV_Data_Capture.exe```,即可完成刮削和整理
|
||
|
||
|
||
### 软件会自动把元数据获取成功的电影移动到 JAV_output 文件夹中,根据演员分类,失败的电影移动到failed文件夹中。
|
||
|
||
### 把JAV_output文件夹导入到 Emby, Kodi中,等待元数据刷新,完成
|
||
|
||
### 关于群晖NAS
|
||
开启 SMB,并在 Windows 上挂载为网络磁盘即可使用本软件,也适用于其他 NAS
|
||
|
||
## 写在后面
|
||
怎么样,看着自己的日本电影被这样完美地管理,是不是感觉成就感爆棚呢?
|
||
|
||
**tg官方电报群:[ 点击进群](https://t.me/joinchat/J54y1g3-a7nxJ_-WS4-KFQ)**
|
||
|
||
|