From a358c48d17d3c546da85b20c8fc75b9d685ad9ea Mon Sep 17 00:00:00 2001 From: Qstick Date: Sat, 2 Jul 2022 12:15:16 -0500 Subject: [PATCH] jackett indexers as of f5c17c891d76ded02a7767515b4e4fc0d6bf00f5 --- definitions/v3/asiancinema.yml | 2 +- definitions/v3/beyond-hd.yml | 2 +- definitions/v3/bitbr.yml | 5 + definitions/v3/chilebt.yml | 2 +- definitions/v3/danishbytes.yml | 2 +- definitions/v3/desireleasers.yml | 2 +- definitions/v3/esharenet.yml | 2 +- definitions/v3/immortuos.yml | 2 +- definitions/v3/jptv.yml | 2 +- definitions/v3/mediamaatjes.yml | 1 + definitions/v3/netlab.yml | 119 -------------- definitions/v3/portugas.yml | 2 +- definitions/v3/purovicio.yml | 2 +- definitions/v3/theshinning.yml | 2 +- definitions/v3/torrent9clone.yml | 3 +- definitions/v3/torrentdb.yml | 2 +- definitions/v3/torrentqq.yml | 3 +- definitions/v3/torrentsir.yml | 7 +- definitions/v3/trupornolabs.yml | 85 ---------- definitions/v3/tvchaosuk.yml | 2 +- definitions/v5/skipthecommercials-api.yml | 2 +- definitions/v6/acervos-api.yml | 159 ++++++++++++++++++ definitions/v6/asiancinema.yml | 2 +- definitions/v6/beyond-hd.yml | 2 +- definitions/v6/chilebt.yml | 2 +- definitions/v6/esharenet.yml | 2 +- definitions/v6/immortuos.yml | 2 +- definitions/v6/jptv.yml | 2 +- definitions/v6/pignetwork.yml | 188 ++++++++++++++++++++++ definitions/v6/portugas.yml | 2 +- definitions/v6/purovicio.yml | 2 +- definitions/v6/skipthecommercials-api.yml | 2 +- definitions/v6/theshinning.yml | 2 +- definitions/v6/tvchaosuk.yml | 2 +- 34 files changed, 388 insertions(+), 232 deletions(-) delete mode 100644 definitions/v3/netlab.yml delete mode 100644 definitions/v3/trupornolabs.yml create mode 100644 definitions/v6/acervos-api.yml create mode 100644 definitions/v6/pignetwork.yml diff --git a/definitions/v3/asiancinema.yml b/definitions/v3/asiancinema.yml index b40438f54..f95a4500f 100644 --- a/definitions/v3/asiancinema.yml +++ b/definitions/v3/asiancinema.yml @@ -126,7 +126,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/beyond-hd.yml b/definitions/v3/beyond-hd.yml index 09c3cb504..fe72fb089 100644 --- a/definitions/v3/beyond-hd.yml +++ b/definitions/v3/beyond-hd.yml @@ -120,7 +120,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href downloadvolumefactor: case: diff --git a/definitions/v3/bitbr.yml b/definitions/v3/bitbr.yml index 9a224b464..290ae6ad3 100644 --- a/definitions/v3/bitbr.yml +++ b/definitions/v3/bitbr.yml @@ -135,6 +135,11 @@ search: attribute: title title: text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}" + filters: + - name: re_replace + args: + - "\\bDUAL\\b" + - "Portuguese (Brazil) English" details: selector: a[href^="details.php?id="] attribute: href diff --git a/definitions/v3/chilebt.yml b/definitions/v3/chilebt.yml index e70695a18..d86ef8485 100644 --- a/definitions/v3/chilebt.yml +++ b/definitions/v3/chilebt.yml @@ -136,7 +136,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/danishbytes.yml b/definitions/v3/danishbytes.yml index e3810af05..a986893ca 100644 --- a/definitions/v3/danishbytes.yml +++ b/definitions/v3/danishbytes.yml @@ -142,7 +142,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/desireleasers.yml b/definitions/v3/desireleasers.yml index e8f408dad..6a27a8ea4 100644 --- a/definitions/v3/desireleasers.yml +++ b/definitions/v3/desireleasers.yml @@ -116,7 +116,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: td:nth-last-child(6) diff --git a/definitions/v3/esharenet.yml b/definitions/v3/esharenet.yml index ddcfeb725..1eed848ba 100644 --- a/definitions/v3/esharenet.yml +++ b/definitions/v3/esharenet.yml @@ -154,7 +154,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/immortuos.yml b/definitions/v3/immortuos.yml index aa47a99c2..69be2d43b 100644 --- a/definitions/v3/immortuos.yml +++ b/definitions/v3/immortuos.yml @@ -135,7 +135,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/jptv.yml b/definitions/v3/jptv.yml index 833f9bd66..12a8b7fbd 100644 --- a/definitions/v3/jptv.yml +++ b/definitions/v3/jptv.yml @@ -131,7 +131,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v3/mediamaatjes.yml b/definitions/v3/mediamaatjes.yml index 05570988e..2e774559a 100644 --- a/definitions/v3/mediamaatjes.yml +++ b/definitions/v3/mediamaatjes.yml @@ -10,6 +10,7 @@ links: caps: categorymappings: + - {id: 45, cat: Console/Other, desc: "Retro-spellen"} - {id: 43, cat: Movies/UHD, desc: "4k Films"} - {id: 41, cat: TV/Documentary, desc: "Documentaire"} - {id: 40, cat: Other, desc: "kerst"} diff --git a/definitions/v3/netlab.yml b/definitions/v3/netlab.yml deleted file mode 100644 index 723ef3ebf..000000000 --- a/definitions/v3/netlab.yml +++ /dev/null @@ -1,119 +0,0 @@ ---- -id: netlab -name: NetLab -description: "NetLab is a RUSSIAN Private Torrent Tracker" -language: ru-RU -type: private -encoding: windows-1251 -links: - - https://torrent.e2k.ru/ - -caps: - categorymappings: - - {id: 1, cat: Movies/DVD, desc: "DVD5"} - - {id: 4, cat: Movies/DVD, desc: "DVD9"} - - {id: 5, cat: Movies/WEB-DL, desc: "MPEG/AVI"} - - {id: 6, cat: Audio, desc: "Музыка (Music)"} - - {id: 7, cat: PC/Games, desc: "Игры (Games)"} - - {id: 9, cat: PC/0day, desc: "Программы (Apps)"} - - {id: 10, cat: TV/HD, desc: "HDTV"} - - {id: 11, cat: Audio/Audiobook, desc: "Аудио Книги (Audiobooks)"} - - {id: 12, cat: Books/EBook, desc: "Книги (Ebooks)"} - - {id: 14, cat: Other, desc: "Разное (Other)"} - - {id: 15, cat: Audio/Video, desc: "МузDVD (Music/Video)"} - - modes: - search: [q] - tv-search: [q] - movie-search: [q] - music-search: [q, artist] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: striprussian - type: checkbox - label: Strip Russian Letters - default: false - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - returnto: "/my.php" - error: - - selector: td.embedded:contains("Ошибка") - test: - path: my.php - selector: a[href="logout.php"] - -search: - paths: - # https://torrent.e2k.ru/browse.php?c1=1&c4=1&c10=1&incldead=0&search= - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.Artist }}{{ .Query.Artist }}{{ else }}{{ .Keywords }}{{ end }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - - rows: - selector: table[border="1"][cellspacing="0"][cellpadding="5"] > tbody > tr:has(a[href^="details.php?id="]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - filters: - - name: re_replace - args: ["[\\:\\-\\/\\|]", " "] - - name: re_replace - args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - optional: true - attribute: href - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(4) - filters: - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "2006-01-0215:04:05 -07:00" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img[src$="_gold.png"]: 0.65 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.15 -# engine n/a diff --git a/definitions/v3/portugas.yml b/definitions/v3/portugas.yml index 7f935c6cc..2a6d81811 100644 --- a/definitions/v3/portugas.yml +++ b/definitions/v3/portugas.yml @@ -1,7 +1,7 @@ --- id: portugas name: Portugas -description: "Portugas is a Private Portoguese Tracker" +description: "Portugas is a Private Portuguese Tracker" language: pt-PT type: private encoding: UTF-8 diff --git a/definitions/v3/purovicio.yml b/definitions/v3/purovicio.yml index 003c876eb..e74f235fd 100644 --- a/definitions/v3/purovicio.yml +++ b/definitions/v3/purovicio.yml @@ -120,7 +120,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href size: selector: td:nth-last-child(4) diff --git a/definitions/v3/theshinning.yml b/definitions/v3/theshinning.yml index 6ccfba3d4..85a906095 100644 --- a/definitions/v3/theshinning.yml +++ b/definitions/v3/theshinning.yml @@ -128,7 +128,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href size: selector: td:nth-last-child(4) diff --git a/definitions/v3/torrent9clone.yml b/definitions/v3/torrent9clone.yml index ac4cbe892..bb71f200a 100644 --- a/definitions/v3/torrent9clone.yml +++ b/definitions/v3/torrent9clone.yml @@ -8,7 +8,7 @@ encoding: UTF-8 followredirect: true # to fetch current domain use https://www.protege-liens.com/torrent9 links: - - https://www.torrent9.re/ + - https://ww1.torrent9.re/ - https://torrent9.nocensor.sbs/ legacylinks: - https://www.t9.vc/ @@ -32,6 +32,7 @@ legacylinks: - https://www.torrent9.si/ - https://torrent9.nocensor.biz/ - https://www.torrent9.nl/ + - https://www.torrent9.re/ caps: categorymappings: diff --git a/definitions/v3/torrentdb.yml b/definitions/v3/torrentdb.yml index 3a4d2e242..01b939823 100644 --- a/definitions/v3/torrentdb.yml +++ b/definitions/v3/torrentdb.yml @@ -125,7 +125,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href downloadvolumefactor: case: diff --git a/definitions/v3/torrentqq.yml b/definitions/v3/torrentqq.yml index f4f1a0a19..2446ef63e 100644 --- a/definitions/v3/torrentqq.yml +++ b/definitions/v3/torrentqq.yml @@ -7,7 +7,7 @@ type: public encoding: UTF-8 followredirect: true links: - - https://torrentqq149.com/ + - https://torrentqq211.com/ legacylinks: - https://torrentqq132.com/ - https://torrentqq133.com/ @@ -26,6 +26,7 @@ legacylinks: - https://torrentqq146.com/ - https://torrentqq147.com/ - https://torrentqq148.com/ + - https://torrentqq149.com/ caps: categorymappings: diff --git a/definitions/v3/torrentsir.yml b/definitions/v3/torrentsir.yml index c8b9de247..9fba42b94 100644 --- a/definitions/v3/torrentsir.yml +++ b/definitions/v3/torrentsir.yml @@ -7,7 +7,7 @@ type: public encoding: UTF-8 followredirect: true links: - - https://torrentsir59.com/ + - https://torrentsir61.com/ legacylinks: - https://torrentsir48.com/ - https://torrentsir49.com/ @@ -26,6 +26,11 @@ legacylinks: - https://torrentsir57.com/ - http://torrentsir58.com/ - http://torrentsir59.com/ + - https://torrentsir59.com/ + - http://torrentsir60.com/ + - https://torrentsir60.com/ + - http://torrentsir61.com/ + caps: categorymappings: - {id: "gallery", cat: XXX, desc: "+19 (Adult)"} diff --git a/definitions/v3/trupornolabs.yml b/definitions/v3/trupornolabs.yml deleted file mode 100644 index 2d3b206fb..000000000 --- a/definitions/v3/trupornolabs.yml +++ /dev/null @@ -1,85 +0,0 @@ ---- -id: trupornolabs -name: truPornolabs -description: "truPornolabs is a RUSSIAN Public tracker for 3X" -language: ru-RU -type: public -encoding: UTF-8 -links: - - http://trupornolabs.org/ # https not supported - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: [] - -search: - paths: - # http://trupornolabs.org/search/vika - # http://trupornolabs.org/browse/0/0/0/0 - - path: "{{ if .Keywords }}search/{{ .Keywords }}{{ else }}browse/0/0/0/0{{ end }}" - - rows: - # filter out torrents with 0B for issue #9756 - selector: tr.gai:has(a[href^="/torrent/"]):has(td:nth-of-type(3):contains("GB")), tr.gai:has(a[href^="/torrent/"]):has(td:nth-of-type(3):contains("MB")) - - fields: - category: - text: XXX - title: - selector: a[href^="/torrent/"] - details: - selector: a[href^="/torrent/"] - attribute: href - download: - selector: a.downgif - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - date: - selector: td:first-of-type - filters: - - name: replace - args: ["Янв", "Jan"] - - name: replace - args: ["Фев", "Feb"] - - name: replace - args: ["Мар", "Mar"] - - name: replace - args: ["Апр", "Apr"] - - name: replace - args: ["Май", "May"] - - name: replace - args: ["Июн", "Jun"] - - name: replace - args: ["Июл", "Jul"] - - name: replace - args: ["Авг", "Aug"] - - name: replace - args: ["Сен", "Sep"] - - name: replace - args: ["Окт", "Oct"] - - name: replace - args: ["Ноя", "Nov"] - - name: replace - args: ["Дек", "Dec"] - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "02 Jan 06 -07:00" - size: - selector: td:nth-of-type(3) - seeders: - selector: span.green - leechers: - selector: span.red - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/definitions/v3/tvchaosuk.yml b/definitions/v3/tvchaosuk.yml index 71170e4e1..ed8e99a79 100644 --- a/definitions/v3/tvchaosuk.yml +++ b/definitions/v3/tvchaosuk.yml @@ -138,7 +138,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v5/skipthecommercials-api.yml b/definitions/v5/skipthecommercials-api.yml index e515e26ac..18d2f7520 100644 --- a/definitions/v5/skipthecommercials-api.yml +++ b/definitions/v5/skipthecommercials-api.yml @@ -136,4 +136,4 @@ search: minimumseedtime: # 7 days (as seconds = 7 x 24 x 60 x 60) text: 604800 -# json UNIT3D 6.1.0 +# json UNIT3D 6.2.1 diff --git a/definitions/v6/acervos-api.yml b/definitions/v6/acervos-api.yml new file mode 100644 index 000000000..8dc5997f0 --- /dev/null +++ b/definitions/v6/acervos-api.yml @@ -0,0 +1,159 @@ +--- +id: acervos +name: Acervos (API) +description: "Acervos is a Brazilian tracker for movies, tv shows, and others." +language: pt-BR +type: private +encoding: UTF-8 +links: + - https://acervos.cc/ + +caps: + categorymappings: + - {id: 1, cat: Movies, desc: "Filmes"} + - {id: 2, cat: TV, desc: "TV Séries"} + - {id: 3, cat: Other, desc: "Cursos"} + - {id: 4, cat: Console, desc: "Jogos"} + - {id: 5, cat: PC, desc: "Aplicativos"} + - {id: 6, cat: TV/Anime, desc: "Animes"} + - {id: 7, cat: Other, desc: "Materiais de Apoio"} + + modes: + search: [q] + tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] + movie-search: [q, imdbid, tmdbid] + +settings: + - name: apikey + type: text + label: APIKey + - name: info_key + type: info + label: About your API key + default: "Find or Generate a new API Token by accessing your Acervos account My Security page and clicking on the API Token tab." + - name: freeleech + type: checkbox + label: Search freeleech only + default: false + - name: sort + type: select + label: Sort requested from site + default: created_at + options: + created_at: created + seeders: seeders + size: size + name: title + - name: type + type: select + label: Order requested from site + default: desc + options: + desc: desc + asc: asc + +login: + path: /api/torrents + method: get + inputs: + api_token: "{{ .Config.apikey }}" + error: + - selector: a[href*="/login"] + message: + text: "The API key was not accepted by {{ .Config.sitelink }}." + +search: + paths: + # https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html + # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php + - path: "/api/torrents/filter" + response: + type: json + + inputs: + # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 + api_token: "{{ .Config.apikey }}" + name: "{{ .Keywords }}" + $raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}" + sortField: "{{ .Config.sort }}" + sortDirection: "{{ .Config.type }}" + perPage: 100 + page: 1 + + keywordsfilters: + - name: re_replace + args: ["\\.", " "] + - name: re_replace + args: ["(?i)\\bS(\\d+)", "T$1"] + + rows: + selector: data + attribute: attributes + count: + selector: meta.total + + fields: + category: + selector: category_id + title: + selector: name + filters: + - name: re_replace + args: + - "\\bDUAL\\b" + - "Portuguese (Brazil) English" + details: + selector: details_link + description: + selector: media_info + download: + selector: download_link + infohash: + selector: info_hash + poster: + selector: poster + filters: + - name: replace + args: ["https://via.placeholder.com/90x135", ""] + imdbid: + selector: imdb_id + tmdbid: + selector: tmdb_id + tvdbid: + selector: tvdb_id + files: + selector: num_file + seeders: + selector: seeders + leechers: + selector: leechers + grabs: + selector: times_completed + date: + # 2021-10-18T00:34:50.000000Z" + selector: created_at + size: + selector: size + downloadvolumefactor: + # api returns 0%, 25%, 50%, 75%, 100% + selector: freeleech + case: + 0%: 1 # not free + 25%: 0.75 + 50%: 0.5 + 75%: 0.25 + 100%: 0 # freeleech + "*": 0 # catch errors + uploadvolumefactor: + # api returns 0=false, 1=true + selector: double_upload + case: + 0: 1 # normal + 1: 2 # double +# global MR is 0.4 but torrents must be seeded for 5 days regardless of ratio +# minimumratio: +# text: 0.4 + minimumseedtime: + # 5 days (as seconds = 5 x 24 x 60 x 60) + text: 432000 +# json UNIT3D 6.1.0 diff --git a/definitions/v6/asiancinema.yml b/definitions/v6/asiancinema.yml index b184c5064..a56d6d408 100644 --- a/definitions/v6/asiancinema.yml +++ b/definitions/v6/asiancinema.yml @@ -126,7 +126,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v6/beyond-hd.yml b/definitions/v6/beyond-hd.yml index 903cc9c2e..f6400bdc3 100644 --- a/definitions/v6/beyond-hd.yml +++ b/definitions/v6/beyond-hd.yml @@ -120,7 +120,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href downloadvolumefactor: case: diff --git a/definitions/v6/chilebt.yml b/definitions/v6/chilebt.yml index acf2b5478..5afbf297a 100644 --- a/definitions/v6/chilebt.yml +++ b/definitions/v6/chilebt.yml @@ -136,7 +136,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v6/esharenet.yml b/definitions/v6/esharenet.yml index 368d3cf48..46b904d28 100644 --- a/definitions/v6/esharenet.yml +++ b/definitions/v6/esharenet.yml @@ -154,7 +154,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v6/immortuos.yml b/definitions/v6/immortuos.yml index 4cf4be2f9..4c8d7b2b2 100644 --- a/definitions/v6/immortuos.yml +++ b/definitions/v6/immortuos.yml @@ -135,7 +135,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v6/jptv.yml b/definitions/v6/jptv.yml index a7858ed79..a430176b4 100644 --- a/definitions/v6/jptv.yml +++ b/definitions/v6/jptv.yml @@ -131,7 +131,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time diff --git a/definitions/v6/pignetwork.yml b/definitions/v6/pignetwork.yml new file mode 100644 index 000000000..8911c228e --- /dev/null +++ b/definitions/v6/pignetwork.yml @@ -0,0 +1,188 @@ +--- +id: pignetwork +name: PigNetwork +description: "PigNetwork (猪猪网) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" +language: zh-CN +type: private +encoding: UTF-8 +links: + - https://piggo.me/ + +caps: + categorymappings: + - {id: 401, cat: Movies, desc: "Movies/电影", default: true} + - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片", default: true} + - {id: 405, cat: TV/Anime, desc: "Animations/动漫", default: true} + - {id: 402, cat: TV, desc: "TV Series/电视剧", default: true} + - {id: 403, cat: TV, desc: "TV Shows/综艺", default: true} + - {id: 406, cat: Audio/Video, desc: "MusicVideo/MV", default: true} + - {id: 407, cat: TV/Sport, desc: "Sports/体育", default: true} + - {id: 409, cat: Other, desc: "Misc/其他", default: true} + - {id: 408, cat: Audio, desc: "Music/音乐", default: true} + - {id: 908, cat: TV, desc: "TV Series/剧集", default: true} + - {id: 909, cat: Movies, desc: "Movies/电影", default: true} + - {id: 905, cat: Audio/Video, desc: "MusicVideo/MV", default: true} + - {id: 907, cat: Audio, desc: "Music/音乐", default: true} + + modes: + search: [q] + tv-search: [q, season, ep, imdbid] + movie-search: [q, imdbid] + music-search: [q] + +settings: + - name: username + type: text + label: Username + - name: password + type: password + label: Password + - name: freeleech + type: checkbox + label: Search freeleech only + default: false + - name: sort + type: select + label: Sort requested from site + default: 4 + options: + 4: created + 7: seeders + 5: size + 1: title + - name: type + type: select + label: Order requested from site + default: desc + options: + desc: desc + asc: asc + - name: info_tpp + type: info + label: Results Per Page + default: For best results, change the Torrents per page: setting to 100 on your account profile. + +login: + path: login.php + method: form + form: form[action="takelogin.php"] + captcha: + type: image + selector: img[alt="CAPTCHA"] + input: imagestring + inputs: + username: "{{ .Config.username }}" + password: "{{ .Config.password }}" + logout: "" + securelogin: "" + error: + - selector: td.embedded:has(h2:contains("失败")) + test: + path: index.php + selector: a[href="logout.php"] + +search: + paths: + - path: torrents.php + categories: [401, 402, 403, 404, 405, 406, 407, 408, 409] + - path: special.php + categories: [905, 907, 908, 909] + inputs: + $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" + search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" + # 0 incldead, 1 active, 2 dead + incldead: 0 + # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% + spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" + # 0 title, 1 descr, 3 uploader, 4 imdburl + search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}" + # 0 AND, 1 OR, 2 exact + search_mode: 0 + sort: "{{ .Config.sort }}" + type: "{{ .Config.type }}" + + rows: + selector: table.torrents > tbody > tr:has(a[href^="details.php?id="]) + + fields: + category: + selector: a[href^="?cat="] + attribute: href + filters: + - name: querystring + args: cat + title_default: + selector: a[href^="details.php?id="] + title_optional: + optional: true + selector: a[title][href^="details.php?id="] + attribute: title + title: + text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}" + details: + selector: a[href^="details.php?id="] + attribute: href + download: + selector: a[href^="download.php?id="] + attribute: href + poster: + selector: img.pr5 + attribute: src + imdbid: + # site currently only has a badge and rating, the id is not present. just in case a future update. + selector: a[href*="imdb.com/title/tt"] + attribute: href + doubanid: + # site currently only has a badge and rating, the id is not present. just in case a future update. + selector: a[href*="movie.douban.com/subject/"] + attribute: href + date_elapsed: + # time type: time elapsed (default) + selector: td.rowfollow:nth-child(4) > span[title] + attribute: title + optional: true + filters: + - name: append + args: " +08:00" # CST + - name: dateparse + args: "2006-01-02 15:04:05 -07:00" + date_added: + # time added + selector: td.rowfollow:nth-child(4):not(:has(span)) + optional: true + filters: + - name: append + args: " +08:00" # CST + - name: dateparse + args: "2006-01-0215:04:05 -07:00" + date: + text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" + size: + selector: td.rowfollow:nth-child(5) + seeders: + selector: td.rowfollow:nth-child(6) + leechers: + selector: td.rowfollow:nth-child(7) + grabs: + selector: td.rowfollow:nth-child(8) + downloadvolumefactor: + case: + img.pro_free: 0 + img.pro_free2up: 0 + img.pro_50pctdown: 0.5 + img.pro_50pctdown2up: 0.5 + img.pro_30pctdown: 0.3 + "*": 1 + uploadvolumefactor: + case: + img.pro_50pctdown2up: 2 + img.pro_free2up: 2 + img.pro_2up: 2 + "*": 1 + minimumseedtime: + # 3 days (as seconds = 3 x 24 x 60 x 60) + text: 259200 + description: + selector: td.rowfollow:nth-child(2) + remove: a, img +# NexusPHP v1.7.16 diff --git a/definitions/v6/portugas.yml b/definitions/v6/portugas.yml index c62db7dea..a26d32f60 100644 --- a/definitions/v6/portugas.yml +++ b/definitions/v6/portugas.yml @@ -1,7 +1,7 @@ --- id: portugas name: Portugas -description: "Portugas is a Private Portoguese Tracker" +description: "Portugas is a Private Portuguese Tracker" language: pt-PT type: private encoding: UTF-8 diff --git a/definitions/v6/purovicio.yml b/definitions/v6/purovicio.yml index dda08c575..747e7a411 100644 --- a/definitions/v6/purovicio.yml +++ b/definitions/v6/purovicio.yml @@ -120,7 +120,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href size: selector: td:nth-last-child(4) diff --git a/definitions/v6/skipthecommercials-api.yml b/definitions/v6/skipthecommercials-api.yml index 8c66d5cf4..2e0551970 100644 --- a/definitions/v6/skipthecommercials-api.yml +++ b/definitions/v6/skipthecommercials-api.yml @@ -136,4 +136,4 @@ search: minimumseedtime: # 7 days (as seconds = 7 x 24 x 60 x 60) text: 604800 -# json UNIT3D 6.1.0 +# json UNIT3D 6.2.1 diff --git a/definitions/v6/theshinning.yml b/definitions/v6/theshinning.yml index a4c2f53e2..26d4fa37e 100644 --- a/definitions/v6/theshinning.yml +++ b/definitions/v6/theshinning.yml @@ -128,7 +128,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href size: selector: td:nth-last-child(4) diff --git a/definitions/v6/tvchaosuk.yml b/definitions/v6/tvchaosuk.yml index 8387940db..4240179bb 100644 --- a/definitions/v6/tvchaosuk.yml +++ b/definitions/v6/tvchaosuk.yml @@ -138,7 +138,7 @@ search: selector: a[href*="imdb.com/title/tt"] attribute: href tmdbid: - selector: a[href*="themoviedb.org/movie/"] + selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] attribute: href date: selector: time