Fix wrong imdb id
This commit is contained in:
parent
e32e897559
commit
bf97db9fb4
|
@ -317,13 +317,6 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 豆瓣的imdb id可能是旧的,需要先从omdb接口获取最新的imdb id
|
|
||||||
var omdbItem = await this._omdbApi.GetByImdbID(imdb, cancellationToken).ConfigureAwait(false);
|
|
||||||
if (!string.IsNullOrEmpty(omdbItem?.ImdbID))
|
|
||||||
{
|
|
||||||
imdb = omdbItem.ImdbID;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 通过imdb获取tmdbId
|
// 通过imdb获取tmdbId
|
||||||
var findResult = await this._tmdbApi.FindByExternalIdAsync(imdb, TMDbLib.Objects.Find.FindExternalSource.Imdb, language, cancellationToken).ConfigureAwait(false);
|
var findResult = await this._tmdbApi.FindByExternalIdAsync(imdb, TMDbLib.Objects.Find.FindExternalSource.Imdb, language, cancellationToken).ConfigureAwait(false);
|
||||||
if (findResult?.MovieResults != null && findResult.MovieResults.Count > 0)
|
if (findResult?.MovieResults != null && findResult.MovieResults.Count > 0)
|
||||||
|
@ -343,6 +336,25 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 豆瓣的imdb id可能是旧的,需要先从omdb接口获取最新的imdb id
|
||||||
|
/// </summary>
|
||||||
|
protected async Task<string> CheckNewImdbID(string imdb, CancellationToken cancellationToken)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrEmpty(imdb))
|
||||||
|
{
|
||||||
|
return imdb;
|
||||||
|
}
|
||||||
|
|
||||||
|
var omdbItem = await this._omdbApi.GetByImdbID(imdb, cancellationToken).ConfigureAwait(false);
|
||||||
|
if (!string.IsNullOrEmpty(omdbItem?.ImdbID))
|
||||||
|
{
|
||||||
|
imdb = omdbItem.ImdbID;
|
||||||
|
}
|
||||||
|
|
||||||
|
return imdb;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public int? GuessSeasonNumberByDirectoryName(string path)
|
public int? GuessSeasonNumberByDirectoryName(string path)
|
||||||
{
|
{
|
||||||
|
|
|
@ -131,7 +131,9 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
};
|
};
|
||||||
if (!string.IsNullOrEmpty(subject.Imdb))
|
if (!string.IsNullOrEmpty(subject.Imdb))
|
||||||
{
|
{
|
||||||
movie.SetProviderId(MetadataProvider.Imdb, subject.Imdb);
|
var newImdbId = await this.CheckNewImdbID(subject.Imdb, cancellationToken).ConfigureAwait(false);
|
||||||
|
subject.Imdb = newImdbId;
|
||||||
|
movie.SetProviderId(MetadataProvider.Imdb, newImdbId);
|
||||||
|
|
||||||
// 通过imdb获取TMDB id
|
// 通过imdb获取TMDB id
|
||||||
var newTmdbId = await this.GetTmdbIdByImdbAsync(subject.Imdb, info.MetadataLanguage, cancellationToken).ConfigureAwait(false);
|
var newTmdbId = await this.GetTmdbIdByImdbAsync(subject.Imdb, info.MetadataLanguage, cancellationToken).ConfigureAwait(false);
|
||||||
|
|
|
@ -117,7 +117,6 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
ProductionYear = subject.Year,
|
ProductionYear = subject.Year,
|
||||||
HomePageUrl = "https://www.douban.com",
|
HomePageUrl = "https://www.douban.com",
|
||||||
Genres = subject.Genres,
|
Genres = subject.Genres,
|
||||||
// ProductionLocations = [x?.Country],
|
|
||||||
PremiereDate = subject.ScreenTime,
|
PremiereDate = subject.ScreenTime,
|
||||||
Tagline = string.Empty,
|
Tagline = string.Empty,
|
||||||
};
|
};
|
||||||
|
@ -125,7 +124,9 @@ namespace Jellyfin.Plugin.MetaShark.Providers
|
||||||
// 设置imdb元数据
|
// 设置imdb元数据
|
||||||
if (!string.IsNullOrEmpty(subject.Imdb))
|
if (!string.IsNullOrEmpty(subject.Imdb))
|
||||||
{
|
{
|
||||||
item.SetProviderId(MetadataProvider.Imdb, subject.Imdb);
|
var newImdbId = await this.CheckNewImdbID(subject.Imdb, cancellationToken).ConfigureAwait(false);
|
||||||
|
subject.Imdb = newImdbId;
|
||||||
|
item.SetProviderId(MetadataProvider.Imdb, newImdbId);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 搜索匹配tmdbId
|
// 搜索匹配tmdbId
|
||||||
|
|
Loading…
Reference in New Issue