繁体   English   中英

用“Name - SXXEYY”.mkv(或 avi,mp4)转换文件名“Name - XXxYY”.mkv(或 avi,mp4)

[英]Transform filename "Name - XXxYY".mkv(or avi,mp4) with "Name - SXXEYY".mkv(or avi,mp4)

我有这部分 python 代码检查文件是电影还是节目

if search('[Ss][0-9]+[Ee][0-9]+', self.name) is not None:
    series = self.name + 'FIN'
    series = sub(' - [Ss][0-9]+[Ee][0-9]+.*?FIN', '', series)
    series = sub('[Ss][0-9]+[Ee][0-9]+.*?FIN', '', series)
    series = sub('FIN', '', series)
    series = transSERIES(series)
    url = 'http://www.thetvdb.com/api/GetSeries.php?seriesname=' + series + self.language
    self.getTVDbData(url, '0')

不幸的是,我在图书馆中的所有节目都是这样格式化的,当然不会被识别为系列:

"ShowName - XXxYY.mkv" XXxYY for XX(Saison)xYY(Episode)

如何在 if 条件之前将(不重命名所有文件) "ShowName - XXxYY"转换为"ShowName - SXXEYY"

if search('[Ss][0-9]+[Ee][0-9]+', self.name) is not None:

您可以首先使用字符串的split方法提取“XXxYY”:

with_extention = show_name.split(" ")[-1] # result : 03x13.mkv
without_extention = XXxYY.split(".")[0] # result : 03x13
season, episode = without_extention.split("x")[0], XXxYY.split("x")[1]

最后,您可以通过使用连接将检索到的信息添加到初始文件名来重新排列它。

base_name = show_name[0: len(show_name)-len(with_extension)]
finale_name = base_name + "S" + season + "E" + episode

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM