From eeb0e9b9824b2e98515421afc8b835c3472d0959 Mon Sep 17 00:00:00 2001 From: Yllelder Bamir Date: Sun, 30 Jun 2019 06:32:54 +0200 Subject: [PATCH] MejorTorrent: handle 4K and 3D. resolves #3384 (#5568) This indexer was not able to distinguish whether a film is 3D or 4K, which made it totally unusable. After a lot of fighting with Visual Studio to do tests compiling Jackett, I got the indexer to differentiate 3D and 4K movies. Example screenshot: https://imgur.com/cVp2Klc --- src/Jackett.Common/Indexers/MejorTorrent.cs | 35 +++++++++++++++++---- 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/src/Jackett.Common/Indexers/MejorTorrent.cs b/src/Jackett.Common/Indexers/MejorTorrent.cs index ff042c160..03687b8b2 100644 --- a/src/Jackett.Common/Indexers/MejorTorrent.cs +++ b/src/Jackett.Common/Indexers/MejorTorrent.cs @@ -662,6 +662,7 @@ namespace Jackett.Common.Indexers release.IsMovie = true; var selectors = html.QuerySelectorAll("b"); var titleSelector = html.QuerySelector("span>b"); + var titleSelector3do4k = html.QuerySelector("span:nth-child(4) > b:nth-child(1)"); try { var title = titleSelector.TextContent; @@ -712,19 +713,41 @@ namespace Jackett.Common.Indexers try { var title = titleSelector.TextContent; - if (title.Contains("(") && title.Contains(")") && title.Contains("4k")) + if (title.Contains("(") && title.Contains(")") && title.Contains("3D")) { - release.CategoryText = "2160p"; + release.CategoryText = "3D"; } - } - catch { } + } catch { } + try + { + var title = titleSelector.TextContent; + if (title.Contains("(") && title.Contains(")") && title.Contains("4K")) + { + release.CategoryText = "4K"; + } + } catch { } + try + { + var title = titleSelector3do4k.TextContent; + if (title.Contains("[") && title.Contains("]") && title.Contains("3D")) + { + release.CategoryText = "3D"; + } + } catch { } + try + { + var title = titleSelector3do4k.TextContent; + if (title.Contains("[") && title.Contains("]") && title.Contains("4K")) + { + release.CategoryText = "4K"; + } + } catch { } try { var link = html.QuerySelector("a[href*=\"sec=descargas\"]").GetAttribute("href"); release.Link = new Uri(WebUri, link); release.Guid = release.Link; - } - catch { } + } catch { } return release; } }