Giter VIP home page Giter VIP logo

autoanimemv's Introduction

| AutoAnimeMV:超轻量化快速部署看番遥遥领先!

全自动追番新时代!不动手才是硬道理!

简体中文 | English

最后更新时间:2024.6.26-0839

 GitHub 开源许可证 GitHub release telegram


😊这是一个番剧自动识别剧名剧集+自动重命名+自动整理的工具,具有部署方便,开箱即用的特点,用来配合qBittorrent实现Rss订阅下载Emby全自动刮削一条龙到家式爽歪歪服务!

🚀点击左上角打开目录,选择您要阅读的部分

工具进行了与前代有不兼容的 配置/API 修改,请及时阅读Docs

💡 功能说明

  • 部署快速,使用方便的番剧视频/字幕重命名+整理工具

    动漫(分类)
    ├── 因为太怕痛就全点防御力了
    │   ├── Season01
    │   │   ├── E01.mp4
    │   │   ├── E02.mp4
    │   │   ├── E03.mp4
    │   │   └── ...
    │   └── Season02
    │       ├── E01.mp4
    │       ├── E02.mp4
    │       ├── E02.chi.srt
    │       └── ...
    |___ 無神世界的神明活動
    |    └── Season01  
    │        ├── E01.mp4
    │        ├── E01.chs.ass
    │        ├── E02.mp4
    │        └── ....
    |
    ......
    
  • 一次配置,无感使用

  • 支持硬链接配置,保种必备

  • 支持番剧分类,让一切井井有条

  • 本地批处理和QB下载模式任君选择

  • 快速更新,享受更多新体验


📝 详细的文档

  • AAM项目的全部文档已经搬至 AAM-DOCS 仓库了

相关群组

交流/工作群: Telegram

⭐ 贡献者 ✨

感谢这些有趣又很棒的人!!!

如果您也想要为这个项目添砖加瓦,可以直接来Issues提出您宝贵的建议或者@我问一下能做些什么

Star History

Star History Chart

autoanimemv's People

Contributors

abcuders avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

autoanimemv's Issues

脚本已适配Windows(x

先贴个代码awa

# -*- coding: utf-8 -*-
from sys import argv
from os import system
from time import sleep
from re import findall, search, sub, I


def TitleMatch(VideoName):
    Season = '01'
    SubtitleGroupDate = ['字幕', 'Raws', 'sub', '汉化', '搬运', '月新番', 'Airota', 'Comicat', 'DMHY', 'NC-Raws', 'ANi',
                         'LoliHouse', 'Sakurato', 'TSDM', 'LoveEcho', 'EMe', 'Sakura', 'SweetSub', 'AHU-SUB',
                         'VCB-Studio', 'GM-Team',
                         'MingY', 'cc动漫', '推しの子', '喵萌奶茶屋', '天月搬运组', '萝莉社活动室', '千夏生活向上委员会', '酷漫404',
                         '拨雪寻春', '霜庭云花Sub', 'FSD炸鸽社', '雪飘工作室', '丸子家族', '驯兽师联盟', '肥猫压制', '离谱', '虹咲学园烤肉同好会',
                         'AQUA工作室', '晨曦制作', '夜莺家族', 'Liella!の烧烤摊']

    FirstIntKeyWord = ['仅限港澳台地区']

    import os
    filename, extension = os.path.splitext(VideoName)
    FileType = extension
    VideoName = sub(r',|,| ', '-', VideoName, flags=I)
    VideoName = sub(r'[^A-Za-z0-9_s&/-u4e00-u9fa5]', '=', VideoName, flags=I)

    Episodes = findall(r'[^0-9a-z\u4e00-\u9fa5][0-2]{1}[0-9]{1}[^0-9\u4e00-\u9fa5]',VideoName,flags=I)[0].strip(" =-_eE")

    VideoName = sub(r'%s.*' % Episodes, '', VideoName, flags=I)

    for i in range(len(FirstIntKeyWord)):
        VideoName = sub(r'%s' % FirstIntKeyWord[i], '', VideoName, flags=I)
    for i in range(len(SubtitleGroupDate)):
        VideoName = sub(r'=.*?%s.*?=' % SubtitleGroupDate[i], '', VideoName, flags=I)
    VideoName = VideoName.replace('=', '').replace(' ', '').strip('-')
    
    if ('/' in VideoName) == True:
        VideoName = VideoName.split("/", 1)
        if VideoName[1].replace('-', '').isalnum() == True:
            if search(r'[0-9]{0,1}[0-9]{1}S', VideoName[1][::-1], flags=I) != None:
                Season = search(r'[0-9]{0,1}[0-9]{1}S',VideoName[1][::-1],flags=I).group(0)[::-1]
                TrueVideoName = VideoName[1].strip(Season)
                Season = search(r'[0-9]{0,1}[0-9]{1}S',VideoName[1][::-1],flags=I).group(0)[::-1].strip('Ss')
    elif search(r'季.*?第|[0-9]{0,1}[0-9]{1}S',VideoName[::-1],flags=I) != None:
        Season = search(r'(季.*?第|[0-9]{0,1}[0-9]{1}S)',VideoName[::-1],flags=I).group(0)[::-1]
        TrueVideoName = VideoName.strip(Season)
        Season = search(r'(季.*?第|[0-9]{0,1}[0-9]{1}S)',VideoName[::-1],flags=I).group(0)[::-1].strip('第季Ss')
        if Season.isdigit() == True:
            pass
        else:
            digit = {'一': 1, '二': 2, '三': 3, '四': 4, '五': 5, '六': 6, '七': 7, '八': 8, '九': 9}
            Season = digit[Season]
    else:
        TrueVideoName = VideoName

    TrueVideoName = TrueVideoName.strip('-')
    return Season,Episodes,TrueVideoName,FileType

def GetArgv():
    SavePath,VideoName = argv[1],argv[2]
    return SavePath,VideoName

def AutoMv(SavePath,VideoName,Season,Episodes,VideoTrueName,FileType):
    NewName = f"S{Season}E{Episodes}{FileType}"
    NewVideoDir = f"{VideoTrueName}\S01"
    system(f'mkdir {SavePath}\{NewVideoDir}')
    sleep(2)
    system(f'move "{SavePath}\{VideoName}"  "{SavePath}\{NewVideoDir}\{NewName}"')

def Test(test):
    return TitleMatch(test)

if __name__ == "__main__":
   SavePath,VideoName = GetArgv()
   Season,Episodes,VideoTrueName,FileType = TitleMatch(VideoName)
   AutoMv(SavePath,VideoName,Season,Episodes,VideoTrueName,FileType)

使用Python x64 3.11.3

修改如下:

  1. 删除动漫分类
  2. 适配RSS多文件夹下载(输出改为为 下载目录\S01\S01Exx.xxx)
  3. 优化Windows下FileType判断逻辑
  4. 优化移动文件逻辑
  5. etc.

希望能开发一个批处理

RT,rss固然很香,但硬盘里有一些比较老的文件希望也能处理,可以封装一下?实现,选中文件夹然后批处理所有文件

请教下桜都字幕组下载的文件名没有包含季,如何正确识别?

请尽可能详细描述你的想法

这个文件命名让我感觉有点奇怪,居然是用年付命名的
311f0eb685e08896bf66f.png
9787fe72dccd748512708.png

如可以,欢迎提供部分或全部实现上述功能的代码

[2023-08-21 07:35:00] INFO: Running....
[2023-08-21 07:35:00] INFO: 当前工具版本为2.7.3
[2023-08-21 07:35:00] INFO: 当前操作系统识别码为posix,posix/nt/java对应linux/windows/java虚拟机
[2023-08-21 07:35:00] INFO: 接受到的参数 > ['/root/AutoAnimeMv/AutoAnimeMv.py', '/root/dmzf', '[Sakurato] Kanojo, Okarishimasu (2023) [01][AVC-8bit 1080p AAC][CHS].mp4', '1', '']
[2023-08-21 07:35:00] INFO: --------------------------------------------------------------------------------
[2023-08-21 07:35:00] INFO: 匹配出的剧集 ==> 01
[2023-08-21 07:35:00] INFO: 通过剧集截断文件名 ==> Kanojo--Okarishimasu-(-)
[2023-08-21 07:35:00] INFO: 匹配出的剧季 ==>
[2023-08-21 07:35:01] WARNING: BgmApi没有检索到关于 Kanojo--Okarishimasu-(-) 内容
[2023-08-21 07:35:01] INFO: 租借女友 << TMDBApi查询结果
[2023-08-21 07:35:01] INFO: /root/dmzf//租借女友/Season01/已存在
[2023-08-21 07:35:01] INFO: Move-/root/dmzf//租借女友/Season01/S01E01.mp4 << /root/dmzf/[Sakurato] Kanojo, Okarishimasu (2023) [01][AVC-8bit 1080p AAC][CHS].mp4
[2023-08-21 07:35:01] INFO: 一切工作已经完成,用时0.9990098476409912

[Bug] SP识别问题

所用版本&操作系统

3.9.0

遇到的问题

直接被跳过了

运行日志

[2023-09-12 14:08:18] INFO: Running....
[2023-09-12 14:08:18] INFO: 当前工具版本为2.7.3
[2023-09-12 14:08:18] INFO: 当前操作系统识别码为posix,posix/nt/java对应linux/windows/java虚拟机
[2023-09-12 14:08:18] INFO: 接受到的参数 > ['/DATA/Media/AutoAnimeMv-main/AutoAnimeMv.py', '/DATA/Media/TV Shows', '[GM-Team][国漫][斗破苍穹 第5季][Fights Break Sphere Ⅴ][2022][61][HEVC][GB][4K].mp4', '1']
[2023-09-12 14:08:18] INFO: 当前文件属于SP,跳过处理
[2023-09-12 14:08:18] INFO: 一切工作已经完成,用时0.0009179115295410156

[Bug] 不算问题的问题

所用版本&操作系统

win1123h2

遇到的问题

python AutoAnimeMv.py --filepath "[Nekomoe kissaten&LoliHouse] BanG Dream! It’s MyGO!!!!! [01-13][WebRip 1080p HEVC-10bit AAC]"
运行这段命令报错:[2024-04-16 14:54:19] INFO: filepath:[Nekomoe kissaten&LoliHouse] BanG Dream! It’s MyGO!!!!! [01-13][WebRip 1080p HEVC-10bit AAC] filename:None number:None categoryname:None
[2024-04-16 14:54:19] ERROR: 没有预料到的错误 > name 'ComKey' is not defined

运行日志

[2024-04-16 14:54:19] INFO: filepath:[Nekomoe kissaten&LoliHouse] BanG Dream! It’s MyGO!!!!! [01-13][WebRip 1080p HEVC-10bit AAC] filename:None number:None categoryname:None
[2024-04-16 14:54:19] ERROR: 没有预料到的错误 > name 'ComKey' is not defined

[无法实现] 能否实现对完全未命名集数的动画进行命名

请尽可能详细描述你的想法

大致思路是用FFmpeg隔3秒截一张图,输出集数,这个方法要求动画标题本身就有集数,没有的的就没办法

如可以,欢迎提供部分或全部实现上述功能的代码

import os
import re
import subprocess

# 获取视频文件
videos = os.sys.argv[1:]

# 对每个视频文件执行以下操作
for video in videos:
    # 获取视频文件名
    video_name = os.path.basename(video)

    # 从文件名中截取“第 ”和“ 话”中间的两位数字
    if re.search("第(\d{2})話", video_name):
        episode = re.search("第(\d{2})話", video_name).group(1)
    else:
        raise Exception("无法从文件名中获取集数")
        continue

    # 使用ffmpeg对视频隔3秒截图,输出文件名格式为集数_四位数字.png
    cmd = f'ffmpeg -i "{video}" -vf "fps=1/3,scale=910:512" -ss 2:10 -to 00:21:00 "F:\\cocotemp1\\new4\\{episode}_%04d.png"'
    subprocess.run(cmd, shell=True)

关于做种

请尽可能详细描述你的想法

感谢你们的工作!现在 Infuse 识别元数据终于没那么麻烦了。
但是我想知道能不能在改名的之后也继续保证文件做种上传?比如添加一个配置项,允许在改名之前把原文件复制一份到其他路径里(最好在下载文件夹的外部,这样不会搞乱资料库),不知道能不能加上这个功能?

如可以,欢迎提供部分或全部实现上述功能的代码

No response

[非Bug] 路由器代理的自动更新问题

所用版本&操作系统

1.15.2-Windows 11

遇到的问题

如题,我使用路由器OpenClash进行代理。
手动访问https://raw.githubusercontent.com/Abcuders/AutoAnimeMv/main/
image
如果去掉后缀访问https://raw.githubusercontent.com/
则跳转至github.com

运行日志

F:\Downloads\动漫>python AutoANimeMv.py update
[2023-06-11 19:01:31] INFO: 当前工具版本为1.15.2
[2023-06-11 19:01:31] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2023-06-11 19:01:31] INFO: 接受到参数 ==> ['AutoANimeMv.py', 'update']
[2023-06-11 19:01:31] INFO: 准备更新中
[2023-06-11 19:01:31] ERROR: Get https://raw.githubusercontent.com/Abcuders/AutoAnimeMv/main/update 失败,未能获取到Update 内容,请检查您是否启用了系统代理,如是则您应该在此工具中配置代理信息,否您则需要检查您的网络能否访问raw.githubusercontent.com

F:\Downloads\动漫>

[Bug] 字幕语言识别异常

所用版本&操作系统

2.(11.5).0

遇到的问题

[Snow-Raws] 学園黙示録 HIGHSCHOOL OF THE DEAD 第01話 (BD 1920x1080 HEVC-YUV420P10 FLAC).tc.ass
识别为简体中文,因为 HIGHSCHOOL 中存在字符 SC

运行日志

.

[Enhancement] 批处理错误文件不阻断后续逻辑优化

所用版本&操作系统

Windows 10

遇到的问题

废话在前:正打算美滋滋看番。发现番剧文件夹好久没变化了,每次都要手动找。一看发现前两天换了python环境变量,qb脚本没法跑通了。然后就用批处理来整,结果发现处理半天文件都不全。发现了中间遇到异常脚本就会中断的问题。寻思,不就py嘛,我应该也能改,就整了这个issue和pr。
看下面:
因为特别篇无法识别,导致整个目录后续的文件都无法继续归类。
遂改为跳过一切异常并warn而不是中断的方式。
修复前
image
修复后
image

运行日志

修复前
image
修复后
image

[Bug] 剧集名称识别时截断位置异常

所用版本&操作系统

2.11.0-Windows

遇到的问题

剧集名称截断位置不正常,2.10版本时就发现。
[Nekomoe kissaten&LoliHouse] Yuusha ga Shinda! - 10 [WebRip 1080p HEVC-10bit AAC ASSx2]
匹配10bit的10

运行日志


[2023-11-02 12:08:35] INFO: 匹配出的剧集 ==> 09
[2023-11-02 12:08:35] INFO: 通过剧集截断文件名 ==> Yuusha-ga-Shinda
[2023-11-02 12:08:35] INFO: 匹配出的剧季 ==>
[2023-11-02 12:08:35] INFO: 没有使用BgmApi进行检索
[2023-11-02 12:08:35] INFO: 勇者死了! << TMDBApi缓存查询结果
[2023-11-02 12:08:35] INFO: C:\Users\qs315\Videos[Nekomoe kissaten&LoliHouse] Yuusha ga Shinda! [01-12][WebRip 1080p HEVC-10bit AAC]\勇者死了!\S1已存在
[2023-11-02 12:08:35] INFO: Move-C:\Users\qs315\Videos[Nekomoe kissaten&LoliHouse] Yuusha ga Shinda! [01-12][WebRip 1080p HEVC-10bit AAC]\勇者死了!\S1S1E9.勇者死了!.mkv << C:\Users\qs315\Videos[Nekomoe kissaten&LoliHouse] Yuusha ga Shinda! [01-12][WebRip 1080p HEVC-10bit AAC][Nekomoe kissaten&LoliHouse] Yuusha ga Shinda! - 09 [WebRip 1080p HEVC-10bit AAC ASSx2].mkv
[2023-11-02 12:08:35] INFO: --------------------------------------------------------------------------------
[2023-11-02 12:08:35] INFO: 匹配出的剧集 ==> 10
[2023-11-02 12:08:35] INFO: 通过剧集截断文件名 ==> Yuusha-ga-Shinda=---10-=WebRip---HEVC
[2023-11-02 12:08:35] INFO: 匹配出的剧季 ==>
[2023-11-02 12:08:35] INFO: 没有使用BgmApi进行检索
[2023-11-02 12:08:36] WARNING: TMDBApi没有检索到关于 Yuusha-ga-Shinda=---10-=WebRip---HEVC 内容
[2023-11-02 12:08:36] EXIT: Api识别失败

[Bug] 汉字取值错误的问题

所用版本&操作系统

2.6.5 Windows10

遇到的问题

失效
ERROR: 没有预料到的错误 > 'NoneType' object has no attribute 'replace'

QB完成时运行:python D:/anime/AutoAnimeMv/AutoAnimeMv.py "%D" "%N" "%C"

尝试过关闭API 一样错误
USEBGMAPI = False # 使用BgmApi
USETMDBAPI = False #使用TMDBApi

运行日志

[2023-07-16 17:19:40] INFO: Running....
[2023-07-16 17:19:40] INFO: 当前工具版本为2.6.5
[2023-07-16 17:19:40] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2023-07-16 17:19:40] INFO: 接受到的参数 > ['D:/anime/AutoAnimeMv/AutoAnimeMv.py', 'F:\PT\动漫', '[GM-Team][国漫][火凤燎原][The Ravages of Time][2023][13][AVC][GB][1080P].mp4', '1']
[2023-07-16 17:19:40] INFO: --------------------------------------------------------------------------------
[2023-07-16 17:19:40] INFO: 匹配出的剧集 ==> 13
[2023-07-16 17:19:40] INFO: 通过剧集截断文件名 ==> 火凤燎原==The-Ravages-of-Time
[2023-07-16 17:19:43] WARNING: BgmApi没有检索到关于 火凤燎原==TheRavagesofTime 内容
[2023-07-16 17:19:43] ERROR: 没有预料到的错误 > 'NoneType' object has no attribute 'replace'

[2023-07-16 17:25:53] INFO: Running....
[2023-07-16 17:25:53] INFO: 当前工具版本为2.6.5
[2023-07-16 17:25:53] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2023-07-16 17:25:53] INFO: 接受到的参数 > ['D:/anime/AutoAnimeMv/AutoAnimeMv.py', 'F:\PT\动漫', '[GM-Team][国漫][镖人][Blades of the Guardians][2023][10][AVC][GB][1080P].mp4', '1']
[2023-07-16 17:25:53] INFO: --------------------------------------------------------------------------------
[2023-07-16 17:25:53] INFO: 匹配出的剧集 ==> 10
[2023-07-16 17:25:53] INFO: 通过剧集截断文件名 ==> 镖人==Blades-of-the-Guardians
[2023-07-16 17:25:55] WARNING: BgmApi没有检索到关于 镖人==BladesoftheGuardians 内容
[2023-07-16 17:25:55] ERROR: 没有预料到的错误 > 'NoneType' object has no attribute 'replace'

🕹 贡献须知

write a custom issue

前言

  • 首先感谢你为我们贡献的心意,我代表全体开发/贡献人员向你表达最真诚的感谢,谢谢你对我们的项目的鼎力支持
  • 这篇须知包含以下内容,会告诉你为AAM贡献代码前的一些注意事项
  • 版本管理
  • Commit规范
  • PR 管理

版本管理

• AAM 发布的版本号遵循 「语义化版本 SemVer」 的规范
• 使用 <Major>.<Minor>.<Patch> 三位版本的格式,每一位版本上的数字更新含义如下:

Major: 大版本更新,很可能有不兼容的 配置/API 修改
Minor: 向下兼容的功能性新增
Patch: 向下兼容的 Bug 修复/小优化修正

Commit规范

描述规范

  • 为了方便明确本次提交的目的,具体做了什么操作,你需要规范你Commit的描述
  • 一个规范的描述应该长这个样

<标签1/标签2/标签3.....>标签对应的内容1/标签对应的内容2/标签对应的内容3....

  • 示例

<Feat/fix/docs>更新WebUI/修复某问题;修复某某问题/更新某文档

  • 以下是你可选择的标签,如以下不满足你的需求,你可自定义标签,但记得进行解释说明
  • 使用多个标签的请按以下顺序进行排序,自定义标签的顺序优先度为-1(也就是最后啦

feat:新功能(feature)
fix:修复bug
docs:文档和说明内容的更新(documentation)
style:格式(不影响运行的变动)
refactor:重构(即不是新增功能,也不是修改bug的代码变动)
perf:优化相关,比如提升性能、体验
test:增加测试
merge:合并代码

提交规范

  • 请注意保持你的提交简短精炼,不要有杂七杂八的提交,比如一个功能交了三四个commit

PR 管理

  • 当你发现一些小的优化项或者 bug 修复,你可以直接帮忙调整代码然后提出 PR
  • 当你想搞个大的时候,请使用自定义issue 来制定一个RFC 提案来简单讲讲你的想法
  • 如果你的 RP 可以联系到 issue ,那么请不要忘记在RP里引用它哦

希望加入获取番剧每集标题功能

请尽可能详细描述你的想法

整理番剧时获取tmdb的中文(或其他语言)标题,添加到 S1E1 后面。
例如:

[Hina Logi From Luck & Logic][01][BDRIP][1080P][H264_FLACx2].简体中文.chi.ass
重命名为
S1E1.让可爱的雏鸟踏上旅程吧.简体中文.chi.ass

简体中文.chi 后缀是因为jellyfin(ISO639)不支持区分简体(ISO639:chi)和繁体(ISO639:chi)

如可以,欢迎提供部分或全部实现上述功能的代码

No response

[Feature]请求TMDB时请求没有添加API-Key(个人申请)

请尽可能详细描述你的想法

请求没有附加TMDB的api会导致无效返回

{
    "status_code": 7,
    "status_message": "Invalid API key: You must be granted a valid key.",
    "success": false
}

AutoAnimeMv/AutoAnimeMv.py

Lines 521 to 525 in 2e4afa6

def TMDBApi(Name):# TMDBApi相关,返回一个标准的中文名称
global USETMDBAPI,TMDBAPIDataCache
if USETMDBAPI == True:
if Name not in TMDBAPIDataCache:
TMDBApiData = literal_eval(Auxiliary_Http(f'https://api.themoviedb.org/3/search/tv?query={Name}&include_adult=true&language=zh&page=1').replace('false','False').replace('true','True').replace('null','None'))

如可以,欢迎提供部分或全部实现上述功能的代码

请求链接修改为 f"https://api.themoviedb.org/3/search/tv?api_key={TMDB_API}&..." ,且需要添加一个全局变量TMDB_API

可以增加在墙内使用的功能吗

请尽可能详细描述你的想法

[2023-07-27 19:42:44] INFO: Running....
[2023-07-27 19:42:44] INFO: 当前工具版本为2.7.2
[2023-07-27 19:42:44] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2023-07-27 19:42:44] INFO: 接受到的参数 > ['D:\APP\qBittorrent\AutoAnimeMv-2.7.2\AutoAnimeMv.py', 'E:\Download\qbDownload', '动漫']
[2023-07-27 19:42:44] INFO: 发现2个视频文件,没有发现字幕文件, ==> ['[DMG&LoliHouse] Kono Subarashii Sekai ni Bakuen wo! - 07 [WebRip 1080p HEVC-10bit AAC ASSx2].mkv', '[DMG&LoliHouse] Kono Subarashii Sekai ni Bakuen wo! - 08 [WebRip 1080p HEVC-10bit AAC ASSx2].mkv']
[2023-07-27 19:42:44] INFO: 当前分类 >> 动漫
[2023-07-27 19:42:44] INFO: --------------------------------------------------------------------------------
[2023-07-27 19:42:44] INFO: 匹配出的剧集 ==> 07
[2023-07-27 19:42:44] INFO: 通过剧集截断文件名 ==> Kono-Subarashii-Sekai-ni-Bakuen-wo
[2023-07-27 19:42:44] INFO: 匹配出的剧季 ==>
[2023-07-27 19:43:05] EXIT: 访问 https://api.themoviedb.org/3/search/tv?query=Kono-Subarashii-Sekai-ni-Bakuen-wo&include_adult=true&language=zh&page=1 失败,未能获取到内容,请检查您是否启用了系统代理,如是则您应该在此工具中配置代理信息,否则您则需要检查您的网络能否访问

如可以,欢迎提供部分或全部实现上述功能的代码

No response

[Bug] 同#41

所用版本&操作系统

群晖 7.1

遇到的问题

出现未预料到的问题,2.x版本能正常使用

配置文件:
[#Config]
PRINTLOGFLAG = True # 打印log开关
USEMODULE = False # 使用模块
NOTLOADEXTLIST = ''

NetConfig

HTTPPROXY = 'http://192.168.31.245:7890' # Http代理
HTTPSPROXY = 'http://192.168.31.245:7890' # Https代理
ALLPROXY = '' # 全部代理
USEBGMAPI = True # 使用BgmApi
USETMDBAPI = True #使用TMDBApi

File处理Config

USELINK = False # 使用硬链接开关
LINKFAILSUSEMOVEFLAGS = True #硬链接失败时使用MOVE
RMLOGSFLAG = '7' # 日志文件超时删除,填数字代表删除多久前的
MANDATORYCOVER = False # 强制覆盖文件

FileName处理Config

JELLYFINFORMAT = False # jellyfin 使用 ISO/639 标准 简体和繁体都使用chi做标识
USETITLTOEP = False # 给每个番剧视频加上番剧Title

QBConfig

USERQBAPI = False # 使用QBApi
QBIP = '192.168.1.112' # QB的ip
QBPORT = 8081 # QBApi端口
QBUSERNAME = 'admin' # Qb账号
QBPASSWORD = 'Syn123456!' # Qb密码

附加Config

TIMELAPSE = 0 # 延时处理番剧
SEEPSINGLECHARACTER =False # SE EP单字符模式

运行日志

[2024-04-18 09:16:29] INFO: 当前工具版本为3.1.2
[2024-04-18 09:16:29] INFO: 当前操作系统识别码为posix,posix/nt/java对应linux/windows/java虚拟机
[2024-04-18 09:16:29] INFO: filepath:None filename:None number:None categoryname:None
[2024-04-18 09:16:29] ERROR: 没有预料到的错误 > name 'ComKey' is not defined
Traceback (most recent call last):
File "AutoAnimeMv.py", line 580, in
Auxiliary_WriteLog()
File "AutoAnimeMv.py", line 292, in Auxiliary_WriteLog
LogPath = filepath if 'filepath' in globals() and path.exists(filepath) == True else PyPath
File "/usr/lib/python3.8/genericpath.py", line 19, in exists
os.stat(path)
TypeError: stat: path should be string, bytes, os.PathLike or integer, not NoneType

[Bug] 识别集数异常

所用版本&操作系统

2.(11.5).0;alpine

遇到的问题

第8集总是错误识别成179,其他集数正常。

运行日志

无标题

[非Bug] 下载完后出现权限错误

所用版本&操作系统

最新版

遇到的问题

看日志没能看出具体问题,提示未知错误,移动文件的时候权限有问题,但是我后来手动操作又没问题

根据我自己判断的话,可能问题出在下载完后一段时间会校验文件或者其他操作,文件还在被qb使用,无法移动文件
如果能添加延时就好了,程序延时执行,或者捕获此类错误,遇到就隔几秒重新尝试,如果重复尝试10次失败则跳出,这样可以大大降低出现问题的概率

运行日志

[2023-09-01 07:26:25] INFO: Running....
[2023-09-01 07:26:25] INFO: 当前工具版本为2.7.3
[2023-09-01 07:26:25] INFO: 当前操作系统识别码为posix,posix/nt/java对应linux/windows/java虚拟机
[2023-09-01 07:26:25] INFO: 接受到的参数 > ['/DATA/Media/AutoAnimeMv-main/AutoAnimeMv.py', '/DATA/Media/TV Shows', '[Lilith-Raws] Jujutsu Kaisen S02 - 06 [Baha][WebDL 1080p AVC AAC][CHT].mp4', '1']
[2023-09-01 07:26:25] INFO: --------------------------------------------------------------------------------
[2023-09-01 07:26:26] INFO: 匹配出的剧集 ==> 06
[2023-09-01 07:26:26] INFO: 通过剧集截断文件名 ==> Jujutsu-Kaisen-S02
[2023-09-01 07:26:26] INFO: 匹配出的剧季 ==> S02
[2023-09-01 07:26:27] INFO: 咒术回战 << bgmApi查询结果
[2023-09-01 07:26:31] INFO: 咒术回战 << TMDBApi查询结果
[2023-09-01 07:26:31] INFO: /DATA/Media/TV Shows//咒术回战/Season02/已存在
[2023-09-01 07:26:31] ERROR: 没有预料到的错误 > [Errno 13] Permission denied: '/DATA/Media/TV Shows//咒术回战/Season02/S02E06.mp4'

[2023-09-01 09:38:59] INFO: Running....

[Bug] 特殊别名API无法识别产生的问题

所用版本&操作系统

22621.1848-Windows 11

遇到的问题

invalid non-printable character U+0095

运行日志

[2023-07-06 22:50:10] INFO: Running....
[2023-07-06 22:50:10] INFO: 正在读取外置ini文件
[2023-07-06 22:50:10] INFO: 配置 < PRINTLOGFLAG = True # 打印log开关
[2023-07-06 22:50:10] INFO: 配置 < HTTPPROXY = '' # Http代理
[2023-07-06 22:50:10] INFO: 配置 < HTTPSPROXY = '' # Https代理
[2023-07-06 22:50:10] INFO: 配置 < ALLPROXY = '' # 全部代理
[2023-07-06 22:50:10] INFO: 配置 < USELINK = True # 使用硬链接开关
[2023-07-06 22:50:10] INFO: 配置 < LINKFAILSUSEMOVEFLAGS = False #硬链接失败时使用MOVE
[2023-07-06 22:50:10] INFO: 配置 < RMLOGSFLAG = '14' # 日志文件超时删除
[2023-07-06 22:50:10] INFO: 配置 < USEBOTFLAG = False # 使用TgBot通知,下面是接受TgBot通知的用户或群组
[2023-07-06 22:50:10] INFO: 配置 < TGBOTTOKEN = '' # TgBot Token
[2023-07-06 22:50:10] INFO: 配置 < BOTUSERIDLIST = [{'UserId': 'kenrst', 'ChatId': '-1001980615541'}, {'UserId': 'kenrst', 'ChatId': '2008923248'}]
[2023-07-06 22:50:10] INFO: 当前工具版本为2.2.1
[2023-07-06 22:50:10] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2023-07-06 22:50:10] INFO: 接受到的参数 > ['E:\AutoAnimeMv\AutoAnimeMv.py', 'E:\VideoDownload', '[Lilith-Raws] Mushoku Tensei S02 - 00 [Baha][WebDL 1080p AVC AAC][CHT].mp4', '1', 'Animation']
[2023-07-06 22:50:10] INFO: 当前分类 >> Animation
[2023-07-06 22:50:10] INFO: --------------------------------------------------------------------------------
[2023-07-06 22:50:10] INFO: 匹配出的剧集 ==> 00
[2023-07-06 22:50:10] INFO: 通过剧集截断文件名 ==> Mushoku-Tensei-S02
[2023-07-06 22:50:13] ERROR: 没有预料到的错误 > invalid non-printable character U+0095 (, line 6)

部分字幕组(主要是指[Up to 21°C])提供的番剧会出现文件名截断错误的情况

所用版本&操作系统

3.2.4-windows10

遇到的问题

文件名识别出了点问题,之前3.1.2版本的时候就有这个问题,不知道是不是那个摄氏度符号的原因...

运行日志

[2024-07-06 13:12:37] INFO: Running....
[2024-07-06 13:12:37] INFO: 当前工具版本为3.2.4
[2024-07-06 13:12:37] INFO: 当前操作系统识别码为nt,posix/nt/java对应linux/windows/java虚拟机
[2024-07-06 13:12:37] INFO: filepath:D:\动漫 filename:[Up to 21°C] Gimai Seikatsu - 01 (CR 1920x1080 AVC AAC MKV) [13FD730F].mkv number:1 categoryname:None
[2024-07-06 13:12:38] INFO: --------------------------------------------------------------------------------
[2024-07-06 13:12:38] INFO: 匹配出的剧集 ==> 01
[2024-07-06 13:12:38] INFO: 通过剧集截断文件名 ==> C=-Gimai-Seikatsu
[2024-07-06 13:12:38] INFO: 匹配出的剧季 ==>
[2024-07-06 13:13:00] WARNING: BgmApi没有检索到关于 C=-Gimai-Seikatsu 内容
[2024-07-06 13:13:00] INFO: 没有使用TMDBApi进行检索
[2024-07-06 13:13:00] EXIT: Api识别失败

有些番剧是从0编号开始的,这种怎么办

[2023-09-07 23:59:04] INFO: Running....
[2023-09-07 23:59:04] INFO: 当前工具版本为2.7.3
[2023-09-07 23:59:04] INFO: 当前操作系统识别码为posix,posix/nt/java对应linux/windows/java虚拟机
[2023-09-07 23:59:04] INFO: 接受到的参数 > ['/DATA/Media/AutoAnimeMv-main/AutoAnimeMv.py', '/DATA/Media/TV Shows', '[KitaujiSub] Mushoku Tensei - S2 [00][WebRip][HEVC_AAC][CHS].mp4', '1']
[2023-09-07 23:59:04] INFO: --------------------------------------------------------------------------------
[2023-09-07 23:59:04] INFO: 匹配出的剧集 ==> 00
[2023-09-07 23:59:04] INFO: 通过剧集截断文件名 ==> Mushoku-Tensei---S2
[2023-09-07 23:59:04] INFO: 特殊剧季 ==> 00
[2023-09-07 23:59:07] INFO: 无职转生~到了异世界就拿出真本事~ 第2部分 << bgmApi查询结果
[2023-09-07 23:59:11] WARNING: TMDBApi没有检索到关于 无职转生~到了异世界就拿出真本事~ 第2部分 内容
[2023-09-07 23:59:11] INFO: Move-/DATA/Media/TV Shows//Mushoku-Tensei/Season00/S00E00.mp4 << /DATA/Media/TV Shows/[KitaujiSub] Mushoku Tensei - S2 [00][WebRip][HEVC_AAC][CHS].mp4
[2023-09-07 23:59:11] INFO: 一切工作已经完成,用时7.088380336761475

剧集名直接识别为S00E00了

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.