mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 17:34:09 +02:00
iiptorrents: add genre query and results
This commit is contained in:
@@ -61,11 +61,11 @@ namespace Jackett.Common.Indexers
|
|||||||
{
|
{
|
||||||
TvSearchParams = new List<TvSearchParam>
|
TvSearchParams = new List<TvSearchParam>
|
||||||
{
|
{
|
||||||
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId
|
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId, TvSearchParam.Genre
|
||||||
},
|
},
|
||||||
MovieSearchParams = new List<MovieSearchParam>
|
MovieSearchParams = new List<MovieSearchParam>
|
||||||
{
|
{
|
||||||
MovieSearchParam.Q, MovieSearchParam.ImdbId
|
MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.Genre
|
||||||
},
|
},
|
||||||
MusicSearchParams = new List<MusicSearchParam>
|
MusicSearchParams = new List<MusicSearchParam>
|
||||||
{
|
{
|
||||||
@@ -199,6 +199,48 @@ namespace Jackett.Common.Indexers
|
|||||||
{
|
{
|
||||||
var releases = new List<ReleaseInfo>();
|
var releases = new List<ReleaseInfo>();
|
||||||
|
|
||||||
|
var ValidList = new List<string>() {
|
||||||
|
"action",
|
||||||
|
"adventure",
|
||||||
|
"animation",
|
||||||
|
"biography",
|
||||||
|
"comedy",
|
||||||
|
"crime",
|
||||||
|
"documentary",
|
||||||
|
"drama",
|
||||||
|
"family",
|
||||||
|
"fantasy",
|
||||||
|
"game-show",
|
||||||
|
"history",
|
||||||
|
"horror",
|
||||||
|
"music",
|
||||||
|
"musical",
|
||||||
|
"mystery",
|
||||||
|
"news",
|
||||||
|
"reality-tv",
|
||||||
|
"romance",
|
||||||
|
"sci-fi",
|
||||||
|
"sitcom",
|
||||||
|
"sport",
|
||||||
|
"talk-show",
|
||||||
|
"thriller",
|
||||||
|
"war",
|
||||||
|
"western"
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* notes:
|
||||||
|
* IPTorrents can search for genre (tags) using the default title&tags search
|
||||||
|
* qf=
|
||||||
|
* "" = Title and Tags
|
||||||
|
* ti = Title
|
||||||
|
* ta = Tags
|
||||||
|
* all = Title, Tags & Description
|
||||||
|
* adv = Advanced
|
||||||
|
*
|
||||||
|
* But only movies and tv have tags.
|
||||||
|
*/
|
||||||
|
|
||||||
var qc = new NameValueCollection();
|
var qc = new NameValueCollection();
|
||||||
|
|
||||||
|
|
||||||
@@ -212,7 +254,11 @@ namespace Jackett.Common.Indexers
|
|||||||
|
|
||||||
if (query.IsImdbQuery)
|
if (query.IsImdbQuery)
|
||||||
qc.Add("q", query.ImdbID);
|
qc.Add("q", query.ImdbID);
|
||||||
else if (!string.IsNullOrWhiteSpace(query.GetQueryString()))
|
else
|
||||||
|
if (query.IsGenreQuery)
|
||||||
|
qc.Add("q", query.GetQueryString() + " " + query.Genre);
|
||||||
|
else
|
||||||
|
if (!string.IsNullOrWhiteSpace(query.GetQueryString()))
|
||||||
qc.Add("q", query.GetQueryString());
|
qc.Add("q", query.GetQueryString());
|
||||||
|
|
||||||
foreach (var cat in MapTorznabCapsToTrackers(query))
|
foreach (var cat in MapTorznabCapsToTrackers(query))
|
||||||
@@ -258,6 +304,9 @@ namespace Jackett.Common.Indexers
|
|||||||
var description = descrSplit.Length > 1 ? "Tags: " + descrSplit.First().Trim() : "";
|
var description = descrSplit.Length > 1 ? "Tags: " + descrSplit.First().Trim() : "";
|
||||||
description += dateSplit.Length > 1 ? " Uploaded by: " + dateSplit.Last().Trim() : "";
|
description += dateSplit.Length > 1 ? " Uploaded by: " + dateSplit.Last().Trim() : "";
|
||||||
|
|
||||||
|
char[] delimiters = { ',', ' ', '/', ')', '(', '.', ';', '[', ']', '"', '|', ':' };
|
||||||
|
var releaseGenres = ValidList.Intersect(description.ToLower().Split(delimiters, System.StringSplitOptions.RemoveEmptyEntries)).ToList();
|
||||||
|
|
||||||
var catIcon = row.QuerySelector("td:nth-of-type(1) a");
|
var catIcon = row.QuerySelector("td:nth-of-type(1) a");
|
||||||
if (catIcon == null)
|
if (catIcon == null)
|
||||||
// Torrents - Category column == Text or Code
|
// Torrents - Category column == Text or Code
|
||||||
@@ -299,6 +348,9 @@ namespace Jackett.Common.Indexers
|
|||||||
MinimumRatio = 1,
|
MinimumRatio = 1,
|
||||||
MinimumSeedTime = 1209600 // 336 hours
|
MinimumSeedTime = 1209600 // 336 hours
|
||||||
};
|
};
|
||||||
|
if (release.Genres == null)
|
||||||
|
release.Genres = new List<string>();
|
||||||
|
release.Genres = releaseGenres;
|
||||||
|
|
||||||
releases.Add(release);
|
releases.Add(release);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user