mirror of https://github.com/Jackett/Jackett
parent
d0dff67251
commit
cb2312273a
|
@ -20,8 +20,9 @@ namespace Jackett.Common.Indexers
|
|||
public class ShowRSS : BaseWebIndexer
|
||||
{
|
||||
private string SearchAllUrl => SiteLink + "other/all.rss";
|
||||
private string BrowseUrl => SiteLink + "browse/";
|
||||
public override string[] LegacySiteLinks { get; protected set; } = {
|
||||
"http://showrss.info/",
|
||||
"http://showrss.info/"
|
||||
};
|
||||
|
||||
private new ConfigurationData configData => base.configData;
|
||||
|
@ -54,8 +55,6 @@ namespace Jackett.Common.Indexers
|
|||
return IndexerConfigurationStatus.RequiresTesting;
|
||||
}
|
||||
|
||||
public override Task<byte[]> Download(Uri link) => throw new NotImplementedException();
|
||||
|
||||
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
|
||||
{
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
@ -68,44 +67,43 @@ namespace Jackett.Common.Indexers
|
|||
xmlDoc.LoadXml(result.ContentString);
|
||||
foreach (XmlNode node in xmlDoc.GetElementsByTagName("item"))
|
||||
{
|
||||
//TODO revisit for refactoring
|
||||
var title = node.SelectSingleNode(".//*[local-name()='raw_title']").InnerText;
|
||||
if ((!query.IsImdbQuery || !TorznabCaps.SupportsImdbMovieSearch) &&
|
||||
!query.MatchQueryStringAND(title))
|
||||
if (!query.MatchQueryStringAND(title))
|
||||
continue;
|
||||
|
||||
// Try to guess the category... I'm not proud of myself...
|
||||
var category = title.Contains("720p") ? TorznabCatType.TVHD.ID : TorznabCatType.TVSD.ID;
|
||||
var test = node.SelectSingleNode("enclosure");
|
||||
var magnetUri = new Uri(node.SelectSingleNode("link").InnerText);
|
||||
// guess category from title
|
||||
var category = title.Contains("720p") || title.Contains("1080p") ?
|
||||
TorznabCatType.TVHD.ID :
|
||||
TorznabCatType.TVSD.ID;
|
||||
|
||||
var magnetUri = new Uri(node.SelectSingleNode("link")?.InnerText);
|
||||
var publishDate = DateTime.Parse(node.SelectSingleNode("pubDate").InnerText, CultureInfo.InvariantCulture);
|
||||
var infoHash = node.SelectSingleNode("description").InnerText;
|
||||
//TODO Maybe use magnetUri instead? https://github.com/Jackett/Jackett/pull/7342#discussion_r397552678
|
||||
var guid = new Uri(test.Attributes["url"].Value);
|
||||
var infoHash = node.SelectSingleNode(".//*[local-name()='info_hash']").InnerText;
|
||||
var commentsUri = new Uri(BrowseUrl + node.SelectSingleNode(".//*[local-name()='show_id']").InnerText);
|
||||
|
||||
var release = new ReleaseInfo
|
||||
{
|
||||
MinimumRatio = 1,
|
||||
MinimumSeedTime = 172800, // 48 hours
|
||||
Title = title,
|
||||
Comments = magnetUri,
|
||||
Comments = commentsUri,
|
||||
Category = new List<int> { category },
|
||||
Guid = guid,
|
||||
Guid = magnetUri,
|
||||
PublishDate = publishDate,
|
||||
Description = infoHash,
|
||||
InfoHash = infoHash,
|
||||
MagnetUri = magnetUri,
|
||||
Size = 0,
|
||||
Seeders = 1,
|
||||
Peers = 2,
|
||||
DownloadVolumeFactor = 0,
|
||||
UploadVolumeFactor = 1
|
||||
UploadVolumeFactor = 1,
|
||||
MinimumRatio = 1,
|
||||
MinimumSeedTime = 172800, // 48 hours
|
||||
};
|
||||
releases.Add(release);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
catch (Exception e)
|
||||
{
|
||||
OnParseError(result.ContentString, ex);
|
||||
OnParseError(result.ContentString, e);
|
||||
}
|
||||
|
||||
return releases;
|
||||
|
|
Loading…
Reference in New Issue