mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-31 01:55:32 +01:00
Compare commits
23 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
abbcee767c | ||
|
|
33b568aff8 | ||
|
|
6988deb0ba | ||
|
|
35a03870a7 | ||
|
|
c4aea7d2a2 | ||
|
|
1a1942424a | ||
|
|
cae5fbb939 | ||
|
|
1b017297ab | ||
|
|
c0854165b4 | ||
|
|
b883e9863f | ||
|
|
8c1572d6f1 | ||
|
|
d32376fdbb | ||
|
|
5732bfaae4 | ||
|
|
4b082f1d2b | ||
|
|
a958305436 | ||
|
|
6706bfcf45 | ||
|
|
672c964e09 | ||
|
|
0459906514 | ||
|
|
ee1f183510 | ||
|
|
fb9c99222a | ||
|
|
44d092e6bd | ||
|
|
6a2d56a799 | ||
|
|
a79be6414d |
@@ -94,7 +94,6 @@ Prior versions of Jackett are no longer supported.
|
||||
* NewStudio
|
||||
* Nipponsei
|
||||
* NoNaMe Club (NNM-Club)
|
||||
* NorTorrent
|
||||
* Nyaa.si
|
||||
* OneJAV
|
||||
* OxTorrent
|
||||
@@ -125,7 +124,6 @@ Prior versions of Jackett are no longer supported.
|
||||
* torrent.by
|
||||
* torrent-pirat
|
||||
* Torrent9
|
||||
* TorrentDosFilmes
|
||||
* TorrentDownload
|
||||
* TorrentGalaxyClone
|
||||
* TorrentKitty
|
||||
@@ -142,10 +140,10 @@ Prior versions of Jackett are no longer supported.
|
||||
* VST Torrentz
|
||||
* VSTorrent
|
||||
* Wolfmax4K
|
||||
* World-torrent
|
||||
* XXXClub
|
||||
* xxxtor
|
||||
* YTS.ag
|
||||
* zetorrents
|
||||
* ZkTorrent
|
||||
</details>
|
||||
|
||||
@@ -264,6 +262,7 @@ Prior versions of Jackett are no longer supported.
|
||||
* Best-Core
|
||||
* BeyondHD (BHD)
|
||||
* Bibliotik [![(invite needed)][inviteneeded]](#)
|
||||
* BigBBS
|
||||
* BigCore
|
||||
* Bit-Bázis
|
||||
* BIT-HDTV
|
||||
|
||||
@@ -8,11 +8,9 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
# Send any content to 52btbtbt@gmail.com to get the latest address. or visit https://52btbt.icu/
|
||||
- https://www.529070.xyz/
|
||||
- https://www.529071.xyz/
|
||||
- https://www.529072.xyz/
|
||||
- https://www.529073.xyz/
|
||||
legacylinks:
|
||||
- https://www.529055.xyz/
|
||||
- https://www.529057.xyz/
|
||||
- https://www.529056.xyz/
|
||||
- https://www.529058.xyz/
|
||||
- https://www.52bt059.buzz/
|
||||
@@ -27,6 +25,8 @@ legacylinks:
|
||||
- https://www.529068.xyz/
|
||||
- https://www.529069.xyz/
|
||||
- https://www.529067.xyz/
|
||||
- https://www.529070.xyz/
|
||||
- https://www.529071.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
258
src/Jackett.Common/Definitions/bigbbs.yml
Normal file
258
src/Jackett.Common/Definitions/bigbbs.yml
Normal file
@@ -0,0 +1,258 @@
|
||||
---
|
||||
id: bigbbs
|
||||
name: BigBBS
|
||||
description: "BigBBS is a POLISH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pl-PL
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bigbbs.eu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Filmi"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Filmi DivX / XviD"}
|
||||
- {id: 41, cat: Movies/HD, desc: "Filmi x264"}
|
||||
- {id: 40, cat: Movies, desc: "Filmi Al / Lektor Amatorski"}
|
||||
- {id: 39, cat: Movies/BluRay, desc: "Filmi BluRay"}
|
||||
- {id: 147, cat: Movies, desc: "Filmi Xmas"}
|
||||
- {id: 37, cat: Movies/DVD, desc: "Filmi DVD 5 / 9"}
|
||||
- {id: 52, cat: Movies/3D, desc: "Filmi 3D"}
|
||||
- {id: 17, cat: Movies/HD, desc: "Filmi HD 1080p , 720p"}
|
||||
- {id: 99, cat: Movies/HD, desc: "Filmi x265"}
|
||||
- {id: 62, cat: XXX, desc: "Filmi XXX"}
|
||||
- {id: 16, cat: Movies/SD, desc: "Filmi CAM / TS"}
|
||||
- {id: 65, cat: Movies/HD, desc: "Filmi Rmvb"}
|
||||
- {id: 66, cat: Movies, desc: "Filmi TV RIP"}
|
||||
- {id: 84, cat: TV/Documentary, desc: "Filmi Dokumentalne"}
|
||||
- {id: 100, cat: Movies, desc: "Filmi Seriale"}
|
||||
- {id: 103, cat: Movies, desc: "Filmi FILMY GSM / PDA"}
|
||||
- {id: 107, cat: Movies/UHD, desc: "Filmi 4K-UHD"}
|
||||
- {id: 109, cat: Movies, desc: "Filmi Biblijny"}
|
||||
- {id: 113, cat: Movies, desc: "Filmi Prawniczy"}
|
||||
- {id: 61, cat: Movies, desc: "Bajki"}
|
||||
- {id: 106, cat: Books/Comics, desc: "Manga"}
|
||||
- {id: 53, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 56, cat: TV, desc: "TV"}
|
||||
- {id: 57, cat: TV, desc: "TV BOXSETS"}
|
||||
- {id: 58, cat: TV, desc: "TV EPIZODY"}
|
||||
- {id: 6, cat: PC, desc: "Aplikacje"}
|
||||
- {id: 18, cat: PC/0day, desc: "Aplikacje Windows"}
|
||||
- {id: 64, cat: PC/Mobile-Other, desc: "Aplikacje GSM/PDA"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Aplikacje Macintosh"}
|
||||
- {id: 42, cat: PC, desc: "Aplikacje Linux"}
|
||||
- {id: 63, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 7, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Koncert"}
|
||||
- {id: 144, cat: Audio, desc: "BiGBBS RMG (Rellase Music Group)"}
|
||||
- {id: 21, cat: Audio/MP3, desc: "MP3"}
|
||||
- {id: 38, cat: Audio/Lossless, desc: "FLAC"}
|
||||
- {id: 135, cat: Audio, desc: "RetroRemix,ClubDance"}
|
||||
- {id: 43, cat: Audio, desc: "Soundtrack"}
|
||||
- {id: 136, cat: Audio, desc: "Rock"}
|
||||
- {id: 80, cat: Audio/Lossless, desc: "lossless"}
|
||||
- {id: 81, cat: Audio, desc: "MusicVid"}
|
||||
- {id: 82, cat: Audio, desc: "Radio"}
|
||||
- {id: 138, cat: Audio, desc: "Dyskografie Płytowe"}
|
||||
- {id: 117, cat: Audio, desc: "Metal Rock"}
|
||||
- {id: 139, cat: Audio, desc: "Kolekcje Muzyczne"}
|
||||
- {id: 118, cat: Audio, desc: "Disco Polo"}
|
||||
- {id: 119, cat: Audio, desc: "Clubbing"}
|
||||
- {id: 120, cat: Audio, desc: "House"}
|
||||
- {id: 125, cat: Audio, desc: "Tranc"}
|
||||
- {id: 127, cat: Audio, desc: "Dance"}
|
||||
- {id: 128, cat: Audio, desc: "Opus"}
|
||||
- {id: 130, cat: Audio, desc: "Pop"}
|
||||
- {id: 129, cat: Audio, desc: "Italo"}
|
||||
- {id: 131, cat: Audio, desc: "ClubDance"}
|
||||
- {id: 133, cat: Audio, desc: "Retro Remixes"}
|
||||
- {id: 134, cat: Audio, desc: "Techno"}
|
||||
- {id: 132, cat: Audio, desc: "eurodance"}
|
||||
- {id: 145, cat: Audio, desc: "Chillout"}
|
||||
- {id: 83, cat: Audio, desc: "BLUES / REGGAE/ ROCK / METAL/CLASSIC/"}
|
||||
- {id: 2, cat: Console, desc: "Gry"}
|
||||
- {id: 3, cat: Console/PS3, desc: "Sony PS"}
|
||||
- {id: 4, cat: Console/Wii, desc: "Wii"}
|
||||
- {id: 26, cat: Console/XBox, desc: "XboX"}
|
||||
- {id: 28, cat: PC/Games, desc: "Gry PC"}
|
||||
- {id: 28, cat: Console/NDS, desc: "Nintendo"}
|
||||
- {id: 47, cat: Books/EBook, desc: "EEbooki"}
|
||||
- {id: 48, cat: Audio/Audiobook, desc: "Audio Book"}
|
||||
- {id: 50, cat: Books/EBook, desc: "Ebook Pdf"}
|
||||
- {id: 67, cat: Books/Comics, desc: "Komiksy"}
|
||||
- {id: 59, cat: Other, desc: "BBRG"}
|
||||
- {id: 39, cat: Movies/BluRay, desc: "Filmy BluRay 50/25/9"}
|
||||
- {id: 88, cat: Movies/3D, desc: "Filmi 3D"}
|
||||
- {id: 108, cat: Movies/BluRay, desc: "Filmi BluRay"}
|
||||
- {id: 89, cat: Movies/HD, desc: "Filmi HD x264"}
|
||||
- {id: 90, cat: Movies/HD, desc: "Filmi HD DivX / XviD"}
|
||||
- {id: 91, cat: Movies/DVD, desc: "Filmi DVD 5 / DVD 9"}
|
||||
- {id: 92, cat: Movies/SD, desc: "Filmi SD DivX / XviD"}
|
||||
- {id: 93, cat: Movies/SD, desc: "Filmi SD x264"}
|
||||
- {id: 96, cat: Movies, desc: "Filmi TVRip"}
|
||||
- {id: 101, cat: Movies, desc: "Filmi Boxset"}
|
||||
- {id: 98, cat: Movies, desc: "Filmi Seriale"}
|
||||
- {id: 95, cat: Movies, desc: "Bajki"}
|
||||
- {id: 97, cat: Audio/Video, desc: "Kabarety"}
|
||||
- {id: 102, cat: Movies/HD, desc: "Filmi x265"}
|
||||
- {id: 104, cat: Movies, desc: "Filmi FILMY GSM / PDA"}
|
||||
- {id: 86, cat: Audio, desc: "Muzyka BBRG"}
|
||||
- {id: 110, cat: Movies, desc: "Filmi Biblijny"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filmi 4K-UHD"}
|
||||
- {id: 115, cat: Movies, desc: "Filmi Fan BBRG"}
|
||||
- {id: 112, cat: Movies, desc: "Filmi ENG"}
|
||||
|
||||
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: info_profile
|
||||
type: info
|
||||
label: Layout
|
||||
default: "<ul><li>Only the English Classic profile is supported.</li><li>Make sure to set the <b>Torrent Listing (Lista torrentów)</b> option in your profile to <b>Classic (Klasyczny)</b></li><li>And set the <b>Language (Dil)</b> to <b>English</b></li><li>Using the <i>Modern</i> theme will prevent results, and using <i>Polski</i> will prevent upload dates.</li></ul>"
|
||||
- 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_activity
|
||||
type: info
|
||||
label: Account Inactivity
|
||||
default: "Account retention rules: Inactive accounts over 30 days will be warned by email about their inactivity. If within 24h a person does not log in to their account, they will lose them without the possibility of returning."
|
||||
|
||||
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:
|
||||
- path: /
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["[^a-zA-Z0-9]+", "%25"]
|
||||
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 but has imdbid links in results.
|
||||
error:
|
||||
- selector: div.error:not(:contains("There are no results found."))
|
||||
|
||||
rows:
|
||||
selector: "table#torrents_table_classic > tbody > tr:has(a[href*=\"?p=torrents&pid=10&action=download&tid=\"]){{ 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
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
optional: true
|
||||
poster:
|
||||
selector: a[href*="data/torrents/torrent_images/"]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
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:
|
||||
# Uploaded Today at 04:01:07 by
|
||||
# Uploaded Yesterday at 06:37:21 by
|
||||
selector: td.torrent_name:contains("day at ")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Uploaded 17-04-2017 06:07:06 by
|
||||
selector: td.torrent_name:not(:contains("day at "))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm:ss"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="/torrent_free.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 day (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# TSUE 2.2
|
||||
@@ -10,6 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 54, cat: XXX, desc: Ai Generated"}
|
||||
- {id: 4, cat: XXX, desc: Amateur"}
|
||||
- {id: 5, cat: XXX, desc: Anal"}
|
||||
- {id: 6, cat: XXX, desc: Asian"}
|
||||
|
||||
@@ -31,6 +31,7 @@ caps:
|
||||
- {id: Ebooks, cat: Books/EBook, desc: Books Ebook}
|
||||
- {id: English-translated, cat: TV/Anime, desc: Anime English-translated}
|
||||
- {id: Episodes HD, cat: TV/HD, desc: Episodes HD}
|
||||
- {id: Episodes 4K UHD, cat: TV/UHD, desc: Episodes 4K UHD}
|
||||
- {id: Games, cat: XXX/Other, desc: Adult Games}
|
||||
- {id: Hentai, cat: XXX/Other, desc: Adult Hentai}
|
||||
- {id: Highres Movies, cat: Movies/HD, desc: Movies HD}
|
||||
|
||||
@@ -6,6 +6,8 @@ language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://pt.hdclone.top/
|
||||
legacylinks:
|
||||
- https://pt.hdclone.org/
|
||||
|
||||
caps:
|
||||
|
||||
@@ -9,16 +9,12 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://magnetcatcat.com/
|
||||
- https://clmclm.com/
|
||||
- https://www.8800525.xyz/
|
||||
- https://www.8800528.xyz/
|
||||
- https://www.8800527.xyz/
|
||||
- https://www.8800529.xyz/
|
||||
- https://www.8800531.xyz/
|
||||
- https://www.8800532.xyz/
|
||||
- https://www.8800533.xyz/
|
||||
- https://www.8800534.xyz/
|
||||
legacylinks:
|
||||
- https://www.clm472.sbs/
|
||||
- https://www.8800507.xyz/
|
||||
- https://www.8800508.xyz/
|
||||
- https://www.8800509.xyz/
|
||||
- https://www.8800510.xyz/
|
||||
- https://www.8800511.xyz/
|
||||
- https://www.8800514.xyz/
|
||||
- https://www.8800515.xyz/
|
||||
@@ -32,6 +28,10 @@ legacylinks:
|
||||
- https://www.8800523.xyz/
|
||||
- https://www.8800526.xyz/
|
||||
- https://www.8800524.xyz/
|
||||
- https://www.8800525.xyz/
|
||||
- https://www.8800528.xyz/
|
||||
- https://www.8800527.xyz/
|
||||
- https://www.8800529.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -17,7 +17,7 @@ caps:
|
||||
- {id: 60, cat: Movies/Other, desc: "Cam/HU"}
|
||||
- {id: 45, cat: Books/EBook, desc: "eBook/EN"}
|
||||
- {id: 40, cat: Books/EBook, desc: "eBook/HU"}
|
||||
# - {id: 20, cat: Movies/DVD, desc: "Film/DVD9"}
|
||||
- {id: 20, cat: Movies/DVD, desc: "Film/DVD9"}
|
||||
- {id: 48, cat: Movies/HD, desc: "Film/EN/1080p"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Film/EN/720p"}
|
||||
- {id: 38, cat: Movies/BluRay, desc: "Film/EN/Blu-ray"}
|
||||
@@ -127,7 +127,7 @@ search:
|
||||
img[src="/pic/categories/061.png"]: 60
|
||||
img[src="/pic/categories/017.png"]: 45
|
||||
img[src="/pic/categories/016.png"]: 40
|
||||
# img[]: 20
|
||||
img[src="/pic/categories/cat_movies.gif"]: 20
|
||||
img[src="/pic/categories/010.png"]: 48
|
||||
img[src="/pic/categories/9.png"]: 32
|
||||
img[src="/pic/categories/011.png"]: 38
|
||||
|
||||
@@ -1,170 +0,0 @@
|
||||
---
|
||||
id: nortorrent
|
||||
replaces:
|
||||
- torrent9clone
|
||||
- torrent9-tel
|
||||
name: NorTorrent
|
||||
description: "NorTorrent is a FRENCH Public tracker for MOVIES / TV / GENERAL"
|
||||
language: fr-FR
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.org/
|
||||
links:
|
||||
- https://www.nortorrent8.com/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
- https://www.rantop.org/
|
||||
- https://www.site-torrent.cc/
|
||||
- https://www.torrent-site.com/
|
||||
# domain lists no longer working
|
||||
- https://www.protege-torrent.com/
|
||||
- https://www.torrent.ws/
|
||||
- https://www.protege-liens.com/
|
||||
- https://www.protege-liens.net/
|
||||
- https://www.torrent.onl/
|
||||
- https://torrent9.news/
|
||||
- https://www.site-torrent.com/
|
||||
- https://www.rantop.my/
|
||||
# actual legacylinks
|
||||
- https://www-torrent9.com/
|
||||
- https://www.nortorrent.com/
|
||||
- https://www.nortorrent1.com/
|
||||
- https://www.nortorrent2.com/
|
||||
- https://www.nortorrent3.com/
|
||||
- https://www.nortorrent4.com/
|
||||
- https://www.nortorrent5.com/
|
||||
- https://www.nortorrent6.com/
|
||||
- https://www.nortorrent.net/
|
||||
- https://www.nortorrent.town/
|
||||
- https://nortorrent-proxy.site/
|
||||
- https://ww1-nortorrent.me/
|
||||
- https://www.nortorrent.rent/
|
||||
- https://ww1-nortorrent.town/
|
||||
- https://www.nortorrent7.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: Films, cat: Movies, desc: "Movies"}
|
||||
- {id: Animes, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: Documentaires, cat: TV/Documentary, desc: "Documentaires"}
|
||||
- {id: Séries, cat: TV, desc: "TV"}
|
||||
- {id: Musiques, cat: Audio, desc: "Music"}
|
||||
- {id: Ebooks, cat: Books, desc: "Books"}
|
||||
- {id: Livres, cat: Books, desc: "Livres"}
|
||||
- {id: Logiciels, cat: PC, desc: "Software"}
|
||||
- {id: Applications, cat: PC, desc: "Applications"}
|
||||
- {id: Jeux-PC, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"}
|
||||
- {id: Porno, cat: XXX, desc: "Porno"}
|
||||
- {id: Spectacles, cat: TV/Other, desc: "Spectacles"}
|
||||
- {id: Sports, cat: TV/Sport, desc: "Sports"}
|
||||
- {id: Formations, cat: Other, desc: "Formations"}
|
||||
- {id: Vidéos, cat: TV, desc: "Vidéos"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: info_flaresolverr
|
||||
type: info_flaresolverr
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTi FRENCH: MULTi FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTi ENGLISH: MULTi ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTi VOSTFR: MULTi VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="/get_torrents/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}"
|
||||
keywordsfilters:
|
||||
# if searching for season packs swith S01 to saison 1 #9712
|
||||
- name: re_replace
|
||||
args: ["(?i)(S0)(\\d{1,2})$", "saison $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(S)(\\d{1,3})$", "saison $2"]
|
||||
|
||||
rows:
|
||||
selector: table.table-striped > tbody > tr
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td:nth-child(1) i
|
||||
attribute: class
|
||||
title_phase1:
|
||||
selector: td:nth-child(1) a
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b((19|20)\\d{2})\\b)$", "$3 $1$2"]
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details_href:
|
||||
selector: td:nth-child(1) a[href]
|
||||
attribute: href
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (/?detail/\d+)
|
||||
details_onclick:
|
||||
selector: td:nth-child(1) a[onclick]
|
||||
attribute: onclick
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (/?detail/\d+)
|
||||
details:
|
||||
text: "{{ or .Result.details_href .Result.details_onclick }}"
|
||||
download:
|
||||
text: "{{ .Result.details }}"
|
||||
date:
|
||||
text: now
|
||||
size:
|
||||
selector: td:nth-child(2)
|
||||
seeders:
|
||||
selector: td:nth-child(3)
|
||||
optional: true
|
||||
default: 0
|
||||
leechers:
|
||||
selector: td:nth-child(4)
|
||||
optional: true
|
||||
default: 0
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -107,11 +107,12 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
- name: username
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info_cookie
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
@@ -125,10 +126,15 @@ settings:
|
||||
MULTi POLISH: MULTi POLISH
|
||||
|
||||
login:
|
||||
# using cookie to prevent FlareSolverrSharp invalid-charset-exception after picking up `charset=utf8mb4` #15835
|
||||
method: cookie
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[name="login"]
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
keeplogged: 1
|
||||
error:
|
||||
- selector: font[color="#FF0000"]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
@@ -48,10 +48,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: info
|
||||
type: info
|
||||
label: A note about RuTor
|
||||
default: RuTor does not display categories in its search results page. This definition is probably only suitable for Jackett Dashboard Manual searches.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site (Applies only to Search with Keywords)
|
||||
@@ -65,6 +61,8 @@ settings:
|
||||
7: "size asc"
|
||||
8: "title desc"
|
||||
9: "title asc"
|
||||
- name: info_category_8000
|
||||
type: info_category_8000
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -146,6 +144,9 @@ search:
|
||||
details:
|
||||
selector: td:nth-of-type(2) a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.downgif
|
||||
attribute: href
|
||||
infohash:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
@@ -183,6 +183,9 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
# change broken/missing cat 0 to Uncategorised
|
||||
- name: re_replace
|
||||
args: ["\\b0\\b", "48"]
|
||||
title:
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
filters:
|
||||
|
||||
@@ -62,6 +62,7 @@ caps:
|
||||
- {id: 160, cat: Movies/Other, desc: "Anime Movies SD"}
|
||||
- {id: 168, cat: TV/Anime, desc: "Anime Serien HD"}
|
||||
- {id: 169, cat: TV/Anime, desc: "Anime Serien SD"}
|
||||
- {id: 170, cat: TV/Anime, desc: "Anime Serien Pack"}
|
||||
- {id: 129, cat: TV/Anime, desc: "Anime Sonstiges"}
|
||||
- {id: 118, cat: Other, desc: "Other Mobile"}
|
||||
- {id: 119, cat: Other, desc: "Other Hörbücher"}
|
||||
|
||||
@@ -32,6 +32,7 @@ caps:
|
||||
- {id: 16, cat: Other, desc: "Foto,obrázky"}
|
||||
- {id: 21, cat: PC/Mobile-Android, desc: "Mobilmánia"}
|
||||
- {id: 20, cat: Console, desc: "Konzole"}
|
||||
- {id: 43, cat: Other, desc: "Online tvorba"}
|
||||
- {id: 22, cat: Other, desc: "Ostatní CZ/SK scéna"}
|
||||
- {id: 23, cat: Other, desc: "Na prani non CZ/SK"}
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ caps:
|
||||
- {id: 16, cat: Other, desc: "Foto,obrázky"}
|
||||
- {id: 21, cat: PC/Mobile-Android, desc: "Mobilmánia"}
|
||||
- {id: 20, cat: Console, desc: "Konzole"}
|
||||
- {id: 43, cat: Other, desc: "Online tvorba"}
|
||||
- {id: 22, cat: Other, desc: "Ostatní CZ/SK scéna"}
|
||||
- {id: 23, cat: Other, desc: "Na prani non CZ/SK"}
|
||||
|
||||
|
||||
@@ -1,13 +1,25 @@
|
||||
---
|
||||
id: zetorrents
|
||||
name: zetorrents
|
||||
description: "zetorrents is a FRENCH Public site for MOVIES / TV / GENERAL"
|
||||
id: world-torrent
|
||||
replaces:
|
||||
- torrent9clone
|
||||
- torrent9-tel
|
||||
- zetorrents
|
||||
- nortorrent
|
||||
name: World-torrent
|
||||
description: "World-torrent is a FRENCH Public site for MOVIES / TV / GENERAL"
|
||||
language: fr-FR
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.org/
|
||||
links:
|
||||
- https://www.world-torrent.com/
|
||||
- https://www.world-torrent1.com/
|
||||
- https://www.nortorrent8.com/
|
||||
- https://www.frenchtorrent1.com/
|
||||
- https://www.mania-torrent.com/
|
||||
- https://www.magnet-torrent1.com/
|
||||
- https://www.mega-torrent9.com/
|
||||
- https://www.zone-torrent6.com/
|
||||
- https://www.warez-torrent1.com/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
- https://www.rantop.org/
|
||||
@@ -22,7 +34,21 @@ legacylinks:
|
||||
- https://www.site-torrent.com/
|
||||
- https://www.rantop.my/
|
||||
# actual legacylinks
|
||||
- https://www.zetorrents.in/
|
||||
- https://www-torrent9.com/
|
||||
- https://www.nortorrent.com/
|
||||
- https://www.nortorrent1.com/
|
||||
- https://www.nortorrent2.com/
|
||||
- https://www.nortorrent3.com/
|
||||
- https://www.nortorrent4.com/
|
||||
- https://www.nortorrent5.com/
|
||||
- https://www.nortorrent6.com/
|
||||
- https://www.nortorrent.net/
|
||||
- https://www.nortorrent.town/
|
||||
- https://nortorrent-proxy.site/
|
||||
- https://ww1-nortorrent.me/
|
||||
- https://www.nortorrent.rent/
|
||||
- https://ww1-nortorrent.town/
|
||||
- https://www.nortorrent7.com/
|
||||
- https://www.zetorrents.vg/
|
||||
- https://www.zetorrents.vc/
|
||||
- https://www.zetorrents.sk/
|
||||
@@ -37,6 +63,7 @@ legacylinks:
|
||||
- https://ww1-zetorrents.me/
|
||||
- https://www.zetorrents.rent/
|
||||
- https://ww1-zetorrents.town/
|
||||
- https://www.world-torrent.com/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -78,7 +105,7 @@ download:
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}home{{ end }}"
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}"
|
||||
keywordsfilters:
|
||||
# if searching for season packs swith S01 to saison 1 #9712
|
||||
- name: re_replace
|
||||
452
src/Jackett.Common/Definitions/yggcookie-turbo.yml
Normal file
452
src/Jackett.Common/Definitions/yggcookie-turbo.yml
Normal file
@@ -0,0 +1,452 @@
|
||||
---
|
||||
id: yggcookie-turbo
|
||||
name: YGG cookie (Turbo)
|
||||
description: "YggTorrent (YGG) is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL. This indexer uses cookie login. This indexer is only for users with Turbo Mode access (Uploaders and donors)."
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
requestDelay: 4
|
||||
# status https://www.yggtorrent.org/engine/domains
|
||||
links:
|
||||
- https://www.yggtorrent.org/
|
||||
legacylinks:
|
||||
- https://www.yggtorrent.li/
|
||||
- https://www4.yggtorrent.li/
|
||||
- https://www3.yggtorrent.nz/
|
||||
- https://www3.yggtorrent.re/
|
||||
- https://www3.yggtorrent.la/
|
||||
- https://www5.yggtorrent.la/
|
||||
- https://www5.yggtorrent.fi/
|
||||
- https://yggtorrent.lol/
|
||||
- https://www6.yggtorrent.lol/
|
||||
- https://www3.yggtorrent.do/
|
||||
- https://www3.yggtorrent.wtf/
|
||||
- https://www3.yggtorrent.qa/
|
||||
- https://www3.yggtorrent.cool/
|
||||
- https://www.ygg.re/
|
||||
- https://www.yggtorrent.top/
|
||||
|
||||
caps:
|
||||
# dont forget to update the search fields category case block
|
||||
categorymappings:
|
||||
- {id: 2145, cat: TV, desc: "Film/Vidéo"}
|
||||
- {id: 2178, cat: Movies/Other, desc: "Film/Vidéo : Animation"} # changed to movies, see #3553
|
||||
- {id: 2179, cat: TV/Anime, desc: "Film/Vidéo : Animation Série"}
|
||||
- {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"}
|
||||
- {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"}
|
||||
- {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"}
|
||||
- {id: 2183, cat: Movies, desc: "Film/Vidéo : Film"}
|
||||
- {id: 2184, cat: TV, desc: "Film/Vidéo : Série TV"}
|
||||
- {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"}
|
||||
- {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"}
|
||||
- {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"}
|
||||
- {id: 2139, cat: Audio, desc: "Audio"}
|
||||
- {id: 2147, cat: Audio, desc: "Audio : Karaoké"}
|
||||
- {id: 2148, cat: Audio, desc: "Audio : Musique"}
|
||||
- {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"}
|
||||
- {id: 2149, cat: Audio/Other, desc: "Audio : Samples"}
|
||||
- {id: 2144, cat: PC, desc: "Application"}
|
||||
- {id: 2177, cat: PC/0day, desc: "Application : Autre"}
|
||||
- {id: 2176, cat: PC, desc: "Application : Formation"}
|
||||
- {id: 2171, cat: PC/ISO, desc: "Application : Linux"}
|
||||
- {id: 2172, cat: PC/Mac, desc: "Application : MacOS"}
|
||||
- {id: 2174, cat: PC/Mobile-Android, desc: "Application : Smartphone"}
|
||||
- {id: 2175, cat: PC/Mobile-Android, desc: "Application : Tablette"}
|
||||
- {id: 2173, cat: PC/0day, desc: "Application : Windows"}
|
||||
- {id: 2142, cat: PC/Games, desc: "Jeu vidéo"}
|
||||
- {id: 2167, cat: Console/Other, desc: "Jeu vidéo : Autre"}
|
||||
- {id: 2159, cat: PC/Games, desc: "Jeu vidéo : Linux"}
|
||||
- {id: 2160, cat: PC/Games, desc: "Jeu vidéo : MacOS"}
|
||||
- {id: 2162, cat: Console/XBox One, desc: "Jeu vidéo : Microsoft"}
|
||||
- {id: 2163, cat: Console/Wii, desc: "Jeu vidéo : Nintendo"}
|
||||
- {id: 2165, cat: PC/Mobile-Android, desc: "Jeu vidéo : Smartphone"}
|
||||
- {id: 2164, cat: Console/PS4, desc: "Jeu vidéo : Sony"}
|
||||
- {id: 2166, cat: PC/Mobile-Android, desc: "Jeu vidéo : Tablette"}
|
||||
- {id: 2161, cat: PC/Games, desc: "Jeu vidéo : Windows"}
|
||||
- {id: 2140, cat: Books, desc: "eBook"}
|
||||
- {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"}
|
||||
- {id: 2152, cat: Books/EBook, desc: "eBook : Bds"}
|
||||
- {id: 2153, cat: Books/Comics, desc: "eBook : Comics"}
|
||||
- {id: 2154, cat: Books/EBook, desc: "eBook : Livres"}
|
||||
- {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"}
|
||||
- {id: 2156, cat: Books/Mags, desc: "eBook : Presse"}
|
||||
- {id: 2300, cat: Other, desc: "Nulled"}
|
||||
- {id: 2301, cat: Other, desc: "Nulled : Wordpress"}
|
||||
- {id: 2302, cat: Other, desc: "Nulled : Scripts PHP & CMS"}
|
||||
- {id: 2303, cat: Other, desc: "Nulled : Mobile"}
|
||||
- {id: 2304, cat: Other, desc: "Nulled : Divers"}
|
||||
- {id: 2200, cat: Other, desc: "Imprimante 3D"}
|
||||
- {id: 2201, cat: Other, desc: "Imprimante 3D : Objets"}
|
||||
- {id: 2202, cat: Other, desc: "Imprimante 3D : Personnages"}
|
||||
- {id: 2141, cat: Other, desc: "Emulation"}
|
||||
- {id: 2157, cat: Other, desc: "Emulation : Emulateurs"}
|
||||
- {id: 2158, cat: Other, desc: "Emulation : Roms"}
|
||||
- {id: 2143, cat: Other, desc: "GPS"}
|
||||
- {id: 2168, cat: Other, desc: "GPS : Applications"}
|
||||
- {id: 2169, cat: Other, desc: "GPS : Cartes"}
|
||||
- {id: 2170, cat: Other, desc: "GPS : Divers"}
|
||||
- {id: 2188, cat: XXX, desc: "XXX"}
|
||||
- {id: 2401, cat: XXX/Other, desc: "XXX : Ebooks"}
|
||||
- {id: 2189, cat: XXX, desc: "XXX : Films"}
|
||||
- {id: 2190, cat: XXX, desc: "XXX : Hentai"}
|
||||
- {id: 2191, cat: XXX/ImageSet, desc: "XXX : Images"}
|
||||
- {id: 2402, cat: XXX/Other, desc: "XXX : Jeux"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info_cookie
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info_useragent
|
||||
- name: info_turbo
|
||||
type: info
|
||||
label: Turbo Mode
|
||||
default: This indexer is only for users with Turbo Mode access (Uploaders and donors). This indexer does not bypass site requirements.
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTi.FRENCH: MULTi.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTi.ENGLISH: MULTi.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTi.VOSTFR: MULTi.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
- name: filter_title
|
||||
type: checkbox
|
||||
label: Normalize release names by moving year after the title
|
||||
default: false
|
||||
- name: strip_season
|
||||
type: checkbox
|
||||
label: Strip season only (e.g. S01) from searches, as tracker does not support partial matches
|
||||
default: true
|
||||
- name: enhancedAnime
|
||||
type: checkbox
|
||||
label: Enhance Sonarr compatibility with anime by renaming episodes (xxx > Exxx). Can disturb movies search (e.g. Back To The Future 3 > Back To The Future E3).
|
||||
default: false
|
||||
- name: enhancedAnime4
|
||||
type: checkbox
|
||||
label: Extend the Sonarr compatibility with anime up to 4 digits. This WILL break all searches and result titles which contain years.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: publish_date
|
||||
options:
|
||||
publish_date: created
|
||||
seed: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: categories
|
||||
type: info
|
||||
label: Categories
|
||||
default: To avoid unnecessary additional requests, it's recommended to only use indexer-specific categories (>=100000) when configuring this indexer in Sonarr, Radarr, and Lidarr, or when manually searching in TV, Movies, and Audio categories.
|
||||
- name: info_flaresolverr
|
||||
type: info_flaresolverr
|
||||
|
||||
login:
|
||||
# using cookie method as an alternative when regular login for some users does not work
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/user/logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# Tous
|
||||
- path: engine/search
|
||||
categories: ["!", 2145, 2178, 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, 2187, 2139, 2147, 2148, 2150, 2149, 2144, 2177, 2176, 2171, 2172, 2174, 2175, 2173, 2142, 2167, 2159, 2160, 2162, 2163, 2165, 2164, 2166, 2161, 2140, 2151, 2152, 2153, 2154, 2155, 2156, 2300, 2301, 2302, 2303, 2304, 2200, 2201, 2202, 2141, 2157, 2158, 2143, 2168, 2169, 2170, 2188, 2401, 2189, 2190, 2191, 2402]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: all
|
||||
followredirect: true
|
||||
# Tous p2
|
||||
- path: engine/search
|
||||
categories: ["!", 2145, 2178, 2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, 2187, 2139, 2147, 2148, 2150, 2149, 2144, 2177, 2176, 2171, 2172, 2174, 2175, 2173, 2142, 2167, 2159, 2160, 2162, 2163, 2165, 2164, 2166, 2161, 2140, 2151, 2152, 2153, 2154, 2155, 2156, 2300, 2301, 2302, 2303, 2304, 2200, 2201, 2202, 2141, 2157, 2158, 2143, 2168, 2169, 2170, 2188, 2401, 2189, 2190, 2191, 2402]
|
||||
inputs:
|
||||
$raw: "{{ if .Keywords }}name={{ re_replace .Keywords \"(?i)S0?(\\d{1,2})\" \"Saison $1\" }}{{ else }}&page=50{{ end }}"
|
||||
category: all
|
||||
followredirect: true
|
||||
# Film/Vidéo p1
|
||||
- path: engine/search
|
||||
categories: [2145, 2180, 2181, 2182, 2184, 2185, 2186, 2187]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2145
|
||||
followredirect: true
|
||||
# Film/Vidéo (TV which use Saison) p2
|
||||
- path: engine/search
|
||||
categories: [2145, 2181, 2182, 2184]
|
||||
inputs:
|
||||
$raw: "{{ if .Keywords }}name={{ re_replace .Keywords \"(?i)S0?(\\d{1,2})\" \"Saison $1\" }}{{ else }}&page=50{{ end }}"
|
||||
category: 2145
|
||||
followredirect: true
|
||||
# Film/Vidéo (TV which don't use Saison) p2
|
||||
- path: engine/search
|
||||
categories: [2180, 2185, 2186, 2187]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
page: 50
|
||||
category: 2145
|
||||
followredirect: true
|
||||
# Film/Vidéo (TV/Anime) p1
|
||||
- path: engine/search
|
||||
categories: [2179]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2145
|
||||
sub_category: 2179
|
||||
followredirect: true
|
||||
# Film/Vidéo (TV/Anime) p2
|
||||
- path: engine/search
|
||||
categories: [2179]
|
||||
inputs:
|
||||
$raw: "{{ if .Keywords }}name={{ re_replace .Keywords \"(?i)S0?(\\d{1,2})\" \"Saison $1\" }}{{ else }}&page=50{{ end }}"
|
||||
category: 2145
|
||||
sub_category: 2179
|
||||
followredirect: true
|
||||
# Film/Vidéo (Movies/Other)
|
||||
- path: engine/search
|
||||
categories: [2178]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2145
|
||||
sub_category: 2178
|
||||
followredirect: true
|
||||
# Film/Vidéo (Movies)
|
||||
- path: engine/search
|
||||
categories: [2183]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2145
|
||||
sub_category: 2183
|
||||
followredirect: true
|
||||
# Audio p1
|
||||
- path: engine/search
|
||||
categories: [2139, 2147, 2148, 2150, 2149]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2139
|
||||
followredirect: true
|
||||
# Audio p2
|
||||
- path: engine/search
|
||||
categories: [2139, 2147, 2148, 2150, 2149]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
page: 50
|
||||
category: 2139
|
||||
followredirect: true
|
||||
# Application
|
||||
- path: engine/search
|
||||
categories: [2144, 2177, 2176, 2171, 2172, 2174, 2175, 2173]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2144
|
||||
followredirect: true
|
||||
# Jeu vidéo
|
||||
- path: engine/search
|
||||
categories: [2142, 2167, 2159, 2160, 2162, 2163, 2165, 2164, 2166, 2161]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2142
|
||||
followredirect: true
|
||||
# eBook p1
|
||||
- path: engine/search
|
||||
categories: [2140, 2151, 2152, 2153, 2154, 2155, 2156]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2140
|
||||
followredirect: true
|
||||
# eBook p2
|
||||
- path: engine/search
|
||||
categories: [2140, 2151, 2152, 2153, 2154, 2155, 2156]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
page: 50
|
||||
category: 2140
|
||||
followredirect: true
|
||||
# Nulled
|
||||
- path: engine/search
|
||||
categories: [2300, 2301, 2302, 2303, 2304]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2300
|
||||
followredirect: true
|
||||
# Imprimante 3D
|
||||
- path: engine/search
|
||||
categories: [2200, 2201, 2202]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2200
|
||||
followredirect: true
|
||||
# Emulation
|
||||
- path: engine/search
|
||||
categories: [2141, 2157, 2158]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2141
|
||||
followredirect: true
|
||||
# GPS
|
||||
- path: engine/search
|
||||
categories: [2143, 2168, 2169, 2170]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2143
|
||||
followredirect: true
|
||||
# XXX
|
||||
- path: engine/search
|
||||
categories: [2188, 2401, 2189, 2190, 2191, 2402]
|
||||
inputs:
|
||||
name: "{{ .Keywords }}"
|
||||
category: 2188
|
||||
followredirect: true
|
||||
inputs:
|
||||
do: search
|
||||
order: "{{ .Config.type }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
||||
headers:
|
||||
User-Agent: ["{{ .Config.useragent }}"]
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace # 1234 > E1234
|
||||
args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"]
|
||||
- name: re_replace # 123 > E123
|
||||
args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"]
|
||||
# fix date search and workaround for internal YGG issues
|
||||
- name: re_replace
|
||||
args: ["[\\\\\\-\\.\\/!\\s]+", " "]
|
||||
# strip season as site does not support partial matches
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(S\\d{1,3})\\b", "{{ if .Config.strip_season }}{{ else }}$1{{ end }}"]
|
||||
- name: trim
|
||||
# put each word in quotations to prevent exact phrase search
|
||||
- name: re_replace
|
||||
args: ["([^\\s]+)", "\"$1\""]
|
||||
|
||||
rows:
|
||||
selector: table.table > tbody > tr
|
||||
|
||||
fields:
|
||||
_id:
|
||||
selector: td:nth-child(2) > a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "/(\\d+)-"
|
||||
title_normal:
|
||||
selector: td:nth-child(2) > a
|
||||
filters:
|
||||
# Saison 1 Episode 2 > S01E02
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)([\\s\\.]*[EÉ]pisodes?[\\s\\.]*)(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2E$4{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)[\\s\\.]*[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1E$2"]
|
||||
# Saison 1 > S01
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"]
|
||||
# Episode 1 > E01
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b([EÉ]pisodes?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"]
|
||||
# S1 à 2 > S1-2
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(S?\\d*[SE])(\\d{4})([\\s\\.\\-aà]+)(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}$1$2-$4{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(S?\\d*[SE])(\\d{1,3})[\\s\\.\\-aà]+(\\d{1,3})\\b", "$1$2-$3"]
|
||||
# Replace French date dd-mm-yyyy to yyyy.mm.dd
|
||||
- name: re_replace
|
||||
args: ["\\b(\\d{2})[\\-_\\.](\\d{2})[\\-_\\.](\\d{4})\\b", "$3.$2.$1"]
|
||||
title_filtered:
|
||||
text: "{{ .Result.title_normal }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)^(?:(.+?)((?:[\\.\\-\\s_\\[]+(?:imax|(?:dvd|bd|tv)(?:rip|scr)|bluray(?:\\-?rip)?|720\\s*p?|1080\\s*p?|vof?|vost(?:fr)?|multi|vf(?:f|q)?[1-3]?|(?:true)?french|eng?)[\\.\\-\\s_\\]]*)*)([\\(\\[]?(?:20|1[7-9])\\d{2}[\\)\\]]?)(.*)$|(.*))$", "$1 $3 $2 $4 $5"]
|
||||
- name: trim
|
||||
- name: re_replace
|
||||
args: ["(?i)(.\\b(mkv|avi|divx|xvid|mp4)\\b)$", ""]
|
||||
- name: re_replace
|
||||
args: ["(\\s+)", " "]
|
||||
- name: trim
|
||||
title_phase1:
|
||||
text: "{{ if .Config.filter_title }}{{ .Result.title_filtered }}{{ else }}{{ .Result.title_normal }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"]
|
||||
details:
|
||||
selector: td:nth-child(2) > a
|
||||
attribute: href
|
||||
category:
|
||||
selector: td:nth-child(1) > div.hidden
|
||||
download:
|
||||
text: "/engine/download_torrent?id={{ .Result._id }}"
|
||||
date:
|
||||
# unix
|
||||
selector: td:nth-child(5) > div.hidden
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["o", "B"]
|
||||
grabs:
|
||||
selector: td:nth-child(7)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -1,139 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq;
|
||||
using AngleSharp.Dom;
|
||||
using AngleSharp.Html.Parser;
|
||||
using Jackett.Common.Extensions;
|
||||
using Jackett.Common.Indexers.Definitions.Abstract;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Models.IndexerConfig;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
using Jackett.Common.Utils;
|
||||
using NLog;
|
||||
using WebClient = Jackett.Common.Utils.Clients.WebClient;
|
||||
using WebRequest = Jackett.Common.Utils.Clients.WebRequest;
|
||||
|
||||
namespace Jackett.Common.Indexers.Definitions
|
||||
{
|
||||
[ExcludeFromCodeCoverage]
|
||||
public class TorrentDosFilmes : PublicBrazilianIndexerBase
|
||||
{
|
||||
public override string Id => "torrentdosfilmes";
|
||||
public override string Name => "TorrentDosFilmes";
|
||||
public override string SiteLink { get; protected set; } = "https://comando4kfilmes-v1.xyz/";
|
||||
|
||||
public override string[] LegacySiteLinks { get; protected set; } = {
|
||||
"https://torrentdosfilmes.site/",
|
||||
"https://torrentsdosfilmes.to/",
|
||||
"https://ComandoFilmes.xyz/",
|
||||
"https://torrentdosfilmes.net/",
|
||||
"https://comando4kfilmes.xyz/",
|
||||
"https://torrentdosfilmes1.net/",
|
||||
};
|
||||
|
||||
public TorrentDosFilmes(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs) : base(configService, wc, l, ps, cs)
|
||||
{
|
||||
configData.AddDynamic(
|
||||
"flaresolverr",
|
||||
new ConfigurationData.DisplayInfoConfigurationItem("FlareSolverr",
|
||||
"This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href=\"https://github.com/Jackett/Jackett#configuring-flaresolverr\" target=\"_blank\">FlareSolverr</a> to access it."));
|
||||
}
|
||||
|
||||
public override IParseIndexerResponse GetParser() => new TorrentDosFilmesParser(webclient);
|
||||
}
|
||||
|
||||
public class TorrentDosFilmesParser : PublicBrazilianParser
|
||||
{
|
||||
private readonly WebClient _webclient;
|
||||
|
||||
public TorrentDosFilmesParser(WebClient webclient)
|
||||
{
|
||||
_webclient = webclient;
|
||||
}
|
||||
|
||||
private Dictionary<string, string> ExtractFileInfo(IDocument detailsDom)
|
||||
{
|
||||
var fileInfo = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
var infoSpans = detailsDom.QuerySelectorAll("span[style*='color: black']");
|
||||
|
||||
foreach (var span in infoSpans)
|
||||
{
|
||||
var text = span.TextContent.Trim();
|
||||
var parts = text.Split(new[] { ':' }, 2);
|
||||
if (parts.Length == 2)
|
||||
{
|
||||
var key = parts[0].Replace("<em>", "").Replace("</em>", "").Replace("<strong>", "").Replace("</strong>", "").Trim();
|
||||
var value = parts[1].Trim();
|
||||
fileInfo[key] = value;
|
||||
}
|
||||
}
|
||||
|
||||
return fileInfo;
|
||||
}
|
||||
|
||||
public override IList<ReleaseInfo> ParseResponse(IndexerResponse indexerResponse)
|
||||
{
|
||||
var releases = new List<ReleaseInfo>();
|
||||
|
||||
var parser = new HtmlParser();
|
||||
var dom = parser.ParseDocument(indexerResponse.Content);
|
||||
var rows = dom.QuerySelectorAll("div.post");
|
||||
|
||||
foreach (var row in rows)
|
||||
{
|
||||
var detailsParser = new HtmlParser();
|
||||
var detailAnchor = row.QuerySelector("div.title a[title]");
|
||||
var detailUrl = new Uri(detailAnchor?.GetAttribute("href") ?? string.Empty);
|
||||
var title = detailAnchor?.TextContent.Trim() ?? string.Empty;
|
||||
var releaseCommonInfo = new ReleaseInfo
|
||||
{
|
||||
Title = CleanTitle(title),
|
||||
Details = detailUrl,
|
||||
Guid = detailUrl,
|
||||
PublishDate = row.ExtractReleaseDate(),
|
||||
Seeders = 1
|
||||
};
|
||||
|
||||
var detailsPage = _webclient.GetResultAsync(new WebRequest(detailUrl.ToString())).Result;
|
||||
var detailsDom = detailsParser.ParseDocument(detailsPage.ContentString);
|
||||
|
||||
var fileInfoDict = ExtractFileInfo(detailsDom);
|
||||
var fileInfo = PublicBrazilianIndexerBase.FileInfo.FromDictionary(fileInfoDict);
|
||||
|
||||
foreach (var downloadButton in detailsDom.QuerySelectorAll("a.customButton[href^=\"magnet:\"]"))
|
||||
{
|
||||
var magnet = downloadButton.ExtractMagnet();
|
||||
var release = releaseCommonInfo.Clone() as ReleaseInfo;
|
||||
release.Title = ExtractTitleOrDefault(downloadButton, release.Title);
|
||||
release.Category = downloadButton.ExtractCategory(release.Title);
|
||||
release.Languages = fileInfo.Audio?.ToList() ?? release.Languages;
|
||||
release.Genres = fileInfo.Genres?.ToList() ?? release.Genres;
|
||||
release.Subs = string.IsNullOrEmpty(fileInfo.Subtitle) ? release.Subs : new[] { fileInfo.Subtitle };
|
||||
var size = RowParsingExtensions.GetBytes(fileInfo.Size ?? string.Empty);
|
||||
release.Size = size > 0 ? size : ExtractSizeByResolution(release.Title);
|
||||
release.Guid = release.MagnetUri = magnet;
|
||||
release.DownloadVolumeFactor = 0;
|
||||
release.UploadVolumeFactor = 1;
|
||||
|
||||
if (release.Title.IsNotNullOrWhiteSpace())
|
||||
releases.Add(release);
|
||||
}
|
||||
}
|
||||
|
||||
return releases;
|
||||
}
|
||||
|
||||
protected override INode GetTitleElementOrNull(IElement downloadButton)
|
||||
{
|
||||
var description = downloadButton.PreviousSibling;
|
||||
while (description != null && NotSpanTag(description))
|
||||
{
|
||||
description = description.PreviousSibling;
|
||||
}
|
||||
|
||||
return description;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -240,15 +240,6 @@ namespace Jackett.Updater
|
||||
|
||||
// delete old files
|
||||
var oldFiles = new string[] {
|
||||
"appsettings.Development.json",
|
||||
"Autofac.Integration.WebApi.dll",
|
||||
"Content/congruent_outline.png",
|
||||
"Content/crissXcross.png",
|
||||
"Content/css/jquery.dataTables.css",
|
||||
"Content/css/jquery.dataTables_themeroller.css",
|
||||
"CsQuery.dll",
|
||||
"CurlSharp.dll",
|
||||
"CurlSharp.pdb",
|
||||
"Definitions/01torrent.yml",
|
||||
"Definitions/2fast4you.yml",
|
||||
"Definitions/2xfree.yml",
|
||||
@@ -593,6 +584,7 @@ namespace Jackett.Updater
|
||||
"Definitions/nnm-club.yml", // renamed to noname-club
|
||||
"Definitions/nntt.yml",
|
||||
"Definitions/nordicplus.yml",
|
||||
"Definitions/nortorrent.yml", // migrated to world-torrent #7574
|
||||
"Definitions/nostalgic.yml", // renamed to vhstapes
|
||||
"Definitions/ntelogo.yml",
|
||||
"Definitions/nusantarare.yml",
|
||||
@@ -862,19 +854,9 @@ namespace Jackett.Updater
|
||||
"Definitions/yggtorrent.yml",
|
||||
"Definitions/yourbittorrent.yml",
|
||||
"Definitions/yourexotic.yml", // renamed to exoticaz
|
||||
"Definitions/zetorrents.yml", // renamed to world-torrent #7574
|
||||
"Definitions/zomb.yml",
|
||||
"Definitions/zooqle.yml",
|
||||
"Microsoft.Owin.dll",
|
||||
"Microsoft.Owin.FileSystems.dll",
|
||||
"Microsoft.Owin.Host.HttpListener.dll",
|
||||
"Microsoft.Owin.Hosting.dll",
|
||||
"Microsoft.Owin.StaticFiles.dll",
|
||||
"Owin.dll",
|
||||
"System.ServiceModel.dll",
|
||||
"System.Web.Http.dll",
|
||||
"System.Web.Http.Owin.dll",
|
||||
"System.Web.Http.Tracing.dll",
|
||||
"System.Xml.XPath.XmlDocument.dll"
|
||||
"Definitions/zooqle.yml"
|
||||
};
|
||||
|
||||
foreach (var oldFile in oldFiles)
|
||||
|
||||
Reference in New Issue
Block a user