From 86530ba35f7d4d9cd97c583481fc01dbd55aa68a Mon Sep 17 00:00:00 2001 From: Diego Heras Date: Sun, 24 Apr 2022 21:11:49 +0200 Subject: [PATCH] anthelion: implement imdb and tmdb search. #7923 (#13195) --- src/Jackett.Common/Indexers/Anthelion.cs | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/Jackett.Common/Indexers/Anthelion.cs b/src/Jackett.Common/Indexers/Anthelion.cs index 4fa69ddcc..7a1030b7f 100644 --- a/src/Jackett.Common/Indexers/Anthelion.cs +++ b/src/Jackett.Common/Indexers/Anthelion.cs @@ -44,7 +44,7 @@ namespace Jackett.Common.Indexers }, MovieSearchParams = new List { - MovieSearchParam.Q + MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId } }, configService: configService, @@ -91,21 +91,26 @@ namespace Jackett.Common.Indexers { var releases = new List(); - // TODO: IMDB search is available but it requires to parse the details page var qc = new NameValueCollection { { "order_by", "time" }, { "order_way", "desc" }, { "action", "basic" }, - { "searchsubmit", "1" }, - { "searchstr", query.IsImdbQuery ? query.ImdbID : query.GetQueryString() } + { "searchsubmit", "1" } }; + if (query.IsImdbQuery) + qc.Add("imdb", query.ImdbID); + else if (query.IsTmdbQuery) + qc.Add("tmdb", query.TmdbID.ToString()); + else + qc.Add("searchstr", query.GetQueryString()); + var catList = MapTorznabCapsToTrackers(query); foreach (var cat in catList) qc.Add($"filter_cat[{cat}]", "1"); - // remove . as not used in titles + // remove . as not used in titles var searchUrl = BrowseUrl + "?" + qc.GetQueryString().Replace(".", " "); var results = await RequestWithCookiesAsync(searchUrl); try @@ -147,10 +152,12 @@ namespace Jackett.Common.Indexers } }; - // TODO: TMDb is also available var qImdb = row.QuerySelector("a[href^=\"https://www.imdb.com\"]"); var imdb = qImdb != null ? ParseUtil.GetImdbID(qImdb.GetAttribute("href").Split('/').Last()) : null; + qImdb = row.QuerySelector("a[href^=\"https://www.themoviedb.org\"]"); + var tmdb = qImdb != null ? ParseUtil.GetLongFromString(qImdb.GetAttribute("href").Split('/').Last()) : null; + var release = new ReleaseInfo { MinimumRatio = 1, @@ -163,6 +170,7 @@ namespace Jackett.Common.Indexers Details = details, Guid = link, Imdb = imdb, + TMDb = tmdb, Poster = poster, Seeders = seeders, Peers = leechers + seeders,