From 4cc1c4ab286aadd05173e481aeeb9cddd2cb8a42 Mon Sep 17 00:00:00 2001 From: Diego Heras Date: Sun, 7 Feb 2021 14:37:01 +0100 Subject: [PATCH] rarbg: fix guid and first request after token renewal. resolves #11021 (#11026) --- src/Jackett.Common/Indexers/RarBG.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Jackett.Common/Indexers/RarBG.cs b/src/Jackett.Common/Indexers/RarBG.cs index 332249d21..d1bce483a 100644 --- a/src/Jackett.Common/Indexers/RarBG.cs +++ b/src/Jackett.Common/Indexers/RarBG.cs @@ -6,6 +6,7 @@ using System.Globalization; using System.Linq; using System.Net; using System.Text; +using System.Threading; using System.Threading.Tasks; using Jackett.Common.Models; using Jackett.Common.Models.IndexerConfig; @@ -167,7 +168,10 @@ namespace Jackett.Common.Indexers var magnetStr = item.Value("download"); var magnetUri = new Uri(magnetStr); + + // #11021 we can't use the magnet link as guid because they are using random ports var infoHash = magnetStr.Split(':')[3].Split('&')[0]; + var guid = new Uri(SiteLink + "infohash/" + infoHash); // append app_id to prevent api server returning 403 forbidden var details = new Uri(item.Value("info_page") + "&app_id=" + _appId); @@ -189,7 +193,7 @@ namespace Jackett.Common.Indexers InfoHash = infoHash, Details = details, PublishDate = publishDate, - Guid = magnetUri, + Guid = guid, Seeders = seeders, Peers = leechers + seeders, Size = size, @@ -282,6 +286,8 @@ namespace Jackett.Common.Indexers var json = JObject.Parse(result.ContentString); _token = json.Value("token"); _lastTokenFetch = DateTime.Now; + // sleep 5 seconds to make sure the token is valid in the next request + Thread.Sleep(5000); } }