mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-16 20:04:50 +01:00
Compare commits
57 Commits
v0.20.4101
...
cardigann-
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dc3e068066 | ||
|
|
f59cc953ec | ||
|
|
9e5973af5c | ||
|
|
e28e93ce08 | ||
|
|
927ffdff39 | ||
|
|
88d5142cd7 | ||
|
|
5f754847b9 | ||
|
|
6e69f3611d | ||
|
|
a25dad6d09 | ||
|
|
9c641e624a | ||
|
|
e2c25d78c9 | ||
|
|
4b5c36f056 | ||
|
|
5ff2071094 | ||
|
|
5aa616a6ee | ||
|
|
6932b9afbc | ||
|
|
8eca7c2f14 | ||
|
|
214a0a6960 | ||
|
|
816ff9aa5d | ||
|
|
d0bfbbfc81 | ||
|
|
b68373b4f0 | ||
|
|
d8c988c976 | ||
|
|
922c27f1ac | ||
|
|
f84cb6e334 | ||
|
|
c1fe13a3a6 | ||
|
|
7aae16f4d3 | ||
|
|
db1785f49c | ||
|
|
d38a3f0210 | ||
|
|
11bdb939b1 | ||
|
|
8851fc00e6 | ||
|
|
6a9de0ce34 | ||
|
|
069e9d180a | ||
|
|
e6d9417f86 | ||
|
|
f86b239469 | ||
|
|
5b433c412d | ||
|
|
bb933fd553 | ||
|
|
60d674d24e | ||
|
|
44af214b09 | ||
|
|
79347c3d7b | ||
|
|
3beb406eed | ||
|
|
0cffd5a181 | ||
|
|
571bd12a47 | ||
|
|
c2adac3257 | ||
|
|
c08262ce55 | ||
|
|
ecc1d13025 | ||
|
|
c3e13d795c | ||
|
|
c2607f95e4 | ||
|
|
12e76e7b74 | ||
|
|
0fd7538c80 | ||
|
|
47c986f65d | ||
|
|
23bc0c7f13 | ||
|
|
acced753dd | ||
|
|
859815f758 | ||
|
|
e903e4baeb | ||
|
|
0ca43276b8 | ||
|
|
f18f2274ca | ||
|
|
c74e8ee437 | ||
|
|
e03f563425 |
@@ -108,7 +108,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTorNeT
|
||||
* Rus-media
|
||||
* RuTor
|
||||
* RuTracker.RU
|
||||
* Seedoff
|
||||
@@ -130,6 +129,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Torrent9 clone
|
||||
* Torrent911
|
||||
* TorrentFunk
|
||||
* TorrentDownloads
|
||||
* TorrentGalaxy (TGx)
|
||||
* TorrentKitty
|
||||
* TorrentProject2
|
||||
@@ -291,7 +291,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety
|
||||
* BTNext (BTNT) [![(invite needed)][inviteneeded]](#)
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
@@ -317,6 +317,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CrazySpirits
|
||||
* CrnaBerza
|
||||
* DANISH BYTES
|
||||
* Dark-Shadow
|
||||
* DataScene (DS)
|
||||
* DataTalli
|
||||
* DesiTorrents
|
||||
@@ -387,7 +388,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDVIDEO
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasHut
|
||||
* HHanClub
|
||||
* House of Devil
|
||||
* HQMusic
|
||||
@@ -398,6 +398,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* ItaTorrents
|
||||
* JME-REUNIT3D
|
||||
* JoyHD [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
@@ -445,6 +446,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NicePT
|
||||
* NorBits
|
||||
* NORDiCHD
|
||||
* Ntelogo
|
||||
* Old Toons World
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
|
||||
@@ -13,12 +13,11 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.click/
|
||||
- https://1337x.unblockit.asia/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.is/
|
||||
- https://1337x.nocensor.work/
|
||||
- https://1337x.unblockit.how/
|
||||
- https://1337x.unblockit.cam/
|
||||
- https://1337x.nocensor.biz/
|
||||
- https://1337x.gd/
|
||||
@@ -41,8 +40,11 @@ legacylinks:
|
||||
- https://1337x.unblockit.boo/
|
||||
- https://1337x.mrunblock.guru/
|
||||
- https://1337x.mrunblock.life/ # cloudflare 403
|
||||
- https://1337x.unblockit.click/
|
||||
|
||||
caps:
|
||||
limitsDefault: 80
|
||||
limitsMax: 80
|
||||
categorymappings:
|
||||
# Anime
|
||||
- {id: 28, cat: TV/Anime, desc: "Anime/Anime"}
|
||||
@@ -181,6 +183,9 @@ download:
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
pageSize: 20
|
||||
pageable: "{{ if or .Query.Album .Query.Artist .Keywords }}true{{ else }}false{{ end }}"
|
||||
|
||||
paths:
|
||||
# present first page of movies tv and music results if there are no search parms supplied (20 hits per page)
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Movies{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/1/"
|
||||
|
||||
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-04-09
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -213,4 +213,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-26
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -178,6 +178,9 @@ search:
|
||||
_quality:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary:contains("1080p"), div.list-group-item-content p.m-0 span.badge-primary:contains("720p"), div.list-group-item-content p.m-0 span.badge-primary:contains("4k")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["4k", "2160p"]
|
||||
_year:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary[style$="#246AB6;"]
|
||||
optional: true
|
||||
|
||||
@@ -9,6 +9,7 @@ requestDelay: 2
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.mrunblock.life/
|
||||
- https://bitsearch.nocensor.click/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
|
||||
@@ -10,7 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "Cursos"}
|
||||
- {id: 1, cat: Other, desc: "Cursos"}
|
||||
- {id: 2, cat: Books/EBook, desc: "eBooks"}
|
||||
- {id: 5, cat: Books/Mags, desc: "Revistas"}
|
||||
- {id: 3, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
@@ -71,15 +71,9 @@ search:
|
||||
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 }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
@@ -110,28 +104,6 @@ search:
|
||||
optional: true
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -169,6 +141,6 @@ search:
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.5.0
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D 6.5.0 (custom)
|
||||
|
||||
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.31 2022-11-14
|
||||
# NexusPHP v1.7.37 2023-05-08
|
||||
|
||||
@@ -163,7 +163,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[ ]at|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[ ]at|[//\xa0\\s,]+", " "]
|
||||
date_year:
|
||||
# February 09, 2019, 06:35:08 AM
|
||||
selector: td:nth-child(5):not(:contains("day"))
|
||||
@@ -171,7 +171,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[,]|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[//\xa0\\s,]+", " "]
|
||||
- name: dateparse
|
||||
args: "MMMM dd yyyy hh:mm:ss tt"
|
||||
date:
|
||||
|
||||
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
@@ -0,0 +1,202 @@
|
||||
---
|
||||
id: dark-shadow
|
||||
name: Dark-Shadow
|
||||
description: "Dark-Shadow is a GERMAN Private site for TV / MOVIES / GENERAL"
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://projekt.dark-shadow.me/
|
||||
legacylinks:
|
||||
- https://dark-shadow.ml/
|
||||
- https://dark-shadow.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movie
|
||||
- {id: 28, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
|
||||
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
|
||||
# Serien
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 57, cat: TV/HD, desc: "Serien HD"}
|
||||
- {id: 139, cat: TV/UHD, desc: "Serien UHD"}
|
||||
- {id: 59, cat: TV, desc: "Serien Pack`s"}
|
||||
# Audio
|
||||
- {id: 110, cat: Audio/MP3, desc: "Audio MP3"}
|
||||
- {id: 48, cat: Audio/Lossless, desc: "Audio Flac"}
|
||||
- {id: 52, cat: Audio, desc: "Audio Pack"}
|
||||
- {id: 63, cat: Audio/Audiobook, desc: "Audio Hörbuch"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Videos"}
|
||||
# Apps
|
||||
- {id: 12, cat: PC/0day, desc: "Apps Windows"}
|
||||
- {id: 125, cat: PC/Mac, desc: "Apps Mac-OSX"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "Apps Mobil"}
|
||||
- {id: 141, cat: PC/ISO, desc: "Apps Other"}
|
||||
# Doku
|
||||
- {id: 15, cat: TV/Documentary, desc: "Doku SD"}
|
||||
- {id: 14, cat: TV/Documentary, desc: "Doku HD"}
|
||||
- {id: 123, cat: TV/Documentary, desc: "Doku Reihe"}
|
||||
# Spiel
|
||||
- {id: 126, cat: Console/Other, desc: "Spiel Mobil"}
|
||||
- {id: 17, cat: PC/Games, desc: "Spiel PC"}
|
||||
- {id: 24, cat: Console, desc: "Spiel Konsole"}
|
||||
- {id: 121, cat: Console, desc: "Spiel Wimmelbild"}
|
||||
# Sport
|
||||
- {id: 61, cat: TV/Sport, desc: "Sport HD"}
|
||||
- {id: 62, cat: TV/Sport, desc: "Sport SD"}
|
||||
# ePaper
|
||||
- {id: 96, cat: Books/Mags, desc: "ePaper Zeitungen"}
|
||||
- {id: 136, cat: Books/EBook, desc: "ePaper E-Book"}
|
||||
- {id: 137, cat: Books/Comics, desc: "ePaper Comics"}
|
||||
# XXX
|
||||
- {id: 76, cat: XXX/XviD, desc: "XXX SD"}
|
||||
- {id: 73, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 75, cat: XXX/Pack, desc: "XXX Pack"}
|
||||
- {id: 142, cat: XXX/ImageSet, desc: "XXX Pic´s"}
|
||||
# Internal
|
||||
- {id: 129, cat: Movies/SD, desc: "Internal Film SD"}
|
||||
- {id: 128, cat: Movies/HD, desc: "Internal Film HD"}
|
||||
- {id: 131, cat: TV/SD, desc: "Internal Serie SD"}
|
||||
- {id: 130, cat: TV/HD, desc: "Internal Serien HD"}
|
||||
- {id: 132, cat: Other, desc: "Internal Sonstiges"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: selection.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: 0
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
keywordsfilters:
|
||||
# prefix and postfix percent wildcard as well as replacing spaces between words
|
||||
- name: re_replace
|
||||
args: ["\\W+", "%"]
|
||||
- name: re_replace
|
||||
args: ["^(.+)$", "%$1%"]
|
||||
|
||||
rows:
|
||||
selector: "div.selection_wrap{{ if .Config.freeleech }}:root:has(div.onlyup){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
filters:
|
||||
# remove [REQ] and anything else in [] that prefixes titles
|
||||
- name: re_replace
|
||||
args: ["^(\\[.*\\])(.*)", "$2"]
|
||||
details:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download_ssl.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
date_day:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
date_year:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "dd.MM.yyyy HH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
description:
|
||||
selector: selection_unter_af
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 36 hours (as seconds = 36 x 60 x 60)
|
||||
text: 129600
|
||||
# 3xT
|
||||
@@ -10,12 +10,11 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoid.unblockit.click/
|
||||
- https://demonoid.unblockit.asia/
|
||||
- https://demonoid.torrentbay.net/
|
||||
- https://demonoid.mrunblock.life/
|
||||
- https://demonoid.nocensor.click/
|
||||
legacylinks:
|
||||
- https://demonoid.unblockit.how/
|
||||
- https://demonoid.unblockit.cam/
|
||||
- https://demonoid.nocensor.biz/
|
||||
- https://demonoid.unblockit.day/
|
||||
@@ -42,6 +41,7 @@ legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.link/ # Origin is unreachable Error code 523
|
||||
- https://demonoid.mrunblock.guru/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -7,12 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.click/
|
||||
- https://extratorrent.unblockit.asia/
|
||||
- https://extratorrent.mrunblock.life/
|
||||
- https://extratorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.how/
|
||||
- https://extratorrent.unblockit.cam/
|
||||
- https://extratorrent.nocensor.biz/
|
||||
- https://extratorrent.unblockit.day/
|
||||
@@ -33,6 +32,7 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.bio/
|
||||
- https://extratorrent.unblockit.boo/
|
||||
- https://extratorrent.mrunblock.guru/
|
||||
- https://extratorrent.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -13,7 +13,7 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.click/
|
||||
- https://eztv.unblockit.asia/
|
||||
- https://eztv.mrunblock.life/
|
||||
- https://eztv.nocensor.click/
|
||||
legacylinks:
|
||||
@@ -40,6 +40,7 @@ legacylinks:
|
||||
- https://eztv.unblockit.bio/
|
||||
- https://eztv.unblockit.boo/
|
||||
- https://eztv.mrunblock.guru/
|
||||
- https://eztv.unblockit.click/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -6,7 +6,9 @@ language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://fantastiko.space/ # https is not supported
|
||||
- https://fantastiko.space/
|
||||
legacylinks:
|
||||
- http://fantastiko.space/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -20,14 +20,13 @@ caps:
|
||||
- {id: 601, cat: TV/Anime, desc: " |- Мультсериалы DVD Master's"}
|
||||
# Кино, видео, мультипликация и ТВ
|
||||
# Film, video, animation and TV
|
||||
- {id: 995, cat: Movies, desc: " |- Экранки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы)"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежное кино"}
|
||||
- {id: 988, cat: Movies, desc: " |- Кино России и СНГ"}
|
||||
- {id: 337, cat: Movies, desc: " |- Мультфильмы"}
|
||||
- {id: 72, cat: Movies, desc: " |- DVD, HD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1001, cat: Movies, desc: " |- UHD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1002, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [SD]"}
|
||||
- {id: 1003, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 988, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [SD]"}
|
||||
- {id: 337, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы на других языках [SD/HD/UHD]"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 999, cat: Movies, desc: " |- Фильмы (2021-2022)"}
|
||||
- {id: 996, cat: Movies, desc: " |- Фильмы (2019-2020)"}
|
||||
- {id: 921, cat: Movies, desc: " |- Фильмы (2016-2018)"}
|
||||
@@ -51,7 +50,6 @@ caps:
|
||||
- {id: 62, cat: Movies, desc: " |- Кино для детей"}
|
||||
- {id: 962, cat: Movies, desc: " |- Антология отечественного кино"}
|
||||
- {id: 990, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы на языках ближнего.."}
|
||||
- {id: 993, cat: Movies, desc: " |- Фильмы , мультфильмы и сериалы ближнего зарубежья и СНГ в ор.."}
|
||||
- {id: 991, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы в оригинале"}
|
||||
- {id: 74, cat: Movies, desc: " |- Зарубежные мультфильмы"}
|
||||
- {id: 73, cat: Movies, desc: " |- Отечественные мультфильмы"}
|
||||
|
||||
@@ -96,8 +96,8 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}{{ if .Query.Genre }} genre:{{ .Query.Genre }}{{ else }}{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo
|
||||
blah: "{{ if or .Query.IMDBID .Query.Genre }}3{{ else }}0{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo, 4 imdb
|
||||
blah: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.Genre }}3{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}0{{ end }}"
|
||||
# 0 active only, 1 dead only
|
||||
incldead: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
||||
@@ -9,6 +9,7 @@ followredirect: true
|
||||
# to fetch current domain use https://www.protege-liens.com/Gktorrent
|
||||
links:
|
||||
- https://www.gktorrents.cc/
|
||||
- https://gktorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://www.gktorrent.org/
|
||||
- https://www.gktorrent.me/
|
||||
|
||||
@@ -10,14 +10,13 @@ links:
|
||||
- https://glodls.to/
|
||||
- https://gtdb.cc/
|
||||
- https://www.gtdb.to/
|
||||
- https://glotorrents.unblockit.click/
|
||||
- https://glotorrents.unblockit.asia/
|
||||
- https://glotorrents.mrunblock.life/
|
||||
- https://glodls.unblockninja.com/
|
||||
- https://glotorrents.nocensor.click/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://gtdb.to/
|
||||
- https://glotorrents.unblockit.how/
|
||||
- https://glotorrents.unblockit.cam/
|
||||
- https://glotorrents.nocensor.biz/
|
||||
- https://glotorrents.unblockit.day/
|
||||
@@ -38,6 +37,7 @@ legacylinks:
|
||||
- https://glotorrents.unblockit.bio/
|
||||
- https://glotorrents.unblockit.boo/
|
||||
- https://glotorrents.mrunblock.guru/
|
||||
- https://glotorrents.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -175,4 +175,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-04-16
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -122,7 +122,7 @@ search:
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href*=bookmark])
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href^="magnet:?xt="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -132,13 +132,16 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td:nth-child(2) > a
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
details:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
@@ -146,17 +149,19 @@ search:
|
||||
- name: regexp
|
||||
args: "src=(.+?) "
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
selector: td:nth-child(7)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd/MM/yyyy"
|
||||
size:
|
||||
selector: td:nth-child(11)
|
||||
selector: td:nth-child(12)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
grabs:
|
||||
selector: td:nth-child(11)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freeleech.gif"]: 0
|
||||
|
||||
@@ -103,14 +103,14 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ 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_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
@@ -139,12 +139,14 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-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:nth-child(4) > span[title]
|
||||
@@ -193,4 +195,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-20
|
||||
# NexusPHP v1.8.2 2023-05-06
|
||||
|
||||
@@ -19,6 +19,7 @@ caps:
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 409, cat: Other, desc: "Misc/其他"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 410, cat: PC, desc: "Softs/软件"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
@@ -60,6 +60,8 @@ login:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -70,9 +72,12 @@ search:
|
||||
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 }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
@@ -182,11 +187,15 @@ search:
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0: 1 # not free
|
||||
1: 0 # freeleech
|
||||
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
|
||||
@@ -196,4 +205,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D ???
|
||||
# json UNIT3D 6.0.4
|
||||
|
||||
@@ -98,8 +98,8 @@ search:
|
||||
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 (not working)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -188,4 +188,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.33 2023-01-04
|
||||
# NexusPHP v1.7.37 2023-05-08
|
||||
|
||||
@@ -1,193 +0,0 @@
|
||||
---
|
||||
id: hellashut
|
||||
name: HellasHut
|
||||
description: "HellasHut is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
testlinktorrent: false
|
||||
links:
|
||||
- https://hellashut.de/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 28, cat: TV/Anime, desc: "Anime/Cartoon HD"}
|
||||
- {id: 47, cat: TV/Anime, desc: "Anime/Cartoon HDTV"}
|
||||
- {id: 48, cat: TV/Anime, desc: "Anime/Cartoon SD"}
|
||||
- {id: 50, cat: TV/Anime, desc: "Anime/Cartoon SD Emb"}
|
||||
- {id: 51, cat: TV/Anime, desc: "Anime/Cartoon TV"}
|
||||
- {id: 77, cat: PC, desc: "Applications DOS"}
|
||||
- {id: 20, cat: PC, desc: "Applications Linux"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Applications MAC"}
|
||||
- {id: 68, cat: PC, desc: "Applications OS2 WARP"}
|
||||
- {id: 21, cat: PC, desc: "Applications Other"}
|
||||
- {id: 18, cat: PC/0day, desc: "Applications Windows"}
|
||||
- {id: 52, cat: Books, desc: "Books/Magazines All"}
|
||||
- {id: 9, cat: TV/Documentary, desc: "Documentaries All"}
|
||||
- {id: 53, cat: TV/Documentary, desc: "Documentaries Greek"}
|
||||
- {id: 54, cat: TV/Documentary, desc: "Documentaries HD"}
|
||||
- {id: 55, cat: Movies/DVD, desc: "DVD-R All"}
|
||||
- {id: 17, cat: Console/Other, desc: "Games Other"}
|
||||
- {id: 11, cat: Console/PS4, desc: "Games PSX"}
|
||||
- {id: 10, cat: PC/Games, desc: "Games Windows"}
|
||||
- {id: 13, cat: Console/XBox, desc: "Games Xbox"}
|
||||
- {id: 56, cat: Other, desc: "Miscellaneous All"}
|
||||
- {id: 57, cat: PC/Mobile-Other, desc: "Mobile All"}
|
||||
- {id: 1, cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: 2, cat: Movies/UHD, desc: "Movies 4K"}
|
||||
- {id: 42, cat: Movies/BluRay, desc: "Movies BluRay"}
|
||||
- {id: 58, cat: Movies/DVD, desc: "Movies DVD"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 69, cat: Movies/HD, desc: "Movies HD Packs"}
|
||||
- {id: 3, cat: Movies/SD, desc: "Movies SD"}
|
||||
- {id: 67, cat: Movies/SD, desc: "Movies SD Packs"}
|
||||
- {id: 71, cat: Audio, desc: "Music CDA"}
|
||||
- {id: 59, cat: Audio, desc: "Music Discographies"}
|
||||
- {id: 23, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 25, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 75, cat: Movies/HD, desc: "NO IN SUBS Movies HD"}
|
||||
- {id: 76, cat: Movies/UHD, desc: "NO SUBS IN Movies 4K"}
|
||||
- {id: 35, cat: TV/Sport, desc: "Sports HD"}
|
||||
- {id: 34, cat: TV/Sport, desc: "Sports SD"}
|
||||
- {id: 5, cat: TV, desc: "TV Greek Movies"}
|
||||
- {id: 6, cat: TV, desc: "TV Greek Series"}
|
||||
- {id: 7, cat: TV, desc: "TV Greek Series Packs"}
|
||||
- {id: 60, cat: TV, desc: "TV Greek Shows"}
|
||||
- {id: 41, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 61, cat: TV, desc: "TV Series"}
|
||||
- {id: 62, cat: TV, desc: "TV Series Emb"}
|
||||
- {id: 63, cat: TV, desc: "TV Series Emb Packs"}
|
||||
- {id: 64, cat: TV/HD, desc: "TV Series HD"}
|
||||
- {id: 65, cat: TV/HD, desc: "TV Series HD Packs"}
|
||||
- {id: 66, cat: TV, desc: "TV Series Packs"}
|
||||
- {id: 73, cat: Movies/BluRay, desc: "UNTOUCHED BluRay"}
|
||||
- {id: 72, cat: Movies/DVD, desc: "UNTOUCHED DVD"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-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: id
|
||||
options:
|
||||
id: 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: account-login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: /
|
||||
error:
|
||||
- selector: td.embedded:contains("Access Denied")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="], a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hellashut.de/torrents-search.php?c52=1&search=&cat=0&incldead=1&advanced=1&lang=0&blah=0&freeleech=0&sort=id&order=desc
|
||||
- path: torrents-search.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all, 1 notfree, 2 onlyfree
|
||||
freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 Greek
|
||||
lang: 0
|
||||
# 0 name, 1 descr, 2 uploader
|
||||
blah: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}"
|
||||
# 0 all
|
||||
team: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner tr.t-row
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="cat="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: 56
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
size:
|
||||
selector: td:nth-last-child(7)
|
||||
date:
|
||||
selector: td:nth-last-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm:ss"
|
||||
grabs:
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 10 day (as seconds = 10 x 24 x 60 x 60)
|
||||
text: 864000
|
||||
# TorrentTrader v2-svn
|
||||
@@ -29,7 +29,7 @@ caps:
|
||||
- {id: 127, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 121, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 124, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 140, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 141, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 122, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
|
||||
- {id: 123, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 133, cat: Audio/MP3, desc: "Musik - MP3"}
|
||||
|
||||
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.1 2023-04-21
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
180
src/Jackett.Common/Definitions/itatorrents.yml
Normal file
180
src/Jackett.Common/Definitions/itatorrents.yml
Normal file
@@ -0,0 +1,180 @@
|
||||
---
|
||||
id: itatorrents
|
||||
name: ItaTorrents
|
||||
description: "ItaTorrents is an ITALIAN Private tracker for MOVIES / TV / GENERAL"
|
||||
language: it-IT
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://itatorrents.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Film"}
|
||||
- {id: 2, cat: TV, desc: "Serie TV"}
|
||||
- {id: 3, cat: Audio, desc: "Musica"}
|
||||
- {id: 4, cat: Console, desc: "Giochi"}
|
||||
- {id: 5, cat: PC, desc: "Applicazioni"}
|
||||
- {id: 6, cat: Books/Mags, desc: "Edicola"}
|
||||
- {id: 7, cat: Books/EBook, desc: "E-Book"}
|
||||
- {id: 8, cat: Audio/Audiobook, desc: "AudioLibri"}
|
||||
- {id: 12, cat: Other, desc: "Corsi"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
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 <a href=\"https://itatorrents.xyz/\" target=\"_blank\">ItaTorrents</a> account <i>My Security</i> page and clicking on the <b>API Token</b> 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 }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
- name: re_replace # S01 to Stagione 1
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "Stagione $1"]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
- name: re_replace # Stagione X --> S0X
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{1})\\b|\\bSeason'?s?\\s?(\\d{1})\\b", "S0$1$2"]
|
||||
- name: re_replace # Stagione XX --> SXX
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{2,})\\b|\\bSeason'?s?\\s?(\\d{2,})\\b", "S$1$2"]
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(televisione film)", "televisione_film"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "MM/dd/yyyy HH:mm:ss zzz"
|
||||
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
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.5.0
|
||||
@@ -9,8 +9,6 @@ links:
|
||||
- https://krazyzone.net/
|
||||
legacylinks:
|
||||
- http://krazyzone.net/
|
||||
certificates:
|
||||
- 867fcd460bed7ded541674414267a54cc13f6d02 # selfsigned
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -112,11 +110,6 @@ login:
|
||||
path: index.php
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: td a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://krazyzone.net/torrents-search.php?incldead=1&freeleech=0&inclrosub=0&sort=id&order=desc
|
||||
@@ -135,7 +128,7 @@ search:
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner > tbody > tr
|
||||
selector: table.ttable_headinner > tbody > tr:has(a[href^="download.php?id="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
@@ -156,7 +149,7 @@ search:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
@@ -185,23 +178,23 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(3)
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
# 24.Jul<br>2022<br>07:47
|
||||
selector: td:nth-child(4)
|
||||
selector: td:nth-child(5)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "d.MMMyyyyHH:mm"
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/free.png"]: 0
|
||||
img[src="images/free.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
|
||||
@@ -9,7 +9,7 @@ followredirect: true
|
||||
# changes to this indexer should also be made to limetorrentsclone
|
||||
links:
|
||||
- https://www.limetorrents.lol/
|
||||
- https://limetorrents.unblockit.click/
|
||||
- https://limetorrents.unblockit.asia/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.mrunblock.life/
|
||||
- https://limetorrents.nocensor.click/
|
||||
@@ -37,6 +37,7 @@ legacylinks:
|
||||
- https://limetorrents.unblockit.bio/
|
||||
- https://limetorrents.unblockit.boo/
|
||||
- https://limetorrents.mrunblock.guru/
|
||||
- https://limetorrents.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -10,6 +10,8 @@ links:
|
||||
- https://movietorrent.co/
|
||||
|
||||
caps:
|
||||
limitsDefault: 36
|
||||
limitsMax: 36
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Bollywood"}
|
||||
- {id: 2, cat: Movies/HD, desc: "1080p"}
|
||||
@@ -74,6 +76,9 @@ download:
|
||||
- name: validfilename
|
||||
|
||||
search:
|
||||
pageSize: 12
|
||||
pageable: true
|
||||
|
||||
paths:
|
||||
- path: "?s={{ .Keywords }}"
|
||||
- path: "/page/2/?s={{ .Keywords }}"
|
||||
|
||||
179
src/Jackett.Common/Definitions/nordichd.yml
Normal file
179
src/Jackett.Common/Definitions/nordichd.yml
Normal file
@@ -0,0 +1,179 @@
|
||||
---
|
||||
id: nordichd
|
||||
name: NORDiCHD
|
||||
description: "NORDiCHD is a Mixed NORDIC Private Tracker for MOVIES / TV / GENERAL"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://nordichd.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Movies DivX"}
|
||||
- {id: 16, cat: Movies/SD, desc: "Movies CAM"}
|
||||
- {id: 17, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 17, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 31, cat: Movies/BluRay, desc: "Movies BDRip"}
|
||||
- {id: 6, cat: PC, desc: "Applications"}
|
||||
- {id: 18, cat: PC/0day, desc: "Applications PC"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Applications Macintosh"}
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 21, cat: Audio/MP3, desc: "Music Mp3"}
|
||||
- {id: 2, cat: Console, desc: "Games"}
|
||||
- {id: 3, cat: Console/PS3, desc: "Games Sony PS"}
|
||||
- {id: 4, cat: Console/Wii, desc: "Games Wii"}
|
||||
- {id: 26, cat: Console/XBox, desc: "Games XboX"}
|
||||
- {id: 27, cat: PC/Games, desc: "Games PC"}
|
||||
- {id: 28, cat: Console/NDS, desc: "Games Nintendo"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_results
|
||||
type: info
|
||||
label: Search results
|
||||
default: "If you are getting the error <b>Found no results while trying to browse this tracker</b> then first access the site with your browser and check that you are not being forced to change your password because it has expired after 180 days."
|
||||
|
||||
login:
|
||||
path: ?p=home&pid=1
|
||||
method: form
|
||||
form: form#sls_form
|
||||
submitpath: ajax/login.php
|
||||
inputs:
|
||||
action: login
|
||||
loginbox_membername: "{{ .Config.username }}"
|
||||
loginbox_password: "{{ .Config.password }}"
|
||||
loginbox_remember: 1
|
||||
selectorinputs:
|
||||
securitytoken:
|
||||
selector: "script:contains(\"stKey: \")"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "stKey: \"(.+?)\","
|
||||
error:
|
||||
- selector: div.error
|
||||
- selector: :contains("-ERROR-")
|
||||
test:
|
||||
path: ?p=home&pid=1
|
||||
selector: div#member_info_bar
|
||||
|
||||
search:
|
||||
paths:
|
||||
# 7 results per page, but fetching more pages when results < 7 returns duplicates from each additional page.
|
||||
- path: /
|
||||
inputs:
|
||||
p: torrents
|
||||
pid: 32
|
||||
$raw: "{{ range .Categories }}cid[]={{.}}&{{end}}"
|
||||
keywords: "{{ .Keywords }}"
|
||||
# name, description, both, uploader
|
||||
search_type: name
|
||||
"sortOptions[sortBy]": "{{ .Config.sort }}"
|
||||
"sortOptions[sortOrder]": "{{ .Config.type }}"
|
||||
# does not support imdbid search or have imdbid links in results.
|
||||
error:
|
||||
- selector: div.error:not(:contains("There are no results found."))
|
||||
|
||||
rows:
|
||||
selector: "div.torrent-box[id^=\"torrent_\"]{{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="?p=torrents&pid=10&cid="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cid
|
||||
title:
|
||||
selector: a[href*="?p=torrents&pid=10&action=details&tid="]
|
||||
details:
|
||||
selector: a[href*="?p=torrents&pid=10&action=details&tid="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="?p=torrents&pid=10&action=download&tid="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href*="data/torrents/torrent_images/"]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
genre:
|
||||
selector: div.torrentDetails > div:has(a[href*="&genre="])
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Genre:", ""]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
size:
|
||||
selector: a[rel="torrent_size"]
|
||||
grabs:
|
||||
selector: a[rel="times_completed"]
|
||||
seeders:
|
||||
selector: a[rel="torrent_seeders"]
|
||||
leechers:
|
||||
selector: a[rel="torrent_leechers"]
|
||||
date_day:
|
||||
selector: div.torrentOwner:contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
selector: div.torrentOwner:contains("-")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm"
|
||||
date_unix:
|
||||
selector: div.torrentOwner abbr
|
||||
optional: true
|
||||
attribute: data-time
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="/torrent_free.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# TSUE 2.2
|
||||
@@ -29,6 +29,51 @@ legacylinks:
|
||||
- https://nyaa.nocensor.art/
|
||||
- https://nyaa.mrunblock.guru/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Anime
|
||||
- {id: 1_0, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 1_1, cat: TV/Anime, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: TV/Anime, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: TV/Anime, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: TV/Anime, desc: "Raw animes"}
|
||||
# Anime as Movies (Radarr uses t=movie):
|
||||
- {id: 1_0, cat: Movies/Other, desc: "Anime"}
|
||||
- {id: 1_1, cat: Movies/Other, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: Movies/Other, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: Movies/Other, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: Movies/Other, desc: "Raw animes"}
|
||||
# Audio
|
||||
- {id: 2_0, cat: Audio, desc: "Audio"}
|
||||
- {id: 2_1, cat: Audio, desc: "Lossless audio"}
|
||||
- {id: 2_2, cat: Audio, desc: "Lossy audio"}
|
||||
# Literature
|
||||
- {id: 3_0, cat: Books, desc: "Literature"}
|
||||
- {id: 3_1, cat: Books, desc: "Literature english translated"}
|
||||
- {id: 3_2, cat: Books, desc: "Literature non-english translated"}
|
||||
- {id: 3_3, cat: Books, desc: "Raw literature"}
|
||||
# Live
|
||||
- {id: 4_0, cat: TV, desc: "Live Action"}
|
||||
- {id: 4_1, cat: TV, desc: "Live Action - English"}
|
||||
- {id: 4_2, cat: TV, desc: "Live Action - Idol/PV"}
|
||||
- {id: 4_3, cat: TV, desc: "Live Action - Non-English"}
|
||||
- {id: 4_4, cat: TV, desc: "Live Action - Raw"}
|
||||
# Pics
|
||||
- {id: 5_0, cat: Other, desc: "Pictures"}
|
||||
- {id: 5_1, cat: Other, desc: "Pictures - Graphics"}
|
||||
- {id: 5_2, cat: Other, desc: "Pictures - Photos"}
|
||||
# Software
|
||||
- {id: 6_0, cat: PC, desc: "Software"}
|
||||
- {id: 6_1, cat: PC/ISO, desc: "Applications"}
|
||||
- {id: 6_2, cat: PC/Games, desc: "Games"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: prefer_magnet_links
|
||||
type: checkbox
|
||||
@@ -38,6 +83,10 @@ settings:
|
||||
type: checkbox
|
||||
label: Improve Sonarr compatibility by trying to add Season information into Release Titles
|
||||
default: false
|
||||
- name: radarr_compatibility
|
||||
type: checkbox
|
||||
label: Improve Radarr compatibility by removing year information from keywords and adding it to Release Titles
|
||||
default: false
|
||||
- name: filter-id
|
||||
type: select
|
||||
label: Filter
|
||||
@@ -91,55 +140,15 @@ settings:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Anime
|
||||
- {id: 1_0, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 1_1, cat: TV/Anime, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: TV/Anime, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: TV/Anime, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: TV/Anime, desc: "Raw animes"}
|
||||
# Anime as Movies (Radarr uses t=movie):
|
||||
- {id: 1_0, cat: Movies/Other, desc: "Anime"}
|
||||
- {id: 1_1, cat: Movies/Other, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: Movies/Other, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: Movies/Other, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: Movies/Other, desc: "Raw animes"}
|
||||
# Audio
|
||||
- {id: 2_0, cat: Audio, desc: "Audio"}
|
||||
- {id: 2_1, cat: Audio, desc: "Lossless audio"}
|
||||
- {id: 2_2, cat: Audio, desc: "Lossy audio"}
|
||||
# Literature
|
||||
- {id: 3_0, cat: Books, desc: "Literature"}
|
||||
- {id: 3_1, cat: Books, desc: "Literature english translated"}
|
||||
- {id: 3_2, cat: Books, desc: "Literature non-english translated"}
|
||||
- {id: 3_3, cat: Books, desc: "Raw literature"}
|
||||
# Live
|
||||
- {id: 4_0, cat: TV, desc: "Live Action"}
|
||||
- {id: 4_1, cat: TV, desc: "Live Action - English"}
|
||||
- {id: 4_2, cat: TV, desc: "Live Action - Idol/PV"}
|
||||
- {id: 4_3, cat: TV, desc: "Live Action - Non-English"}
|
||||
- {id: 4_4, cat: TV, desc: "Live Action - Raw"}
|
||||
# Pics
|
||||
- {id: 5_0, cat: Other, desc: "Pictures"}
|
||||
- {id: 5_1, cat: Other, desc: "Pictures - Graphics"}
|
||||
- {id: 5_2, cat: Other, desc: "Pictures - Photos"}
|
||||
# Software
|
||||
- {id: 6_0, cat: PC, desc: "Software"}
|
||||
- {id: 6_1, cat: PC/ISO, desc: "Applications"}
|
||||
- {id: 6_2, cat: PC/Games, desc: "Games"}
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "?q={{ .Keywords }}&f={{ .Config.filter-id }}&c={{ .Config.cat-id }}&s={{ .Config.sort }}&o={{ .Config.type }}"
|
||||
# strip 0 from start of episode number - #11019
|
||||
- path: "?q={{ if .Keywords }}{{ re_replace .Keywords \" 0(\\d{1})\" \" $1\" }}{{ else }}&p=2{{ end }}&f={{ .Config.filter-id }}&c={{ .Config.cat-id }}&s={{ .Config.sort }}&o={{ .Config.type }}"
|
||||
- path: "?q={{ if .Keywords }}{{ re_replace .Keywords \"\\b0(\\d{1})\\b\" \"$1\" }}{{ else }}&p=2{{ end }}&f={{ .Config.filter-id }}&c={{ .Config.cat-id }}&s={{ .Config.sort }}&o={{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: [" *\\b((?:19|20)\\d{2})\\b", "{{ if .Config.radarr_compatibility }}{{ else }} $1{{ end }}"]
|
||||
|
||||
rows:
|
||||
selector: tr.default,tr.danger,tr.success
|
||||
@@ -167,8 +176,16 @@ search:
|
||||
filters:
|
||||
- name: append
|
||||
args: " Spanish"
|
||||
title_keyword_year:
|
||||
text: "{{ .Query.Keywords }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "\\b((19|20)\\d{2})\\b"
|
||||
title_phase2:
|
||||
text: "{{ or (.Result.title_phase1) (.Result.title_default) }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["^(\\[.+?\\] ?)?(\\[.+?\\] ?)?(.+?)(\\[)", "$1$2$3{{ if .Config.radarr_compatibility }} {{ .Result.title_keyword_year }} $4{{ else }}$4{{ end }}"]
|
||||
title_phase3:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
|
||||
@@ -86,6 +86,7 @@ login:
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("Login failed!"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
- selector: td.embedded:has(h2:contains("Login Locked!"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
@@ -188,4 +188,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-11
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -33,12 +33,13 @@ caps:
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -69,23 +70,11 @@ settings:
|
||||
default: Access your <a href="https://piggo.me/usercp.php?action=tracker" target =_blank>个人中心 网站设定 (UserCP Website settings) </a> and set <b>时间显示类型 (Time Display Type)</b> to <b>发生时间 (Time of Occurence)</b>. <i>Elapsed Time</i> is not supported by this indexer and will see zero results.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
method: cookie
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
path: torrents.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -178,4 +167,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-16
|
||||
# NexusPHP v1.8.0 2023-04-16
|
||||
|
||||
@@ -1,454 +0,0 @@
|
||||
---
|
||||
id: rus-media
|
||||
name: Rus-media
|
||||
description: "Rus-media is a RUSSIAN Public Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ru-RU
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://rus-media.org/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Кино, Видео и ТВ"}
|
||||
- {id: 29, cat: Movies, desc: "Зарубежное кино"}
|
||||
- {id: 52, cat: Movies/SD, desc: "Зарубежное кино (DVDRip, HQRip)"}
|
||||
- {id: 54, cat: Movies/Other, desc: "Новинки зарубежного кино (CAMRip, TS, Screener)"}
|
||||
- {id: 234, cat: Movies/HD, desc: "Зарубежное кино (HD)"}
|
||||
- {id: 53, cat: Movies/DVD, desc: "Зарубежное кино (DVD)"}
|
||||
- {id: 673, cat: Movies/Foreign, desc: "Индийское кино"}
|
||||
- {id: 30, cat: Movies/Foreign, desc: "Наше кино"}
|
||||
- {id: 56, cat: Movies/Foreign, desc: "Наше кино (DVDRip, HQRip)"}
|
||||
- {id: 55, cat: Movies/Foreign, desc: "Новинки нашего кино (CAMRip, TS, Screener)"}
|
||||
- {id: 235, cat: Movies/Foreign, desc: "Наше кино (HD)"}
|
||||
- {id: 57, cat: Movies/Foreign, desc: "Наше кино (DVD)"}
|
||||
- {id: 58, cat: Movies/Foreign, desc: "Советское кино"}
|
||||
- {id: 991, cat: Movies/3D, desc: "3D Фильмы, Видео, TV и Спорт"}
|
||||
- {id: 541, cat: Movies/3D, desc: "3D Фильмы"}
|
||||
- {id: 556, cat: Movies/3D, desc: "3D Мультфильмы"}
|
||||
- {id: 992, cat: Movies/3D, desc: "3D Документальные фильмы"}
|
||||
- {id: 993, cat: Movies/3D, desc: "3D Спорт"}
|
||||
- {id: 994, cat: Movies/3D, desc: "3D Ролики, музыкальное видео, трейлеры к фильмам"}
|
||||
- {id: 33, cat: TV/Other, desc: "Сериалы"}
|
||||
- {id: 31, cat: TV/Other, desc: "Мультфильмы и мультсериалы"}
|
||||
- {id: 201, cat: TV/Anime, desc: "Аниме"}
|
||||
- {id: 32, cat: TV/Other, desc: "TV, развлекательные телепередачи и шоу"}
|
||||
- {id: 344, cat: TV/Sport, desc: "Спорт"}
|
||||
- {id: 542, cat: TV/Documentary, desc: "Документальные фильмы и телепередачи"}
|
||||
- {id: 757, cat: TV/Other, desc: "Обучающие видео и видеоуроки"}
|
||||
- {id: 34, cat: Audio, desc: "Музыка"}
|
||||
- {id: 36, cat: Audio/Other, desc: "Поп музыка"}
|
||||
- {id: 222, cat: Audio/Other, desc: "Зарубежный рок"}
|
||||
- {id: 228, cat: Audio/Foreign, desc: "Русский рок"}
|
||||
- {id: 37, cat: Audio/Other, desc: "Шансон"}
|
||||
- {id: 38, cat: Audio/Other, desc: "Рэп, Хип-Хоп, R'n'B"}
|
||||
- {id: 717, cat: Audio/Other, desc: "Электронная музыка"}
|
||||
- {id: 40, cat: Audio/Other, desc: "Другие жанры"}
|
||||
- {id: 241, cat: Audio/Lossless, desc: "Многоканальная и lossless музыка"}
|
||||
- {id: 41, cat: Audio/Video, desc: "Музыкальное видео"}
|
||||
- {id: 42, cat: Other, desc: "Игры"}
|
||||
- {id: 44, cat: PC/Games, desc: "Игры PC"}
|
||||
- {id: 209, cat: Console, desc: "Игры для консолей"}
|
||||
- {id: 405, cat: PC, desc: "Программы"}
|
||||
- {id: 802, cat: PC, desc: "Операционные системы"}
|
||||
- {id: 1009, cat: PC, desc: "Софт"}
|
||||
- {id: 479, cat: PC, desc: "Разное"}
|
||||
- {id: 511, cat: PC/Mobile-Other, desc: "Всё для мобильных телефонов, КПК и Iphone"}
|
||||
- {id: 983, cat: PC/Mobile-Other, desc: "Мобильное видео"}
|
||||
- {id: 606, cat: Other, desc: "Книги, аудиокниги, журналы"}
|
||||
- {id: 607, cat: Books, desc: "Книги"}
|
||||
- {id: 629, cat: Audio/Audiobook, desc: "Аудиокниги"}
|
||||
- {id: 662, cat: Books/Mags, desc: "Журналы"}
|
||||
- {id: 312, cat: XXX, desc: "Э[ротика] и Pr[o]n"}
|
||||
- {id: 536, cat: XXX, desc: "Pr[o]n"}
|
||||
- {id: 782, cat: XXX/ImageSet, desc: "Фотографии, картинки, обои"}
|
||||
- {id: 363, cat: XXX, desc: "Э[ротика]"}
|
||||
- {id: 182, cat: Other, desc: "Разное"}
|
||||
- {id: 789, cat: Other, desc: "Автомобильный раздел"}
|
||||
- {id: 797, cat: Other, desc: "Караоке Онлайн"}
|
||||
- {id: 137, cat: Other, desc: "Форумы"}
|
||||
- {id: 138, cat: Other, desc: "О нашем сайте"}
|
||||
- {id: 140, cat: Other, desc: "Новости трекера"}
|
||||
- {id: 990, cat: Other, desc: "Объявления"}
|
||||
- {id: 179, cat: Other, desc: "Правила форума и трекера"}
|
||||
- {id: 139, cat: Other, desc: "Инструкции"}
|
||||
- {id: 360, cat: Other, desc: "Лучшие фильмы"}
|
||||
- {id: 172, cat: Other, desc: "Вопросы и ответы"}
|
||||
- {id: 141, cat: Other, desc: "Предложения по улучшению трекера"}
|
||||
- {id: 341, cat: Other, desc: "Стол заказов"}
|
||||
- {id: 573, cat: Other, desc: "Новости"}
|
||||
- {id: 582, cat: Other, desc: "В России"}
|
||||
- {id: 581, cat: Other, desc: "В Мире"}
|
||||
- {id: 574, cat: Other, desc: "Наука | Космос"}
|
||||
- {id: 846, cat: Other, desc: "Видеорепортаж"}
|
||||
- {id: 575, cat: Other, desc: "Фоторепортаж"}
|
||||
- {id: 576, cat: Other, desc: "Софт"}
|
||||
- {id: 578, cat: Other, desc: "Кино"}
|
||||
- {id: 577, cat: Other, desc: "Технологии"}
|
||||
- {id: 580, cat: Other, desc: "Музыка"}
|
||||
- {id: 583, cat: Other, desc: "Здоровье"}
|
||||
- {id: 584, cat: Other, desc: "Авто"}
|
||||
- {id: 585, cat: Other, desc: "Спорт | F1 | Футбол"}
|
||||
- {id: 586, cat: Other, desc: "Интернет"}
|
||||
- {id: 587, cat: Other, desc: "Игры"}
|
||||
- {id: 589, cat: Other, desc: "Интим"}
|
||||
- {id: 590, cat: Other, desc: "Курьёзы"}
|
||||
- {id: 591, cat: Other, desc: "Культура"}
|
||||
- {id: 592, cat: Other, desc: "Знаменитости"}
|
||||
- {id: 593, cat: Other, desc: "Экономика"}
|
||||
- {id: 594, cat: Other, desc: "День в истории"}
|
||||
- {id: 690, cat: Other, desc: "Форум"}
|
||||
- {id: 598, cat: Other, desc: "Игровой форум"}
|
||||
- {id: 557, cat: Other, desc: "Общение"}
|
||||
- {id: 691, cat: Other, desc: "Юмор"}
|
||||
- {id: 816, cat: Other, desc: "Видео-YouTube"}
|
||||
- {id: 595, cat: Other, desc: "Кулинарные рецепты"}
|
||||
- {id: 596, cat: Other, desc: "Салаты"}
|
||||
- {id: 597, cat: Other, desc: "Первые блюда"}
|
||||
- {id: 365, cat: Other, desc: "Обсуждение кинематографа"}
|
||||
- {id: 366, cat: Other, desc: "Скоро на экранах"}
|
||||
- {id: 367, cat: Other, desc: "Трейлеры и доп. материалы"}
|
||||
- {id: 372, cat: Other, desc: "Фильмографии (режиссеры, актеры)"}
|
||||
- {id: 674, cat: Other, desc: "Зарубежные фильмографии"}
|
||||
- {id: 695, cat: Other, desc: "Культура и искусство"}
|
||||
- {id: 694, cat: Other, desc: "Видеолекции"}
|
||||
- {id: 696, cat: Other, desc: "Релакс"}
|
||||
- {id: 697, cat: Other, desc: "Космос"}
|
||||
- {id: 698, cat: Other, desc: "Философия"}
|
||||
- {id: 699, cat: Other, desc: "Разное"}
|
||||
- {id: 700, cat: Other, desc: "Телевизионные передачи"}
|
||||
- {id: 702, cat: Other, desc: "Тайны и загадки"}
|
||||
- {id: 703, cat: Other, desc: "Путешествия и туризм"}
|
||||
- {id: 704, cat: Other, desc: "Криминал"}
|
||||
- {id: 705, cat: Other, desc: "Катастрофы"}
|
||||
- {id: 706, cat: Other, desc: "Биографии. Личности"}
|
||||
- {id: 707, cat: Other, desc: "Техника и вооружение"}
|
||||
- {id: 708, cat: Other, desc: "Вторая мировая война"}
|
||||
- {id: 709, cat: Other, desc: "Мир вокруг нас"}
|
||||
- {id: 710, cat: Other, desc: "Непознанное и сверхъестественное"}
|
||||
- {id: 711, cat: Other, desc: "Рыбалка и охота"}
|
||||
- {id: 712, cat: Other, desc: "Армия. Войны и конфликты"}
|
||||
- {id: 543, cat: Other, desc: "Научно-познавательные"}
|
||||
- {id: 713, cat: Other, desc: "Общественная Безопасность"}
|
||||
- {id: 714, cat: Other, desc: "Исторические"}
|
||||
- {id: 758, cat: Other, desc: "Гимнастика, фитнес, йога"}
|
||||
- {id: 759, cat: Other, desc: "Другое"}
|
||||
- {id: 760, cat: Other, desc: "Музыкальная школа"}
|
||||
- {id: 761, cat: Other, desc: "Ремонт и эксплуатация авто"}
|
||||
- {id: 762, cat: Other, desc: "Сделай сам!"}
|
||||
- {id: 763, cat: Other, desc: "Политика"}
|
||||
- {id: 764, cat: Other, desc: "Бизнес, экономика, финансы"}
|
||||
- {id: 765, cat: Other, desc: "Компьютерная графика"}
|
||||
- {id: 766, cat: Other, desc: "Для детей и родителей"}
|
||||
- {id: 767, cat: Other, desc: "Здоровье"}
|
||||
- {id: 768, cat: Other, desc: "Иностранные языки"}
|
||||
- {id: 769, cat: Other, desc: "Компьютерные видеоуроки"}
|
||||
- {id: 770, cat: Other, desc: "Кулинария"}
|
||||
- {id: 771, cat: Other, desc: "Работа с аудио и видео"}
|
||||
- {id: 772, cat: Other, desc: "Салон красоты"}
|
||||
- {id: 773, cat: Other, desc: "Операционные системы"}
|
||||
- {id: 774, cat: Other, desc: "Офисные программы"}
|
||||
- {id: 775, cat: Other, desc: "Психология"}
|
||||
- {id: 776, cat: Other, desc: "Спортивные уроки"}
|
||||
- {id: 777, cat: Other, desc: "Стройка и ремонт"}
|
||||
- {id: 778, cat: Other, desc: "Учимся танцевать"}
|
||||
- {id: 104, cat: Other, desc: "Классическая"}
|
||||
- {id: 105, cat: Other, desc: "Блюз, Джаз"}
|
||||
- {id: 107, cat: Other, desc: "Детская музыка"}
|
||||
- {id: 136, cat: Other, desc: "Минусовки и караоке"}
|
||||
- {id: 106, cat: Other, desc: "Рэгги"}
|
||||
- {id: 249, cat: Other, desc: "Авторская песня"}
|
||||
- {id: 748, cat: Other, desc: "Саундтреки"}
|
||||
- {id: 111, cat: Other, desc: "Рок музыка"}
|
||||
- {id: 112, cat: Other, desc: "Поп музыка"}
|
||||
- {id: 113, cat: Other, desc: "Шансон"}
|
||||
- {id: 114, cat: Other, desc: "Рэп, Хип-Хоп, R'n'B"}
|
||||
- {id: 115, cat: Other, desc: "Электронная музыка"}
|
||||
- {id: 116, cat: Other, desc: "Другие жанры"}
|
||||
- {id: 435, cat: Other, desc: "Операционные системы от Microsoft"}
|
||||
- {id: 443, cat: Other, desc: "Операционные системы и ПО для Apple Macintosh"}
|
||||
- {id: 487, cat: Other, desc: "Операционные системы и ПО для Linux, Unix и других ОС"}
|
||||
- {id: 510, cat: Other, desc: "Всё для мобильных телефонов, КПК и Iphone"}
|
||||
- {id: 519, cat: Other, desc: "Игры"}
|
||||
- {id: 520, cat: Other, desc: "Приложения"}
|
||||
- {id: 808, cat: Other, desc: "Системы навигации, Карты"}
|
||||
- {id: 809, cat: Other, desc: "Рингтоны"}
|
||||
- {id: 810, cat: Other, desc: "На базе Android"}
|
||||
- {id: 811, cat: Other, desc: "На базе SYMBIAN"}
|
||||
- {id: 812, cat: Other, desc: "Графическое оформление"}
|
||||
- {id: 813, cat: Other, desc: "На базе Windows Mobile"}
|
||||
- {id: 515, cat: Other, desc: "iPhone, iPod, iPod Touch"}
|
||||
- {id: 513, cat: Other, desc: "КПК"}
|
||||
- {id: 534, cat: Other, desc: "Прошивки"}
|
||||
- {id: 814, cat: Other, desc: "Разное"}
|
||||
- {id: 984, cat: Other, desc: "Видео для телефонов и смартфонов"}
|
||||
- {id: 985, cat: Other, desc: "Видео для КПК"}
|
||||
- {id: 986, cat: Other, desc: "Видео для iPhone и iPod"}
|
||||
- {id: 987, cat: Other, desc: "Видео для PSP"}
|
||||
- {id: 988, cat: Other, desc: "Видео для других устройств"}
|
||||
- {id: 608, cat: Other, desc: "Экономика и бизнес"}
|
||||
- {id: 609, cat: Other, desc: "Поэзия"}
|
||||
- {id: 610, cat: Other, desc: "Публицистика"}
|
||||
- {id: 611, cat: Other, desc: "Любовные романы"}
|
||||
- {id: 612, cat: Other, desc: "Библиотеки"}
|
||||
- {id: 613, cat: Other, desc: "Техническая литература"}
|
||||
- {id: 614, cat: Other, desc: "Медицина и здоровье"}
|
||||
- {id: 615, cat: Other, desc: "Кулинария"}
|
||||
- {id: 616, cat: Other, desc: "Литература без перевода"}
|
||||
- {id: 617, cat: Other, desc: "Классика"}
|
||||
- {id: 618, cat: Other, desc: "Обучение и развитие детей"}
|
||||
- {id: 619, cat: Other, desc: "Детектив"}
|
||||
- {id: 620, cat: Other, desc: "Программирование"}
|
||||
- {id: 621, cat: Other, desc: "Философия"}
|
||||
- {id: 622, cat: Other, desc: "Психология"}
|
||||
- {id: 623, cat: Other, desc: "Художественная литература"}
|
||||
- {id: 624, cat: Other, desc: "Хобби"}
|
||||
- {id: 625, cat: Other, desc: "Учебники, справочники, энциклопедии"}
|
||||
- {id: 626, cat: Other, desc: "Компьютерная литература"}
|
||||
- {id: 627, cat: Other, desc: "Фантастика, фентези, мистика"}
|
||||
- {id: 628, cat: Other, desc: "Разное"}
|
||||
- {id: 630, cat: Other, desc: "Поэзия"}
|
||||
- {id: 631, cat: Other, desc: "Аудио учебники"}
|
||||
- {id: 632, cat: Other, desc: "Любовные романы"}
|
||||
- {id: 633, cat: Other, desc: "Современная проза"}
|
||||
- {id: 849, cat: Other, desc: "Мировая проза ХХ века"}
|
||||
- {id: 850, cat: Other, desc: "Отечественная проза ХХ века"}
|
||||
- {id: 634, cat: Other, desc: "Радиоспектакли и аудиофильмы"}
|
||||
- {id: 635, cat: Other, desc: "Изучение иностранных языков"}
|
||||
- {id: 636, cat: Other, desc: "Бизнес-литература"}
|
||||
- {id: 637, cat: Other, desc: "Детективы и боевики"}
|
||||
- {id: 642, cat: Other, desc: "Фантастика и фэнтези"}
|
||||
- {id: 851, cat: Other, desc: "Путешествия и приключения"}
|
||||
- {id: 638, cat: Other, desc: "Детская аудиокнига"}
|
||||
- {id: 639, cat: Other, desc: "Историческая литература"}
|
||||
- {id: 640, cat: Other, desc: "Классика"}
|
||||
- {id: 641, cat: Other, desc: "Психология и философия"}
|
||||
- {id: 848, cat: Other, desc: "Научно-популярная аудиокнига"}
|
||||
- {id: 645, cat: Other, desc: "Юмор"}
|
||||
- {id: 646, cat: Other, desc: "Разное"}
|
||||
- {id: 663, cat: Other, desc: "Digital Photo"}
|
||||
- {id: 664, cat: Other, desc: "Мужские журналы"}
|
||||
- {id: 665, cat: Other, desc: "Мир фантастики"}
|
||||
- {id: 666, cat: Other, desc: "Наука, техника, авто"}
|
||||
- {id: 667, cat: Other, desc: "Компьютерные журналы"}
|
||||
- {id: 668, cat: Other, desc: "Строительство, дизайн и ремонт"}
|
||||
- {id: 669, cat: Other, desc: "Женские журналы (кулинария, мода, шитьё)"}
|
||||
- {id: 670, cat: Other, desc: "Комиксы"}
|
||||
- {id: 671, cat: Other, desc: "Игромания"}
|
||||
- {id: 319, cat: Other, desc: "Русский pr[o]n"}
|
||||
- {id: 331, cat: Other, desc: "Русские pr[o]n ролики"}
|
||||
- {id: 329, cat: Other, desc: "Pr[o]n фильмы"}
|
||||
- {id: 330, cat: Other, desc: "Паки русских pr[o]n роликов"}
|
||||
- {id: 320, cat: Other, desc: "Зарубежный Pr[o]n"}
|
||||
- {id: 334, cat: Other, desc: "Зарубежные pr[o]n ролики"}
|
||||
- {id: 317, cat: Other, desc: "Зарубежные pr[o]n фильмы"}
|
||||
- {id: 323, cat: Other, desc: "С сюжетом"}
|
||||
- {id: 325, cat: Other, desc: "Без сюжета"}
|
||||
- {id: 322, cat: Other, desc: "Классические"}
|
||||
- {id: 324, cat: Other, desc: "Гонзо-фильмы"}
|
||||
- {id: 326, cat: Other, desc: "Лесбо-фильмы"}
|
||||
- {id: 327, cat: Other, desc: "Этнические фильмы"}
|
||||
- {id: 328, cat: Other, desc: "Японские фильмы"}
|
||||
- {id: 321, cat: Other, desc: "Паки полных фильмов"}
|
||||
- {id: 399, cat: Other, desc: "Зарубежные фильмы в высоком качестве (HD)"}
|
||||
- {id: 336, cat: Other, desc: "Зарубежные сайтрипы"}
|
||||
- {id: 338, cat: Other, desc: "Паки зарубежных pr[o]n роликов по актрисам"}
|
||||
- {id: 783, cat: Other, desc: "Эротические фильмы и сериалы"}
|
||||
- {id: 784, cat: Other, desc: "Мультфильмы ( Эротика)"}
|
||||
- {id: 785, cat: Other, desc: "Документальное и обучающее видео"}
|
||||
- {id: 787, cat: Other, desc: "Литература ( Эротика)"}
|
||||
- {id: 788, cat: Other, desc: "Разное ( Эротика)"}
|
||||
- {id: 790, cat: Other, desc: "Документация, мануалы"}
|
||||
- {id: 791, cat: Other, desc: "Фильмы и телепередачи по авто/мото"}
|
||||
- {id: 792, cat: Other, desc: "Автомобильный Софт"}
|
||||
- {id: 793, cat: Other, desc: "Раздел авто (разное)"}
|
||||
- {id: 794, cat: Other, desc: "Разное (документы)"}
|
||||
- {id: 795, cat: Other, desc: "Разное (фильмы)"}
|
||||
- {id: 796, cat: Other, desc: "Разное (программы)"}
|
||||
- {id: 798, cat: Other, desc: "Русский РОК (Караоке Онлайн)"}
|
||||
- {id: 799, cat: Other, desc: "Русский ПОП (Караоке Онлайн)"}
|
||||
- {id: 800, cat: Other, desc: "Русский Шансон (Караоке Онлайн)"}
|
||||
- {id: 184, cat: Other, desc: "Тестовый форум"}
|
||||
- {id: 183, cat: Other, desc: "Корзина"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: striprussian
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: addrussian
|
||||
type: checkbox
|
||||
label: Add RUSSIAN to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "t"
|
||||
options:
|
||||
t: created
|
||||
ts: seeders
|
||||
sz: size
|
||||
i: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: d
|
||||
options:
|
||||
d: desc
|
||||
a: asc
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="./download/file.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# http://rus-media.org/search.php?tracker_search=torrent&sr=topics&keywords=2020&fid[]=54
|
||||
paths:
|
||||
- path: search.php
|
||||
inputs:
|
||||
sr: topics
|
||||
sf: titleonly
|
||||
fp: 1
|
||||
tracker_search: torrent
|
||||
keywords: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
sk: "{{ .Config.sort }}"
|
||||
sd: "{{ .Config.type }}"
|
||||
$raw: "{{ range .Categories }}&fid[]={{.}}{{end}}"
|
||||
|
||||
rows:
|
||||
selector: table.tablebg tr.col_line
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="./viewtopic.php?f="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: f
|
||||
title:
|
||||
selector: a.topictitle
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Кураж-Бамбей", "kurazh"]
|
||||
- name: replace
|
||||
args: ["Кубик в Кубе", "Kubik"]
|
||||
- name: replace
|
||||
args: ["Кравец", "Kravec"]
|
||||
- name: replace
|
||||
args: ["Пифагор", "Pifagor"]
|
||||
- name: replace
|
||||
args: ["Невафильм", "Nevafilm"]
|
||||
- name: replace
|
||||
args: ["Лицензия", "Lic"]
|
||||
- name: replace
|
||||
args: ["селезень", "selezen"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["[\\:\\-\\/\\|\\[\\]]", " "]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussian }} - RUSSIAN{{ else }}{{ end }}"
|
||||
- name: replace
|
||||
args: [" Rip", "Rip"]
|
||||
- name: replace
|
||||
args: ["WEB DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
details:
|
||||
selector: a.topictitle
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.topictitle
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-of-type(5) p:not(:empty)
|
||||
optional: true
|
||||
default: 0 B
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["ТБ", "TB"]
|
||||
- name: replace
|
||||
args: ["ГБ", "GB"]
|
||||
- name: replace
|
||||
args: ["МБ", "MB"]
|
||||
- name: replace
|
||||
args: ["КБ", "KB"]
|
||||
seeders:
|
||||
selector: span.seed
|
||||
optional: true
|
||||
default: 0
|
||||
leechers:
|
||||
selector: span.leech
|
||||
optional: true
|
||||
default: 0
|
||||
date_minutes:
|
||||
# 55 минут назад
|
||||
selector: td:nth-of-type(6) p:nth-of-type(1):contains("минут")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["минут назад", "minutes ago"]
|
||||
- name: timeago
|
||||
date_day:
|
||||
# Сегодня, 03:04
|
||||
# Вчера, 22:47
|
||||
selector: td:nth-of-type(6) p:nth-of-type(1):contains("Сегодня"), td:nth-of-type(6) p:contains("Вчера")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Сегодня", "Today"]
|
||||
- name: replace
|
||||
args: ["Вчера", "Yesterday"]
|
||||
date_year:
|
||||
# 12 янв 2019, 12:47
|
||||
selector: td:nth-of-type(6) p:nth-of-type(1):not(:contains("Сегодня")):not(:contains("Вчера")):not(:contains("минут"))
|
||||
optional: true
|
||||
filters:
|
||||
# replace month abbreviations
|
||||
- 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: replace
|
||||
args: [",", ""]
|
||||
- name: append
|
||||
args: " +03:00" # MSK
|
||||
- name: dateparse
|
||||
args: "dd MMM yyyy HH:mm zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day .Result.date_minutes }}{{ or .Result.date_year .Result.date_day .Result.date_minutes }}{{ else }}now{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# phpBB
|
||||
@@ -16,6 +16,7 @@ caps:
|
||||
- {id: 1698, cat: Movies/HD, desc: "Кинематограф Зарубежные фильмы в 720p (2023) "}
|
||||
- {id: 1699, cat: Movies/HD, desc: "Кинематограф Российские фильмы в 720p (2023)"}
|
||||
- {id: 1701, cat: Movies/HD, desc: "Кинематограф Зарубежные фильмы в 1080p (2023)"}
|
||||
- {id: 1702, cat: Movies/HD, desc: "Кинематограф Российские фильмы в 1080р (2023)"}
|
||||
- {id: 1677, cat: Movies, desc: "Кинематограф Зарубежные фильмы (2022)"}
|
||||
- {id: 1676, cat: Movies, desc: "Кинематограф Российские фильмы (2022)"}
|
||||
- {id: 1675, cat: Movies/HD, desc: "Кинематограф Зарубежные фильмы в 720p (2022)"}
|
||||
|
||||
@@ -93,6 +93,14 @@
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"limitsDefault": {
|
||||
"type": "integer",
|
||||
"minimum": 1
|
||||
},
|
||||
"limitsMax": {
|
||||
"type": "integer",
|
||||
"minimum": 1
|
||||
},
|
||||
"categories": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
@@ -482,6 +490,20 @@
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"pageSize": {
|
||||
"type": "integer",
|
||||
"minimum": 1
|
||||
},
|
||||
"pageable": {
|
||||
"oneOf": [
|
||||
{
|
||||
"type": "boolean"
|
||||
},
|
||||
{
|
||||
"type": "string"
|
||||
}
|
||||
]
|
||||
},
|
||||
"path": {
|
||||
"type": "string"
|
||||
},
|
||||
|
||||
@@ -91,15 +91,15 @@ search:
|
||||
category:
|
||||
selector: div.torrent-category
|
||||
case:
|
||||
img[src$="movies.png"]: 401
|
||||
img[src$="tvseries.png"]: 402
|
||||
img[src$="tvshows.png"]: 403
|
||||
img[src$="doc.png"]: 404
|
||||
img[src$="anime.png"]: 405
|
||||
img[src$="mv.png"]: 406
|
||||
img[src$="sports.png"]: 407
|
||||
img[src$="hqaudio.png"]: 408
|
||||
img[src$="misc.png"]: 409
|
||||
img[src$="movies64.png"]: 401
|
||||
img[src$="tvseries64.png"]: 402
|
||||
img[src$="tvshows64.png"]: 403
|
||||
img[src$="doc64.png"]: 404
|
||||
img[src$="anime64.png"]: 405
|
||||
img[src$="mv64.png"]: 406
|
||||
img[src$="sports64.png"]: 407
|
||||
img[src$="hqaudio64.png"]: 408
|
||||
img[src$="misc64.png"]: 409
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
@@ -113,6 +113,12 @@ search:
|
||||
args: id
|
||||
download:
|
||||
text: "download.php?id={{ .Result._id }}"
|
||||
imdbid:
|
||||
selector: shark-tag-group[onClick*="imdb.com/title/tt"]
|
||||
attribute: onClick
|
||||
doubanid:
|
||||
selector: shark-tag-group[onClick*="movie.douban.com/subject/"]
|
||||
attribute: onClick
|
||||
description:
|
||||
selector: div.torrent-subtitle
|
||||
date:
|
||||
@@ -144,4 +150,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# NexusPHP v1.8.0 2023-02-08
|
||||
# NexusPHP Standard v1.5 Beta 4 2010-09-19
|
||||
|
||||
@@ -8,6 +8,7 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://solidtorrents.to/
|
||||
- https://solidtorrents.nocensor.click/
|
||||
legacylinks:
|
||||
- https://solidtorrents.net/
|
||||
|
||||
|
||||
@@ -192,4 +192,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-02-21
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -103,8 +103,7 @@ settings:
|
||||
|
||||
login:
|
||||
path: index.php?page=login
|
||||
method: form
|
||||
form: "#bodyarea form"
|
||||
method: post
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
|
||||
@@ -10,11 +10,11 @@ requestDelay: 2
|
||||
links:
|
||||
- https://www.torlock2.com/
|
||||
- https://www.torlock.com/
|
||||
- https://torlock.unblockit.click/
|
||||
- https://torlock.unblockit.asia/
|
||||
- https://torlock.mrunblock.life/
|
||||
- https://torlock.nocensor.click/
|
||||
legacylinks:
|
||||
- https://torlock.com/
|
||||
- https://torlock.unblockit.how/
|
||||
- https://torlock.unblockit.cam/
|
||||
- https://torlock.nocensor.biz/
|
||||
- https://torlock.unblockit.day/
|
||||
@@ -35,6 +35,7 @@ legacylinks:
|
||||
- https://torlock.unblockit.bio/
|
||||
- https://torlock.unblockit.boo/
|
||||
- https://torlock.mrunblock.guru/
|
||||
- https://torlock.unblockit.click/
|
||||
|
||||
caps:
|
||||
# dont forget to update the search fields category case block
|
||||
|
||||
@@ -38,7 +38,7 @@ caps:
|
||||
- {id: 153, cat: Audio/Lossless, desc: "Audio FLAC"}
|
||||
- {id: 52, cat: Audio/MP3, desc: "Audio Pack mp3"}
|
||||
- {id: 154, cat: Audio/Lossless, desc: "Audio Pack FLAC"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Video"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Videos"}
|
||||
- {id: 162, cat: Audio/Audiobook, desc: "Audio ABooks"}
|
||||
# Software
|
||||
- {id: 12, cat: PC/0day, desc: "Software Windows"}
|
||||
|
||||
@@ -41,6 +41,7 @@ caps:
|
||||
- {id: 190, cat: Movies, desc: "Movies/Netflix Film"}
|
||||
- {id: 195, cat: TV, desc: "TV/Exxen"}
|
||||
- {id: 199, cat: TV, desc: "TV/GAİN"}
|
||||
- {id: 201, cat: TV, desc: "TV/Tabii"}
|
||||
- {id: 171, cat: Audio, desc: "Music"}
|
||||
- {id: 172, cat: Audio, desc: "Music/Turkish"}
|
||||
- {id: 173, cat: Audio, desc: "Music/Foreign"}
|
||||
@@ -206,5 +207,5 @@ search:
|
||||
"img[title=\"Upload Multiplier: 2\"]": 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.5
|
||||
text: 0.7
|
||||
# TSUE 2.2
|
||||
|
||||
@@ -8,12 +8,12 @@ encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.torrentdownload.info/
|
||||
- https://torrentdownload.unblockit.click/
|
||||
- https://torrentdownload.unblockit.asia/
|
||||
- https://torrentdownload.mrunblock.life/
|
||||
- https://torrentdownload.nocensor.click/
|
||||
legacylinks:
|
||||
- https://torrentdownload.nocensor.space/
|
||||
- https://torrentdownload.nocensor.work/
|
||||
- https://torrentdownload.unblockit.how/
|
||||
- https://torrentdownload.unblockit.cam/
|
||||
- https://torrentdownload.nocensor.biz/
|
||||
- https://torrentdownload.unblockit.day/
|
||||
@@ -33,6 +33,7 @@ legacylinks:
|
||||
- https://torrentdownload.unblockit.bio/
|
||||
- https://torrentdownload.unblockit.boo/
|
||||
- https://torrentdownload.mrunblock.guru/
|
||||
- https://torrentdownload.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
129
src/Jackett.Common/Definitions/torrentdownloads.yml
Normal file
129
src/Jackett.Common/Definitions/torrentdownloads.yml
Normal file
@@ -0,0 +1,129 @@
|
||||
---
|
||||
id: torrentdownloads
|
||||
name: Torrent Downloads
|
||||
description: "Torrent Downloads (TD) is a Public torrent site for all kinds of content"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.torrentdownloads.pro/
|
||||
- https://torrentdownloads.unblockit.asia/
|
||||
- https://torrentdownloads.mrunblock.life/
|
||||
- https://torrentdownloads.unblockninja.com/
|
||||
- https://torrentdownloads.nocensor.click/
|
||||
legacylinks:
|
||||
- https://www.torrentdownloads.me/
|
||||
- https://torrentdownloads.nocensor.work/
|
||||
- https://torrentdownloads.unblockit.cam/
|
||||
- https://torrentdownloads.nocensor.biz/
|
||||
- https://torrentdownloads.unblockit.day/
|
||||
- https://torrentdownloads.unblockit.llc/
|
||||
- https://torrentdownloads.unblockit.blue/
|
||||
- https://torrentdownloads.unblockit.name/
|
||||
- https://torrentdownloads.nocensor.sbs/
|
||||
- https://torrentdownloads.unblockit.ist/
|
||||
- https://torrentdownloads.unblockit.bet/
|
||||
- https://torrentdownloads.unblockit.cat/
|
||||
- https://torrentdownloads.unblockit.nz/
|
||||
- https://torrentdownloads.nocensor.world/
|
||||
- https://torrentdownloads.unblockit.page/
|
||||
- https://torrentdownloads.unblockit.pet/
|
||||
- https://torrentdownloads.nocensor.lol/
|
||||
- https://torrentdownloads.unblockit.ink/
|
||||
- https://torrentdownloads.unblockit.bio/
|
||||
- https://torrentdownloads.unblockit.boo/
|
||||
- https://www.torrentdownloads.info/
|
||||
- https://torrentdownloads.mrunblock.guru/
|
||||
- https://torrentdownloads.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 8, cat: TV, desc: "TV Shows"}
|
||||
- {id: 4, cat: Movies, desc: "Movies"}
|
||||
- {id: 5, cat: Audio, desc: "Music"}
|
||||
- {id: 3, cat: PC/Games, desc: "Games"}
|
||||
- {id: 7, cat: PC, desc: "Software"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 2, cat: Books, desc: "Books"}
|
||||
- {id: 9, cat: Other, desc: "Other"}
|
||||
- {id: 0, cat: Other, desc: "Other"}
|
||||
- {id: 6, cat: Other, desc: "Pics"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: downloadlink
|
||||
type: select
|
||||
label: Download link
|
||||
default: "magnet:"
|
||||
options:
|
||||
"http://itorrents.org/": "iTorrents.org"
|
||||
"magnet:": "magnet"
|
||||
- name: downloadlink2
|
||||
type: select
|
||||
label: Download link (fallback)
|
||||
default: "http://itorrents.org/"
|
||||
options:
|
||||
"http://itorrents.org/": "iTorrents.org"
|
||||
"magnet:": "magnet"
|
||||
- name: info_download
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: As the .torrent download links on this site are known to fail from time to time, you can optionally set as a fallback an automatic alternate link.
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
- selector: a[href^="{{ .Config.downloadlink2 }}"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}/search/{{ else }}/today/{{ end }}"
|
||||
followredirect: true
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}s_cat={{.}}&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
|
||||
rows:
|
||||
selector: div.inner_container > div:has(p:has(a[href^="/torrent/"])):not(:has(span.__cf_email__))
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: img[src^="/templates/new/images/icons/menu_icon"]
|
||||
attribute: src
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
title:
|
||||
selector: p:nth-child(1) > a
|
||||
attribute: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["View torrent info : ", ""]
|
||||
details:
|
||||
selector: p:nth-child(1) > a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: p:nth-child(1) > a[href^="/torrent/"]
|
||||
attribute: href
|
||||
date:
|
||||
text: now
|
||||
size:
|
||||
selector: span:nth-child(5)
|
||||
seeders:
|
||||
selector: span:nth-child(4)
|
||||
leechers:
|
||||
selector: span:nth-child(3)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -9,12 +9,12 @@ followredirect: true
|
||||
links:
|
||||
- https://www.torrentfunk.com/
|
||||
- https://www.torrentfunk2.com/
|
||||
- https://torrentfunk.unblockit.click/
|
||||
- https://torrentfunk.unblockit.asia/
|
||||
- https://torrentfunk.mrunblock.life/
|
||||
- https://torrentfunk.nocensor.click/
|
||||
legacylinks:
|
||||
- https://torrentfunk.nocensor.space/
|
||||
- https://torrentfunk.nocensor.work/
|
||||
- https://torrentfunk.unblockit.how/
|
||||
- https://torrentfunk.unblockit.cam/
|
||||
- https://torrentfunk.nocensor.biz/
|
||||
- https://torrentfunk.unblockit.day/
|
||||
@@ -34,6 +34,7 @@ legacylinks:
|
||||
- https://torrentfunk.unblockit.bio/
|
||||
- https://torrentfunk.unblockit.boo/
|
||||
- https://torrentfunk.mrunblock.guru/
|
||||
- https://torrentfunk.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -10,7 +10,7 @@ links:
|
||||
- https://torrentgalaxy.to/
|
||||
- https://torrentgalaxy.mx/
|
||||
- https://tgx.rs/
|
||||
- https://torrentgalaxy.unblockit.click/
|
||||
- https://torrentgalaxy.unblockit.asia/
|
||||
- https://torrentgalaxy.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://torrentgalaxy.org/ # redirects to *.to
|
||||
@@ -18,7 +18,6 @@ legacylinks:
|
||||
- https://tgx.unblocked.monster/
|
||||
- https://torrentgalaxy.nocensor.space/
|
||||
- https://torrentgalaxy.nocensor.work/
|
||||
- https://torrentgalaxy.unblockit.how/
|
||||
- https://torrentgalaxy.unblockit.cam/
|
||||
- https://torrentgalaxy.nocensor.biz/
|
||||
- https://torrentgalaxy.unblockit.day/
|
||||
@@ -36,6 +35,7 @@ legacylinks:
|
||||
- https://torrentgalaxy.unblockit.ink/
|
||||
- https://torrentgalaxy.unblockit.bio/
|
||||
- https://torrentgalaxy.su/
|
||||
- https://torrentgalaxy.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -84,13 +84,13 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
- name: alt2fatoken
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
label: Alt 2FA Token
|
||||
- name: info_alt2fatoken
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the TorrentLeech Web Site. Otherwise just leave it empty."
|
||||
label: "About Alt 2FA Token"
|
||||
default: "(Site Profile => Alt 2FA Token) Only fill in the <b>Alt 2FA Token</b> if you have enabled <b>2FA</b> on the TorrentLeech Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -126,7 +126,7 @@ login:
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
otpkey: "{{ .Config.2facode }}"
|
||||
alt2FAToken: "{{ .Config.alt2fatoken }}"
|
||||
error:
|
||||
- selector: p.text-danger
|
||||
- selector: .login-container h2:contains("One Time Password")
|
||||
|
||||
@@ -7,9 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentqq255.com/
|
||||
- https://torrentqq256.com/
|
||||
legacylinks:
|
||||
- https://torrentqq240.com/
|
||||
- https://torrentqq241.com/
|
||||
- https://torrentqq242.com/
|
||||
- https://torrentqq243.com/
|
||||
@@ -25,6 +24,7 @@ legacylinks:
|
||||
- https://torrentqq252.com/
|
||||
- https://torrentqq253.com/
|
||||
- https://torrentqq254.com/
|
||||
- https://torrentqq255.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentsir103.com/
|
||||
- https://torrentsir105.com/
|
||||
legacylinks:
|
||||
- https://torrentsir90.com/
|
||||
- http://torrentsir91.com/
|
||||
@@ -29,6 +29,10 @@ legacylinks:
|
||||
- http://torrentsir102.com/
|
||||
- https://torrentsir102.com/
|
||||
- http://torrentsir103.com/
|
||||
- https://torrentsir103.com/
|
||||
- http://torrentsir104.com/
|
||||
- https://torrentsir104.com/
|
||||
- http://torrentsir105.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -126,7 +126,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[ ]at|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[ ]at|[//\xa0\\s,]+", " "]
|
||||
date_year:
|
||||
# February 09, 2019, 06:35:08 AM
|
||||
selector: td:nth-child(5):not(:contains("day"))
|
||||
@@ -134,7 +134,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[,]|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[//\xa0\\s,]+", " "]
|
||||
- name: dateparse
|
||||
args: "MMMM dd yyyy hh:mm:ss tt"
|
||||
date:
|
||||
|
||||
@@ -43,13 +43,14 @@ caps:
|
||||
- {id: 83, cat: TV, desc: "Dijital Platform"}
|
||||
- {id: 86, cat: TV, desc: "Dijital Platform AMAZON"}
|
||||
- {id: 102, cat: TV, desc: "Dijital Platform ATVP"}
|
||||
- {id: 85, cat: TV, desc: "Dijital Platform BEiN"}
|
||||
- {id: 85, cat: TV, desc: "Dijital Platform BEiN/TOD"}
|
||||
- {id: 84, cat: TV, desc: "Dijital Platform BluTV"}
|
||||
- {id: 98, cat: TV, desc: "Dijital Platform DSNP"}
|
||||
- {id: 77, cat: TV, desc: "Dijital Platform EXXEN"}
|
||||
- {id: 87, cat: TV, desc: "Dijital Platform GAIN"}
|
||||
- {id: 88, cat: TV, desc: "Dijital Platform TV+"}
|
||||
- {id: 101, cat: TV, desc: "Dijital Platform MUBi"}
|
||||
- {id: 103, cat: TV, desc: "Dijital Platform TABii"}
|
||||
- {id: 89, cat: TV, desc: "Dijital Platform Diger"}
|
||||
- {id: 31, cat: TV, desc: "Dizi"}
|
||||
- {id: 32, cat: TV, desc: "Dizi Yerli"}
|
||||
|
||||
@@ -181,4 +181,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.1 2023-04-21
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -25,19 +25,13 @@ caps:
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the UltraHD Web Site. Otherwise just leave it empty."
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -64,23 +58,11 @@ settings:
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
method: cookie
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
path: torrents.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
||||
@@ -9,6 +9,7 @@ links:
|
||||
- https://yourbittorrent.com/
|
||||
- https://yourbittorrent2.com/
|
||||
- https://yourbittorrent.mrunblock.life/
|
||||
- https://yourbittorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://yourbittorrent.host/
|
||||
- https://yourbittorrent.nocensor.space/
|
||||
|
||||
@@ -9,7 +9,7 @@ requestDelay: 2.5 # 2.5 requests per second (2 causes problems)
|
||||
links:
|
||||
# dont forget to update the details, download and poster replace args
|
||||
- https://yts.mx/
|
||||
- https://yts.unblockit.click/
|
||||
- https://yts.unblockit.asia/
|
||||
- https://yts.unblockninja.com/
|
||||
- https://yts.mrunblock.life/
|
||||
- https://yts.nocensor.click/
|
||||
@@ -37,6 +37,7 @@ legacylinks:
|
||||
- https://yts.unblockit.bio/
|
||||
- https://yts.unblockit.boo/
|
||||
- https://yts.mrunblock.guru/
|
||||
- https://yts.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -186,4 +186,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.1 2023-04-21
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
||||
@@ -134,7 +134,9 @@ namespace Jackett.Common.Indexers
|
||||
};
|
||||
|
||||
if (configData.DownloadableOnly.Value)
|
||||
{
|
||||
queryCollection.Set("dlable", "1");
|
||||
}
|
||||
|
||||
searchUrl += "?" + queryCollection.GetQueryString();
|
||||
|
||||
@@ -153,7 +155,7 @@ namespace Jackett.Common.Indexers
|
||||
var dom = parser.ParseDocument(results);
|
||||
|
||||
var rows = dom.QuerySelectorAll("table tr");
|
||||
foreach (var row in rows.Skip(1))
|
||||
foreach (var (row, index) in rows.Skip(1).Select((v, i) => (v, i)))
|
||||
{
|
||||
var downloadVolumeFactor = row.QuerySelector("img[alt=\"Gold Torrent\"]") != null ? 0 : row.QuerySelector("img[alt=\"Silver Torrent\"]") != null ? 0.5 : 1;
|
||||
|
||||
@@ -185,6 +187,13 @@ namespace Jackett.Common.Indexers
|
||||
var categoryLink = row.QuerySelector("td:nth-of-type(1) a")?.GetAttribute("href") ?? string.Empty;
|
||||
var categoryId = ParseUtil.GetArgumentFromQueryString(categoryLink, "cat");
|
||||
|
||||
var publishedDate = DateTime.ParseExact(row.QuerySelector("td:nth-of-type(5)").TextContent, "dd MMM yy", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal);
|
||||
|
||||
if (publishedDate.Date == DateTime.Today)
|
||||
{
|
||||
publishedDate = publishedDate.Date + DateTime.Now.TimeOfDay - TimeSpan.FromMinutes(index);
|
||||
}
|
||||
|
||||
var release = new ReleaseInfo
|
||||
{
|
||||
Guid = new Uri(infoUrl),
|
||||
@@ -192,7 +201,7 @@ namespace Jackett.Common.Indexers
|
||||
Link = new Uri(downloadUrl),
|
||||
Title = title,
|
||||
Category = MapTrackerCatToNewznab(categoryId),
|
||||
PublishDate = DateTime.ParseExact(row.QuerySelector("td:nth-of-type(5)").TextContent, "dd MMM yy", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal),
|
||||
PublishDate = publishedDate,
|
||||
Size = ParseUtil.GetBytes(row.QuerySelector("td:nth-of-type(6)").TextContent.Trim()),
|
||||
Seeders = seeders,
|
||||
Peers = ParseUtil.CoerceInt(connections[1]) + seeders,
|
||||
|
||||
@@ -35,6 +35,7 @@ namespace Jackett.Common.Indexers
|
||||
public virtual string Type { get; protected set; }
|
||||
|
||||
public virtual bool SupportsPagination => false;
|
||||
public virtual int PageSize => 0;
|
||||
|
||||
public virtual bool IsConfigured { get; protected set; }
|
||||
public virtual string[] Tags { get; protected set; }
|
||||
|
||||
@@ -29,11 +29,14 @@ namespace Jackett.Common.Indexers
|
||||
|
||||
public override TorznabCapabilities TorznabCaps => SetCapabilities();
|
||||
|
||||
private string LoginUrl => SiteLink + "login.php";
|
||||
private string BrowseUrl => SiteLink + "torrents.php";
|
||||
private static readonly Regex _EpisodeRegex = new Regex(@"(?:[SsEe]\d{2,4}){1,2}");
|
||||
private static readonly Regex _EpisodeRegex = new Regex(@"(?:\[?[SsEe]\d{2,4}){1,2}\]?");
|
||||
|
||||
private new ConfigurationDataBasicLogin configData => (ConfigurationDataBasicLogin)base.configData;
|
||||
private new ConfigurationDataCookie configData
|
||||
{
|
||||
get => (ConfigurationDataCookie)base.configData;
|
||||
set => base.configData = value;
|
||||
}
|
||||
|
||||
public BrasilTracker(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
@@ -42,7 +45,7 @@ namespace Jackett.Common.Indexers
|
||||
logger: l,
|
||||
p: ps,
|
||||
cacheService: cs,
|
||||
configData: new ConfigurationDataBasicLogin("BrasilTracker does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).</br>For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile."))
|
||||
configData: new ConfigurationDataCookie())
|
||||
{
|
||||
configData.AddDynamic("freeleech", new BoolConfigurationItem("Search freeleech only") { Value = false });
|
||||
}
|
||||
@@ -69,7 +72,21 @@ namespace Jackett.Common.Indexers
|
||||
}
|
||||
};
|
||||
|
||||
caps.Categories.AddCategoryMapping(1, TorznabCatType.Other, "Other");
|
||||
caps.Categories.AddCategoryMapping(16, TorznabCatType.AudioAudiobook, "Audiobooks");
|
||||
caps.Categories.AddCategoryMapping(6, TorznabCatType.TVAnime, "Animes");
|
||||
caps.Categories.AddCategoryMapping(11, TorznabCatType.PC0day, "Aplicativos");
|
||||
caps.Categories.AddCategoryMapping(15, TorznabCatType.Other, "Cursos");
|
||||
caps.Categories.AddCategoryMapping(8, TorznabCatType.TVDocumentary, "Documentários");
|
||||
caps.Categories.AddCategoryMapping(14, TorznabCatType.TVSport, "Esportes");
|
||||
caps.Categories.AddCategoryMapping(3, TorznabCatType.XXX, "Filmes XXX");
|
||||
caps.Categories.AddCategoryMapping(1, TorznabCatType.Movies, "Filmes");
|
||||
caps.Categories.AddCategoryMapping(12, TorznabCatType.BooksComics, "Histórias em Quadrinhos");
|
||||
caps.Categories.AddCategoryMapping(9, TorznabCatType.PCGames, "Jogos");
|
||||
caps.Categories.AddCategoryMapping(13, TorznabCatType.BooksEBook, "Livros");
|
||||
caps.Categories.AddCategoryMapping(10, TorznabCatType.BooksMags, "Revistas");
|
||||
caps.Categories.AddCategoryMapping(2, TorznabCatType.TV, "Séries");
|
||||
caps.Categories.AddCategoryMapping(5, TorznabCatType.AudioVideo, "Show");
|
||||
caps.Categories.AddCategoryMapping(7, TorznabCatType.TV, "Televisão");
|
||||
|
||||
return caps;
|
||||
}
|
||||
@@ -77,23 +94,24 @@ namespace Jackett.Common.Indexers
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
{
|
||||
LoadValuesFromJson(configJson);
|
||||
var pairs = new Dictionary<string, string>
|
||||
CookieHeader = configData.Cookie.Value;
|
||||
try
|
||||
{
|
||||
{ "username", configData.Username.Value },
|
||||
{ "password", configData.Password.Value },
|
||||
{ "keeplogged", "1" },
|
||||
{ "login", "Log in" }
|
||||
};
|
||||
var results = await PerformQuery(new TorznabQuery());
|
||||
if (results.Count() == 0)
|
||||
{
|
||||
throw new Exception("Found 0 results in the tracker");
|
||||
}
|
||||
|
||||
var result = await RequestLoginAndFollowRedirect(LoginUrl, pairs, null, true, null, LoginUrl, true);
|
||||
await ConfigureIfOK(result.Cookies, result.ContentString?.Contains("logout.php") == true, () =>
|
||||
IsConfigured = true;
|
||||
SaveConfig();
|
||||
return IndexerConfigurationStatus.Completed;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
var parser = new HtmlParser();
|
||||
var dom = parser.ParseDocument(result.ContentString);
|
||||
var errorMessage = dom.QuerySelector("form#loginform").TextContent.Trim();
|
||||
throw new ExceptionWithConfigData(errorMessage, configData);
|
||||
});
|
||||
return IndexerConfigurationStatus.RequiresTesting;
|
||||
IsConfigured = false;
|
||||
throw new Exception("Your cookie did not work: " + e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
private static string InternationalTitle(string title)
|
||||
@@ -147,6 +165,9 @@ namespace Jackett.Common.Indexers
|
||||
{"action", "basic"},
|
||||
{"searchsubmit", "1"}
|
||||
};
|
||||
foreach (var cat in MapTorznabCapsToTrackers(query))
|
||||
queryCollection.Add("filter_cat[" + cat + "]", "1");
|
||||
|
||||
if (query.IsGenreQuery)
|
||||
queryCollection.Add("taglist", query.Genre);
|
||||
|
||||
@@ -164,6 +185,7 @@ namespace Jackett.Common.Indexers
|
||||
string groupTitle = null;
|
||||
string groupYearStr = null;
|
||||
Uri groupPoster = null;
|
||||
string category = null;
|
||||
string imdbLink = null;
|
||||
string tmdbLink = null;
|
||||
string genres = null;
|
||||
@@ -199,7 +221,6 @@ namespace Jackett.Common.Indexers
|
||||
}
|
||||
seasonEp ??= _EpisodeRegex.Match(qDetailsLink.TextContent).Value;
|
||||
|
||||
ICollection<int> category = new List<int> { TorznabCatType.Other.ID };
|
||||
string yearStr = null;
|
||||
if (row.ClassList.Contains("group") || row.ClassList.Contains("torrent")) // group/ungrouped headers
|
||||
{
|
||||
@@ -211,7 +232,8 @@ namespace Jackett.Common.Indexers
|
||||
// valid for torrent grouped but that has only 1 episode yet
|
||||
yearStr = torrentInfoEl.GetAttribute("data-year");
|
||||
}
|
||||
yearStr ??= qDetailsLink.NextSibling.TextContent.Trim().TrimStart('[').TrimEnd(']');
|
||||
yearStr ??= qDetailsLink.NextSibling.TextContent.Trim();
|
||||
category = Regex.Replace(yearStr, @".+ \[(.+)\]", "$1");
|
||||
|
||||
if (Uri.TryCreate(row.QuerySelector("img[alt=\"Cover\"]")?.GetAttribute("src"),
|
||||
UriKind.Absolute, out var posterUri))
|
||||
@@ -237,7 +259,7 @@ namespace Jackett.Common.Indexers
|
||||
var qGrabs = row.QuerySelector("td:nth-last-child(3)");
|
||||
var qSeeders = row.QuerySelector("td:nth-last-child(2)");
|
||||
var qLeechers = row.QuerySelector("td:nth-last-child(1)");
|
||||
var qFreeLeech = row.QuerySelector("strong[title=\"Free\"]");
|
||||
var qFreeLeech = row.QuerySelector("strong:contains(\"Free\")");
|
||||
if (row.ClassList.Contains("group_torrent")) // torrents belonging to a group
|
||||
{
|
||||
release.Description = qDetailsLink.TextContent;
|
||||
@@ -260,7 +282,7 @@ namespace Jackett.Common.Indexers
|
||||
release.Genres = new List<string>();
|
||||
release.Genres = release.Genres.Union(genres.Replace(", ", ",").Split(',')).ToList();
|
||||
}
|
||||
release.Category = category;
|
||||
release.Category = MapTrackerCatDescToNewznab(category);
|
||||
release.Description = release.Description.Replace(" / Free", ""); // Remove Free Tag
|
||||
release.Description = release.Description.Replace("/ WEB ", "/ WEB-DL "); // Fix web/web-dl
|
||||
release.Description = release.Description.Replace("Full HD", "1080p");
|
||||
|
||||
@@ -27,6 +27,8 @@ namespace Jackett.Common.Indexers
|
||||
{
|
||||
public class CardigannIndexer : BaseWebIndexer
|
||||
{
|
||||
public override int PageSize => Definition.Search != null && Definition.Search.PageSize > 0 ? Definition.Search.PageSize : 1;
|
||||
|
||||
protected IndexerDefinition Definition;
|
||||
protected WebResult landingResult;
|
||||
protected IHtmlDocument landingResultDocument;
|
||||
@@ -124,6 +126,8 @@ namespace Jackett.Common.Indexers
|
||||
TorznabCaps = new TorznabCapabilities();
|
||||
TorznabCaps.ParseCardigannSearchModes(Definition.Caps.Modes);
|
||||
TorznabCaps.SupportsRawSearch = Definition.Caps.Allowrawsearch;
|
||||
TorznabCaps.LimitsDefault = Definition.Caps.LimitsDefault ?? TorznabCaps.LimitsDefault;
|
||||
TorznabCaps.LimitsMax = Definition.Caps.LimitsMax ?? TorznabCaps.LimitsMax;
|
||||
|
||||
// init config Data
|
||||
configData = new ConfigurationData();
|
||||
@@ -1353,6 +1357,13 @@ namespace Jackett.Common.Indexers
|
||||
variables[".Query.Keywords"] = string.Join(" ", KeywordTokens);
|
||||
variables[".Keywords"] = applyFilters((string)variables[".Query.Keywords"], Search.Keywordsfilters, variables);
|
||||
|
||||
var pageSize = PageSize;
|
||||
|
||||
if (!bool.TryParse(applyGoTemplateText(Search.Pageable, variables), out var pageable))
|
||||
{
|
||||
pageable = false;
|
||||
}
|
||||
|
||||
// TODO: prepare queries first and then send them parallel
|
||||
var SearchPaths = Search.Paths;
|
||||
foreach (var SearchPath in SearchPaths)
|
||||
@@ -1734,14 +1745,28 @@ namespace Jackett.Common.Indexers
|
||||
OnParseError(results, ex);
|
||||
}
|
||||
}
|
||||
|
||||
pageSize = pageSize == 1 ? releases.Count : pageSize;
|
||||
|
||||
if (pageable && !IsFullPage(releases, pageSize))
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (query.Limit > 0)
|
||||
{
|
||||
releases = releases.Take(query.Limit).ToList();
|
||||
}
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
protected virtual bool IsFullPage(IList<ReleaseInfo> page, int pageSize)
|
||||
{
|
||||
return pageSize != 0 && page.Count >= pageSize;
|
||||
}
|
||||
|
||||
protected async Task<WebResult> handleRequest(requestBlock request, Dictionary<string, object> variables = null, string referer = null)
|
||||
{
|
||||
var requestLinkStr = resolvePath(applyGoTemplateText(request.Path, variables)).ToString();
|
||||
|
||||
@@ -28,10 +28,9 @@ namespace Jackett.Common.Indexers
|
||||
public override string Id => "divxtotal";
|
||||
public override string Name => "DivxTotal";
|
||||
public override string Description => "DivxTotal is a SPANISH site for Movies, TV series and Software";
|
||||
public override string SiteLink { get; protected set; } = "https://www.divxtotal.wf/";
|
||||
public override string SiteLink { get; protected set; } = "https://www.divxtotal.win/";
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
"https://www.divxtotal.one/",
|
||||
"https://www.divxtotal.ch/",
|
||||
"https://www.divxtotal.nz/",
|
||||
"https://www.divxtotal.li/",
|
||||
@@ -45,7 +44,8 @@ namespace Jackett.Common.Indexers
|
||||
"https://www.divxtotal.ms/",
|
||||
"https://www.divxtotal.fi/",
|
||||
"https://www.divxtotal.cat/",
|
||||
"https://www.divxtotal.pl/"
|
||||
"https://www.divxtotal.pl/",
|
||||
"https://www.divxtotal.wf/"
|
||||
};
|
||||
public override string Language => "es-ES";
|
||||
public override string Type => "public";
|
||||
|
||||
@@ -25,10 +25,10 @@ namespace Jackett.Common.Indexers
|
||||
public override string Id => "dontorrent";
|
||||
public override string Name => "DonTorrent";
|
||||
public override string Description => "DonTorrent is a SPANISH public tracker for MOVIES / TV / GENERAL";
|
||||
public override string SiteLink { get; protected set; } = "https://dontorrent.observer/";
|
||||
public override string SiteLink { get; protected set; } = "https://dontorrent.discount/";
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
"https://dontorrent.observer/",
|
||||
"https://dontorrent.discount/",
|
||||
"https://todotorrents.net/",
|
||||
"https://tomadivx.net/",
|
||||
"https://seriesblanco.one/",
|
||||
@@ -37,15 +37,6 @@ namespace Jackett.Common.Indexers
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
"https://dontorrent.gs/",
|
||||
"https://dontorrent.gy/",
|
||||
"https://dontorrent.click/",
|
||||
"https://dontorrent.fail/",
|
||||
"https://dontorrent.futbol/",
|
||||
"https://dontorrent.mba/",
|
||||
"https://dontorrent.army/",
|
||||
"https://dontorrent.blue/",
|
||||
"https://dontorrent.beer/",
|
||||
"https://dontorrent.surf/",
|
||||
"https://dontorrent.how/",
|
||||
"https://dontorrent.casa/",
|
||||
@@ -58,7 +49,9 @@ namespace Jackett.Common.Indexers
|
||||
"https://dontorrent.pictures/",
|
||||
"https://dontorrent.ms/",
|
||||
"https://dontorrent.care/",
|
||||
"https://dontorrent.cash/"
|
||||
"https://dontorrent.cash/",
|
||||
"https://dontorrent.observer/",
|
||||
"https://dontorrent.company/"
|
||||
|
||||
};
|
||||
public override string Language => "es-ES";
|
||||
|
||||
@@ -26,12 +26,11 @@ namespace Jackett.Common.Indexers
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
"https://www.epublibre.org/",
|
||||
"https://epublibre.unblockit.click/"
|
||||
"https://epublibre.unblockit.asia/"
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
"https://epublibre.org/",
|
||||
"https://epublibre.unblockit.how/",
|
||||
"https://epublibre.unblockit.cam/",
|
||||
"https://epublibre.unblockit.day/",
|
||||
"https://epublibre.unblockit.llc/",
|
||||
@@ -45,7 +44,8 @@ namespace Jackett.Common.Indexers
|
||||
"https://epublibre.unblockit.pet/",
|
||||
"https://epublibre.unblockit.ink/",
|
||||
"https://epublibre.unblockit.bio/",
|
||||
"https://epublibre.unblockit.boo/"
|
||||
"https://epublibre.unblockit.boo/",
|
||||
"https://epublibre.unblockit.click/"
|
||||
};
|
||||
public override string Language => "es-ES";
|
||||
public override string Type => "public";
|
||||
|
||||
@@ -24,7 +24,8 @@ namespace Jackett.Common.Indexers
|
||||
{
|
||||
"https://www.erai-raws.info/",
|
||||
"https://beta.erai-raws.info/",
|
||||
"https://erairaws.mrunblock.guru/"
|
||||
"https://erairaws.mrunblock.life/",
|
||||
"https://erairaws.nocensor.click/"
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
@@ -34,7 +35,8 @@ namespace Jackett.Common.Indexers
|
||||
"https://erairaws.nocensor.sbs/",
|
||||
"https://erairaws.nocensor.world/",
|
||||
"https://erairaws.nocensor.lol/",
|
||||
"https://erairaws.nocensor.art/"
|
||||
"https://erairaws.nocensor.art/",
|
||||
"https://erairaws.mrunblock.guru/"
|
||||
};
|
||||
public override string Language => "en-US";
|
||||
public override string Type => "semi-private";
|
||||
|
||||
@@ -26,11 +26,11 @@ namespace Jackett.Common.Indexers
|
||||
public override string Id => "mejortorrent";
|
||||
public override string Name => "MejorTorrent";
|
||||
public override string Description => "MejorTorrent - Hay veces que un torrent viene mejor! :)";
|
||||
public override string SiteLink { get; protected set; } = "https://www1.mejortorrent.rip/";
|
||||
public override string SiteLink { get; protected set; } = "https://www2.mejortorrent.rip/";
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
"https://www1.mejortorrent.rip/",
|
||||
"https://mejortorrent.unblockit.click/"
|
||||
"https://www2.mejortorrent.rip/",
|
||||
"https://mejortorrent.unblockit.asia/"
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
@@ -52,7 +52,6 @@ namespace Jackett.Common.Indexers
|
||||
"https://www.mejortorrento.info/",
|
||||
"https://mejortorrent.nocensor.work/",
|
||||
"https://www.mejortorrentes.net/",
|
||||
"https://mejortorrent.unblockit.how/",
|
||||
"https://mejortorrent.unblockit.cam/",
|
||||
"https://mejortorrent.nocensor.biz/",
|
||||
"https://mejortorrent.unblockit.day/",
|
||||
@@ -63,7 +62,9 @@ namespace Jackett.Common.Indexers
|
||||
"https://mejortorrent.unblockit.name/",
|
||||
"https://mejortorrent.unblockit.bio/",
|
||||
"https://mejortorrent.wtf/",
|
||||
"https://mejortorrent.unblockit.boo/"
|
||||
"https://mejortorrent.unblockit.boo/",
|
||||
"https://mejortorrent.unblockit.click/",
|
||||
"https://www1.mejortorrent.rip/"
|
||||
};
|
||||
public override string Language => "es-ES";
|
||||
public override string Type => "public";
|
||||
|
||||
@@ -26,7 +26,8 @@ namespace Jackett.Common.Indexers
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
"https://subsplease.org/",
|
||||
"https://subsplease.mrunblock.guru/"
|
||||
"https://subsplease.mrunblock.life/",
|
||||
"https://subsplease.nocensor.click/"
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
@@ -36,7 +37,8 @@ namespace Jackett.Common.Indexers
|
||||
"https://subsplease.nocensor.sbs/",
|
||||
"https://subsplease.nocensor.world/",
|
||||
"https://subsplease.nocensor.lol/",
|
||||
"https://subsplease.nocensor.art/"
|
||||
"https://subsplease.nocensor.art/",
|
||||
"https://subsplease.mrunblock.guru/"
|
||||
};
|
||||
public override string Language => "en-US";
|
||||
public override string Type => "public";
|
||||
|
||||
@@ -69,6 +69,8 @@ namespace Jackett.Common.Models
|
||||
|
||||
public class capabilitiesBlock
|
||||
{
|
||||
public int? LimitsMax { get; set; }
|
||||
public int? LimitsDefault { get; set; }
|
||||
public Dictionary<string, string> Categories { get; set; }
|
||||
public List<CategorymappingBlock> Categorymappings { get; set; }
|
||||
public Dictionary<string, List<string>> Modes { get; set; }
|
||||
@@ -137,6 +139,8 @@ namespace Jackett.Common.Models
|
||||
|
||||
public class searchBlock
|
||||
{
|
||||
public int PageSize { get; set; }
|
||||
public string Pageable { get; set; }
|
||||
public string Path { get; set; }
|
||||
public List<searchPathBlock> Paths { get; set; }
|
||||
public Dictionary<string, List<string>> Headers { get; set; }
|
||||
|
||||
@@ -326,7 +326,6 @@ namespace Jackett.Updater
|
||||
"Definitions/cztorrent.yml",
|
||||
"Definitions/danishbytes.yml", // migrated to C#
|
||||
"Definitions/dariustracker.yml",
|
||||
"Definitions/dark-shadow.yml",
|
||||
"Definitions/darktracker.yml",
|
||||
"Definitions/darmowetorenty.yml", // migrated to C#
|
||||
"Definitions/datascene.yml", // switch to *-API #8682
|
||||
@@ -402,6 +401,7 @@ namespace Jackett.Updater
|
||||
"Definitions/hdreactor.yml", // renamed to hdhouse
|
||||
"Definitions/hdspain.yml",
|
||||
"Definitions/hdstreet.yml",
|
||||
"Definitions/hellashut.yml",
|
||||
"Definitions/hellastz.yml",
|
||||
"Definitions/hidden-palace.yml",
|
||||
"Definitions/hon3yhd-net.yml",
|
||||
@@ -468,7 +468,6 @@ namespace Jackett.Updater
|
||||
"Definitions/nforce.yml",
|
||||
"Definitions/nitro.yml",
|
||||
"Definitions/nnm-club.yml", // renamed to noname-club
|
||||
"Definitions/nordichd.yml",
|
||||
"Definitions/nordicplus.yml",
|
||||
"Definitions/nostalgic.yml", // renamed to vhstapes
|
||||
"Definitions/nyaa-pantsu.yml",
|
||||
@@ -519,6 +518,7 @@ namespace Jackett.Updater
|
||||
"Definitions/rockhardlossless.yml",
|
||||
"Definitions/rodvd.yml",
|
||||
"Definitions/rofd.yml",
|
||||
"Definitions/rus-media.yml",
|
||||
"Definitions/scenefz.yml", // migrated to C# XtremeZone base tracker
|
||||
"Definitions/scenehd.yml", // migrated to C# (use JSON API)
|
||||
"Definitions/scenepalace.yml",
|
||||
@@ -577,7 +577,6 @@ namespace Jackett.Updater
|
||||
"Definitions/torrentbomb.yml",
|
||||
"Definitions/torrentcouch.yml",
|
||||
"Definitions/torrentdb.yml",
|
||||
"Definitions/torrentdownloads.yml",
|
||||
"Definitions/torrentfactory.yml",
|
||||
"Definitions/torrentgalaxyorg.yml", // renamed to torrentgalaxy
|
||||
"Definitions/torrenthane.yml",
|
||||
|
||||
Reference in New Issue
Block a user