From 96be3222f9228b718b6cddd8098dd074b144fb39 Mon Sep 17 00:00:00 2001 From: cxfksword <718792+cxfksword@users.noreply.github.com> Date: Sun, 12 May 2024 17:57:07 +0800 Subject: [PATCH] feat: support path name attribute. close #75 --- Jellyfin.Plugin.MetaShark/Providers/BaseProvider.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Jellyfin.Plugin.MetaShark/Providers/BaseProvider.cs b/Jellyfin.Plugin.MetaShark/Providers/BaseProvider.cs index 7ddf486..93bfce6 100644 --- a/Jellyfin.Plugin.MetaShark/Providers/BaseProvider.cs +++ b/Jellyfin.Plugin.MetaShark/Providers/BaseProvider.cs @@ -50,6 +50,7 @@ namespace Jellyfin.Plugin.MetaShark.Providers protected Regex regMetaSourcePrefix = new Regex(@"^\[.+\]", RegexOptions.Compiled); protected Regex regSeasonNameSuffix = new Regex(@"\s第[0-9一二三四五六七八九十]+?季$|\sSeason\s\d+?$|(? GuessByDoubanAsync(ItemLookupInfo info, CancellationToken cancellationToken) { var fileName = GetOriginalFileName(info); + // 从文件名属性格式获取,如[douban-12345]或[doubanid-12345] + var doubanId = this.regDoubanIdAttribute.FirstMatchGroup(fileName); + if (!string.IsNullOrWhiteSpace(doubanId)) + { + this.Log($"Found douban [id] by attr: {doubanId}"); + return doubanId; + } var parseResult = NameParser.Parse(fileName); var searchName = !string.IsNullOrEmpty(parseResult.ChineseName) ? parseResult.ChineseName : parseResult.Name; info.Year = parseResult.Year; // 默认parser对anime年份会解析出错,以anitomy为准 - this.Log($"GuessByDouban of [name]: {info.Name} [file_name]: {fileName} [year]: {info.Year} [search name]: {searchName}"); List result; DoubanSubject? item;