mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-16 11:54:45 +01:00
Compare commits
35 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
179f062c60 | ||
|
|
834f2bf0d8 | ||
|
|
906b28a4d7 | ||
|
|
aa6d0deeb5 | ||
|
|
446f7e6ccc | ||
|
|
d072380a3c | ||
|
|
b7010440bb | ||
|
|
9d97786431 | ||
|
|
5ca49f8ffe | ||
|
|
03815c49c5 | ||
|
|
1486435554 | ||
|
|
8539aabc06 | ||
|
|
a7c49ad515 | ||
|
|
b0d195a585 | ||
|
|
288243664a | ||
|
|
ff2effbce2 | ||
|
|
6a95ff71fd | ||
|
|
2793ab1a7a | ||
|
|
3b69d8813c | ||
|
|
987271e848 | ||
|
|
9aa5140598 | ||
|
|
28364bf9cc | ||
|
|
d59e2b6ba6 | ||
|
|
dfa92394d8 | ||
|
|
c7e1f12e46 | ||
|
|
1665536696 | ||
|
|
6c33e9e1e9 | ||
|
|
44d9d41f87 | ||
|
|
ff5eb0b691 | ||
|
|
5a10f64dfb | ||
|
|
a7ed085b7a | ||
|
|
d710ab1f6f | ||
|
|
a6967e7104 | ||
|
|
c147c2b630 | ||
|
|
13b60f63ca |
6
.github/workflows/codeql-analysis.yml
vendored
6
.github/workflows/codeql-analysis.yml
vendored
@@ -61,7 +61,7 @@ jobs:
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3
|
||||
uses: github/codeql-action/init@v4
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v3
|
||||
uses: github/codeql-action/autobuild@v4
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
@@ -87,4 +87,4 @@ jobs:
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3
|
||||
uses: github/codeql-action/analyze@v4
|
||||
|
||||
@@ -109,8 +109,8 @@ If you use something else, please add it here for others.
|
||||
- About 2GB download, 8GB installed.
|
||||
- Make sure it includes the following Workload and Individual Components:
|
||||
- .NET desktop development
|
||||
- .Net Framework 4.6.2 SDK
|
||||
- .Net Framework 4.6.2 targeting pack
|
||||
- .Net Framework 4.7.1 SDK
|
||||
- .Net Framework 4.7.1 targeting pack
|
||||
- From the `Get Started` screen:
|
||||
- `Clone a repository -> Browse a repository -> GitHub -> Sign in -> clone your forked repository`
|
||||
- Double-click `Jackett.sln` in `Solution Explorer` to load your project
|
||||
|
||||
@@ -290,10 +290,11 @@ Prior versions of Jackett are no longer supported.
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
* BYRBT
|
||||
* cangbaoge (CBG)
|
||||
* CapybaraBR
|
||||
* Carp-Hunter
|
||||
* Carpathians
|
||||
* CarPT [![(invite needed)][inviteneeded]](#)
|
||||
* CarPT
|
||||
* Cathode-Ray.Tube (CRT)
|
||||
* CD File
|
||||
* CeskeForum
|
||||
@@ -413,6 +414,7 @@ Prior versions of Jackett are no longer supported.
|
||||
* KrazyZone
|
||||
* Kufei (库非)
|
||||
* Kufirc
|
||||
* lajidui
|
||||
* Last Digital Underground (LDU)
|
||||
* LastFiles (LF)
|
||||
* Lat-Team
|
||||
@@ -537,6 +539,7 @@ Prior versions of Jackett are no longer supported.
|
||||
* SugoiMusic
|
||||
* Superbits (SBS)
|
||||
* Swarmazon
|
||||
* Tangmen (唐门)
|
||||
* Tapochek
|
||||
* Tasmanit
|
||||
* Team CT Game (TCTG)
|
||||
@@ -871,7 +874,7 @@ Setting up this service is optional; most indexers don't need it.
|
||||
|
||||
## Configuring OMDb
|
||||
This feature is used as a fallback (when using the aggregate Indexer) to get the movie/series title if only the IMDB ID is provided in the request.
|
||||
To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/apikey.aspx) (1,000 daily requests limit) and paste the key in Jackett
|
||||
To use it, please just request a free API key on [OMDb](https://omdbapi.com/apikey.aspx) (1,000 daily requests limit) and paste the key in Jackett
|
||||
|
||||
## Command line switches
|
||||
|
||||
|
||||
@@ -97,11 +97,16 @@ search:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a.tooltip[href$="details"]
|
||||
selector: a#torrentName
|
||||
attribute: title
|
||||
details:
|
||||
selector: a.tooltip[href$="details"]
|
||||
_id:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: torrent
|
||||
details:
|
||||
text: "details.php?id={{ .Result._id }}"
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
|
||||
178
src/Jackett.Common/Definitions/cangbaoge.yml
Normal file
178
src/Jackett.Common/Definitions/cangbaoge.yml
Normal file
@@ -0,0 +1,178 @@
|
||||
---
|
||||
id: cangbaoge
|
||||
name: cangbaoge (CBG)
|
||||
description: "cangbaoge (CBG) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://cangbao.ge/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/剧集"}
|
||||
- {id: 403, cat: TV, desc: "Playlet/短剧"}
|
||||
- {id: 404, cat: TV/Anime, desc: "Animations/动画"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Anime/动漫"}
|
||||
- {id: 406, cat: TV/Other, desc: "Children/儿童"}
|
||||
- {id: 407, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 408, cat: TV/Documentary, desc: "Documentary/纪录"}
|
||||
- {id: 409, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 410, cat: Books, desc: "Books/书籍"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info_cookie
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
- name: info_activity
|
||||
type: info
|
||||
label: Account Inactivity
|
||||
default: "Account retention rules:<ol><li>Veteran User and above will be retained forever</li><li>Elite User and above will not have their account deleted after parking (in the control panel)</li><li>Users with a parked account will be deleted if they do not log in for 400 consecutive days</li><li>Users with a non-parked account will be deleted if they do not log in for 150 consecutive days</li><li>Users who have no traffic (i.e. upload/download data are both 0) will be deleted if they do not log in for 100 consecutive days.</li></ol>"
|
||||
|
||||
login:
|
||||
# using cookie method because site does a JS call to API/Challenge via JQuery to load response parm required for takelogin.php
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{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 }}{{ 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 }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 2.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.6 2025-06-25
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: carpt
|
||||
name: CarPT
|
||||
description: "CarPT is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
description: "CarPT is a CHINESE Private Torrent Tracker for HD MOVIES / TV / MUSIC"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
@@ -65,7 +65,7 @@ settings:
|
||||
- name: info_activity
|
||||
type: info
|
||||
label: Account Inactivity
|
||||
default: "Account Retention Rules:<ol><li>Extreme User and above will be retained forever</li><li> Elite Users and above will not be banned after parking (in the Control Panel)</li><li>Users with a parked account will be banned if they do not log in for 360 consecutive days</li><li>Users with a non-parked account will be banned if they do not log in for 150 consecutive days</li><li> Users with no traffic (i.e., upload/download data is 0) who do not log in for 60 consecutive days will be banned.</li></ol>"
|
||||
default: "Account Retention Rules:<ol><li>Extreme User and above will be retained forever</li><li> Elite Users and above will not be banned after parking (in the Control Panel)</li><li>Users with a parked account will be banned if they do not log in for 150 consecutive days</li><li>Users with a non-parked account will be banned if they do not log in for 90 consecutive days</li><li> Users with no traffic (i.e., upload/download data is 0) who do not log in for 14 consecutive days will be banned.</li></ol>"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
@@ -186,7 +186,7 @@ search:
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
text: 10
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
|
||||
@@ -84,11 +84,11 @@ login:
|
||||
search:
|
||||
# https://devil-torrents.pl/szukaj.php?search=%&typ=torrent&c4=1&c748=1
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
- path: "{{ if .Keywords }}szukaj.php{{ else }}files-torrent{{ end }}"
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
typ: torrent
|
||||
search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}%{{ end }}"
|
||||
typ: "{{ if .Keywords }}torrent{{ else }}{{ end }}"
|
||||
search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.test5 > tbody > tr > td > div[id]:has(a[href^="download/"])
|
||||
|
||||
@@ -39,6 +39,8 @@ caps:
|
||||
- {id: 342, cat: Books/EBook, desc: "Collection: Multiple Authors"}
|
||||
- {id: 343, cat: Books/EBook, desc: "Collection: Fantasy"}
|
||||
- {id: 359, cat: Books/EBook, desc: "Collection: Same Series"}
|
||||
- {id: 364, cat: Books/EBook, desc: "Collection: Multiple: Fiction"}
|
||||
- {id: 365, cat: Books/EBook, desc: "Collection: Multiple:Non Fiction"}
|
||||
# Fiction
|
||||
- {id: 281, cat: Books/EBook, desc: "Horror"}
|
||||
- {id: 282, cat: Books/EBook, desc: "Sci-Fi/Fantasy"}
|
||||
|
||||
@@ -34,6 +34,7 @@ caps:
|
||||
- {id: Hentai, cat: XXX/Other, desc: Adult Hentai}
|
||||
- {id: Highres Movies, cat: Movies/HD, desc: Movies HD}
|
||||
- {id: Linux, cat: PC, desc: Software Linux}
|
||||
- {id: "Live Action [Non-English]", cat: TV/Anime, desc: "Live Action [Non-English]"}
|
||||
- {id: Lossless, cat: Audio/Lossless, desc: Music Lossless}
|
||||
- {id: "Manga [English-translated]", cat: Books/Comics, desc: "Manga [English-translated]"}
|
||||
- {id: MP3, cat: Audio/MP3, desc: Music MP3}
|
||||
@@ -56,6 +57,7 @@ caps:
|
||||
- {id: Pictures, cat: XXX/ImageSet, desc: Adult Pictures}
|
||||
- {id: Radio Shows, cat: Audio/Other, desc: Music Radio}
|
||||
- {id: Raw, cat: TV/Anime, desc: Anime Raw}
|
||||
- {id: Software, cat: PC/0day, desc: Software}
|
||||
- {id: Subs, cat: TV/Anime, desc: Anime Subs}
|
||||
- {id: Switch, cat: Console/Other, desc: Games Switch}
|
||||
- {id: TV, cat: TV, desc: TV}
|
||||
|
||||
@@ -12,10 +12,11 @@ legacylinks:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 8, cat: TV/Anime, desc: "Hentai"}
|
||||
- {id: 7, cat: Console, desc: "H-games"}
|
||||
- {id: 5, cat: XXX, desc: "JAV"}
|
||||
- {id: 6, cat: Books, desc: "Manga"}
|
||||
- {id: 7, cat: Console, desc: "H-games"}
|
||||
- {id: 8, cat: TV/Anime, desc: "Hentai"}
|
||||
- {id: 9, cat: XXX, desc: "OFFS"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
@@ -11,11 +11,11 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Film"}
|
||||
- {id: 2, cat: Movies, desc: "Dessin animé"}
|
||||
- {id: 3, cat: Movies, desc: "Bonus BD"}
|
||||
- {id: 2, cat: Movies, desc: "Film d'animation"}
|
||||
- {id: 3, cat: Movies, desc: "Spectacle"}
|
||||
- {id: 4, cat: Movies, desc: "Concert"}
|
||||
- {id: 5, cat: TV, desc: "Série"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Série anim"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Série d'animation"}
|
||||
- {id: 7, cat: Movies, desc: "Documentaire"}
|
||||
|
||||
modes:
|
||||
@@ -117,11 +117,11 @@ search:
|
||||
selector: td.cats_col
|
||||
case:
|
||||
div.cats_film: 1
|
||||
div.cats_dessinanimé: 2
|
||||
div.cats_bonusbd: 3
|
||||
div[class*="cats_filmd"]: 2
|
||||
div.cats_spectacle: 3
|
||||
div.cats_concert: 4
|
||||
div.cats_série: 5
|
||||
div.cats_sérieanim: 6
|
||||
div[class*="cats_séried"]: 6
|
||||
div.cats_documentaire: 7
|
||||
details:
|
||||
selector: a[href^="torrents.php?id="]
|
||||
@@ -309,8 +309,9 @@ search:
|
||||
description:
|
||||
selector: div.group_info
|
||||
minimumratio:
|
||||
text: 0.6
|
||||
minimumseedtime:
|
||||
# global MR is 0.6 but torrents must be seeded for 3 days regardless of ratio
|
||||
# text: 0.6
|
||||
# minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# Gazelle
|
||||
|
||||
184
src/Jackett.Common/Definitions/lajidui.yml
Normal file
184
src/Jackett.Common/Definitions/lajidui.yml
Normal file
@@ -0,0 +1,184 @@
|
||||
---
|
||||
id: lajidui
|
||||
name: lajidui
|
||||
description: "lajidui is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://pt.lajidui.top/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentary/纪录片"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos/音乐视频"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音频"}
|
||||
- {id: 409, cat: Other/Misc, desc: "Misc/其他"}
|
||||
- {id: 410, cat: TV/Anime, desc: "Cartoon/少儿动画"}
|
||||
- {id: 411, cat: Books, desc: "EBook/电子书"}
|
||||
- {id: 412, cat: TV, desc: "Playlet/短剧"}
|
||||
- {id: 413, cat: PC/Games, desc: "Games/游戏"}
|
||||
- {id: 414, cat: PC/0day, desc: "APP/软件"}
|
||||
- {id: 415, cat: Other, desc: "Education/教育视频"}
|
||||
- {id: 416, cat: Audio/Audiobook, desc: "Audiobook/有声书"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info_cookie
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
- name: info_activity
|
||||
type: info
|
||||
label: Account Inactivity
|
||||
default: "Account retention rules:<ol><li>Veteran User and above will be retained forever</li><li>Elite User and above will not have their account deleted after parking (in the control panel)</li><li>Users with a parked account will be deleted if they do not log in for 400 consecutive days</li><li>Users with a non-parked account will be deleted if they do not log in for 150 consecutive days</li><li>Users who have no traffic (i.e. upload/download data are both 0) will be deleted if they do not log in for 100 consecutive days.</li></ol>"
|
||||
|
||||
login:
|
||||
# using cookie method because site does a JS call to API/Challenge via JQuery to load response parm required for takelogin.php
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{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 }}{{ 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 }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 2.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.9 2025-10-02
|
||||
@@ -28,6 +28,7 @@ caps:
|
||||
- {id: 35, cat: Movies/BluRay, desc: "Film/HU/Blu-ray"}
|
||||
- {id: 26, cat: Movies/DVD, desc: "Film/HU/DVD-R"}
|
||||
- {id: 5, cat: Movies/SD, desc: "Film/HU/SD"}
|
||||
- {id: 62, cat: Movies/UHD, desc: "Film/HU/UHD"}
|
||||
- {id: 4, cat: PC/Games, desc: "Játékok/ISO"}
|
||||
- {id: 39, cat: PC/Games, desc: "Játékok/Rip/Dox"}
|
||||
# - {id: 47, cat: Other, desc: "Klippek"}
|
||||
@@ -137,6 +138,7 @@ search:
|
||||
img[src="/pic/categories/5.png"]: 35
|
||||
img[src="/pic/categories/2.png"]: 26
|
||||
img[src="/pic/categories/1.png"]: 5
|
||||
img[src="/pic/categories/uhd_hun.png"]: 62
|
||||
img[src="/pic/categories/021.png"]: 4
|
||||
img[src="/pic/categories/cat_games.gif"]: 39
|
||||
# img[]: 47
|
||||
|
||||
@@ -92,16 +92,17 @@ login:
|
||||
search:
|
||||
paths:
|
||||
# https://nusantara.re/torrents.php?incldead=0&inclbookmarked=0&search=&search_area=0&search_mode=0
|
||||
# https://nusantara.re/torrents.php?incldead=0&inclbookmarked=0&search=tt0171484&search_area=4&search_mode=0
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
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 (not working)
|
||||
search_area: "{{ if .Query.IMDBID }}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 }}"
|
||||
|
||||
@@ -10,8 +10,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.my/
|
||||
links:
|
||||
- https://www.oxtorrent.fyi/
|
||||
- https://www.zone-torrent4.com/
|
||||
- https://www.oxtorrent10.com/
|
||||
- https://www.zone-torrent.town/
|
||||
- https://www.mega-torrent7.com/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
@@ -28,8 +28,6 @@ legacylinks:
|
||||
- https://oxtorrent.blog/
|
||||
- https://www.site-torrent.com/
|
||||
# actual legacylinks
|
||||
- https://www.oxtorrent.ke/
|
||||
- https://www-torrent911.com/
|
||||
- https://www.oxtorrent1.com/
|
||||
- https://www.zone-torrent.com/
|
||||
- https://www.mega-torrent3.com/
|
||||
@@ -49,6 +47,8 @@ legacylinks:
|
||||
- https://www.oxtorrent.diy/
|
||||
- https://www.zone-torrent.me/
|
||||
- https://www.mega-torrent.net/
|
||||
- https://www.oxtorrent.fyi/
|
||||
- https://www.zone-torrent4.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -9,18 +9,8 @@ type: semi-private
|
||||
encoding: windows-1251
|
||||
followredirect: true
|
||||
links:
|
||||
- https://oct06.rudub.mom/
|
||||
- https://oct11.rudub.mom/
|
||||
legacylinks:
|
||||
- https://sep22.rudub.bet/
|
||||
- http://sep23.rudub.bet/
|
||||
- https://sep23.rudub.bet/
|
||||
- http://sep24.rudub.bet/
|
||||
- https://sep24.rudub.bet/
|
||||
- http://sep25.rudub.bet/
|
||||
- https://sep25.rudub.bet/
|
||||
- http://sep26.rudub.bet/
|
||||
- https://sep26.rudub.bet/
|
||||
- http://sep27.rudub.bet/
|
||||
- https://sep27.rudub.bet/
|
||||
- http://sep28.rudub.bet/
|
||||
- https://sep28.rudub.bet/
|
||||
@@ -41,6 +31,16 @@ legacylinks:
|
||||
- http://oct05.rudub.mom/
|
||||
- https://oct05.rudub.mom/
|
||||
- http://oct06.rudub.mom/
|
||||
- https://oct06.rudub.mom/
|
||||
- http://oct07.rudub.mom/
|
||||
- https://oct07.rudub.mom/
|
||||
- http://oct08.rudub.mom/
|
||||
- https://oct08.rudub.mom/
|
||||
- http://oct09.rudub.mom/
|
||||
- https://oct09.rudub.mom/
|
||||
- http://oct10.rudub.mom/
|
||||
- https://oct10.rudub.mom/
|
||||
- http://oct11.rudub.mom/
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "TV"}
|
||||
|
||||
@@ -155,8 +155,6 @@ search:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
@@ -229,4 +227,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 6 days (as seconds = 6 x 24 x 60 x 60)
|
||||
text: 518400
|
||||
# json UNIT3D 9.1.5 (custom)
|
||||
# json UNIT3D 9.1.7 (custom)
|
||||
|
||||
201
src/Jackett.Common/Definitions/tangmen.yml
Normal file
201
src/Jackett.Common/Definitions/tangmen.yml
Normal file
@@ -0,0 +1,201 @@
|
||||
---
|
||||
id: tangmen
|
||||
name: Tangmen (唐门)
|
||||
description: "Tangmen (唐门) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://tmpt.top/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 409, cat: TV/Other, desc: "Others/其他"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音轨"}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos/MV"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 410, cat: TV, desc: "Playlet(短剧)"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
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 cyanbug Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
- name: info_activity
|
||||
type: info
|
||||
label: Account Inactivity
|
||||
default: "Account retention rules:<ol><li>Veteran User and above will be retained forever</li><li>Elite User and above will not have their account deleted after parking (in the control panel)</li><li>Users with a parked account will be deleted if they do not log in for 400 consecutive days</li><li>Users with a non-parked account will be deleted if they do not log in for 150 consecutive days</li><li>Users who have no traffic (i.e. upload/download data are both 0) will be deleted if they do not log in for 100 consecutive days.</li></ol>"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
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("失败"))
|
||||
message:
|
||||
selector: td.text
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{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 }}{{ 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 }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 2.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.6 2025-06-25
|
||||
@@ -8,10 +8,8 @@ encoding: UTF-8
|
||||
followredirect: true
|
||||
testlinktorrent: false
|
||||
links:
|
||||
- https://torrent9.to/
|
||||
- https://www5.torrent9.to/
|
||||
legacylinks:
|
||||
- https://www4.torrent9.to/
|
||||
- https://www.torrent9.cat/
|
||||
- https://www.torrent09.uno/
|
||||
- https://www.torrent9.pl/ # this is a proxy for torrent9clone
|
||||
- https://torrent9.black-mirror.xyz/ # this is a proxy for torrent9clone
|
||||
@@ -34,6 +32,7 @@ legacylinks:
|
||||
- https://torrent9.unblockninja.com/ # 403 forbidden
|
||||
- https://ww1.torrent9.fm/
|
||||
- https://www.torrent9.zone/
|
||||
- https://torrent9.to/
|
||||
|
||||
caps:
|
||||
# dont forget to update the search fields category case block
|
||||
|
||||
@@ -7,11 +7,9 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentqq388.com/
|
||||
- https://torrentegg78.com/
|
||||
- https://torrentqq389.com/
|
||||
- https://torrentegg79.com/
|
||||
legacylinks:
|
||||
- https://torrentegg64.com/
|
||||
- https://torrentqq373.com/
|
||||
- https://torrentegg65.com/
|
||||
- https://torrentqq374.com/
|
||||
- https://torrentegg66.com/
|
||||
@@ -39,6 +37,8 @@ legacylinks:
|
||||
- https://torrentegg76.com/
|
||||
- https://torrentqq387.com/
|
||||
- https://torrentegg77.com/
|
||||
- https://torrentqq388.com/
|
||||
- https://torrentegg78.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -9,9 +9,8 @@ followredirect: true
|
||||
requestDelay: 2
|
||||
# to fetch current domain use https://tzip.top/
|
||||
links:
|
||||
- https://torrentsome215.com/
|
||||
- https://torrentsome216.com/
|
||||
legacylinks:
|
||||
- https://torrentsome200.com/
|
||||
- https://torrentsome201.com/
|
||||
- https://torrentsome202.com/
|
||||
- https://torrentsome203.com/
|
||||
@@ -26,6 +25,7 @@ legacylinks:
|
||||
- https://torrentsome212.com/
|
||||
- https://torrentsome213.com/
|
||||
- https://torrentsome214.com/
|
||||
- https://torrentsome215.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -9,9 +9,8 @@ followredirect: true
|
||||
requestDelay: 2
|
||||
# to fetch current domain use https://tzip.top/
|
||||
links:
|
||||
- https://torrenttip196.top/
|
||||
- https://torrenttip197.top/
|
||||
legacylinks:
|
||||
- https://torrenttip181.top/
|
||||
- https://torrenttip182.top/
|
||||
- https://torrenttip183.top/
|
||||
- https://torrenttip184.top/
|
||||
@@ -26,6 +25,7 @@ legacylinks:
|
||||
- https://torrenttip193.top/
|
||||
- https://torrenttip194.top/
|
||||
- https://torrenttip195.top/
|
||||
- https://torrenttip196.top/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -10,8 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Кинофильмы
|
||||
# Movies
|
||||
# Кинофильмы # Movies
|
||||
- {id: 3, cat: Movies, desc: "Зарубежные кинофильмы"}
|
||||
- {id: 13, cat: Movies, desc: " |- Новинки 2025"}
|
||||
- {id: 12, cat: Movies, desc: " |- Фильмы 2021-2024"}
|
||||
@@ -36,8 +35,7 @@ caps:
|
||||
- {id: 30, cat: Movies, desc: " |- Фильмы 2011-2024 годов"}
|
||||
- {id: 29, cat: Movies, desc: " |- Фильмы 2000-2010 годов"}
|
||||
- {id: 26, cat: Movies, desc: " |- Фильмы до 2000 года"}
|
||||
# Сериалы, Видео и ТВ
|
||||
# Series, Videos and TV
|
||||
# Сериалы, Видео и ТВ # Series, Videos and TV
|
||||
- {id: 97, cat: TV, desc: "Сериалы"}
|
||||
- {id: 313, cat: TV, desc: " |- Секретные материалы \ The X-Files"}
|
||||
- {id: 103, cat: TV, desc: " |- Зарубежные сериалы"}
|
||||
@@ -46,8 +44,7 @@ caps:
|
||||
- {id: 100, cat: TV, desc: " |- Турецкие сериалы"}
|
||||
- {id: 99, cat: TV, desc: " |- Узбекские сериалы"}
|
||||
- {id: 98, cat: TV, desc: " |- Мультсериалы"}
|
||||
# Мультфильмы
|
||||
# Cartoons
|
||||
# Мультфильмы # Cartoons
|
||||
- {id: 36, cat: TV, desc: "Зарубежные мультфильмы"}
|
||||
- {id: 48, cat: TV, desc: " |- Новинки 2025"}
|
||||
- {id: 46, cat: TV, desc: " |- Полнометражные мультфильмы"}
|
||||
@@ -67,8 +64,7 @@ caps:
|
||||
- {id: 61, cat: TV, desc: " |- Мультфильмы 2011-2024 годов"}
|
||||
- {id: 60, cat: TV, desc: " |- Мультфильмы 2000-2010 годов"}
|
||||
- {id: 59, cat: TV, desc: " |- Мультфильмы до 2000 года"}
|
||||
# Музыка
|
||||
# Music
|
||||
# Музыка # Music
|
||||
- {id: 225, cat: Audio, desc: "♫ Российские исполнители ♫ (Mp3)♫"}
|
||||
- {id: 228, cat: Audio, desc: " |- Поп музыка России и стран бывшего СССР"}
|
||||
- {id: 229, cat: Audio, desc: " |- Русские поп сборники"}
|
||||
@@ -130,7 +126,7 @@ caps:
|
||||
- {id: 236, cat: Audio, desc: " |- ♫ Джаз и Блюз Hi-Res"}
|
||||
- {id: 324, cat: Audio, desc: "Оцифровки с аналоговых носителей"}
|
||||
- {id: 328, cat: Audio, desc: " |- Советская и Российская эстрада (оцифровки)"}
|
||||
- {id: 327, cat: Audio, desc: " |- Зарубежная поп музыка (оцифровки)"}
|
||||
- {id: 331, cat: Audio, desc: " |- ♫ Русский рок (оцифровки)"}
|
||||
- {id: 326, cat: Audio, desc: " |- ♫ Rock (оцифровки)"}
|
||||
- {id: 325, cat: Audio, desc: " |- ♫ Электронная музыка (оцифрофки)"}
|
||||
- {id: 133, cat: Audio, desc: "♫ Музыка в формате ♫ (lossless)"}
|
||||
@@ -147,8 +143,7 @@ caps:
|
||||
- {id: 295, cat: Audio, desc: " |- Рок музыка (Video)"}
|
||||
- {id: 294, cat: Audio, desc: " |- Музыкальные шоу"}
|
||||
- {id: 158, cat: Audio, desc: " |- Другие направления"}
|
||||
# Литература
|
||||
# Literature
|
||||
# Литература # Literature
|
||||
- {id: 166, cat: Books, desc: "Книги FB2"}
|
||||
- {id: 173, cat: Books, desc: " |- Художественная литература"}
|
||||
- {id: 314, cat: Books, desc: " |- Учебно-техническая литература"}
|
||||
@@ -160,8 +155,7 @@ caps:
|
||||
- {id: 175, cat: Audio/Audiobook, desc: " |- Любовно-фантастический роман (Audiobook)"}
|
||||
- {id: 174, cat: Audio, desc: " |- Аудиокниги на других языках (Audio)"}
|
||||
- {id: 319, cat: Books, desc: " |- Аудиокниги для детей"}
|
||||
# Игры
|
||||
# Games
|
||||
# Игры # Games
|
||||
- {id: 105, cat: PC/Games, desc: "Игры для ПК"}
|
||||
- {id: 120, cat: PC/Games, desc: " |- Горячие новинки (License`s)"}
|
||||
- {id: 119, cat: PC/Games, desc: " |- Горячие новинки (Repack`s)"}
|
||||
@@ -184,8 +178,7 @@ caps:
|
||||
- {id: 107, cat: PC/Games, desc: " |- Игровое видео"}
|
||||
- {id: 106, cat: PC/Games, desc: " |- Патчи, моды, дополнения, DLC и т.п."}
|
||||
- {id: 248, cat: PC/Games, desc: "Игры для Android"}
|
||||
# Софт
|
||||
# Software
|
||||
# Софт # Software
|
||||
- {id: 76, cat: PC, desc: "Операционные системы"}
|
||||
- {id: 80, cat: PC, desc: " |- Windows 11"}
|
||||
- {id: 79, cat: PC, desc: " |- Windows 10"}
|
||||
@@ -238,8 +231,7 @@ caps:
|
||||
- {id: 279, cat: PC, desc: " |- Разное (Графика и мультимедиа)"}
|
||||
- {id: 94, cat: PC, desc: " |- Утилиты"}
|
||||
- {id: 88, cat: PC, desc: " |- Мультимедия"}
|
||||
# Графика и Дизайн
|
||||
# Graphics and Design
|
||||
# Графика и Дизайн # Graphics and Design
|
||||
- {id: 178, cat: Other, desc: "Графические изображения"}
|
||||
- {id: 184, cat: Other, desc: " |- Обои"}
|
||||
- {id: 183, cat: Other, desc: " |- Картинки"}
|
||||
|
||||
@@ -29,10 +29,10 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
public override string Name => "DonTorrent";
|
||||
public override string Description => "DonTorrent is a SPANISH Public tracker for MOVIES / TV / GENERAL";
|
||||
// in the event the redirect is inactive https://t.me/s/dontorrent should have the latest working domain
|
||||
public override string SiteLink { get; protected set; } = "https://dontorrent.onl/";
|
||||
public override string SiteLink { get; protected set; } = "https://dontorrent.kids/";
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
"https://dontorrent.onl/",
|
||||
"https://dontorrent.kids/",
|
||||
"https://todotorrents.org/",
|
||||
"https://tomadivx.net/",
|
||||
"https://seriesblanco.one/",
|
||||
@@ -41,7 +41,6 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
};
|
||||
public override string[] LegacySiteLinks => new[]
|
||||
{
|
||||
"https://dontorrent.group/",
|
||||
"https://dontorrent.download/",
|
||||
"https://dontorrent.gift/",
|
||||
"https://dontorrent.report/",
|
||||
@@ -56,6 +55,7 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
"https://dontorrent.irish/",
|
||||
"https://dontorrent.lighting/",
|
||||
"https://dontorrent.istanbul/",
|
||||
"https://dontorrent.onl/",
|
||||
};
|
||||
public override string Language => "es-ES";
|
||||
public override string Type => "public";
|
||||
|
||||
@@ -7,7 +7,6 @@ using Newtonsoft.Json;
|
||||
|
||||
namespace Jackett.Common.Services
|
||||
{
|
||||
|
||||
public struct Movie
|
||||
{
|
||||
public string Title;
|
||||
@@ -16,11 +15,15 @@ namespace Jackett.Common.Services
|
||||
|
||||
public class OmdbResolver : IImdbResolver
|
||||
{
|
||||
public OmdbResolver(WebClient webClient, string omdbApiKey, string omdbApiUrl)
|
||||
private readonly WebClient _webClient;
|
||||
private readonly string _apiKey;
|
||||
private readonly string _apiUrl;
|
||||
|
||||
public OmdbResolver(WebClient webClient, string omdbApiKey, string omdbApiApiUrl)
|
||||
{
|
||||
WebClient = webClient;
|
||||
apiKey = omdbApiKey ?? throw new ArgumentNullException($"{nameof(omdbApiKey)} cannot be null");
|
||||
url = omdbApiUrl;
|
||||
_webClient = webClient;
|
||||
_apiKey = omdbApiKey ?? throw new ArgumentNullException($"{nameof(omdbApiKey)} cannot be null");
|
||||
_apiUrl = omdbApiApiUrl;
|
||||
}
|
||||
|
||||
public async Task<Movie> MovieForId(string id)
|
||||
@@ -28,23 +31,23 @@ namespace Jackett.Common.Services
|
||||
var imdbId = id ?? throw new ArgumentNullException($"{nameof(id)} cannot be null");
|
||||
|
||||
if (!imdbId.StartsWith("tt", StringComparison.Ordinal))
|
||||
imdbId = "tt" + imdbId;
|
||||
{
|
||||
imdbId = $"tt{imdbId}";
|
||||
}
|
||||
|
||||
if (string.IsNullOrWhiteSpace(url))
|
||||
url = "http://omdbapi.com";
|
||||
if (string.IsNullOrWhiteSpace(_apiUrl) || !Uri.TryCreate(_apiUrl, UriKind.Absolute, out var baseUri))
|
||||
{
|
||||
baseUri = new Uri("https://omdbapi.com");
|
||||
}
|
||||
|
||||
var request = new WebRequest(url + "/?apikey=" + apiKey + "&i=" + imdbId)
|
||||
var request = new WebRequest(new Uri(baseUri, $"/?apikey={_apiKey}&i={imdbId}").AbsoluteUri)
|
||||
{
|
||||
Encoding = Encoding.UTF8
|
||||
};
|
||||
var result = await WebClient.GetResultAsync(request);
|
||||
var result = await _webClient.GetResultAsync(request);
|
||||
var movie = JsonConvert.DeserializeObject<Movie>(result.ContentString);
|
||||
|
||||
return movie;
|
||||
}
|
||||
|
||||
private readonly WebClient WebClient;
|
||||
private readonly string apiKey;
|
||||
private string url;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user