feat: support path name attribute. close #75
This commit is contained in:
parent
1b547f7aaf
commit
96be3222f9
|
@ -50,6 +50,7 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
|
|
||||||
protected Regex regMetaSourcePrefix = new Regex(@"^\[.+\]", RegexOptions.Compiled);
|
protected Regex regMetaSourcePrefix = new Regex(@"^\[.+\]", RegexOptions.Compiled);
|
||||||
protected Regex regSeasonNameSuffix = new Regex(@"\s第[0-9一二三四五六七八九十]+?季$|\sSeason\s\d+?$|(?<![0-9a-zA-Z])\d$", RegexOptions.Compiled);
|
protected Regex regSeasonNameSuffix = new Regex(@"\s第[0-9一二三四五六七八九十]+?季$|\sSeason\s\d+?$|(?<![0-9a-zA-Z])\d$", RegexOptions.Compiled);
|
||||||
|
protected Regex regDoubanIdAttribute = new Regex(@"\[(?:douban|doubanid)-(\d+?)\]", RegexOptions.Compiled);
|
||||||
|
|
||||||
protected PluginConfiguration config
|
protected PluginConfiguration config
|
||||||
{
|
{
|
||||||
|
@ -107,11 +108,17 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
protected async Task<string?> GuessByDoubanAsync(ItemLookupInfo info, CancellationToken cancellationToken)
|
protected async Task<string?> GuessByDoubanAsync(ItemLookupInfo info, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
var fileName = GetOriginalFileName(info);
|
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 parseResult = NameParser.Parse(fileName);
|
||||||
var searchName = !string.IsNullOrEmpty(parseResult.ChineseName) ? parseResult.ChineseName : parseResult.Name;
|
var searchName = !string.IsNullOrEmpty(parseResult.ChineseName) ? parseResult.ChineseName : parseResult.Name;
|
||||||
info.Year = parseResult.Year; // 默认parser对anime年份会解析出错,以anitomy为准
|
info.Year = parseResult.Year; // 默认parser对anime年份会解析出错,以anitomy为准
|
||||||
|
|
||||||
|
|
||||||
this.Log($"GuessByDouban of [name]: {info.Name} [file_name]: {fileName} [year]: {info.Year} [search name]: {searchName}");
|
this.Log($"GuessByDouban of [name]: {info.Name} [file_name]: {fileName} [year]: {info.Year} [search name]: {searchName}");
|
||||||
List<DoubanSubject> result;
|
List<DoubanSubject> result;
|
||||||
DoubanSubject? item;
|
DoubanSubject? item;
|
||||||
|
|
Loading…
Reference in New Issue