mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-24 14:57:09 +01:00
Code Tidy: Indexers A to N (#2032)
* Code Tidy: Indexers A-B * Code Tidy: Indexers C to H * Code Tidy: Indexers I-N
This commit is contained in:
@@ -1,29 +1,25 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using AngleSharp.Parser.Html;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using AngleSharp.Parser.Html;
|
||||
using AngleSharp.Dom;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Web;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class SevenTor : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "ucp.php?mode=login"; } }
|
||||
string SearchUrl { get { return SiteLink + "search.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "ucp.php?mode=login"; } }
|
||||
private string SearchUrl { get { return SiteLink + "search.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -1664,7 +1660,7 @@ namespace Jackett.Indexers
|
||||
|
||||
var qDetailsLink = Row.QuerySelector("a.topictitle");
|
||||
var qDownloadLink = Row.QuerySelector("a[href^=\"./download/file.php?id=\"]");
|
||||
|
||||
|
||||
release.Title = qDetailsLink.TextContent;
|
||||
release.Comments = new Uri(SiteLink + qDetailsLink.GetAttribute("href"));
|
||||
release.Link = new Uri(SiteLink + qDownloadLink.GetAttribute("href"));
|
||||
@@ -1731,4 +1727,3 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -120,7 +120,6 @@ namespace Jackett.Indexers
|
||||
// If we want to simulate a browser
|
||||
if (ConfigData.Browser.Value)
|
||||
{
|
||||
|
||||
// Clean headers
|
||||
emulatedBrowserHeaders.Clear();
|
||||
|
||||
@@ -132,7 +131,6 @@ namespace Jackett.Indexers
|
||||
emulatedBrowserHeaders.Add("User-Agent", ConfigData.HeaderUserAgent.Value);
|
||||
}
|
||||
|
||||
|
||||
// Getting login form to retrieve CSRF token
|
||||
var myRequest = new Utils.Clients.WebRequest()
|
||||
{
|
||||
@@ -375,7 +373,6 @@ namespace Jackett.Indexers
|
||||
};
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -741,9 +738,11 @@ namespace Jackett.Indexers
|
||||
logger.Debug(message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "info":
|
||||
logger.Info(message);
|
||||
break;
|
||||
|
||||
case "error":
|
||||
logger.Error(message);
|
||||
break;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text;
|
||||
using System.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class Andraste : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -105,7 +105,7 @@ namespace Jackett.Indexers
|
||||
TimeZoneInfo germanyTz = TimeZoneInfo.CreateCustomTimeZone("W. Europe Standard Time", new TimeSpan(1, 0, 0), "(GMT+01:00) W. Europe Standard Time", "W. Europe Standard Time", "W. Europe DST Time", adjustments);
|
||||
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
||||
|
||||
var searchString = query.GetQueryString();
|
||||
var searchUrl = BrowseUrl;
|
||||
var queryCollection = new NameValueCollection();
|
||||
@@ -152,7 +152,7 @@ namespace Jackett.Indexers
|
||||
var qSize = qRow.Find("span:contains(Volumen) > b:eq(0)").First();
|
||||
var qOnlyUpload = qRow.Find("img[title=OnlyUpload]");
|
||||
|
||||
if(qOnlyUpload.Any())
|
||||
if (qOnlyUpload.Any())
|
||||
{
|
||||
release.MinimumRatio = 2;
|
||||
release.MinimumSeedTime = 144 * 60 * 60;
|
||||
@@ -209,4 +209,3 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,30 +1,25 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Models.IndexerConfig.Bespoke;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class AnimeBytes : BaseCachingWebIndexer
|
||||
{
|
||||
enum SearchType
|
||||
private enum SearchType
|
||||
{
|
||||
Video,
|
||||
Audio
|
||||
@@ -38,7 +33,7 @@ namespace Jackett.Indexers
|
||||
public bool AddSynonyms { get { return configData.AddSynonyms.Value; } }
|
||||
public bool FilterSeasonEpisode { get { return configData.FilterSeasonEpisode.Value; } }
|
||||
|
||||
new ConfigurationDataAnimeBytes configData
|
||||
private new ConfigurationDataAnimeBytes configData
|
||||
{
|
||||
get { return (ConfigurationDataAnimeBytes)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -70,7 +65,6 @@ namespace Jackett.Indexers
|
||||
webclient.EmulateBrowser = false; // Animebytes doesn't like fake user agents (issue #1535)
|
||||
}
|
||||
|
||||
|
||||
protected override IEnumerable<ReleaseInfo> FilterResults(TorznabQuery query, IEnumerable<ReleaseInfo> input)
|
||||
{
|
||||
// Prevent filtering
|
||||
@@ -270,7 +264,6 @@ namespace Jackett.Indexers
|
||||
// Skip the first two info rows
|
||||
for (int r = 1; r < releaseRows.Count(); r++)
|
||||
{
|
||||
|
||||
var row = releaseRows.Get(r);
|
||||
var rowCq = row.Cq();
|
||||
if (rowCq.HasClass("edition_info"))
|
||||
@@ -303,7 +296,6 @@ namespace Jackett.Indexers
|
||||
{
|
||||
releaseInfo = "E0" + releaseInfo;
|
||||
}
|
||||
|
||||
}
|
||||
else if (rowCq.HasClass("torrent"))
|
||||
{
|
||||
@@ -384,8 +376,6 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// We dont actually have a release name >.> so try to create one
|
||||
var releaseTags = infoLink.InnerText.Split("|".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).ToList();
|
||||
for (int i = releaseTags.Count - 1; i >= 0; i--)
|
||||
@@ -437,7 +427,7 @@ namespace Jackett.Indexers
|
||||
release.Size = ReleaseInfo.GetBytes(size.First().Text());
|
||||
}
|
||||
|
||||
// Additional 5 hours per GB
|
||||
// Additional 5 hours per GB
|
||||
release.MinimumSeedTime += (release.Size / 1000000000) * 18000;
|
||||
|
||||
// Peer info
|
||||
|
||||
@@ -1,22 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string SearchUrl { get { return SiteLink + "ajax/torrents_data.php"; } }
|
||||
private string SearchUrlReferer { get { return SiteLink + "torrents.php?cat=0&searchin=filename&search="; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
|
||||
@@ -1,20 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using Jackett.Utils;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using CsQuery;
|
||||
using System.Web;
|
||||
using Jackett.Services;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using System.Text.RegularExpressions;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,25 +1,22 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
// To comply with the rules for this tracker, only the acronym is used and no publicly displayed URLs to the site.
|
||||
// To comply with the rules for this tracker, only the acronym is used and no publicly displayed URLs to the site.
|
||||
|
||||
public class BB : BaseWebIndexer
|
||||
{
|
||||
@@ -28,7 +25,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return BaseUri + "login.php"; } }
|
||||
private string SearchUrl { get { return BaseUri + "torrents.php?searchtags=&tags_type=0&order_by=s3&order_way=desc&disablegrouping=1&"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -96,14 +93,14 @@ namespace Jackett.Indexers
|
||||
{
|
||||
List<ReleaseInfo> releases = new List<ReleaseInfo>();
|
||||
List<string> searchStrings = new List<string>(new string[] { query.GetQueryString() });
|
||||
|
||||
|
||||
if (string.IsNullOrEmpty(query.Episode) && (query.Season > 0))
|
||||
// Tracker naming rules: If query is for a whole season, "Season #" instead of "S##".
|
||||
searchStrings.Add((query.SanitizedSearchTerm + " " + string.Format("\"Season {0}\"", query.Season)).Trim());
|
||||
|
||||
List<string> categories = MapTorznabCapsToTrackers(query);
|
||||
List<string> request_urls = new List<string>();
|
||||
|
||||
|
||||
foreach (var searchString in searchStrings)
|
||||
{
|
||||
var queryCollection = new NameValueCollection();
|
||||
@@ -116,16 +113,15 @@ namespace Jackett.Indexers
|
||||
|
||||
foreach (var cat in categories)
|
||||
{
|
||||
|
||||
queryCollection.Add("filter_cat[" + cat + "]", "1");
|
||||
}
|
||||
|
||||
request_urls.Add(SearchUrl + queryCollection.GetQueryString());
|
||||
}
|
||||
IEnumerable<Task<WebClientStringResult>> downloadTasksQuery =
|
||||
from url in request_urls select RequestStringWithCookiesAndRetry(url);
|
||||
from url in request_urls select RequestStringWithCookiesAndRetry(url);
|
||||
|
||||
WebClientStringResult[] responses = await Task.WhenAll(downloadTasksQuery.ToArray());
|
||||
WebClientStringResult[] responses = await Task.WhenAll(downloadTasksQuery.ToArray());
|
||||
|
||||
for (int i = 0; i < searchStrings.Count(); i++)
|
||||
{
|
||||
@@ -188,7 +184,7 @@ namespace Jackett.Indexers
|
||||
if (catStr == "10") //change "Season #" to "S##" for TV shows
|
||||
release.Title = Regex.Replace(release.Title, @"Season (\d+)",
|
||||
m => string.Format("S{0:00}", Int32.Parse(m.Groups[1].Value)));
|
||||
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,29 +1,29 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using AngleSharp.Dom;
|
||||
using AngleSharp.Parser.Html;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using AngleSharp.Parser.Html;
|
||||
using AngleSharp.Dom;
|
||||
using System.Text.RegularExpressions;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class BJShare : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "torrents.php"; } }
|
||||
string TodayUrl { get { return SiteLink + "torrents.php?action=today"; } }
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "torrents.php"; } }
|
||||
private string TodayUrl { get { return SiteLink + "torrents.php?action=today"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -99,9 +99,9 @@ namespace Jackett.Indexers
|
||||
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
|
||||
{
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
||||
|
||||
var searchString = query.GetQueryString();
|
||||
|
||||
|
||||
// if the search string is empty use the "last 24h torrents" view
|
||||
if (string.IsNullOrWhiteSpace(searchString))
|
||||
{
|
||||
@@ -159,7 +159,6 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
var catStr = qCatLink.GetAttribute("href").Split('=')[1];
|
||||
release.Category = MapTrackerCatToNewznab(catStr);
|
||||
|
||||
@@ -170,7 +169,6 @@ namespace Jackett.Indexers
|
||||
release.Seeders = ParseUtil.CoerceInt(qSeeders.TextContent);
|
||||
release.Peers = ParseUtil.CoerceInt(qLeechers.TextContent) + release.Seeders;
|
||||
|
||||
|
||||
if (qFreeLeech != null)
|
||||
release.DownloadVolumeFactor = 0;
|
||||
else
|
||||
@@ -205,7 +203,7 @@ namespace Jackett.Indexers
|
||||
|
||||
foreach (var cat in MapTorznabCapsToTrackers(query))
|
||||
{
|
||||
queryCollection.Add("filter_cat["+cat+"]", "1");
|
||||
queryCollection.Add("filter_cat[" + cat + "]", "1");
|
||||
}
|
||||
|
||||
searchUrl += "?" + queryCollection.GetQueryString();
|
||||
@@ -280,7 +278,7 @@ namespace Jackett.Indexers
|
||||
}
|
||||
|
||||
release.Description = release.Description.Replace(" / Free", ""); // Remove Free Tag
|
||||
|
||||
|
||||
release.Description = release.Description.Replace("Full HD", "1080p");
|
||||
release.Description = release.Description.Replace("/ HD / ", "/ 720p /");
|
||||
release.Description = release.Description.Replace(" / HD]", " / 720p]");
|
||||
@@ -289,10 +287,10 @@ namespace Jackett.Indexers
|
||||
int nBarra = release.Title.IndexOf("[");
|
||||
if (nBarra != -1)
|
||||
{
|
||||
release.Title = release.Title.Substring(nBarra + 1);
|
||||
release.Title = release.Title.Replace("]" , "");
|
||||
}
|
||||
|
||||
release.Title = release.Title.Substring(nBarra + 1);
|
||||
release.Title = release.Title.Replace("]", "");
|
||||
}
|
||||
|
||||
release.Title += " " + release.Description; // add year and Description to the release Title to add some meaning to it
|
||||
|
||||
// check for previously stripped search terms
|
||||
@@ -334,4 +332,3 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -23,7 +20,7 @@ namespace Jackett.Indexers
|
||||
public string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
public string id = "bakabt";
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -45,16 +42,15 @@ namespace Jackett.Indexers
|
||||
Type = "private";
|
||||
}
|
||||
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
{
|
||||
LoadValuesFromJson(configJson);
|
||||
|
||||
var loginForm = await webclient.GetString(new Utils.Clients.WebRequest()
|
||||
{
|
||||
Url = LoginUrl,
|
||||
Type = RequestType.GET
|
||||
});
|
||||
{
|
||||
Url = LoginUrl,
|
||||
Type = RequestType.GET
|
||||
});
|
||||
|
||||
var pairs = new Dictionary<string, string> {
|
||||
{ "username", configData.Username.Value },
|
||||
@@ -77,7 +73,6 @@ namespace Jackett.Indexers
|
||||
|
||||
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
|
||||
{
|
||||
|
||||
// This tracker only deals with full seasons so chop off the episode/season number if we have it D:
|
||||
if (!string.IsNullOrWhiteSpace(query.SearchTerm))
|
||||
{
|
||||
@@ -98,7 +93,6 @@ namespace Jackett.Indexers
|
||||
|
||||
foreach (var row in rows)
|
||||
{
|
||||
|
||||
var qRow = row.Cq();
|
||||
var qTitleLink = qRow.Find("a.title, a.alt_title").First();
|
||||
var title = qTitleLink.Text().Trim();
|
||||
|
||||
@@ -3,16 +3,15 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using AutoMapper;
|
||||
using Jackett.Models;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using AutoMapper;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Text.RegularExpressions;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -255,6 +254,7 @@ namespace Jackett.Indexers
|
||||
throw new IndexerException(this, ex);
|
||||
}
|
||||
}
|
||||
|
||||
protected abstract Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query);
|
||||
}
|
||||
|
||||
@@ -463,7 +463,7 @@ namespace Jackett.Indexers
|
||||
|| response.Status == System.Net.HttpStatusCode.GatewayTimeout
|
||||
|| (int)response.Status == 521 // used by cloudflare to signal the original webserver is refusing the connection
|
||||
|| (int)response.Status == 522 // used by cloudflare to signal the original webserver is not reachable at all (timeout)
|
||||
)
|
||||
)
|
||||
{
|
||||
throw new Exception("Request to " + response.Request.Url + " failed (Error " + response.Status + ") - The tracker seems to be down.");
|
||||
}
|
||||
@@ -511,7 +511,6 @@ namespace Jackett.Indexers
|
||||
matches = matches.NextMatch();
|
||||
}
|
||||
return string.Join("; ", cookieDIctionary.Select(kv => kv.Key.ToString() + "=" + kv.Value.ToString()).ToArray());
|
||||
|
||||
}
|
||||
|
||||
// Update CookieHeader with new cookies and save the config if something changed (e.g. a new CloudFlare clearance cookie was issued)
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Text;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -20,7 +20,7 @@ namespace Jackett.Indexers
|
||||
{
|
||||
private string SearchUrl { get { return SiteLink + "browse.php?searchin=title&incldead=0&"; } }
|
||||
|
||||
new ConfigurationDataLoginLink configData
|
||||
private new ConfigurationDataLoginLink configData
|
||||
{
|
||||
get { return (ConfigurationDataLoginLink)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -82,14 +82,12 @@ namespace Jackett.Indexers
|
||||
56, // Music / 720p
|
||||
42 // Music / Blu-ray
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
{
|
||||
LoadValuesFromJson(configJson);
|
||||
|
||||
|
||||
var result = await RequestStringWithCookies(configData.LoginLink.Value);
|
||||
await ConfigureIfOK(result.Cookies, result.Content != null && result.Content.Contains("Welcome Back"), () =>
|
||||
{
|
||||
@@ -169,7 +167,6 @@ namespace Jackett.Indexers
|
||||
release.UploadVolumeFactor = 1;
|
||||
|
||||
releases.Add(release);
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
@@ -1,28 +1,27 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using CsQuery;
|
||||
using System.Web;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class BitCityReloaded : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "uebersicht.php"; } }
|
||||
TimeZoneInfo germanyTz = TimeZoneInfo.CreateCustomTimeZone("W. Europe Standard Time", new TimeSpan(1, 0, 0), "W. Europe Standard Time", "W. Europe Standard Time");
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "uebersicht.php"; } }
|
||||
private TimeZoneInfo germanyTz = TimeZoneInfo.CreateCustomTimeZone("W. Europe Standard Time", new TimeSpan(1, 0, 0), "W. Europe Standard Time", "W. Europe Standard Time");
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
|
||||
@@ -1,21 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +23,7 @@ namespace Jackett.Indexers
|
||||
private string SearchUrl { get { return SiteLink + "torrents.php?"; } }
|
||||
private string DownloadUrl { get { return SiteLink + "download.php?id={0}"; } }
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -144,7 +141,6 @@ namespace Jackett.Indexers
|
||||
var rows = table.Cq().Children();
|
||||
foreach (var row in rows.Skip(1))
|
||||
{
|
||||
|
||||
var release = new ReleaseInfo();
|
||||
|
||||
var qRow = row.Cq();
|
||||
|
||||
@@ -1,4 +1,12 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
@@ -6,16 +14,6 @@ using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -23,11 +21,12 @@ namespace Jackett.Indexers
|
||||
{
|
||||
//https is poorly implemented on BitMeTV. Site uses http to login, but then redirects to https for search
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
|
||||
private string LoginPost { get { return SiteLink + "takelogin.php"; } }
|
||||
private string CaptchaUrl { get { return SiteLink + "visual.php"; } }
|
||||
private string SearchUrl { get { return "https://www.bitmetv.org/browse.php"; } }
|
||||
|
||||
new ConfigurationDataCaptchaLogin configData
|
||||
private new ConfigurationDataCaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataCaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
|
||||
@@ -1,22 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -27,7 +23,7 @@ namespace Jackett.Indexers
|
||||
private string LoginReferer { get { return SiteLink + "login.php"; } }
|
||||
public override string[] AlternativeSiteLinks { get; protected set; } = new string[] { "https://www.bitsoup.me/", "https://www.bitsoup.org/" };
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -148,7 +144,6 @@ namespace Jackett.Indexers
|
||||
var pairs = new Dictionary<string, string> {
|
||||
{ "username", configData.Username.Value },
|
||||
{ "password", configData.Password.Value },
|
||||
|
||||
};
|
||||
|
||||
var loginPage = await RequestStringWithCookies(SiteLink, string.Empty);
|
||||
@@ -172,7 +167,6 @@ namespace Jackett.Indexers
|
||||
var trackerCats = MapTorznabCapsToTrackers(query);
|
||||
var queryCollection = new NameValueCollection();
|
||||
|
||||
|
||||
queryCollection.Add("search", string.IsNullOrWhiteSpace(searchString) ? "" : searchString);
|
||||
if (trackerCats.Count > 1)
|
||||
{
|
||||
|
||||
@@ -17,9 +17,9 @@ namespace Jackett.Indexers
|
||||
public class BroadcastTheNet : BaseWebIndexer
|
||||
{
|
||||
// Docs at http://apidocs.broadcasthe.net/docs.php
|
||||
string APIBASE = "https://api.broadcasthe.net";
|
||||
private string APIBASE = "https://api.broadcasthe.net";
|
||||
|
||||
new ConfigurationDataAPIKey configData
|
||||
private new ConfigurationDataAPIKey configData
|
||||
{
|
||||
get { return (ConfigurationDataAPIKey)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -72,7 +72,6 @@ namespace Jackett.Indexers
|
||||
return IndexerConfigurationStatus.Completed;
|
||||
}
|
||||
|
||||
|
||||
private string JsonRPCRequest(string method, JArray parameters)
|
||||
{
|
||||
dynamic request = new JObject();
|
||||
@@ -158,7 +157,6 @@ namespace Jackett.Indexers
|
||||
releases.Add(item);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -167,7 +165,6 @@ namespace Jackett.Indexers
|
||||
return releases;
|
||||
}
|
||||
|
||||
|
||||
public class BTNRPCResponse
|
||||
{
|
||||
public string Id { get; set; }
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,20 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using Jackett.Utils;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using CsQuery;
|
||||
using System.Web;
|
||||
using Jackett.Services;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using System.Text.RegularExpressions;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System.Text;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using System.Text.RegularExpressions;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class DanishBits : CouchPotatoTracker
|
||||
{
|
||||
new ConfigurationDataUserPasskey configData
|
||||
private new ConfigurationDataUserPasskey configData
|
||||
{
|
||||
get { return (ConfigurationDataUserPasskey)base.configData; }
|
||||
set { base.configData = value; }
|
||||
|
||||
@@ -1,4 +1,11 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
@@ -6,13 +13,6 @@ using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -21,7 +21,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "account_handler.php"; } }
|
||||
private string SearchUrl { get { return SiteLink + "files/?category={0}&subcategory=All&quality=All&seeded=2&to=1&query={1}&external=2"; } }
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -135,7 +135,6 @@ namespace Jackett.Indexers
|
||||
var episodeSearchUrl = string.Format(SearchUrl, cat, HttpUtility.UrlEncode(query.GetQueryString()));
|
||||
var results = await RequestStringWithCookiesAndRetry(episodeSearchUrl);
|
||||
|
||||
|
||||
if (results.Content.Contains("No torrents found"))
|
||||
{
|
||||
return releases;
|
||||
@@ -157,7 +156,7 @@ namespace Jackett.Indexers
|
||||
// ex: "Monday, Jun 01, 2015", "Monday, Aug 03, 2015"
|
||||
var dateStr = rowA.Cq().Text().Trim().Replace("Added on ", "");
|
||||
if (string.IsNullOrWhiteSpace(dateStr) || dateStr == "Sponsored links" || dateStr.StartsWith("!function")) // ignore ads
|
||||
{
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (dateStr.ToLowerInvariant().Contains("today"))
|
||||
@@ -215,7 +214,6 @@ namespace Jackett.Indexers
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
@@ -1,19 +1,17 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.IO;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -23,7 +21,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "login.php?returnto=%2F"; } }
|
||||
private string AjaxLoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -170,7 +168,7 @@ namespace Jackett.Indexers
|
||||
{
|
||||
queryCollection.Add("c" + cat, "1");
|
||||
}
|
||||
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(searchString))
|
||||
{
|
||||
queryCollection.Add("search", searchString);
|
||||
|
||||
@@ -5,25 +5,25 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using AngleSharp.Parser.Html;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
class EliteTracker : BaseWebIndexer
|
||||
internal class EliteTracker : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl
|
||||
{ get { return SiteLink + "takelogin.php"; } }
|
||||
private string BrowseUrl
|
||||
{ get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -194,7 +194,7 @@ namespace Jackett.Indexers
|
||||
var Leechers = Row.QuerySelector("td:nth-child(8)").QuerySelector("a");
|
||||
|
||||
var categoryIdparts = category.GetAttribute("href").Split('-');
|
||||
var categoryId = categoryIdparts[categoryIdparts.Length-1].Replace(".ts", "");
|
||||
var categoryId = categoryIdparts[categoryIdparts.Length - 1].Replace(".ts", "");
|
||||
|
||||
release.Title = title.TextContent;
|
||||
release.Category = MapTrackerCatToNewznab(categoryId);
|
||||
@@ -270,6 +270,5 @@ namespace Jackett.Indexers
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,32 +1,28 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig.Bespoke;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Models.IndexerConfig.Bespoke;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class FileList : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataFileList configData
|
||||
private new ConfigurationDataFileList configData
|
||||
{
|
||||
get { return (ConfigurationDataFileList)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -49,32 +45,32 @@ namespace Jackett.Indexers
|
||||
|
||||
TorznabCaps.SupportsImdbSearch = true;
|
||||
|
||||
AddCategoryMapping(24, TorznabCatType.TVAnime , "Anime");
|
||||
AddCategoryMapping(11, TorznabCatType.Audio , "Audio");
|
||||
AddCategoryMapping(15, TorznabCatType.TV , "Desene");
|
||||
AddCategoryMapping(18, TorznabCatType.Other , "Diverse");
|
||||
AddCategoryMapping(16, TorznabCatType.Books , "Docs");
|
||||
AddCategoryMapping(25, TorznabCatType.Movies3D , "Filme 3D");
|
||||
AddCategoryMapping(6, TorznabCatType.MoviesHD , "Filme 4K");
|
||||
AddCategoryMapping(26, TorznabCatType.MoviesBluRay , "Filme 4K Blu-Ray");
|
||||
AddCategoryMapping(20, TorznabCatType.MoviesBluRay , "Filme Blu-Ray");
|
||||
AddCategoryMapping(2, TorznabCatType.MoviesDVD , "Filme DVD");
|
||||
AddCategoryMapping(3, TorznabCatType.MoviesForeign , "Filme DVD-RO");
|
||||
AddCategoryMapping(4, TorznabCatType.MoviesHD , "Filme HD");
|
||||
AddCategoryMapping(24, TorznabCatType.TVAnime, "Anime");
|
||||
AddCategoryMapping(11, TorznabCatType.Audio, "Audio");
|
||||
AddCategoryMapping(15, TorznabCatType.TV, "Desene");
|
||||
AddCategoryMapping(18, TorznabCatType.Other, "Diverse");
|
||||
AddCategoryMapping(16, TorznabCatType.Books, "Docs");
|
||||
AddCategoryMapping(25, TorznabCatType.Movies3D, "Filme 3D");
|
||||
AddCategoryMapping(6, TorznabCatType.MoviesHD, "Filme 4K");
|
||||
AddCategoryMapping(26, TorznabCatType.MoviesBluRay, "Filme 4K Blu-Ray");
|
||||
AddCategoryMapping(20, TorznabCatType.MoviesBluRay, "Filme Blu-Ray");
|
||||
AddCategoryMapping(2, TorznabCatType.MoviesDVD, "Filme DVD");
|
||||
AddCategoryMapping(3, TorznabCatType.MoviesForeign, "Filme DVD-RO");
|
||||
AddCategoryMapping(4, TorznabCatType.MoviesHD, "Filme HD");
|
||||
AddCategoryMapping(19, TorznabCatType.MoviesForeign, "Filme HD-RO");
|
||||
AddCategoryMapping(1, TorznabCatType.MoviesSD , "Filme SD");
|
||||
AddCategoryMapping(5, TorznabCatType.AudioLossless , "FLAC");
|
||||
AddCategoryMapping(10, TorznabCatType.Console , "Jocuri Console");
|
||||
AddCategoryMapping(9, TorznabCatType.PCGames , "Jocuri PC");
|
||||
AddCategoryMapping(17, TorznabCatType.PC , "Linux");
|
||||
AddCategoryMapping(22, TorznabCatType.PCPhoneOther , "Mobile");
|
||||
AddCategoryMapping(8, TorznabCatType.PC , "Programe");
|
||||
AddCategoryMapping(27, TorznabCatType.TVHD , "Seriale 4K");
|
||||
AddCategoryMapping(21, TorznabCatType.TVHD , "Seriale HD");
|
||||
AddCategoryMapping(23, TorznabCatType.TVSD , "Seriale SD");
|
||||
AddCategoryMapping(13, TorznabCatType.TVSport , "Sport");
|
||||
AddCategoryMapping(12, TorznabCatType.AudioVideo , "Videoclip");
|
||||
AddCategoryMapping(7, TorznabCatType.XXX , "XXX");
|
||||
AddCategoryMapping(1, TorznabCatType.MoviesSD, "Filme SD");
|
||||
AddCategoryMapping(5, TorznabCatType.AudioLossless, "FLAC");
|
||||
AddCategoryMapping(10, TorznabCatType.Console, "Jocuri Console");
|
||||
AddCategoryMapping(9, TorznabCatType.PCGames, "Jocuri PC");
|
||||
AddCategoryMapping(17, TorznabCatType.PC, "Linux");
|
||||
AddCategoryMapping(22, TorznabCatType.PCPhoneOther, "Mobile");
|
||||
AddCategoryMapping(8, TorznabCatType.PC, "Programe");
|
||||
AddCategoryMapping(27, TorznabCatType.TVHD, "Seriale 4K");
|
||||
AddCategoryMapping(21, TorznabCatType.TVHD, "Seriale HD");
|
||||
AddCategoryMapping(23, TorznabCatType.TVSD, "Seriale SD");
|
||||
AddCategoryMapping(13, TorznabCatType.TVSport, "Sport");
|
||||
AddCategoryMapping(12, TorznabCatType.AudioVideo, "Videoclip");
|
||||
AddCategoryMapping(7, TorznabCatType.XXX, "XXX");
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -126,7 +122,7 @@ namespace Jackett.Indexers
|
||||
searchUrl += "?" + queryCollection.GetQueryString();
|
||||
|
||||
var response = await RequestStringWithCookiesAndRetry(searchUrl, null, BrowseUrl);
|
||||
|
||||
|
||||
// Occasionally the cookies become invalid, login again if that happens
|
||||
if (response.IsRedirect)
|
||||
{
|
||||
@@ -151,7 +147,7 @@ namespace Jackett.Indexers
|
||||
release.Title = longtitle;
|
||||
|
||||
if (query.ImdbID == null && !query.MatchQueryStringAND(release.Title))
|
||||
continue;
|
||||
continue;
|
||||
|
||||
release.Description = qRow.Find(".torrenttable:eq(1) > span > font.small").First().Text();
|
||||
|
||||
@@ -168,11 +164,11 @@ namespace Jackett.Indexers
|
||||
release.Comments = release.Guid;
|
||||
|
||||
//22:05:3716/02/2013
|
||||
var dateStr = qRow.Find(".torrenttable:eq(5)").Text().Trim()+" +0200";
|
||||
var dateStr = qRow.Find(".torrenttable:eq(5)").Text().Trim() + " +0200";
|
||||
release.PublishDate = DateTime.ParseExact(dateStr, "H:mm:ssdd/MM/yyyy zzz", CultureInfo.InvariantCulture);
|
||||
|
||||
var qLink = qRow.Find("a[href^=\"download.php?id=\"]").First();
|
||||
release.Link = new Uri(SiteLink + qLink.Attr("href").Replace("&usetoken=1",""));
|
||||
release.Link = new Uri(SiteLink + qLink.Attr("href").Replace("&usetoken=1", ""));
|
||||
|
||||
var sizeStr = qRow.Find(".torrenttable:eq(6)").Text().Trim();
|
||||
release.Size = ReleaseInfo.GetBytes(sizeStr);
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -19,7 +19,7 @@ namespace Jackett.Indexers
|
||||
private string SearchUrl { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -115,7 +115,7 @@ namespace Jackett.Indexers
|
||||
var release = new ReleaseInfo();
|
||||
release.MinimumRatio = 1;
|
||||
release.MinimumSeedTime = 48 * 60 * 60;
|
||||
|
||||
|
||||
var qRow = row.Cq();
|
||||
var qCatLink = qRow.Find("a[href^=browse.php?cat=]").First();
|
||||
var qDetailsLink = qRow.Find("a[href^=details.php?id=]").First();
|
||||
|
||||
@@ -1,22 +1,20 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Threading;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +24,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private const int MAXPAGES = 3;
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -95,7 +93,6 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping(74, TorznabCatType.PC, "תוכנות");
|
||||
AddCategoryMapping(75, TorznabCatType.Audio, "שירים");
|
||||
AddCategoryMapping(76, TorznabCatType.TV, "סדרות");
|
||||
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -181,7 +178,7 @@ namespace Jackett.Indexers
|
||||
foreach (var row in rows)
|
||||
{
|
||||
CQ qRow = row.Cq();
|
||||
|
||||
|
||||
var release = new ReleaseInfo();
|
||||
var main_title_link = qRow.Find("div.main_title > a");
|
||||
release.Title = main_title_link.Attr("longtitle");
|
||||
@@ -250,7 +247,6 @@ namespace Jackett.Indexers
|
||||
var url = site + "/index.php?searchseriesid=&tab=listseries&function=Search&";
|
||||
url += "string=" + searchTerm; // eretz + nehedert
|
||||
|
||||
|
||||
var results = await RequestStringWithCookies(url);
|
||||
|
||||
CQ dom = results.Content;
|
||||
|
||||
@@ -1,34 +1,31 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
//
|
||||
// Quick and dirty indexer for GFTracker.
|
||||
//
|
||||
// Quick and dirty indexer for GFTracker.
|
||||
//
|
||||
public class GFTracker : BaseWebIndexer
|
||||
{
|
||||
private string StartPageUrl { get { return SiteLink + "login.php?returnto=%2F"; } }
|
||||
private string LoginUrl { get { return SiteLink + "loginsite.php"; } }
|
||||
private string SearchUrl { get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -88,13 +85,14 @@ namespace Jackett.Indexers
|
||||
CQ cq = loginPage.Content;
|
||||
var result = this.configData;
|
||||
CQ recaptcha = cq.Find(".g-recaptcha").Attr("data-sitekey");
|
||||
if(recaptcha.Length != 0) // recaptcha not always present in login form, perhaps based on cloudflare uid or just phase of the moon
|
||||
if (recaptcha.Length != 0) // recaptcha not always present in login form, perhaps based on cloudflare uid or just phase of the moon
|
||||
{
|
||||
result.CookieHeader.Value = loginPage.Cookies;
|
||||
result.Captcha.SiteKey = cq.Find(".g-recaptcha").Attr("data-sitekey");
|
||||
result.Captcha.Version = "2";
|
||||
return result;
|
||||
} else
|
||||
}
|
||||
else
|
||||
{
|
||||
var stdResult = new ConfigurationDataBasicLogin();
|
||||
stdResult.SiteLink.Value = configData.SiteLink.Value;
|
||||
@@ -102,7 +100,7 @@ namespace Jackett.Indexers
|
||||
stdResult.Password.Value = configData.Password.Value;
|
||||
stdResult.CookieHeader.Value = loginPage.Cookies;
|
||||
return stdResult;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -159,7 +157,7 @@ namespace Jackett.Indexers
|
||||
var searchString = query.GetQueryString();
|
||||
|
||||
// search in normal + gems view
|
||||
foreach (var view in new string[] {"0", "1"})
|
||||
foreach (var view in new string[] { "0", "1" })
|
||||
{
|
||||
var queryCollection = new NameValueCollection();
|
||||
|
||||
@@ -230,7 +228,7 @@ namespace Jackett.Indexers
|
||||
var desc = qRow.Find("td:nth-child(2)");
|
||||
desc.Find("a").Remove();
|
||||
desc.Find("small").Remove(); // Remove release name (if enabled in the user cp)
|
||||
release.Description = desc.Text().Trim(new char[] {'-', ' '});
|
||||
release.Description = desc.Text().Trim(new char[] { '-', ' ' });
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
@@ -1,27 +1,27 @@
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class GhostCity : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
string BrowsePage { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string BrowsePage { get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
|
||||
@@ -6,7 +6,6 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using CsQuery.ExtensionMethods.Internal;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
@@ -23,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string BrowseUrl => SiteLink + "browse.php";
|
||||
private string LoginUrl => SiteLink + "takelogin.php";
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -140,7 +139,7 @@ namespace Jackett.Indexers
|
||||
var link = row.Cq().Find("td:eq(1) a:eq(0)").First();
|
||||
release.Guid = new Uri(SiteLink + link.Attr("href"));
|
||||
release.Comments = release.Guid;
|
||||
release.Title = link.Text().Trim();
|
||||
release.Title = link.Text().Trim();
|
||||
release.Description = release.Title;
|
||||
|
||||
// If we search an get no results, we still get a table just with no info.
|
||||
|
||||
@@ -1,18 +1,17 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using AngleSharp.Parser.Html;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
|
||||
using AngleSharp.Parser.Html;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -22,7 +21,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string TakeLoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -46,8 +45,8 @@ namespace Jackett.Indexers
|
||||
TorznabCaps.SupportsImdbSearch = true;
|
||||
|
||||
AddCategoryMapping(42, TorznabCatType.MoviesSD); // LEGi0N 480p
|
||||
AddCategoryMapping(17, TorznabCatType.MoviesHD); // LEGi0N 720p
|
||||
AddCategoryMapping(16, TorznabCatType.MoviesHD); // LEGi0N 1080p
|
||||
AddCategoryMapping(17, TorznabCatType.MoviesHD); // LEGi0N 720p
|
||||
AddCategoryMapping(16, TorznabCatType.MoviesHD); // LEGi0N 1080p
|
||||
AddCategoryMapping(84, TorznabCatType.Movies3D); // LEGi0N 3D 1080p
|
||||
AddCategoryMapping(31, TorznabCatType.MoviesOther); // LEGi0N REMUX
|
||||
AddCategoryMapping(70, TorznabCatType.MoviesBluRay); // LEGi0N BD BD25 & BD50
|
||||
@@ -61,7 +60,7 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping(89, TorznabCatType.MoviesBluRay); // taterzero BD25
|
||||
AddCategoryMapping(90, TorznabCatType.Movies3D); // taterzero 3D BD
|
||||
AddCategoryMapping(39, TorznabCatType.MoviesBluRay); // Bluray REMUX
|
||||
AddCategoryMapping(38, TorznabCatType.MoviesBluRay); // Bluray
|
||||
AddCategoryMapping(38, TorznabCatType.MoviesBluRay); // Bluray
|
||||
AddCategoryMapping(75, TorznabCatType.MoviesBluRay); // Bluray 25
|
||||
AddCategoryMapping(36, TorznabCatType.MoviesHD); // Encodes 720p
|
||||
AddCategoryMapping(35, TorznabCatType.MoviesHD); // Encodes 1080p
|
||||
@@ -150,7 +149,7 @@ namespace Jackett.Indexers
|
||||
errorMessage = result.Content;
|
||||
throw new ExceptionWithConfigData(errorMessage, configData);
|
||||
});
|
||||
|
||||
|
||||
return IndexerConfigurationStatus.RequiresTesting;
|
||||
}
|
||||
|
||||
@@ -278,7 +277,7 @@ namespace Jackett.Indexers
|
||||
pairs.Add("visible", "1");
|
||||
pairs.Add("uid", "-1");
|
||||
pairs.Add("genre", "");
|
||||
|
||||
|
||||
pairs.Add("cats", string.Join(",+", MapTorznabCapsToTrackers(query)));
|
||||
|
||||
if (query.ImdbID != null)
|
||||
@@ -325,7 +324,7 @@ namespace Jackett.Indexers
|
||||
release.Description = row["genre"].ToString();
|
||||
|
||||
var poster = row["poster"].ToString();
|
||||
if(!string.IsNullOrWhiteSpace(poster))
|
||||
if (!string.IsNullOrWhiteSpace(poster))
|
||||
{
|
||||
var posterurl = poster;
|
||||
if (!poster.StartsWith("http"))
|
||||
@@ -353,7 +352,6 @@ namespace Jackett.Indexers
|
||||
release.UploadVolumeFactor = 1;
|
||||
|
||||
releases.Add(release);
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using System.Collections.Generic;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using System.Web;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Services;
|
||||
using NLog;
|
||||
using Jackett.Utils;
|
||||
using CsQuery;
|
||||
using System.Web;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Globalization;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -23,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "index.php?page=login"; } }
|
||||
private string SearchUrl { get { return SiteLink + "index.php?page=torrents&"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -60,20 +59,20 @@ namespace Jackett.Indexers
|
||||
|
||||
AddCategoryMapping(30, TorznabCatType.AudioLossless); // Music / Lossless
|
||||
AddCategoryMapping(31, TorznabCatType.AudioVideo); // Music / Videos
|
||||
|
||||
|
||||
AddMultiCategoryMapping(TorznabCatType.TVDocumentary,
|
||||
24, // TV Show / Documentary / 720p
|
||||
25 // TV Show / Documentary / 1080p
|
||||
);
|
||||
|
||||
|
||||
AddMultiCategoryMapping(TorznabCatType.XXX,
|
||||
33, // XXX / 720p
|
||||
34 // XXX / 1080p
|
||||
);
|
||||
|
||||
|
||||
AddCategoryMapping("37", TorznabCatType.PC);
|
||||
AddCategoryMapping("38", TorznabCatType.Other);
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
{
|
||||
|
||||
@@ -1,21 +1,17 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private const int MAXPAGES = 3;
|
||||
public override string[] AlternativeSiteLinks { get; protected set; } = new string[] { "https://hdts.ru/", "https://hd-torrents.org/", "https://hd-torrents.net/", "https://hd-torrents.me/" };
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -108,13 +104,11 @@ namespace Jackett.Indexers
|
||||
var queryCollection = new NameValueCollection();
|
||||
var searchString = query.GetQueryString();
|
||||
|
||||
|
||||
foreach (var cat in MapTorznabCapsToTrackers(query))
|
||||
{
|
||||
searchUrl += "category%5B%5D=" + cat + "&";
|
||||
}
|
||||
|
||||
|
||||
if (query.ImdbID != null)
|
||||
{
|
||||
queryCollection.Add("search", query.ImdbID);
|
||||
@@ -124,14 +118,11 @@ namespace Jackett.Indexers
|
||||
queryCollection.Add("search", searchString);
|
||||
}
|
||||
|
||||
|
||||
|
||||
queryCollection.Add("active", "0");
|
||||
queryCollection.Add("options", "0");
|
||||
|
||||
searchUrl += queryCollection.GetQueryString().Replace("(", "%28").Replace(")", "%29"); // maually url encode brackets to prevent "hacking" detection
|
||||
|
||||
|
||||
var results = await RequestStringWithCookiesAndRetry(searchUrl);
|
||||
try
|
||||
{
|
||||
@@ -161,7 +152,6 @@ namespace Jackett.Indexers
|
||||
release.MinimumRatio = 1;
|
||||
release.MinimumSeedTime = 172800;
|
||||
|
||||
|
||||
// Sometimes the uploader column is missing
|
||||
int seeders, peers;
|
||||
if (ParseUtil.TryCoerceInt(qRow.Find("td:nth-last-child(3)").Text(), out seeders))
|
||||
@@ -192,7 +182,7 @@ namespace Jackett.Indexers
|
||||
release.UploadVolumeFactor = 1;
|
||||
|
||||
if (qRow.Find("img[alt=\"Free Torrent\"]").Length >= 1)
|
||||
{
|
||||
{
|
||||
release.DownloadVolumeFactor = 0;
|
||||
release.UploadVolumeFactor = 0;
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
using Jackett.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using Newtonsoft.Json;
|
||||
using System.Globalization;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -20,7 +20,7 @@ namespace Jackett.Indexers
|
||||
private string SearchUrl { get { return SiteLink + "api/v1/torrents"; } }
|
||||
private string LoginUrl { get { return SiteLink + "api/v1/auth"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -91,7 +91,7 @@ namespace Jackett.Indexers
|
||||
//var json = JArray.Parse(results.Content);
|
||||
dynamic json = JsonConvert.DeserializeObject<dynamic>(results.Content);
|
||||
if (json != null) // no results
|
||||
{
|
||||
{
|
||||
foreach (var row in json)
|
||||
{
|
||||
var release = new ReleaseInfo();
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Text;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -22,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string LoginPostUrl { get { return SiteLink + "takeloginAjax.php"; } }
|
||||
private string SearchUrl { get { return SiteLink + "browse.php?sort=4&type=desc"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -117,7 +117,7 @@ namespace Jackett.Indexers
|
||||
release.MinimumSeedTime = 172800;
|
||||
|
||||
var titleParts = qRow.Find(".bTitle").Text().Split('/');
|
||||
if (titleParts.Length >= 2)
|
||||
if (titleParts.Length >= 2)
|
||||
release.Title = titleParts[1].Trim();
|
||||
else
|
||||
release.Title = titleParts[0].Trim();
|
||||
@@ -161,7 +161,6 @@ namespace Jackett.Indexers
|
||||
releases.Add(release);
|
||||
}
|
||||
}
|
||||
|
||||
catch (Exception ex)
|
||||
{
|
||||
OnParseError(response.Content, ex);
|
||||
|
||||
@@ -1,25 +1,19 @@
|
||||
using CsQuery;
|
||||
using Jackett.Indexers;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Net.Http.Headers;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using System.Web.UI.WebControls;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -28,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string SearchUrl { get { return SiteLink + "torrents.php"; } }
|
||||
|
||||
new NxtGnConfigurationData configData
|
||||
private new NxtGnConfigurationData configData
|
||||
{
|
||||
get { return (NxtGnConfigurationData)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -92,7 +86,6 @@ namespace Jackett.Indexers
|
||||
{ "password", configData.Password.Value },
|
||||
{ "keeplogged", "1" },
|
||||
{ "login", "Login" }
|
||||
|
||||
};
|
||||
// Get inital cookies
|
||||
var response = await RequestLoginAndFollowRedirect(LoginUrl, pairs, null, true, null, "https://hounddawgs.org/");
|
||||
@@ -226,6 +219,7 @@ namespace Jackett.Indexers
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
public class NxtGnConfigurationData : ConfigurationData
|
||||
{
|
||||
public NxtGnConfigurationData()
|
||||
@@ -233,6 +227,7 @@ namespace Jackett.Indexers
|
||||
Username = new StringItem { Name = "Username" };
|
||||
Password = new StringItem { Name = "Password" };
|
||||
}
|
||||
|
||||
public StringItem Username { get; private set; }
|
||||
public StringItem Password { get; private set; }
|
||||
}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -23,7 +23,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string CaptchaUrl { get { return SiteLink + "simpleCaptcha.php?numImages=1"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -52,7 +52,7 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping(40, TorznabCatType.MoviesForeign); // Foreign/Spanish
|
||||
AddCategoryMapping(41, TorznabCatType.MoviesForeign); // Foreign/Swedish
|
||||
AddCategoryMapping(67, TorznabCatType.ConsoleNDS); // Games/Nintendo
|
||||
AddCategoryMapping(9 , TorznabCatType.PCGames); // Games/PC
|
||||
AddCategoryMapping(9, TorznabCatType.PCGames); // Games/PC
|
||||
AddCategoryMapping(8, TorznabCatType.ConsolePS3); // Games/PS3
|
||||
AddCategoryMapping(30, TorznabCatType.ConsolePS4); // Games/PS4
|
||||
AddCategoryMapping(7, TorznabCatType.ConsolePSP); // Games/PSP
|
||||
@@ -220,7 +220,7 @@ namespace Jackett.Indexers
|
||||
release.Grabs = ParseUtil.CoerceInt(grabs.Split('<')[0]);
|
||||
|
||||
release.DownloadVolumeFactor = 0; // ratioless
|
||||
|
||||
|
||||
release.UploadVolumeFactor = 1;
|
||||
|
||||
releases.Add(release);
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
using Jackett.Models;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -47,6 +44,7 @@ namespace Jackett.Indexers
|
||||
|
||||
// Called on startup when initializing indexers from saved configuration
|
||||
void LoadFromSavedConfiguration(JToken jsonConfig);
|
||||
|
||||
void SaveConfig();
|
||||
|
||||
void Unconfigure();
|
||||
|
||||
@@ -1,29 +1,27 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class IPTorrents : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
string TakeLoginUrl { get { return SiteLink + "take_login.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string TakeLoginUrl { get { return SiteLink + "take_login.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "t"; } }
|
||||
|
||||
public override string[] AlternativeSiteLinks { get; protected set; } = new string[] {
|
||||
"https://iptorrents.com/",
|
||||
"https://ipt-update.com/",
|
||||
@@ -38,7 +36,7 @@ namespace Jackett.Indexers
|
||||
"http://baywatch.workisboring.com/",
|
||||
};
|
||||
|
||||
new ConfigurationDataRecaptchaLogin configData
|
||||
private new ConfigurationDataRecaptchaLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataRecaptchaLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -139,7 +137,7 @@ namespace Jackett.Indexers
|
||||
var loginPage = await RequestStringWithCookies(LoginUrl, string.Empty);
|
||||
CQ cq = loginPage.Content;
|
||||
var captcha = cq.Find(".g-recaptcha");
|
||||
if(captcha.Any())
|
||||
if (captcha.Any())
|
||||
{
|
||||
var result = this.configData;
|
||||
result.CookieHeader.Value = loginPage.Cookies;
|
||||
@@ -159,8 +157,6 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
{
|
||||
LoadValuesFromJson(configJson);
|
||||
@@ -292,7 +288,7 @@ namespace Jackett.Indexers
|
||||
var grabs = row.Cq().Find("td:nth-last-child(3)").Text();
|
||||
release.Grabs = ParseUtil.CoerceInt(grabs);
|
||||
|
||||
if(row.Cq().Find("span.t_tag_free_leech").Any())
|
||||
if (row.Cq().Find("span.t_tag_free_leech").Any())
|
||||
release.DownloadVolumeFactor = 0;
|
||||
else
|
||||
release.DownloadVolumeFactor = 1;
|
||||
|
||||
@@ -1,20 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -24,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string QueryString { get { return "?do=search&keywords={0}&search_type=t_name&category=0&include_dead_torrents=no"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -68,7 +66,6 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping(37, TorznabCatType.AudioLossless);
|
||||
AddCategoryMapping(35, TorznabCatType.AudioAudiobook);
|
||||
AddCategoryMapping(36, TorznabCatType.AudioMP3);
|
||||
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -179,7 +176,5 @@ namespace Jackett.Indexers
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
@@ -14,8 +9,13 @@ using System.Web;
|
||||
using AngleSharp.Dom;
|
||||
using AngleSharp.Parser.Html;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +26,7 @@ namespace Jackett.Indexers
|
||||
private string DownloadUrl => SiteLink + "torrents.php?action=download&id=";
|
||||
private string GuidUrl => SiteLink + "torrents.php?torrentid=";
|
||||
|
||||
private ConfigurationDataBasicLogin ConfigData => (ConfigurationDataBasicLogin) configData;
|
||||
private ConfigurationDataBasicLogin ConfigData => (ConfigurationDataBasicLogin)configData;
|
||||
|
||||
public MoreThanTV(IIndexerConfigurationService configService, IWebClient c, Logger l, IProtectionService ps)
|
||||
: base(name: "MoreThanTV",
|
||||
|
||||
@@ -1,23 +1,17 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using System.Web;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -26,7 +20,7 @@ namespace Jackett.Indexers
|
||||
private string LoginUrl { get { return SiteLink + "takelogin.php"; } }
|
||||
private string SearchUrl { get { return SiteLink + "tor/js/loadSearch2.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLogin configData
|
||||
private new ConfigurationDataBasicLogin configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLogin)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -128,7 +122,6 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping("109", TorznabCatType.BooksEbook);
|
||||
AddCategoryMapping("70", TorznabCatType.BooksEbook);
|
||||
AddCategoryMapping("112", TorznabCatType.BooksEbook);
|
||||
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -201,9 +194,9 @@ namespace Jackett.Indexers
|
||||
string tid = torrentData.Attr("id").Substring(4);
|
||||
var qTitle = torrentData.Find("a[class='title']").First();
|
||||
string title = qTitle.Text().Trim();
|
||||
var details = new Uri(SiteLink + qTitle.Attr("href"));
|
||||
var details = new Uri(SiteLink + qTitle.Attr("href"));
|
||||
string author = torrentData.Find("a[class='author']").First().Text().Trim();
|
||||
Uri link = new Uri(SiteLink + "tor/download.php?tid="+tid); // DL Link is no long available directly, build it ourself
|
||||
Uri link = new Uri(SiteLink + "tor/download.php?tid=" + tid); // DL Link is no long available directly, build it ourself
|
||||
long files = ParseUtil.CoerceLong(cells.Elements.ElementAt(4).Cq().Find("a").Text());
|
||||
long size = ReleaseInfo.GetBytes(cells.Elements.ElementAt(4).Cq().Text().Split('[')[1].TrimEnd(']'));
|
||||
int seeders = ParseUtil.CoerceInt(cells.Elements.ElementAt(6).Cq().Find("p").ElementAt(0).Cq().Text());
|
||||
@@ -218,7 +211,6 @@ namespace Jackett.Indexers
|
||||
string cat = torrentData.Find("a[class='newCatLink']").First().Attr("href").Remove(0, "/tor/browse.php?tor[cat][]]=".Length);
|
||||
long.TryParse(cat, out category);
|
||||
|
||||
|
||||
var release = new ReleaseInfo();
|
||||
|
||||
release.Title = String.IsNullOrEmpty(author) ? title : String.Format("{0} by {1}", title, author);
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig.Bespoke;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Models.IndexerConfig.Bespoke;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -22,7 +22,7 @@ namespace Jackett.Indexers
|
||||
private string SearchUrl { get { return SiteLink + "torrents.php"; } }
|
||||
private string[] LanguageCats = new string[] { "xvidser", "dvdser", "hdser", "xvid", "dvd", "dvd9", "hd", "mp3", "lossless", "ebook" };
|
||||
|
||||
new ConfigurationDataNCore configData
|
||||
private new ConfigurationDataNCore configData
|
||||
{
|
||||
get { return (ConfigurationDataNCore)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -44,7 +44,7 @@ namespace Jackett.Indexers
|
||||
Type = "private";
|
||||
|
||||
AddCategoryMapping("xvid_hun", TorznabCatType.MoviesSD, "Film SD/HU");
|
||||
AddCategoryMapping("xvid", TorznabCatType.MoviesSD , "Film SD/EN");
|
||||
AddCategoryMapping("xvid", TorznabCatType.MoviesSD, "Film SD/EN");
|
||||
AddCategoryMapping("dvd_hun", TorznabCatType.MoviesDVD, "Film DVDR/HU");
|
||||
AddCategoryMapping("dvd", TorznabCatType.MoviesDVD, "Film DVDR/EN");
|
||||
AddCategoryMapping("dvd9_hun", TorznabCatType.MoviesDVD, "Film DVD9/HU");
|
||||
@@ -52,34 +52,34 @@ namespace Jackett.Indexers
|
||||
AddCategoryMapping("hd_hun", TorznabCatType.MoviesHD, "Film HD/HU");
|
||||
AddCategoryMapping("hd", TorznabCatType.MoviesHD, "Film HD/EN");
|
||||
|
||||
AddCategoryMapping("xvidser_hun", TorznabCatType.TVSD , "Sorozat SD/HU");
|
||||
AddCategoryMapping("xvidser", TorznabCatType.TVSD , "Sorozat SD/EN");
|
||||
AddCategoryMapping("dvdser_hun", TorznabCatType.TVSD , "Sorozat DVDR/HU");
|
||||
AddCategoryMapping("xvidser_hun", TorznabCatType.TVSD, "Sorozat SD/HU");
|
||||
AddCategoryMapping("xvidser", TorznabCatType.TVSD, "Sorozat SD/EN");
|
||||
AddCategoryMapping("dvdser_hun", TorznabCatType.TVSD, "Sorozat DVDR/HU");
|
||||
AddCategoryMapping("dvdser", TorznabCatType.TVSD, "Sorozat DVDR/EN");
|
||||
AddCategoryMapping("hdser_hun", TorznabCatType.TVHD, "Sorozat HD/HU");
|
||||
AddCategoryMapping("hdser", TorznabCatType.TVHD , "Sorozat HD/EN");
|
||||
AddCategoryMapping("hdser", TorznabCatType.TVHD, "Sorozat HD/EN");
|
||||
|
||||
AddCategoryMapping("mp3_hun", TorznabCatType.AudioMP3 , "Zene MP3/HU");
|
||||
AddCategoryMapping("mp3_hun", TorznabCatType.AudioMP3, "Zene MP3/HU");
|
||||
AddCategoryMapping("mp3", TorznabCatType.AudioMP3, "Zene MP3/EN");
|
||||
AddCategoryMapping("lossless_hun", TorznabCatType.AudioLossless, "Zene Lossless/HU");
|
||||
AddCategoryMapping("lossless", TorznabCatType.AudioLossless, "Zene Lossless/EN");
|
||||
AddCategoryMapping("clip", TorznabCatType.AudioVideo , "Zene Klip");
|
||||
AddCategoryMapping("clip", TorznabCatType.AudioVideo, "Zene Klip");
|
||||
|
||||
AddCategoryMapping("xxx_xvid", TorznabCatType.XXXXviD , "XXX SD");
|
||||
AddCategoryMapping("xxx_xvid", TorznabCatType.XXXXviD, "XXX SD");
|
||||
AddCategoryMapping("xxx_dvd", TorznabCatType.XXXDVD, "XXX DVDR");
|
||||
AddCategoryMapping("xxx_imageset", TorznabCatType.XXXImageset , "XXX Imageset");
|
||||
AddCategoryMapping("xxx_hd", TorznabCatType.XXX , "XXX HD");
|
||||
AddCategoryMapping("xxx_imageset", TorznabCatType.XXXImageset, "XXX Imageset");
|
||||
AddCategoryMapping("xxx_hd", TorznabCatType.XXX, "XXX HD");
|
||||
|
||||
AddCategoryMapping("game_iso", TorznabCatType.PCGames , "Játék PC/ISO");
|
||||
AddCategoryMapping("game_rip", TorznabCatType.PCGames , "Játék PC/RIP");
|
||||
AddCategoryMapping("console", TorznabCatType.Console , "Játék Konzol");
|
||||
AddCategoryMapping("game_iso", TorznabCatType.PCGames, "Játék PC/ISO");
|
||||
AddCategoryMapping("game_rip", TorznabCatType.PCGames, "Játék PC/RIP");
|
||||
AddCategoryMapping("console", TorznabCatType.Console, "Játék Konzol");
|
||||
|
||||
AddCategoryMapping("iso", TorznabCatType.PCISO , "Program Prog/ISO");
|
||||
AddCategoryMapping("misc", TorznabCatType.PC0day , "Program Prog/RIP");
|
||||
AddCategoryMapping("mobil", TorznabCatType.PCPhoneOther , "Program Prog/Mobil");
|
||||
AddCategoryMapping("iso", TorznabCatType.PCISO, "Program Prog/ISO");
|
||||
AddCategoryMapping("misc", TorznabCatType.PC0day, "Program Prog/RIP");
|
||||
AddCategoryMapping("mobil", TorznabCatType.PCPhoneOther, "Program Prog/Mobil");
|
||||
|
||||
AddCategoryMapping("ebook_hun", TorznabCatType.Books , "Könyv eBook/HU");
|
||||
AddCategoryMapping("ebook", TorznabCatType.Books , "Könyv eBook/EN");
|
||||
AddCategoryMapping("ebook_hun", TorznabCatType.Books, "Könyv eBook/HU");
|
||||
AddCategoryMapping("ebook", TorznabCatType.Books, "Könyv eBook/EN");
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
@@ -143,7 +143,7 @@ namespace Jackett.Indexers
|
||||
if (!configData.English.Value)
|
||||
cats.Remove(lcat);
|
||||
}
|
||||
|
||||
|
||||
foreach (var cat in cats)
|
||||
{
|
||||
pairs.Add(new KeyValuePair<string, string>("kivalasztott_tipus[]", cat));
|
||||
@@ -162,7 +162,7 @@ namespace Jackett.Indexers
|
||||
{
|
||||
CQ qRow = row.Cq();
|
||||
|
||||
var key = dom ["link[rel=alternate]"].First().Attr("href").Split('=').Last();
|
||||
var key = dom["link[rel=alternate]"].First().Attr("href").Split('=').Last();
|
||||
|
||||
release = new ReleaseInfo();
|
||||
var torrentTxt = qRow.Find(".torrent_txt, .torrent_txt2").Find("a").Get(0);
|
||||
@@ -209,6 +209,5 @@ namespace Jackett.Indexers
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class NewRealWorld : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "login.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "browse.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -126,7 +126,7 @@ namespace Jackett.Indexers
|
||||
TimeZoneInfo germanyTz = TimeZoneInfo.CreateCustomTimeZone("W. Europe Standard Time", new TimeSpan(1, 0, 0), "(GMT+01:00) W. Europe Standard Time", "W. Europe Standard Time", "W. Europe DST Time", adjustments);
|
||||
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
||||
|
||||
var searchString = query.GetQueryString();
|
||||
var searchUrl = BrowseUrl;
|
||||
var queryCollection = new NameValueCollection();
|
||||
@@ -188,7 +188,7 @@ namespace Jackett.Indexers
|
||||
release.Category = MapTrackerCatToNewznab(catStr);
|
||||
|
||||
var dlLink = qDownloadLink.Attr("href");
|
||||
if(dlLink.Contains("javascript")) // depending on the user agent the DL link is a javascript call
|
||||
if (dlLink.Contains("javascript")) // depending on the user agent the DL link is a javascript call
|
||||
{
|
||||
var dlLinkParts = dlLink.Split(new char[] { '\'', ',' });
|
||||
dlLink = SiteLink + "download/" + dlLinkParts[3] + "/" + dlLinkParts[5];
|
||||
@@ -230,4 +230,3 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
@@ -15,8 +17,6 @@ using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
@@ -99,7 +99,6 @@ namespace Jackett.Indexers
|
||||
// If we want to simulate a browser
|
||||
if (ConfigData.Browser.Value)
|
||||
{
|
||||
|
||||
// Clean headers
|
||||
_emulatedBrowserHeaders.Clear();
|
||||
|
||||
@@ -304,7 +303,7 @@ namespace Jackett.Indexers
|
||||
{
|
||||
Output("Torrent #" + (releases.Count + 1));
|
||||
|
||||
// ID
|
||||
// ID
|
||||
var id = tRow.Find("td:eq(1) > a:eq(0)").Attr("href").Split('=').Last();
|
||||
Output("ID: " + id);
|
||||
|
||||
@@ -423,7 +422,6 @@ namespace Jackett.Indexers
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -650,7 +648,6 @@ namespace Jackett.Indexers
|
||||
/// <returns></returns>
|
||||
public override async Task<byte[]> Download(Uri link)
|
||||
{
|
||||
|
||||
// Retrieving ID from link provided
|
||||
var id = ParseUtil.CoerceInt(Regex.Match(link.AbsoluteUri, @"\d+").Value);
|
||||
Output("Torrent Requested ID: " + id);
|
||||
@@ -704,9 +701,11 @@ namespace Jackett.Indexers
|
||||
logger.Debug(message);
|
||||
}
|
||||
break;
|
||||
|
||||
case "info":
|
||||
logger.Info(message);
|
||||
break;
|
||||
|
||||
case "error":
|
||||
logger.Error(message);
|
||||
break;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
using Jackett.Utils.Clients;
|
||||
using NLog;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Globalization;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using CsQuery;
|
||||
using Jackett.Models;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils;
|
||||
using Jackett.Models;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Utils.Clients;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System.Collections.Generic;
|
||||
using CsQuery;
|
||||
using System;
|
||||
using System.Globalization;
|
||||
using Jackett.Models.IndexerConfig;
|
||||
using System.Collections.Specialized;
|
||||
using System.Text;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
public class myAmity : BaseWebIndexer
|
||||
{
|
||||
string LoginUrl { get { return SiteLink + "account-login.php"; } }
|
||||
string BrowseUrl { get { return SiteLink + "torrents-search.php"; } }
|
||||
private string LoginUrl { get { return SiteLink + "account-login.php"; } }
|
||||
private string BrowseUrl { get { return SiteLink + "torrents-search.php"; } }
|
||||
|
||||
new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
private new ConfigurationDataBasicLoginWithRSSAndDisplay configData
|
||||
{
|
||||
get { return (ConfigurationDataBasicLoginWithRSSAndDisplay)base.configData; }
|
||||
set { base.configData = value; }
|
||||
@@ -92,7 +92,7 @@ namespace Jackett.Indexers
|
||||
TimeZoneInfo germanyTz = TimeZoneInfo.CreateCustomTimeZone("W. Europe Standard Time", new TimeSpan(1, 0, 0), "(GMT+01:00) W. Europe Standard Time", "W. Europe Standard Time", "W. Europe DST Time", adjustments);
|
||||
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
||||
|
||||
var searchString = query.GetQueryString();
|
||||
var searchUrl = BrowseUrl;
|
||||
var queryCollection = new NameValueCollection();
|
||||
@@ -188,4 +188,3 @@ namespace Jackett.Indexers
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
using Jackett.Models;
|
||||
using NLog;
|
||||
using System.Collections.Generic;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using Jackett.Models;
|
||||
using Jackett.Services;
|
||||
using Jackett.Utils.Clients;
|
||||
using Jackett.Indexers.Abstract;
|
||||
using System.Collections.Generic;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Indexers
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user