Compare commits

...

53 Commits

Author SHA1 Message Date
Garfield69
fd0fa83c0f dark-shadow: add new cats 2022-12-04 08:43:39 +13:00
ilike2burnthing
acc6d5d370 torrentsir: change domain *83.com 2022-12-03 01:39:34 +00:00
Garfield69
8078c273df gay-torrents: handle all styles. resolves #13753 2022-12-03 10:05:21 +13:00
Garfield69
3ca1a08e30 kinonavse100: removed. resolves #7425 2022-12-03 08:18:36 +13:00
Garfield69
9b826fa898 torrentqq: bump domain 2022-12-02 14:32:34 +13:00
Garfield69
7f5114cbb3 audiobookbay: add format and bitrate to title
also add row andmatch
also only search title
2022-12-02 06:49:38 +13:00
Garfield69
52af9cc1ef crt2fa: b662db552b 2022-11-30 06:15:26 +13:00
ilike2burnthing
b662db552b cathoderaytube: typo fix
https://github.com/Prowlarr/Indexers/pull/242#pullrequestreview-1197849805
2022-11-29 16:18:02 +00:00
ilike2burnthing
ad515c6c25 assorted: update onion proxies (#13749) 2022-11-29 11:48:28 +00:00
Garfield69
4a11ebe695 thenewfun: add new cats 2022-11-29 16:15:48 +13:00
Garfield69
94337b88bc dontorrent: new domain 2022-11-29 15:37:55 +13:00
Garfield69
f9de21f65b btdigg: replace .onion 2022-11-29 15:37:26 +13:00
ilike2burnthing
1401676fb5 hellashut: category can be missing 2022-11-28 21:58:06 +00:00
ilike2burnthing
b28b1d689d crazyspirits: restore MST 2022-11-28 19:38:27 +00:00
Garfield69
3becb28f26 prostylex: removed. resolves #3966 2022-11-29 06:20:58 +13:00
Garfield69
0d50097b80 zetorrents: new domain 2022-11-28 14:57:19 +13:00
Garfield69
66c8c62ffe lint 2022-11-28 14:42:59 +13:00
Garfield69
af9fecdb16 add seedfile a Romanian private site. resolves #5551 2022-11-28 14:23:41 +13:00
Garfield69
e593689172 retroflix: MST is now 5d 2022-11-28 13:46:12 +13:00
ilike2burnthing
784a631405 asssorted: fix prepend keywordsfilters. resolves #13747 (#13748) 2022-11-27 11:59:21 +00:00
Garfield69
bc1cf8fd8e pwtorrents: back to https 2022-11-26 17:54:06 +13:00
Garfield69
668c07c8c1 3evils: typo 6a3ee05cb3 fix 2022-11-26 17:48:04 +13:00
Garfield69
6a3ee05cb3 3evils: add new cats 2022-11-26 08:13:47 +13:00
Garfield69
abdc199efa add bitnova a Polish semi-private site. resolves #13741 2022-11-25 18:12:02 +13:00
Garfield69
e4342cea91 torrentsir: bump domain 2022-11-25 16:05:14 +13:00
Garfield69
465adbfe47 torrentqq: bump domain 2022-11-25 16:03:40 +13:00
Garfield69
e494cd0bc3 dontorrent: add new tv cdn. resolves #12959 2022-11-25 05:51:27 +13:00
Garfield69
32fbdd7961 oldtoonsworld: add poster and genre results 2022-11-24 18:07:25 +13:00
Garfield69
5022611d7a fuzer: internal releases have extra links 2022-11-24 16:12:55 +13:00
Garfield69
5cd2d07f41 lint 2022-11-24 07:07:36 +13:00
Garfield69
bbb98bed79 add mojblink a private Slovenian site. resolves #4090 2022-11-24 06:56:25 +13:00
Garfield69
e2376213a1 bitturk: add new cat 2022-11-23 16:46:24 +13:00
Garfield69
488dfb2851 torrentwhiz: bump domain 2022-11-23 16:24:49 +13:00
Garfield69
1de7bdf028 torrentview: bump domain 2022-11-23 16:24:35 +13:00
Garfield69
0809b2f2ff torrent911: new domains 2022-11-23 16:24:23 +13:00
Garfield69
58125a832d lint 2022-11-23 13:38:07 +13:00
Garfield69
45ef8e0581 add 3evils. resolves #13534 2022-11-23 13:27:30 +13:00
Garfield69
5ca5372ae0 torrentleech: handle null title. resolves #13736 2022-11-23 08:52:14 +13:00
Garfield69
a9349b62ce torrentz2eu: switch to beta2 engine. resolves #10959 2022-11-22 19:16:29 +13:00
Garfield69
04000bea5d anthelion: removed. #7923
with the anthelion website having made changes to the browse page, this is a opportune time to remove the C# version of the indexer.
anthelion-api is the preferred indexer using apikey and yml.
2022-11-22 16:52:27 +13:00
Garfield69
c723adf044 torrent-explosiv: cat descr update 2022-11-22 16:35:00 +13:00
Garfield69
0bd82dda0c 3evils-api: gone. #13534
unit3d to be replaced by new 3evil engine U-232 V5
2022-11-22 15:25:31 +13:00
Garfield69
1fb92b204c dreamtracker: add new cats 2022-11-21 16:07:11 +13:00
Garfield69
9ced3c4fd5 fuzer: handle all styles. resolves #13729 2022-11-21 11:01:10 +13:00
Garfield69
4312d41a44 peeratiko: add new cats 2022-11-20 15:50:57 +13:00
Garfield69
22647296cb torrent-town: removed. resolves #13571 2022-11-19 10:44:00 +13:00
Garfield69
8a062aa99f swarmazon: add poster 2022-11-19 06:53:56 +13:00
Garfield69
573aba97cb add swarmazon-api. resolves #13725 2022-11-19 06:51:30 +13:00
Garfield69
c299f26755 torrentqq: bump domain 2022-11-18 16:01:39 +13:00
Garfield69
5a92e22640 torrentsir: bump domain 2022-11-18 16:01:27 +13:00
Garfield69
068ea8ebc7 btsow: new domain 2022-11-18 16:01:11 +13:00
HDVinnie
7b4f02b67b blutopia: 6.5.0 freeleech search filter fix (#13727) 2022-11-18 15:45:51 +13:00
Garfield69
6444617554 pixelcove: fix date parse. resolves #13726 2022-11-18 15:35:18 +13:00
62 changed files with 1018 additions and 1089 deletions

View File

@@ -115,7 +115,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* PornoTorrent
* Portugas
* ProPorn
* ProStyleX
* Rapidzona
* RARBG
* RinTor
@@ -179,6 +178,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Anime-Free
* AnimeLayer
* ArenaBG
* BitNova
* BookTracker
* BootyTape
* Catorrent
@@ -198,7 +198,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* HD-CzTorrent
* HDGalaKtik
* HunTorrent
* KinoNaVse100
* Kinorun
* Kinozal
* LostFilm.tv
@@ -227,7 +226,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Toloka.to
* Torrent-Explosiv
* Torrents-Local
* Torrents-Town (T-T)
* TribalMixes
* Union Fansub
* YggTorrent (YGG)
@@ -432,6 +430,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* MIRcrew
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
* MNV (Max-New-Vision)
* MOJBLiNK
* Mononoké-BT [![(invite needed)][inviteneeded]](#)
* MoreThanTV (MTV)
* MouseBits
@@ -496,6 +495,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* SceneTime
* SDBits [![(invite needed)][inviteneeded]](#)
* Secret Cinema
* SeedFile
* Shareisland
* Shazbat [![(invite needed)][inviteneeded]](#)
* SiamBIT

View File

@@ -1,147 +0,0 @@
---
id: 3evils-api
name: 3Evils (API)
description: "3Evils is a Private site for MOVIES / TV / MUSIC "
language: en-US
type: private
encoding: UTF-8
links:
- https://3evils.net/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 3, cat: Audio, desc: "Music"}
- {id: 4, cat: PC/Games, desc: "Game"}
- {id: 5, cat: PC/0day, desc: "Application"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
music-search: [q]
settings:
- name: apikey
type: text
label: APIKey
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing your <a href=\"https://3evils.net/\" target =_blank>3Evils</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: created_at
options:
created_at: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
text: "The API key was not accepted by {{ .Config.sitelink }}."
search:
paths:
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
- path: "/api/torrents/filter"
response:
type: json
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
name: "{{ .Keywords }}"
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:
selector: category_id
title:
selector: name
details:
selector: details_link
download:
selector: download_link
poster:
selector: poster
filters:
- name: replace
args: ["https://via.placeholder.com/90x135", ""]
imdbid:
selector: imdb_id
tmdbid:
selector: tmdb_id
tvdbid:
selector: tvdb_id
files:
selector: num_file
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: times_completed
date:
# 2021-10-18T00:34:50.000000Z"
selector: created_at
size:
selector: size
downloadvolumefactor:
# api returns 0%, 25%, 50%, 75%, 100%
selector: freeleech
case:
0%: 1 # not free
25%: 0.75
50%: 0.5
75%: 0.25
100%: 0 # freeleech
"*": 0 # catch errors
uploadvolumefactor:
# api returns 0=false, 1=true
selector: double_upload
case:
0: 1 # normal
1: 2 # double
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
# minimumratio:
# text: 0.4
# minimumseedtime:
# # 2 days (as seconds = 2 x 24 x 60 x 60)
# text: 172800
# json UNIT3D 6.3.0

View File

@@ -0,0 +1,184 @@
---
id: 3evils
name: 3Evils
description: "3Evils is a Private Torrent Tracker for MOVIES / TV / GENERAL"
language: en-US
type: private
encoding: UTF-8
links:
- https://3evils.net/
caps:
categorymappings:
- {id: 1, cat: PC, desc: "Apps"}
- {id: 24, cat: Books, desc: "Books/Magazines"}
- {id: 12, cat: TV/Anime, desc: "Movies/Anime"}
- {id: 31, cat: Movies, desc: "Movies/FooKaS RG"}
- {id: 84, cat: Movies, desc: "Movies/Kids"}
- {id: 55, cat: Movies/WEB-DL, desc: "Movies/WEB-DL"}
- {id: 70, cat: Movies/WEB-DL, desc: "Movies/WEBRip"}
- {id: 71, cat: Movies/HD, desc: "Movies/x265"}
- {id: 64, cat: Movies/SD, desc: "Movies/XViD"}
- {id: 26, cat: Audio/Lossless, desc: "Music/FLAC"}
- {id: 10, cat: Audio/MP3, desc: "Music/MP3"}
- {id: 63, cat: Audio/Video, desc: "Music/Videos"}
- {id: 29, cat: Movies, desc: "Movies/Packs"}
- {id: 19, cat: Audio, desc: "Music/Packs"}
- {id: 61, cat: TV/Anime, desc: "TV/Anime"}
- {id: 85, cat: TV, desc: "TV/Kids"}
- {id: 86, cat: TV, desc: "TV/Packs"}
- {id: 82, cat: TV/Sport, desc: "TV/Sports"}
- {id: 36, cat: TV/HD, desc: "TV/x265"}
- {id: 45, cat: TV/SD, desc: "TV/XViD"}
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: 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. The default is <i>15</i>.
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
use_ssl: 1
perm_ssl: ""
error:
- selector: td.embedded:contains("Login failed!")
test:
path: /
selector: a[href*="/logout.php?hash_please="]
search:
paths:
# https://www.3evils.net/browse.php?c16=1&c17=1&c3=1&c4=1&search=&searchin=title&incldead=0&only_free=1
- path: browse.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# title, descr, genre, all
searchin: title
# 0 active, 1 incldead, 2 onlydead
incldead: 1
only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.table-bordered tbody tr:has(a[href^="download.php?torrent="])
fields:
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="details.php?id="]
attribute: onmouseover
filters:
- name: regexp
args: "Tip\\('<b>(.*?)</b>"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?torrent="]
attribute: href
poster:
selector: a[href^="details.php?id="]
attribute: onmouseover
filters:
# onmouseover="Tip('<b>blahblah /><img src=\'img.php/tvmaze/80.jpg\' blahblah />');"
# <img src=\'./pic/noposter.png\'
- name: regexp
args: "src=\\\\'(.+?)\\\\'"
- name: replace
args: ["./pic/noposter.png", ""]
files:
selector: td:nth-last-child(9)
# 2 flavours of dates
date_day:
# Today<br> 10:20 AM
# Yesterday<br> 08:03 PM
optional: true
selector: td:nth-last-child(7):contains("day")
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
date_year:
# Feb 14 2019<br> 10:20 AM
optional: true
selector: td:nth-last-child(7):not(:contains("day"))
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "Jan 2 2006 03:04 PM -07:00"
date:
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
size:
selector: td:nth-last-child(6)
grabs:
selector: td:nth-last-child(5)
filters:
- name: regexp
args: (\d+)
seeders:
selector: td:nth-last-child(4)
leechers:
selector: td:nth-last-child(3)
downloadvolumefactor:
case:
"a.info:contains(\"[FREE]\")": 0
"*": 1
uploadvolumefactor:
case:
"*": 1
minimumratio:
text: 1.0
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# U-232 V5 (customised)

View File

@@ -120,14 +120,16 @@ search:
# with just 7 results per page, try to grab up to 35 results
# http://audiobookbay.nl/?s=teeth
# http://audiobookbay.nl/page/2/?s=teeth
- path: "{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
- path: "page/2/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
- path: "page/3/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
- path: "page/4/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
- path: "page/5/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
- path: "{{ if .Keywords }}?s={{ .Keywords }}&tt=1{{ else }}{{ end }}"
- path: "page/2/{{ if .Keywords }}?s={{ .Keywords }}&tt=1{{ else }}{{ end }}"
- path: "page/3/{{ if .Keywords }}?s={{ .Keywords }}&tt=1{{ else }}{{ end }}"
- path: "page/4/{{ if .Keywords }}?s={{ .Keywords }}&tt=1{{ else }}{{ end }}"
- path: "page/5/{{ if .Keywords }}?s={{ .Keywords }}&tt=1{{ else }}{{ end }}"
rows:
selector: div.post:has(div[class="postTitle"])
filters:
- name: andmatch
fields:
category:
@@ -135,8 +137,27 @@ search:
filters:
- name: regexp
args: "Category: (.+?)\\s"
_format:
optional: true
selector: div.postContent
filters:
- name: regexp
args: "Format: (.+?) /"
- name: replace
args: ["?", ""]
_bitrate:
optional: true
selector: div.postContent
filters:
- name: regexp
args: "Bitrate: (.+?)File"
- name: replace
args: ["?", ""]
title:
selector: div.postTitle
filters:
- name: append
args: "{{ if .Result._format }} [{{ .Result._format }}]{{ else }}{{ end }}{{ if .Result._bitrate }} [{{ .Result._bitrate }}]{{ else }}{{ end }}"
details:
selector: div.postTitle h2 a
attribute: href
@@ -163,11 +184,7 @@ search:
- name: regexp
args: "File Size: (.+?)$"
- name: replace
args: ["MBs", "MB"]
- name: replace
args: ["GBs", "GB"]
- name: replace
args: ["KBs", "KB"]
args: ["s", ""]
size:
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}0 B{{ end }}"
seeders:

View File

@@ -0,0 +1,119 @@
---
id: bitnova
name: BitNova
description: "BitNova is a POLISH Semi-Private Torrent Tracker for 0DAY / GENERAL"
language: pl-PL
type: semi-private
encoding: UTF-8
links:
- https://bitnova.info/
caps:
categorymappings:
- {id: 1, cat: PC, desc: "Programy"}
- {id: 2, cat: PC/0day, desc: "Programy dla Windows"}
- {id: 3, cat: PC, desc: "Programy dla Linux"}
- {id: 4, cat: PC/Mac, desc: "Programy dla Mac"}
- {id: 5, cat: TV/Anime, desc: "Anime"}
- {id: 6, cat: Books, desc: "eBooki"}
- {id: 8, cat: Movies, desc: "Dla dzieci"}
- {id: 9, cat: Movies, desc: "Filmy"}
- {id: 10, cat: Movies/SD, desc: "Filmy (S)VCD"}
- {id: 11, cat: Movies/SD, desc: "DivX/XviD"}
- {id: 12, cat: Movies/DVD, desc: "Filmy DVD"}
- {id: 13, cat: Movies/BluRay, desc: "Filmy HDDVD/BluRay"}
- {id: 14, cat: Movies/SD, desc: "Filmy RMVB"}
- {id: 15, cat: Movies/HD, desc: "Filmy x264"}
- {id: 342, cat: Movies/3D, desc: "Filmy 3D"}
- {id: 16, cat: Console, desc: "Gry"}
- {id: 17, cat: Console, desc: "Gry na konsole"}
- {id: 18, cat: PC/Games, desc: "Gry komputerowe"}
- {id: 19, cat: PC/Mobile-Other, desc: "GSM/PDA"}
- {id: 20, cat: PC/Mobile-Other, desc: "GSM/PDA Dodatki"}
- {id: 21, cat: PC/Mobile-Other, desc: "GSM/PDA Filmy"}
- {id: 22, cat: PC/Mobile-Other, desc: "GSM/PDA Gry"}
- {id: 23, cat: PC/Mobile-Other, desc: "GSM/PDA Programy"}
- {id: 24, cat: Audio, desc: "Muzyka"}
- {id: 25, cat: Audio/MP3, desc: "Muzyka Albumy"}
- {id: 26, cat: Audio/Video, desc: "Muzyka Teledyski/Koncerty"}
- {id: 27, cat: Other, desc: "Różne"}
- {id: 28, cat: TV/Sport, desc: "Sport"}
- {id: 29, cat: TV, desc: "TV"}
- {id: 30, cat: XXX, desc: "Erotyka"}
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
login:
path: login.php?act=login
method: post
inputs:
login: "{{ .Config.username }}"
pass: "{{ .Config.password }}"
remember: 1
error:
- selector: div#errmsg
test:
path: /
selector: a[href^="/login.php?act=logout"]
search:
paths:
- path: search
inputs:
q: "{{ if .Query.Keywords }}{{ .Query.Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
cid: 0
rows:
selector: table#searchRes > tbody > tr
fields:
category:
selector: a[href^="/torrenty/"]
attribute: href
filters:
- name: regexp
args: (\d+)-
title:
selector: a[href^="/torrent/"]
details:
selector: a[href^="/torrent/"]
attribute: href
download:
selector: a[href^="/torrent/"]
attribute: href
filters:
- name: replace
args: ["/torrent/", "/torrent/download/"]
size:
selector: td:nth-last-child(5)
seeders:
selector: td:nth-last-child(4)
leechers:
selector: td:nth-last-child(3)
grabs:
selector: td:nth-last-child(2)
date:
selector: td:nth-last-child(1)
filters:
- name: append
args: " +01:00" # CET
- name: dateparse
args: "2006-01-02 15:04:05 -07:00"
downloadvolumefactor:
text: 1
uploadvolumefactor:
text: 1
# engine v2.0

View File

@@ -121,7 +121,7 @@ search:
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: div.torrentrow:has(a[href^="download.php?torrent="])

View File

@@ -27,6 +27,7 @@ caps:
- {id: 90, cat: TV, desc: "Disney+"}
- {id: 91, cat: TV, desc: "Prime Video"}
- {id: 93, cat: TV, desc: "Gain"}
- {id: 94, cat: TV, desc: "ATVP"}
- {id: 58, cat: Movies, desc: "Film"}
- {id: 72, cat: Movies, desc: "Belgesel"}
- {id: 60, cat: Movies/3D, desc: "3D"}
@@ -59,7 +60,6 @@ caps:
- {id: 2, cat: Console, desc: "Oyun"}
- {id: 74, cat: PC/Games, desc: "Oyun PC"}
- {id: 84, cat: Console/PS3, desc: "Oyun Playstation"}
- {id: 85, cat: Console/PS3, desc: "Oyun Playstation 2"}
- {id: 82, cat: Console/PSP, desc: " Oyun PSP"}
- {id: 83, cat: Console/Other, desc: "Oyun Gameboy"}
- {id: 87, cat: Console/XBox, desc: "Oyun XBOX"}

View File

@@ -71,7 +71,7 @@ search:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
name: "{{ .Keywords }}"
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
@@ -155,4 +155,4 @@ search:
minimumseedtime:
# 7 day (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 6.4.0b
# json UNIT3D 6.5.0b

View File

@@ -7,12 +7,13 @@ type: public
encoding: UTF-8
links:
- https://btdig.com/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ws/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.tor2web.to/
legacylinks:
- http://btdiggwzoyrwwbiv.onion.ly/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
- https://btdiggwzoyrwwbiv.onion.ly/
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ws/ # redirects to spam
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/ # not found
caps:
categories:

View File

@@ -7,9 +7,8 @@ type: public
encoding: UTF-8
# use https://tellme.pw/btsow to find the new domain
links:
- https://btsow.autos/
- https://btsow.beauty/
legacylinks:
- https://btsow.work/
- https://btsow.store/
- https://btsow.surf/
- https://btsow.com/
@@ -24,6 +23,7 @@ legacylinks:
- https://btsow.cfd/
- https://btsow.sbs/
- https://btsow.quest/
- https://btsow.autos/
caps:
categories:

View File

@@ -107,7 +107,7 @@ search:
- name: re_replace # Seasons X-Y --> SX-SY
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
- name: re_replace # Season X --> S0X
args: ["(?i)season\\s*(\\d+)", "S$"]
args: ["(?i)season\\s*(\\d+)", "S$1"]
- name: re_replace
args: ["(?i)Complete\\s+Series", ""]
details:

View File

@@ -284,4 +284,7 @@ search:
text: 1
minimumratio:
text: 1.0
minimumseedtime:
# 2 day (as seconds = 2 x 24 x 60 x 60)
text: 172800
# TT3.1

View File

@@ -97,7 +97,7 @@ search:
- name: re_replace # Seasons X-Y --> SX-SY
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
- name: re_replace # Season X --> S0X
args: ["(?i)season\\s*(\\d+)", "S$"]
args: ["(?i)season\\s*(\\d+)", "S$1"]
- name: re_replace
args: ["(?i)Complete\\s+Series", ""]
details:

View File

@@ -18,6 +18,11 @@ caps:
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
# Kids
- {id: 143, cat: Movies, desc: "Kids Filme"}
- {id: 144, cat: TV, desc: "Kids Serien"}
- {id: 145, cat: Audio, desc: "Kids Music"}
- {id: 146, cat: Audio, desc: "Kids Audio"}
# Serien
- {id: 60, cat: TV/SD, desc: "Serien SD"}
- {id: 57, cat: TV/HD, desc: "Serien HD"}

View File

@@ -10,14 +10,12 @@ links:
- https://www.demonoid.is/
- https://www.dnoid.to/
- https://www.dnoid.pw/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/
- https://demonoid.unblockit.page/
- https://demonoid.torrentbay.to/
- https://demonoid.nocensor.lol/
legacylinks:
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
- https://demonoid.nocensor.space/
- https://demonoid.unblockit.ws/
- https://demonoid.nocensor.work/
- https://demonoid.unblockit.kim/
@@ -36,6 +34,8 @@ legacylinks:
- https://demonoid.unblockit.cat/
- https://demonoid.unblockit.nz/
- https://demonoid.nocensor.world/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
caps:
categorymappings:

View File

@@ -116,7 +116,7 @@ search:
searchscope: 1
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
# does not support multi category filtering
# does not support imdbid searches, does not return imdb link in results
# does not support sorting

View File

@@ -21,6 +21,7 @@ caps:
- {id: 17, cat: Movies/Other, desc: "Cartoon Sub. Embed."}
- {id: 31, cat: Movies/Other, desc: "Cartoon in Greek "}
- {id: 107, cat: Movies/Other, desc: "Kids in Greek"}
- {id: 120, cat: Movies/Other, desc: "Cartoon Series"}
- {id: 88, cat: Audio/Other, desc: "Music Kids"}
# Movies Subs No Embed.
- {id: 38, cat: Movies, desc: "Movies Subs No Embed."}
@@ -76,6 +77,7 @@ caps:
- {id: 83, cat: Books/EBook, desc: "Ebooks"}
- {id: 110, cat: Books/Mags, desc: "EMagazines"}
- {id: 82, cat: Other, desc: "Pics & Images"}
- {id: 119, cat: Audio/Audiobook, desc: "Audio Books"}
# Games
- {id: 2, cat: PC/Games, desc: "Games"}
- {id: 27, cat: PC/Games, desc: "PC"}
@@ -89,6 +91,7 @@ caps:
- {id: 94, cat: Audio/Lossless, desc: "Foreign Flac"}
- {id: 117, cat: Audio, desc: "Compact Disc Club"}
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
- {id: 118, cat: Audio, desc: "Dream Radio Music"}
modes:
search: [q]

View File

@@ -108,7 +108,7 @@ search:
- name: diacritics
args: replace
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
- name: re_replace # S01 to сезон 1
args: ["(?i)S0*(\\d+)", "сезон $1"]
- name: re_replace # S01E01 to сезон 1 серии 1

View File

@@ -114,7 +114,7 @@ search:
order: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.xtrz > tbody > tr[class^="ttable_col"]

View File

@@ -13,7 +13,7 @@ legacylinks:
caps:
categorymappings:
# Movies
- {id: 73, cat: Movies, desc: "סרטים"}
- {id: 73, cat: Movies, desc: "FuzePacks -סרטים"}
- {id: 7, cat: Movies/SD, desc: "סרטים"}
- {id: 60, cat: Movies/SD, desc: "סרטים ישראליים"}
- {id: 9, cat: Movies/HD, desc: "סרטים HD"}
@@ -24,7 +24,7 @@ caps:
- {id: 58, cat: Movies/DVD, desc: "סרטים DVD-R"}
- {id: 83, cat: Movies/Other, desc: "סרטים מדובבים"}
# TV
- {id: 76, cat: TV, desc: "סדרות"}
- {id: 76, cat: TV, desc: "FuzePacks - סדרות"}
- {id: 8, cat: TV/SD, desc: "סדרות"}
- {id: 62, cat: TV/SD, desc: "סדרות ישראליות"}
- {id: 10, cat: TV/HD, desc: "Tסדרות HD"}
@@ -34,7 +34,7 @@ caps:
- {id: 65, cat: TV/Anime, desc: "אנימה"}
- {id: 64, cat: TV/Sport, desc: "ספורט"}
# PC
- {id: 74, cat: PC, desc: "תוכנות"}
- {id: 74, cat: PC, desc: "FuzePacks - תוכנות"}
- {id: 15, cat: PC/0day, desc: "תוכנות PC"}
- {id: 11, cat: PC/Games, desc: "משחקים PC"}
- {id: 13, cat: PC/Mobile-Android, desc: "אפליקציות לאנדרואיד"}
@@ -43,13 +43,13 @@ caps:
# XXX
- {id: 16, cat: XXX, desc: "למבוגרים בלבד"}
# Games
- {id: 72, cat: Console, desc: "משחקים"}
- {id: 72, cat: Console, desc: "FuzePacks - משחקים"}
- {id: 55, cat: Console/XBox, desc: "משחקים XBOX"}
- {id: 12, cat: Console/PSP, desc: "משחקים PS"}
- {id: 56, cat: Console/Wii, desc: "משחקים WII"}
- {id: 57, cat: PC/Mobile-Other, desc: "משחקי קונסולות ניידות"}
# Music
- {id: 75, cat: Audio, desc: "שירים"}
- {id: 75, cat: Audio, desc: "FuzePacks - שירים"}
- {id: 14, cat: Audio, desc: "מוזיקה עולמית"}
- {id: 66, cat: Audio, desc: "מוזיקה ישראלית"}
- {id: 68, cat: Audio, desc: "פסקולים"}
@@ -116,17 +116,19 @@ search:
$raw: "{{ range .Categories }}c[]={{.}}&{{end}}"
rows:
selector: .box_torrent
# Others, Classic
selector: .box_torrent, table.tborder[align="center"][border="0"][cellpadding="0"][cellspacing="1"][class="tborder"][width="100%"] > tbody > tr:has(a[href^="/attachment.php?"])
fields:
category:
selector: a[href^="/browse.php?cat="]
# Others, Classic
selector: a[href^="/browse.php?cat="], a[href^="/browse.php?r3=1&cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: .main_title
selector: a[href^="/showthread.php?t="]
details:
selector: a[href^="/showthread.php?t="]
attribute: href
@@ -134,30 +136,30 @@ search:
selector: a[href^="/attachment.php?attachmentid="]
attribute: href
imdbid:
selector: span.imdb-inline > a
selector: a[href*="imdb.com/title/tt"]
attribute: href
poster:
selector: a[imgsrc]
attribute: imgsrc
size:
selector: td:nth-child(4)
selector: td.inline_info:nth-last-child(4)
grabs:
selector: td:nth-child(5)
selector: td.inline_info:nth-last-child(3)
filters:
- name: replace
args: [",", ""]
seeders:
selector: td:nth-child(6)
selector: td.inline_info:nth-last-child(2)
filters:
- name: replace
args: [",", ""]
leechers:
selector: td:nth-child(7)
selector: td.inline_info:nth-last-child(1)
filters:
- name: replace
args: [",", ""]
date:
selector: .up_info2
selector: div[class^="up_info"]
filters:
- name: append
args: " +02:00" # IST

View File

@@ -131,37 +131,40 @@ search:
freeleech: "{{ if .Config.freeleech }}1{{ else }}0{{ end }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: ul.TorrentList
selector: ul.TorrentList, ul.Torrent-List
fields:
category:
selector: .TorrentList1 > a
selector: a[href^="torrentslist.php?type="]
attribute: href
filters:
- name: querystring
args: type
title:
selector: .TorrentList2 > a
selector: a[href^="torrentdetails.php?torrentid="]
filters:
- name: replace
args: ["[FFL] ", ""] # remove freeleech flag from title
download:
selector: .TorrentList2 > a
selector: a[href^="torrentdetails.php?torrentid="]
attribute: href
filters:
- name: append
args: "&do=download"
details:
selector: .TorrentList2 > a
selector: a[href^="torrentdetails.php?torrentid="]
attribute: href
size:
selector: .TorrentList3
selector: .TorrentList3, .Torrent-List-Size
seeders:
selector: .TorrentList6
selector: .TorrentList6, .Torrent-List-Seeds
leechers:
selector: .TorrentList7
selector: .TorrentList7, .Torrent-List-Peers
date:
selector: li.TorrentList8
selector: .TorrentList8, .Torrent-List-Date
filters:
- name: append
args: " +02:00" # EET
@@ -169,7 +172,7 @@ search:
args: "15:04 02-Jan-2006 -07:00"
downloadvolumefactor:
case:
".TorrentList2 > a:contains(\"[FFL]\")": 0
"a:contains(\"[FFL]\")": 0
"*": 1
uploadvolumefactor:
text: 1

View File

@@ -140,15 +140,18 @@ search:
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.ttable_headinner tr.t-row
fields:
category:
text: 56
category|noappend:
selector: a[href*="cat="]
attribute: href
optional: true
filters:
- name: querystring
args: cat

View File

@@ -1,228 +0,0 @@
---
id: kinonavse100
name: KinoNaVse100
description: "Кино на все 100 is a RUSSIAN Semi-Private Torrent Tracker for MOVIES / TV / MUSIC"
language: ru-RU
type: semi-private
encoding: UTF-8
links:
- http://kinonavse100.com/ # https is not supported self signed ca is untrusted
caps:
categorymappings:
- {id: 1, cat: Other, desc: "Трекер"}
- {id: 113, cat: Other, desc: "Трекер Сбор средств на перевод фильмов"}
- {id: 123, cat: Other, desc: "Трекер Фильмы в работе"}
- {id: 109, cat: Movies, desc: "Трекер Эксклюзивы Кино на все 100"}
- {id: 61, cat: Movies, desc: "Трекер Зарубежное кино"}
- {id: 62, cat: Movies, desc: "Трекер Зарубежное кино Новинки кино 2014-2016"}
- {id: 63, cat: Movies, desc: "Трекер Зарубежное кино Боевики"}
- {id: 70, cat: Movies, desc: "Трекер Зарубежное кино Триллеры"}
- {id: 71, cat: Movies, desc: "Трекер Зарубежное кино Ужасы"}
- {id: 72, cat: Movies, desc: "Трекер Зарубежное кино Катастрофы"}
- {id: 73, cat: Movies, desc: "Трекер Зарубежное кино Приключения"}
- {id: 74, cat: Movies, desc: "Трекер Зарубежное кино Фантастика, Фэнтези"}
- {id: 75, cat: Movies, desc: "Трекер Зарубежное кино Комедии"}
- {id: 76, cat: Movies, desc: "Трекер Зарубежное кино Драмы, Мелодрамы"}
- {id: 77, cat: Movies, desc: "Трекер Зарубежное кино Криминал"}
- {id: 78, cat: Movies, desc: "Трекер Зарубежное кино Детективы"}
- {id: 85, cat: Movies, desc: "Трекер Зарубежное кино Военные"}
- {id: 86, cat: Movies, desc: "Трекер Зарубежное кино Вестерн"}
- {id: 87, cat: Movies, desc: "Трекер Зарубежное кино Арт-хаус и авторское кино"}
- {id: 95, cat: Movies, desc: "Трекер Зарубежное кино Короткий метр"}
- {id: 88, cat: Movies, desc: "Трекер Зарубежное кино Классика мирового кино"}
- {id: 108, cat: Movies, desc: "Трекер Зарубежное кино Мультфильмы"}
- {id: 111, cat: TV, desc: "Трекер Зарубежное кино Сериалы"}
- {id: 110, cat: Movies, desc: "Трекер Российское кино"}
- {id: 112, cat: TV, desc: "Tрекер Российское кино Сериалы"}
- {id: 21, cat: TV, desc: "Tрекер HDvideo"}
- {id: 64, cat: TV, desc: "Tрекер HDvideo Blu-ray"}
- {id: 65, cat: TV, desc: "Tрекер HDvideo BD-Remux"}
- {id: 69, cat: TV, desc: "Tрекер HDvideo HD-Video в 3D"}
- {id: 89, cat: TV, desc: "Tрекер Зомби"}
- {id: 96, cat: TV, desc: "Tрекер Зомби Зомби каталог"}
- {id: 106, cat: TV, desc: "Tрекер Зомби Сериалы"}
- {id: 122, cat: TV/Anime, desc: "Tрекер Аниме"}
- {id: 115, cat: Audio, desc: "Музыка"}
- {id: 116, cat: Audio, desc: "Музыка Популярная музыка"}
- {id: 117, cat: Audio, desc: "Музыка Рок-музыка"}
- {id: 118, cat: Audio, desc: "Музыка Электронная музыка"}
- {id: 119, cat: Audio, desc: "Музыка Джазовая и Блюзовая музыка"}
- {id: 98, cat: Other, desc: "Фильмографии"}
- {id: 91, cat: Other, desc: "Кино Новости"}
- {id: 92, cat: Other, desc: "Кино Новости Новости мира кино"}
- {id: 93, cat: Other, desc: "Кино Новости КиноПлощадка"}
- {id: 94, cat: Other, desc: "Кино Новости КиноТрейлеры"}
- {id: 79, cat: Other, desc: "Форум и общение"}
- {id: 97, cat: Other, desc: "Форум и общение Рецензии фильмов"}
- {id: 80, cat: Other, desc: "Форум и общение Общение на разные темы"}
- {id: 81, cat: Other, desc: "Форум и общение Компьютеры, железо и софт"}
- {id: 82, cat: Other, desc: "Форум и общение Советы и помощь"}
- {id: 83, cat: Other, desc: "Технический раздел"}
- {id: 84, cat: Other, desc: "Технический раздел Вопросы по трекеру и форуму"}
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: sort
type: select
label: Sort requested from site
default: t
options:
t: created
ts: seeders
sz: size
i: title
- name: type
type: select
label: Order requested from site
default: d
options:
d: desc
a: asc
login:
path: ucp.php?mode=login
method: form
form: form[action="./ucp.php?mode=login"]
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
autologin: on
viewonline: on
error:
- selector: span.error
test:
path: search.php
search:
paths:
# http://kinonavse100.com/search.php?tracker_search=torrent&keywords=2020&terms=all&author=&sc=1&sf=titleonly&sk=t&sd=d&sr=topics&st=0&ch=300&t=0&submit=Search
- path: search.php
inputs:
# Search On: tracker, torrent, comment, forum, all
tracker_search: "{{ if .Keywords }}torrent{{ else }}tracker{{ end }}"
keywords: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
# all, any
terms: all
# Search by Author
author: ""
# Search in subforums: yes 1, no 0
sc: 1
# Search For: all, msgonly, titleonly, firstpost
sf: titleonly
# Show Results as: posts, topics
sr: topics
sk: "{{ .Config.sort }}"
sd: "{{ .Config.type }}"
# Seach Posts For: all 0, 1day 1, week 7, fortnight 14, month 30, 3months 90, 6 months 180, year 365
st: 0
# Show first: all -1, 0, 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 1000
ch: 300
# hidden
t: 0
# hidden
submit: Search
$raw: "{{ range .Categories }}&fid[]={{.}}{{end}}"
rows:
selector: table.tablebg > tbody > tr:has(a[href^="./download/file.php?id="])
fields:
title:
selector: a.topictitle
details:
selector: a.topictitle
attribute: href
category:
selector: a[href^="./viewforum.php?f="]
attribute: href
filters:
- name: querystring
args: f
download:
selector: a[href^="./download/file.php?id="]
attribute: href
size:
selector: a[href^="./viewforum.php?f="] + b
filters:
- name: replace
args: ["ТБ", "TB"]
- name: replace
args: ["ГБ", "GB"]
- name: replace
args: ["МБ", "MB"]
- name: replace
args: ["КБ", "KB"]
seeders:
selector: span.seed
leechers:
selector: span.leech
grabs:
selector: span.complet
date_day:
# Сегодня, 12:35
selector: td:last-of-type p:first-of-type:contains("Сегодня"), td:last-of-type p:first-of-type:contains("Вчера")
optional: true
filters:
- name: replace
args: ["Сегодня", "Today"]
- name: replace
args: ["Вчера", "Yesterday"]
- name: fuzzytime
date_year:
# 12 янв 2019, 11:26
selector: td:last-of-type p:first-of-type:not(:contains("Сегодня")):not(:contains("Вчера"))
optional: true
filters:
# replace month abbreviations
- name: replace
args: ["янв", "Jan"]
- name: replace
args: ["фев", "Feb"]
- name: replace
args: ["мар", "Mar"]
- name: replace
args: ["апр", "Apr"]
- name: replace
args: ["май", "May"]
- name: replace
args: ["июн", "Jun"]
- name: replace
args: ["июл", "Jul"]
- name: replace
args: ["авг", "Aug"]
- name: replace
args: ["сен", "Sep"]
- name: replace
args: ["окт", "Oct"]
- name: replace
args: ["ноя", "Nov"]
- name: replace
args: ["дек", "Dec"]
- name: append
args: " +03:00" # MSK
- name: dateparse
args: "02 Jan 2006, 15:04 -07:00"
date:
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
downloadvolumefactor:
case:
img[src="./images/tracker/3_bookmark.gif"]: 0 # gold 100% free
img[src="./images/tracker/2_bookmark.gif"]: 0.25 # silver 75% free
img[src="./images/tracker/1_bookmark.gif"]: 0.76 # bronze 24% free
"*": 1
uploadvolumefactor:
text: 1
# phpBB

View File

@@ -127,7 +127,7 @@ search:
order: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.ttable_headinner > tbody > tr:has(a[href^="download.php?id="])

View File

@@ -118,7 +118,7 @@ search:
# but adding + to words causes 0 results, so we will add an andmatch since the default seems to be a keywords OR search.
# keywordsfilters:
# - name: re_replace
# args: ["(\\w+)", " +$1"] # prepend + to each word
# args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.ttable_headinner tr.t-row:has(a[href^="download.php?id="])

View File

@@ -166,7 +166,7 @@ search:
allw: 1
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: tr[id^="tor_"]:has(a[href^="./dl.php?id="])

View File

@@ -72,7 +72,7 @@ search:
- name: re_replace # E01 to [1 сери]
args: ["(?i)E0*(\\d+)", "[$1 сери]"]
- name: re_replace
args: ["(\\w+)", " %$1"] # prepend % to each word - allow 1 character keywords
args: ["(\\w+)", "%$1"] # prepend % to each word - allow 1 character keywords
inputs:
search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}%%{{ end }}"
# does not support multi category searches

View File

@@ -120,7 +120,7 @@ search:
- name: re_replace
args: ["(?i)S0?(\\d{1,2})", "stagione $1"]
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
inputs:
keywords: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
# all, any

View File

@@ -0,0 +1,227 @@
---
id: mojblink
name: MOJBLiNK
description: "MOJBLiNK is a Private SLOVENIAN Torrent Tracker for MOVIES / TV / GENERAL"
language: sl-SI
type: private
encoding: UTF-8
links:
- https://www.mojblink.si/
caps:
categorymappings:
- {id: 50, cat: Movies, desc: "BLiNK"}
- {id: 20, cat: Books/EBook, desc: "eBook eBOOK"}
- {id: 52, cat: Books/Other, desc: "eBook Education"}
- {id: 53, cat: Books/Mags, desc: "eBook Magazine"}
- {id: 62, cat: PC/Mobile-Android, desc: "GAMES Android"}
- {id: 12, cat: Console/NDS, desc: "GAMES Nintendo DS"}
- {id: 8, cat: PC/Games, desc: "GAMES PC"}
- {id: 7, cat: PC/Games, desc: "GAMES PCRip"}
- {id: 13, cat: Console/PS3, desc: "GAMES Playstation"}
- {id: 124, cat: Console/PS4, desc: "GAMES PS4"}
- {id: 16, cat: Console/PSP, desc: "GAMES PSP"}
- {id: 65, cat: Console/Wii, desc: "GAMES Wii"}
- {id: 15, cat: Console/XBox, desc: "GAMES Xbox"}
- {id: 21, cat: Other, desc: "IMAGES Pics"}
- {id: 68, cat: Other, desc: "IMAGES Wallpaper"}
- {id: 70, cat: Movies/SD, desc: "Impatient CAM"}
- {id: 71, cat: Movies/SD, desc: "Impatient DVDSCR"}
- {id: 72, cat: Movies/SD, desc: "Impatient TC"}
- {id: 73, cat: Movies/SD, desc: "Impatient TS"}
- {id: 75, cat: Movies/SD, desc: "Impatient WEBRip"}
- {id: 121, cat: Movies/UHD, desc: "MOVIES 4K"}
- {id: 6, cat: Movies, desc: "MOVIES Animation"}
- {id: 37, cat: TV/Anime, desc: "MOVIES Anime"}
- {id: 40, cat: Movies/BluRay, desc: "MOVIES BD25"}
- {id: 39, cat: Movies/BluRay, desc: "MOVIES BD50"}
- {id: 41, cat: Movies/BluRay, desc: "MOVIES BDRip"}
- {id: 4, cat: Movies/BluRay, desc: "MOVIES BluRay 1080p"}
- {id: 3, cat: Movies/BluRay, desc: "MOVIES BluRay 720p"}
- {id: 43, cat: Movies/BluRay, desc: "MOVIES BRRip x264"}
- {id: 44, cat: Movies/BluRay, desc: "MOVIES BRRip XviD"}
- {id: 25, cat: TV/Documentary, desc: "MOVIES Documentary"}
- {id: 46, cat: Movies/DVD, desc: "MOVIES DVD"}
- {id: 47, cat: Movies/DVD, desc: "MOVIES DVDRip x264"}
- {id: 115, cat: Movies/DVD, desc: "MOVIES DVDRip x265"}
- {id: 1, cat: Movies/DVD, desc: "MOVIES DVDRip XviD"}
- {id: 48, cat: Movies/DVD, desc: "MOVIES HD2DVD"}
- {id: 123, cat: Movies/HD, desc: "MOVIES HDRip"}
- {id: 74, cat: Movies/WEB-DL, desc: "MOVIES Web-DL"}
- {id: 120, cat: Movies/HD, desc: "MOVIES x265"}
- {id: 55, cat: Audio/Video, desc: "MUSIC BD"}
- {id: 23, cat: Audio/Video, desc: "MUSIC DVD"}
- {id: 56, cat: Audio/Lossless, desc: "MUSIC FLAC"}
- {id: 11, cat: Audio/MP3, desc: "MUSIC MP3"}
- {id: 57, cat: Audio/Video, desc: "MUSIC MP4"}
- {id: 58, cat: Audio/Video, desc: "MUSIC Video"}
- {id: 26, cat: PC/Mobile-Android, desc: "PROGRAM Android"}
- {id: 27, cat: PC/Mobile-iOS, desc: "PROGRAM iOS"}
- {id: 78, cat: PC, desc: "PROGRAM Linux"}
- {id: 79, cat: PC/Mac, desc: "PROGRAM Mac"}
- {id: 9, cat: PC/ISO, desc: "PROGRAM PC ISO"}
- {id: 80, cat: PC/0day, desc: "PROGRAM PC Win"}
- {id: 5, cat: TV/HD, desc: "TV HDTV"}
- {id: 82, cat: TV/HD, desc: "TV HDTVRip"}
- {id: 2, cat: TV/SD, desc: "TV TVRip"}
- {id: 125, cat: TV/WEB-DL, desc: "TV Web-DL"}
- {id: 85, cat: Movies/HD, desc: "UpLINK HEVC"}
- {id: 86, cat: Movies/HD, desc: "UpLINK MPEG4"}
- {id: 122, cat: XXX/Other, desc: "XXX Games"}
- {id: 88, cat: XXX/Other, desc: "XXX Magazine"}
- {id: 10, cat: XXX/x264, desc: "XXX Movies"}
- {id: 89, cat: XXX/Pack, desc: "XXX Packs"}
- {id: 90, cat: XXX/ImageSet, desc: "XXX Pics"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 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>50</b> on your account Personal Settings.</br>The Default is <i>30</i>
- name: info_xxx
type: info
label: XXX Results
default: To include XXX in results, tick the <b>View XXX Torrents</b> checkbox on your account Personal Settings.
login:
path: login
method: form
form: form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div.content-wrapper:has(i.ico-not_warn)
test:
path: /
selector: a[href*="/odjava?hash_insert="]
search:
paths:
# https://www.mojblink.si/brskanje?cat=0&search=justice+league&searchin=title&incldead=1&only_free=1&redir=no
- path: brskanje
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
# title, titledescr, descr
searchin: "{{ if .Query.IMDBID }}descr{{ else }}title{{ end }}"
# 0 active, 1 all, 2 dead
incldead: 1
only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
st: 1
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
redir: no
rows:
selector: div.bgPreview
fields:
category:
selector: a[href^="/brskanje/"]
attribute: href
filters:
- name: regexp
args: (\d+)
title:
selector: a[href^="/podrobnosti/"]
attribute: title
details:
selector: a[href^="/podrobnosti/"]
attribute: href
download:
selector: a[href^="/download/"]
attribute: href
poster:
selector: div.bgPreview
attribute: style
filters:
- name: regexp
args: "\\((.+?)\\)"
imdbid:
selector: a[href*="imdb.com/title/tt"]
attribute: href
files:
selector: div.release-info__meta span
date_day:
# Naložen: Danes, 06:46:17
# Uploaded: Danes, 06:46:17
selector: div.release-info__meta:contains("Naložen:"):contains("Včeraj"), div.release-info__meta:contains("Naložen:"):contains("Danes"), div.release-info__meta:contains("Uploaded:"):contains("Včeraj"), div.release-info__meta:contains("Uploaded:"):contains("Danes")
optional: true
filters:
- name: replace
args: ["Uploaded: ", ""]
- name: replace
args: ["Naložen: ", ""]
- name: replace
args: ["Včeraj,", "Yesterday"]
- name: replace
args: ["Danes,", "Today"]
- name: fuzzytime
date_year:
# Uploaded: 15.11.2022 07:24:18
# Naložen: 15.11.2022 07:24:18
selector: div.release-info__meta:contains("Naložen:"):contains("."), div.release-info__meta:contains("Uploaded:"):contains(".")
optional: true
filters:
- name: replace
args: ["Uploaded: ", ""]
- name: replace
args: ["Naložen: ", ""]
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "02.01.2006 15:04:05 -07:00"
date:
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
size:
selector: a[href^="/download/"]
seeders:
selector: span[title="Sejalci"], span[title="Seeders"]
leechers:
selector: span[title="Odjemalci"], span[title="Leechers"]
downloadvolumefactor:
case:
span.torrent-FL: 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
minimumseedtime:
# 4 days (as seconds = 4 x 24 x 60 x 60)
text: 345600
# engine n/a

View File

@@ -96,7 +96,7 @@ search:
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table tbody tr:has(a[href*="download.php?id="]:has(img[src="../pic/yes.png"]))

View File

@@ -131,6 +131,9 @@ search:
download:
selector: a[href^="download.php?id="]
attribute: href
poster:
selector: img.nexus-lazy-load
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"]
@@ -183,7 +186,9 @@ search:
minimumseedtime:
# 2 day (as seconds = 2 x 24 x 60 x 60)
text: 172800
description:
genre:
selector: td.rowfollow:nth-child(2)
remove: a, img
remove: a, img, span
description:
text: "{{ .Result.genre }}"
# NexusPHP 1.7.29 2022-10-13

View File

@@ -35,6 +35,7 @@ caps:
- {id: 21, cat: Movies/WEB-DL, desc: "Movies Greek DVD/BD/BR-rip"}
- {id: 22, cat: Movies/Other, desc: "Movies Greek Other"}
- {id: 10, cat: Movies/HD, desc: "Movies HD Packs"}
- {id: 64, cat: Movies/UHD, desc: "Movies 4K"}
- {id: 13, cat: Movies/Other, desc: "Movies Other"}
- {id: 14, cat: Movies, desc: "Movies Packs"}
- {id: 23, cat: Audio, desc: "Music DJs Stuff"}
@@ -58,6 +59,8 @@ caps:
- {id: 34, cat: TV, desc: "TV Series Greek"}
- {id: 35, cat: TV, desc: "TV Series Greek Packs"}
- {id: 30, cat: TV/Sport, desc: "TV Sports"}
- {id: 65, cat: TV/UHD, desc: "TV Series 4K"}
- {id: 66, cat: TV/UHD, desc: "TV Series Pack 4K"}
modes:
search: [q]

View File

@@ -151,14 +151,27 @@ search:
args: ["/static/common/noartwork/noimage.png", ""]
files:
selector: td:nth-child(3)
date:
selector: td:nth-child(5) > span
attribute: title
date_elapsed:
# <td class="nobr"><span class="time" alt="1 month ago" title="1 month ago">Oct 01 2022, 18:41</span></td>
selector: td:nth-child(5) > span:not(:contains("ago"))
optional: true
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "Jan 02 2006, 15:04 -07:00"
date_added:
# <td class="nobr"><span class="time" alt="Nov 17 2022, 01:44" title="Nov 17 2022, 01:44">13 hours ago</span></td>
selector: td:nth-child(5) > span:contains("ago")
attribute: title
optional: true
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "Jan 02 2006, 15:04 -07:00"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(6)
grabs:

View File

@@ -146,14 +146,27 @@ search:
args: ["/static/common/noartwork/noimage.png", ""]
files:
selector: td:nth-child(3)
date:
selector: td:nth-child(5) > span
attribute: title
date_elapsed:
# <td class="nobr"><span class="time" alt="1 month ago" title="1 month ago">Oct 01 2022, 18:41</span></td>
selector: td:nth-child(5) > span:not(:contains("ago"))
optional: true
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "Jan 02 2006, 15:04 -07:00"
date_added:
# <td class="nobr"><span class="time" alt="Nov 17 2022, 01:44" title="Nov 17 2022, 01:44">13 hours ago</span></td>
selector: td:nth-child(5) > span:contains("ago")
attribute: title
optional: true
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "Jan 02 2006, 15:04 -07:00"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(6)
grabs:

View File

@@ -1,182 +0,0 @@
---
id: prostylex
name: ProStyleX
description: "ProStyleX is a Semi-Private torrent site for 0Day and General"
language: en-US
type: semi-private
encoding: UTF-8
links:
- https://prostylex.org/
legacylinks:
- http://prostylex.com/
- https://prostylex.black-mirror.xyz/
- https://prostylex.unblocked.casa/
- https://prostylex.proxyportal.fun/
- https://prostylex.uk-unblock.xyz/
- https://prostylex.ind-unblock.xyz/
- https://prostylex.unblocked.bar/
- https://prostylex.proxyportal.pw/
- https://prostylex.uk-unblock.pro/
- https://prostylex.unblocked.rest/ # Cloudflare - This web property is not accessible via this address.
caps:
categorymappings:
- {id: 1, cat: Movies/SD, desc: "Movies - Divx/Xvid"}
- {id: 2, cat: Movies/WEB-DL, desc: "Movies - h.264/x264"}
- {id: 3, cat: Movies/HD, desc: "Movies - HD"}
- {id: 4, cat: Movies/DVD, desc: "Movies - DVD"}
- {id: 5, cat: Movies/Other, desc: "Movies - Cam/TS"}
- {id: 6, cat: Movies/Foreign, desc: "Movies - Non-English"}
- {id: 7, cat: Movies/3D, desc: "Movies - 3D"}
- {id: 8, cat: Movies/UHD, desc: "Movies - 4K"}
- {id: 9, cat: Movies/Other, desc: "Movies - Dubs/Dual Audio"}
- {id: 10, cat: Movies/HD, desc: "Movies - HEVC/x265"}
- {id: 12, cat: TV/WEB-DL, desc: "TV - x264"}
- {id: 13, cat: TV/SD, desc: "TV - Xvid"}
- {id: 14, cat: TV/HD, desc: "TV - HD"}
- {id: 15, cat: TV/Other, desc: "TV - Packs"}
- {id: 16, cat: TV/Sport, desc: "TV - Sports"}
- {id: 17, cat: TV/HD, desc: "TV - HEVC/x265"}
- {id: 20, cat: Audio/MP3, desc: "Music - Audio"}
- {id: 21, cat: Audio/Video, desc: "Music - Video"}
- {id: 22, cat: Audio/Other, desc: "Music - Other"}
- {id: 40, cat: XXX, desc: "XXX - Video"}
- {id: 42, cat: XXX, desc: "XXX - HD Video"}
- {id: 43, cat: XXX, desc: "XXX - Movie"}
- {id: 44, cat: XXX, desc: "XXX - Anime/Hentai"}
- {id: 45, cat: XXX, desc: "XXX - Pics/Comix/Book"}
- {id: 46, cat: XXX, desc: "XXX - Games"}
- {id: 53, cat: Audio/Audiobook, desc: "Books - Audio books"}
- {id: 54, cat: Books/Comics, desc: "Books - Comics"}
- {id: 55, cat: Books/EBook, desc: "Books - Ebooks"}
- {id: 56, cat: Books/Mags, desc: "Books - Magazines"}
- {id: 57, cat: Books/Other, desc: "Books - Other"}
- {id: 58, cat: Other, desc: "Pictures - Other"}
- {id: 59, cat: Other, desc: "Pictures - Wallpapers"}
- {id: 65, cat: TV/Anime, desc: "Anime - All"}
- {id: 68, cat: TV/Anime, desc: "Anime - HEVC/x265"}
- {id: 90, cat: PC/ISO, desc: "Games - PC-ISO"}
- {id: 91, cat: Console, desc: "Games - PS2"}
- {id: 92, cat: Console/PSP, desc: "Games - PSP"}
- {id: 93, cat: Console/PS3, desc: "Games - PS3"}
- {id: 94, cat: PC/Games, desc: "Games - PC-RIP"}
- {id: 95, cat: Console/XBox 360, desc: "Games - Xbox360"}
- {id: 96, cat: Console/Other, desc: "Games - Other"}
- {id: 97, cat: Console/Wii, desc: "Games - Wii"}
- {id: 98, cat: Console/NDS, desc: "Games - Nintendo DS"}
- {id: 99, cat: PC/Mobile-Android, desc: "Games - Android"}
- {id: 103, cat: Console, desc: "Games - Switch"}
- {id: 120, cat: PC/0day, desc: "Apps - Windows"}
- {id: 121, cat: PC, desc: "Apps - Linux"}
- {id: 122, cat: PC/Mobile-Android, desc: "Apps - Android"}
- {id: 123, cat: PC/Mac, desc: "Apps - Mac"}
- {id: 124, cat: PC, desc: "Apps - Other"}
- {id: 130, cat: Other, desc: "Other - Other"}
- {id: 132, cat: Other, desc: "Other - Nulled Script"}
- {id: 134, cat: Other, desc: "Other - Tutorials"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: cookie
type: text
label: Cookie
- name: info
type: info
label: How to get the Cookie
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
- name: useragent
type: text
label: User-Agent
- name: info_useragent
type: info
label: How to get the User-Agent
default: "<ol><li>From the same place you fetched the cookie,<li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</ol>"
- name: sort
type: select
label: Sort requested from site
default: id
options:
id: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: flaresolverr
type: info
label: FlareSolverr
default: 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.
login:
method: cookie
inputs:
cookie: "{{ .Config.cookie }}"
test:
path: search.php
download:
selectors:
- selector: a[href^="magnet:?"]
attribute: href
search:
paths:
# http://prostylex.org/search.php?search=
# http://prostylex.org/search.php?c1=1&c2=1&c3=1&search=expanse&lang=0&cat=0
- path: search.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
cat: 0
lang: 0
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
headers:
User-Agent: ["{{ .Config.useragent }}"]
rows:
selector: tr.t-row
fields:
title:
selector: td a[href^="torrents-details.php?id="]
category:
selector: td a[href^="torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: td a[href^="torrents-details.php?id="]
attribute: href
download:
selector: td a[href^="torrents-details.php?id="]
attribute: href
date:
selector: th:nth-child(5)
filters:
- name: timeago
size:
selector: th:nth-child(4)
seeders:
selector: th:nth-child(6)
leechers:
selector: th:nth-child(7)
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# minimumratio: the site appears to be ratioless
# TorrentTrader

View File

@@ -6,9 +6,9 @@ language: en-US
type: private
encoding: UTF-8
links:
- http://pwtorrents.net/
- https://pwtorrents.net/
legacylinks:
- https://pwtorrents.net/ # site is forcing to http
- http://pwtorrents.net/
caps:
categorymappings:

View File

@@ -144,7 +144,7 @@ search:
$raw: "{{ if .Categories }}{{ range .Categories }}&f[]={{.}}{{end}}{{ else }}&f[]=-1{{ end }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: tr[id^="tor_"]:has(span.tor-approved) # only approved tors have .torrent and magnets.

View File

@@ -0,0 +1,142 @@
---
id: seedfile
name: SeedFile
description: "SeedFile (SF) is a ROMANIAN Private Torrent Tracker for 0DAY / GENERAL"
language: ro-RO
type: private
encoding: UTF-8
links:
- https://www.seedfile.io/
legacylinks:
- https://www.seedfile.ro/
caps:
categorymappings:
- {id: 1, cat: Books/Mags, desc: "Cărți/Reviste"}
- {id: 2, cat: Other, desc: "Desene SD"}
- {id: 3, cat: Other, desc: "Diverse n/a"}
- {id: 5, cat: Movies/BluRay, desc: "Filme Blu-Ray"}
- {id: 6, cat: Movies/DVD, desc: "Filme DVD"}
- {id: 7, cat: Movies/DVD, desc: "Filme DVD-RO"}
- {id: 8, cat: Movies/HD, desc: "Filme HD"}
- {id: 9, cat: Movies/HD, desc: "Filme HD-RO"}
- {id: 10, cat: Movies/SD, desc: "Filme SD"}
- {id: 11, cat: Movies/SD, desc: "Filme SD-RO"}
- {id: 12, cat: Other, desc: "Imagini"}
- {id: 13, cat: Console, desc: "Jocuri Console"}
- {id: 14, cat: PC/Games, desc: "Jocuri PC"}
- {id: 15, cat: Audio, desc: "Muzică"}
- {id: 16, cat: PC/Mobile-Other, desc: "Mobile"}
- {id: 17, cat: PC, desc: "Programe"}
- {id: 18, cat: TV/HD, desc: "Seriale HD"}
- {id: 19, cat: TV/HD, desc: "Seriale HD-RO"}
- {id: 20, cat: TV/SD, desc: "Seriale TV"}
- {id: 21, cat: TV/SD, desc: "Seriale TV-RO"}
- {id: 22, cat: TV/Sport, desc: "Sport"}
- {id: 23, cat: Audio/Video, desc: "Video Clip"}
- {id: 24, cat: XXX, desc: "Adult 18+"}
- {id: 36, cat: Movies/3D, desc: "Video 3D"}
- {id: 37, cat: Movies/HD, desc: "Animație HD"}
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: Search freeleech only
default: false
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div.recover-error2
test:
path: profile.php
download:
selectors:
- selector: a[href^="download.php/"]
attribute: href
search:
paths:
- path: download-torrents
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# 0 active, 1 incldead, 2 onlydead, 3 freeleech
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
rows:
selector: tr.browse
fields:
category:
selector: a[href^="torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="details.php?id="]
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="details.php?id="]
attribute: href
poster:
selector: a[href^="details.php?id="]
attribute: onmouseover
filters:
- name: regexp
args: "src='(.+?)'"
genre:
selector: td.numele_tor small
filters:
- name: replace
args: ["Genre:\xA0", ""]
description:
text: "{{ .Result.genre }}"
files:
selector: td:nth-last-child(7)
date:
selector: td:nth-last-child(5)
filters:
- name: append
args: " +02:00" # EET
- name: dateparse
args: "15:04:052006-01-02 -07:00"
size:
selector: td:nth-last-child(4)
seeders:
selector: td:nth-last-child(3)
leechers:
selector: td:nth-last-child(2)
downloadvolumefactor:
case:
"img[src=\"./pic/freeleech.png\"]": 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# engine n/a

View File

@@ -115,7 +115,7 @@ search:
order: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: tr.t-row

View File

@@ -0,0 +1,111 @@
---
id: swarmazon-api
name: Swarmazon (API)
description: "Swarmazon is a Private Torrent Tracker for MOVIES / TV / GENERAL"
language: en-US
type: private
encoding: UTF-8
links:
- https://swarmazon.club/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "Television"}
- {id: 3, cat: Other, desc: "Video Courses"}
- {id: 4, cat: Audio, desc: "Music"}
- {id: 5, cat: PC/Games, desc: "Games"}
- {id: 6, cat: PC, desc: "Software"}
- {id: 7, cat: TV/Anime, desc: "Anime"}
- {id: 8, cat: Books/EBook, desc: "E-Books"}
- {id: 9, cat: Audio/Audiobook, desc: "Audio Books"}
- {id: 10, cat: Books/Comics, desc: "Comics"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
music-search: [q]
book-search: [q]
settings:
- name: apikey
type: text
label: APIKey
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing the <a href=\"https://swarmazon.club/en/view/settings.php?section=token\" target =_blank>Token Setting</a> page."
login:
path: api/search.php
method: get
inputs:
api_key: "{{ .Config.apikey }}"
limit: 1
error:
- selector: ":root:contains(\"Invalid API key\")"
search:
paths:
- path: api/search.php
response:
type: json
inputs:
api_key: "{{ .Config.apikey }}"
filter: "{{ .Keywords }}"
$raw: "{{ if .Query.IMDBID }}&media_ref={{ .Query.IMDBID }}{{ else }}{{ end }}"
limit: 100
rows:
selector: data
fields:
category:
selector: categoryid
title:
selector: name
details:
selector: torrent
download:
selector: download
poster:
selector: media_poster
filters:
- name: replace
args: ["N\/A", ""]
genre:
selector: media_genre
description:
text: "{{ .Result.genre }}"
infohash:
selector: hash
imdbid:
selector: ref_id:contains(tt)
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: completed
date:
# 2022-11-16 22:49:25
selector: upload_timestamp
filters:
- name: append
args: " -07:00" # PDT
- name: dateparse
args: "2006-01-02 15:04:05 -07:00"
size:
selector: size
downloadvolumefactor:
selector: freeleech
case:
no: 1 # not free
"*": 0 # freeleech
uploadvolumefactor:
text: 1
minimumratio:
text: 1.1
# json v1.22.0620

View File

@@ -85,6 +85,14 @@ search:
download:
selector: a[href^="/api/download.php?hash="]
attribute: href
poster:
selector: a[onmouseover]
attribute: onmouseover
filters:
- name: regexp
args: "src=(.+?) "
- name: replace
args: ["/images/no_poster.jpg", ""]
size:
selector: td:nth-last-child(6)
date:
@@ -108,4 +116,4 @@ search:
text: 1
minimumratio:
text: 1.1
# Engine n/a
# v1.22.0620

View File

@@ -90,7 +90,7 @@ search:
type: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: tr.highlight, tr.browse_color, tr.freeleech_color, tr[id^="kdescr"]

View File

@@ -108,7 +108,7 @@ search:
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.table-bordered tr:has(a[href^="download.php?torrent="])

View File

@@ -18,10 +18,11 @@ caps:
- {id: 140, cat: TV/Documentary, desc: "Doku - SD"}
- {id: 142, cat: TV/Documentary, desc: "Doku - Sonstige"}
- {id: 120, cat: Books, desc: "Ebook"}
- {id: 135, cat: Movies/UHD, desc: "Filme - 2160p"}
- {id: 131, cat: TV/Anime, desc: "Filme - Animie"}
- {id: 101, cat: Movies/BluRay, desc: "Filme - Blue Ray"}
- {id: 102, cat: Movies/Other, desc: "Filme - Bollywood"}
- {id: 103, cat: Movies/DVD, desc: "Filme - DVD"}
- {id: 149, cat: Movies/DVD, desc: "Filme - DVD"}
- {id: 104, cat: Movies/DVD, desc: "Filme - DVD-R"}
- {id: 135, cat: Movies/HD, desc: "Filme - HD"}
- {id: 130, cat: Movies, desc: "Filme - Klassiker"}

View File

@@ -7,8 +7,8 @@ type: public
encoding: UTF-8
links:
- https://thepiratebay.org/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.ws/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.pet/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.ly/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.tor2web.to/
- https://tpb24.ukpass.co/
- https://thepiratebay.host/
- https://thepiratebay.d4.re/
@@ -37,8 +37,6 @@ links:
- https://piratebay.party/
- https://thepiratebay.party/
legacylinks:
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.ly/
- https://pirateproxy.dev/
- https://tpb19.ukpass.co/
- https://pirateproxy.tube/
- https://www.tpbay.win/
@@ -57,6 +55,8 @@ legacylinks:
- https://gigatorrent.xyz/
- https://thepirateb.xyz/
- https://ezrasstuff.com/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.ws/
- https://piratebayo3klnzokct3wt5yyxb2vpebbuyjl7m623iaxmqhsd52coid.onion.pet/
caps:
categorymappings:

View File

@@ -47,7 +47,7 @@ caps:
- {id: 176, cat: Console/Wii, desc: "Game Wii - Switch"}
- {id: 222, cat: Console/NDS, desc: "Game NDS-3DS"}
- {id: 177, cat: Console, desc: "Game Wimmelbild"}
- {id: 178, cat: Console/Other, desc: "Game Sonstieges"}
- {id: 178, cat: Console/Other, desc: "Game Sonstiges"}
# Musik
- {id: 187, cat: Audio, desc: "Musik Alben"}
- {id: 188, cat: Audio, desc: "Musik Sampler"}

View File

@@ -1,197 +0,0 @@
---
id: torrent-town
name: Torrent-Town
description: "Torrent-Town (T-T) is a German Private site for TV / MOVIES / GENERAL"
language: de-DE
type: private
encoding: UTF-8
links:
- https://torrent-town.hopto.org/
caps:
categorymappings:
# Software
- {id: 39, cat: PC, desc: "Appz - Linux"}
- {id: 48, cat: PC/Mac, desc: "Appz - Mac"}
- {id: 45, cat: PC, desc: "Appz - Other"}
- {id: 49, cat: PC/0day, desc: "Appz - Windows"}
# Doku
- {id: 40, cat: TV/Documentary, desc: "Doku - HD"}
- {id: 41, cat: TV/Documentary, desc: "Doku - SD"}
# Game
- {id: 83, cat: Console, desc: "Game - Konsolen"}
- {id: 51, cat: PC/Games, desc: "Game - Mac"}
- {id: 52, cat: PC/Games, desc: "Game - PC"}
- {id: 98, cat: Console, desc: "Game - Wimmelbild"}
- {id: 50, cat: PC/Games, desc: "Game - Linux"}
# Movie
- {id: 30, cat: Movies/HD, desc: "Movie - 1080p"}
- {id: 64, cat: Movies/3D, desc: "Movie - 3D"}
- {id: 28, cat: Movies/HD, desc: "Movie - 720p"}
- {id: 63, cat: Movies/BluRay, desc: "Movie - Bluray"}
- {id: 32, cat: Movies/DVD, desc: "Movie - DVD / HD2DVD"}
- {id: 85, cat: Movies, desc: "Movie - Int."}
- {id: 99, cat: Movies/HD, desc: "Movie - Packs"}
- {id: 33, cat: Movies/SD, desc: "Movie - SD x264"}
- {id: 36, cat: Movies/SD, desc: "Movie - SD XviD"}
- {id: 31, cat: Movies/UHD, desc: "Movie - U-HD"}
- {id: 86, cat: Movies/HD, desc: "Movie - x265"}
# Musik
- {id: 57, cat: Audio, desc: "Musik - Alben"}
- {id: 81, cat: Audio, desc: "Musik - Charts"}
- {id: 53, cat: Audio/Lossless, desc: "Musik - Flac"}
- {id: 88, cat: Audio/Other, desc: "Musik - Misc"}
- {id: 54, cat: Audio/Video, desc: "Musik - MusikVideo"}
- {id: 100, cat: Audio/Other, desc: "Musik - Ost"}
- {id: 84, cat: Audio, desc: "Musik - Packs"}
- {id: 87, cat: Audio/Other, desc: "Musik - Sampler"}
# Serien
- {id: 67, cat: TV/HD, desc: "Serien - Folgen HD"}
- {id: 70, cat: TV/SD, desc: "Serien - Folgen SD"}
- {id: 68, cat: TV/HD, desc: "Serien - Pack HD"}
- {id: 69, cat: TV/SD, desc: "Serien - Pack SD"}
# Sport
- {id: 76, cat: TV/Sport, desc: "Sport - HD"}
- {id: 74, cat: TV/Sport, desc: "Sport - SD"}
# Other
- {id: 91, cat: Audio/Audiobook, desc: "Unsorted - A-Book"}
- {id: 90, cat: TV/Anime, desc: "Unsorted - Anime"}
- {id: 92, cat: Books/EBook, desc: "Unsorted - E-Book DE."}
- {id: 93, cat: Books/EBook, desc: "Unsorted - E-Book INT."}
- {id: 94, cat: Books/Comics, desc: "Unsorted - E-Paper"}
- {id: 95, cat: Other, desc: "Unsorted - Kids"}
- {id: 96, cat: PC/Mobile-Other, desc: "Unsorted - Mobile"}
- {id: 97, cat: Other, desc: "Unsorted - Other"}
# XXX
- {id: 78, cat: XXX/x264, desc: "XXX - HD"}
- {id: 89, cat: XXX/Other, desc: "XXX - Other"}
- {id: 79, cat: XXX/Pack, desc: "XXX - Packs"}
- {id: 77, cat: XXX/SD, desc: "XXX - SD"}
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: onlyupload
type: checkbox
label: Filter OnlyUpload only
default: false
- name: info_free
type: info
label: About Freeleech and OnlyUpload at Torrent-Town
default: <li>FreeLeech are torrents where neither the download or upload is counted. (On the Jackett dashboard search results these are tagged as NoUpload).</li><li>OnlyUpload are torrents where download is not counted but upload is. Good for building your Ratio up. (On the Jackett dashboard search results these are tagged as Freeleech).</li>
- name: sort
type: select
label: Sort requested from site
default: added
options:
added: created
seeds: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: .tablea:contains("Fehler")
test:
path: index.php
selector: a[href="logout.php"]
download:
selectors:
- selector: a[href^="downloads.php?torrent="]
attribute: href
search:
paths:
- path: browse.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
showsearch: 1
search: "{{ .Keywords }}"
# 0 active, 1 all, 2 dead
incldead: 1
orderby: "{{ .Config.sort }}"
sort: "{{ .Config.type }}"
# site does not support imdbid search from the browse.php page or return imdb links in results
rows:
selector: "table.tableinborder[cellspacing=\"1\"][cellpadding=\"0\"]:not(:has(a[href=\"index.php\"])) > tbody > tr{{ if .Config.onlyupload }}:has(img[src=\"pic/oupic.gif\"]){{ else }}{{ end }}"
fields:
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="details.php"]
details:
selector: a[href^="details.php"]
attribute: href
download:
selector: a[href^="details.php"]
attribute: href
poster:
selector: img[id="img-1"]
attribute: src
size:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(1)
files:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(2)
seeders:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(2) b:nth-child(1)
leechers:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(2) > b:nth-of-type(2)
grabs:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(3) b:nth-child(1)
date:
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(5)
filters:
- name: append
args: " +01:00" # CET
- name: replace
args: ["\xA0", " "]
- name: dateparse
args: "02.01.2006 15:04:05 -07:00"
downloadvolumefactor:
case:
img[src="pic/oupic.gif"]: 0 # only upload is counted
"*": 1
uploadvolumefactor:
case:
img[src="pic/freeleech.gif"]: 0 # nothing is counted
"*": 1
minimumratio:
text: 0.7
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# engine n/a

View File

@@ -8,16 +8,11 @@ encoding: UTF-8
followredirect: true
# to fetch current domain use https://www.protege-liens.com/t911 and https://www.protege-liens.com/torrent911
links:
- https://www.torrent911.cc/
- https://www.t911.me/
- https://www.torrent911.tv/
- https://www.t911.tv/
- https://oxtorrent.unblockninja.com/
legacylinks:
- https://www.oxtorrent.bz/
- https://www.oxtorrent.ws/
- https://www.oxtorrent.tv/
- https://www.oxtorrent.ph/
- https://www.oxtorrent.pe/
- https://www.oxtorrent.co/
- https://www.protege-liens.com/
- https://www.oxtorrent.io/
- https://www.oxtorrent.cx/
- https://www.oxtorrent.nz/
@@ -41,6 +36,8 @@ legacylinks:
- https://oxtorrent.nocensor.sbs/ # proxy for *.co, a clone without derniers
- https://www.torrent911.net/
- https://www.torrent911.org/
- https://www.torrent911.cc/
- https://www.t911.me/
caps:
categorymappings:

View File

@@ -137,8 +137,11 @@ search:
fields:
category:
selector: categoryID
title:
title_test: # title can be null #13736
selector: name
optional: true
title:
text: "{{ if .Result.title_test }}{{ .Result.title_test }}{{ else }}TorrentLeech did not provide a title{{ end }}"
_id:
selector: fid
_filename:

View File

@@ -7,11 +7,8 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentqq230.com/
- https://torrentqq233.com/
legacylinks:
- https://torrentqq215.com/
- https://torrentqq216.com/
- https://torrentqq217.com/
- https://torrentqq218.com/
- https://torrentqq219.com/
- https://torrentqq220.com/
@@ -24,6 +21,9 @@ legacylinks:
- https://torrentqq227.com/
- https://torrentqq228.com/
- https://torrentqq229.com/
- https://torrentqq230.com/
- https://torrentqq231.com/
- https://torrentqq232.com/
caps:
categorymappings:

View File

@@ -7,17 +7,8 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentsir80.com/
- https://torrentsir83.com/
legacylinks:
- http://torrentsir63.com/
- https://torrentsir63.com/
- http://torrentsir64.com/
- https://torrentsir64.com/
- http://torrentsir65.com/
- https://torrentsir65.com/
- http://torrentsir72.com/
- https://torrentsir72.com/
- http://torrentsir73.com/
- https://torrentsir73.com/
- http://torrentsir74.com/
- https://torrentsir74.com/
@@ -32,6 +23,12 @@ legacylinks:
- http://torrentsir79.com/
- https://torrentsir79.com/
- http://torrentsir80.com/
- https://torrentsir80.com/
- http://torrentsir81.com/
- https://torrentsir81.com/
- http://torrentsir82.com/
- https://torrentsir82.com/
- http://torrentsir83.com/
caps:
categorymappings:

View File

@@ -380,7 +380,7 @@ search:
allw: 1
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: tr[id^="tor_"]

View File

@@ -7,11 +7,10 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://viewtorrent1.com/
- https://viewtorrent2.com/
legacylinks:
- https://torrentview.net/
- https://torrentview.co/
- https://torrentview46.com/
- https://torrentview47.com/
- https://torrentview49.com/
- https://torrentview50.com/
@@ -25,6 +24,7 @@ legacylinks:
- https://torrentview66.com/
- https://torrentview67.com/
- https://torrentview68.com/
- https://viewtorrent1.com/
caps:
categorymappings:

View File

@@ -7,10 +7,8 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentwiz50.com/
- https://torrentwiz51.com/
legacylinks:
- https://torrentwiz29.me/
- https://torrentwiz34.com/
- https://torrentwiz35.com/
- https://torrentwiz36.com/
- https://torrentwiz37.com/
@@ -25,6 +23,7 @@ legacylinks:
- https://torrentwiz48.com/.
- https://torrentwiz48.com/
- https://torrentwiz49.com/
- https://torrentwiz50.com/
caps:
categorymappings:

View File

@@ -35,37 +35,51 @@ settings:
label: About Torrentz2eu Categories
default: Torrentz2eu does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
download:
selectors:
- selector: a[href^="magnet:?"]
attribute: href
search:
paths:
- path: data.php
# - path: kick.php
# https://torrentz2.pics/beta2/search.php?torrent-query=2022
- path: beta2/search.php
inputs:
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
torrent-query: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
rows:
selector: table.table-bordered > tbody > tr:has(a[href^="magnet"])
selector: table#torrent-table > tbody > tr
fields:
category:
text: 3
title:
selector: td:nth-child(1)
details:
# no details page, default to sitelink
text: "{{ .Config.sitelink }}"
magnet:
selector: td:nth-child(6) a
attribute: href
date:
selector: td:nth-child(2)
# https://torrentz2.pics/beta2/page.php?url=9999999%2FThe-Torrent-file-name-goes-here%2F
selector: td:nth-child(6) button
attribute: onclick
filters:
- name: regexp
args: "'(.+?)'"
- name: prepend
args: "{{ .Config.sitelink }}beta2/page.php?url="
download:
text: "{{ .Result.details }}"
seeders:
selector: td:nth-child(3)
selector: td:nth-child(2)
leechers:
selector: td:nth-child(4)
selector: td:nth-child(3)
size:
selector: td:nth-child(4)
date:
selector: td:nth-child(5)
filters:
- name: re_replace
args: ["(?i)(st|nd|rd|th|')", ""]
- name: dateparse
args: "Jan. 02 06"
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a
# beta2

View File

@@ -125,7 +125,7 @@ search:
keywordsfilters:
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
args: ["(\\w+)", "+$1"] # prepend + to each word
rows:
selector: table.table-bordered tr:has(a[href^="download.php?torrent="])

View File

@@ -5,9 +5,9 @@ description: "zetorrents is a FRENCH Public site for MOVIES / TV / GENERAL"
language: fr-FR
type: public
encoding: UTF-8
# to fetch current domain use https://www.protege-liens.com/zetorrents
# to fetch current domain use https://www.protege-liens.com/Zetorrents
links:
- https://www.zetorrents.biz/
- https://www.zetorrents.ch/
- https://zetorrents.nocensor.lol/
legacylinks:
- https://www.zetorrents.co/
@@ -23,6 +23,7 @@ legacylinks:
- https://www.zetorrents.bz/
- https://www.zetorrents.nl/
- https://zetorrents.nocensor.world/
- https://www.zetorrents.biz/
caps:
categories:

View File

@@ -21,6 +21,8 @@ namespace Jackett.Common.Indexers.Abstract
public abstract class SpeedAppTracker : BaseWebIndexer
{
protected virtual bool UseP2PReleaseName => false;
protected virtual int minimumSeedTime => 172800; // 48h
private readonly Dictionary<string, string> _apiHeaders = new Dictionary<string, string>
{
{"Accept", "application/json"},
@@ -166,7 +168,7 @@ namespace Jackett.Common.Indexers.Abstract
DownloadVolumeFactor = dlVolumeFactor,
UploadVolumeFactor = ulVolumeFactor,
MinimumRatio = 1,
MinimumSeedTime = 172800 // 48 hours
MinimumSeedTime = minimumSeedTime
};
if (release.Genres == null)
release.Genres = new List<string>();

View File

@@ -1,196 +0,0 @@
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using AngleSharp.Html.Parser;
using Jackett.Common.Models;
using Jackett.Common.Models.IndexerConfig;
using Jackett.Common.Services.Interfaces;
using Jackett.Common.Utils;
using Jackett.Common.Utils.Clients;
using Newtonsoft.Json.Linq;
using NLog;
namespace Jackett.Common.Indexers
{
// This tracker is based on GazelleTracker but we can't use the API/abstract because there are some
// missing features. https://github.com/Jackett/Jackett/issues/7923
[ExcludeFromCodeCoverage]
public class Anthelion : BaseWebIndexer
{
private string LoginUrl => SiteLink + "login.php";
private string BrowseUrl => SiteLink + "torrents.php";
private new ConfigurationDataBasicLoginWith2FA configData => (ConfigurationDataBasicLoginWith2FA)base.configData;
public override string[] LegacySiteLinks { get; protected set; } = {
"https://tehconnection.me/"
};
public Anthelion(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
ICacheService cs)
: base(id: "anthelion",
name: "Anthelion", // old name: TehConnection.me
description: "A movies tracker",
link: "https://anthelion.me/",
caps: new TorznabCapabilities
{
TvSearchParams = new List<TvSearchParam>
{
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.TmdbId
},
MovieSearchParams = new List<MovieSearchParam>
{
MovieSearchParam.Q, MovieSearchParam.ImdbId, MovieSearchParam.TmdbId
}
},
configService: configService,
client: wc,
logger: l,
p: ps,
cacheService: cs,
configData: new ConfigurationDataBasicLoginWith2FA(@"If 2FA is disabled, let the field empty.
We recommend to disable 2FA because re-login will require manual actions."))
{
Encoding = Encoding.UTF8;
Language = "en-US";
Type = "private";
AddCategoryMapping("1", TorznabCatType.Movies, "Film/Feature");
AddCategoryMapping("2", TorznabCatType.Movies, "Film/Short");
AddCategoryMapping("3", TorznabCatType.TV, "TV/Miniseries");
AddCategoryMapping("4", TorznabCatType.Other, "Other");
}
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
{
LoadValuesFromJson(configJson);
var pairs = new Dictionary<string, string>
{
{ "username", configData.Username.Value },
{ "password", configData.Password.Value },
{ "twofa", configData.TwoFactorAuth.Value },
{ "keeplogged", "1" },
{ "login", "Log in" }
};
var result = await RequestLoginAndFollowRedirect(LoginUrl, pairs, null, true, null, LoginUrl, true);
await ConfigureIfOK(result.Cookies, result.ContentString?.Contains("logout.php") == true, () =>
{
var parser = new HtmlParser();
var dom = parser.ParseDocument(result.ContentString);
var errorMessage = dom.QuerySelector("form#loginform").TextContent.Trim();
throw new ExceptionWithConfigData(errorMessage, configData);
});
return IndexerConfigurationStatus.RequiresTesting;
}
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
{
var releases = new List<ReleaseInfo>();
var qc = new NameValueCollection
{
{ "order_by", "time" },
{ "order_way", "desc" },
{ "action", "basic" },
{ "searchsubmit", "1" }
};
if (query.IsImdbQuery)
qc.Add("imdb", query.ImdbID);
else if (query.IsTmdbQuery)
qc.Add("tmdb", query.TmdbID.ToString());
else
qc.Add("searchstr", query.GetQueryString());
var catList = MapTorznabCapsToTrackers(query);
foreach (var cat in catList)
qc.Add($"filter_cat[{cat}]", "1");
// remove . as not used in titles
var searchUrl = BrowseUrl + "?" + qc.GetQueryString().Replace(".", " ");
var results = await RequestWithCookiesAsync(searchUrl);
try
{
var parser = new HtmlParser();
var doc = parser.ParseDocument(results.ContentString);
var rows = doc.QuerySelectorAll("table.torrent_table > tbody > tr.torrent");
foreach (var row in rows)
{
var qDetailsLink = row.QuerySelector("a.torrent_name");
var year = qDetailsLink.NextSibling.TextContent.Replace("[", "").Replace("]", "").Trim();
var tags = row.QuerySelector("div.torrent_info").FirstChild.TextContent.Replace(" / ", " ").Trim();
var title = $"{qDetailsLink.TextContent} {year} {tags}";
var description = row.QuerySelector("div.tags").TextContent.Trim();
var details = new Uri(SiteLink + qDetailsLink.GetAttribute("href"));
var torrentId = qDetailsLink.GetAttribute("href").Split('=').Last();
var link = new Uri(SiteLink + "torrents.php?action=download&id=" + torrentId);
var posterStr = qDetailsLink.GetAttribute("data-cover");
var poster = !string.IsNullOrWhiteSpace(posterStr) ? new Uri(qDetailsLink.GetAttribute("data-cover")) : null;
var files = ParseUtil.CoerceLong(row.QuerySelector("td:nth-child(3)").TextContent);
var publishDate = DateTimeUtil.FromTimeAgo(row.QuerySelector("td:nth-child(4)").TextContent);
var size = ReleaseInfo.GetBytes(row.QuerySelector("td:nth-child(5)").FirstChild.TextContent);
var grabs = ParseUtil.CoerceLong(row.QuerySelector("td:nth-child(6)").TextContent);
var seeders = ParseUtil.CoerceInt(row.QuerySelector("td:nth-child(7)").TextContent);
var leechers = ParseUtil.CoerceInt(row.QuerySelector("td:nth-child(8)").TextContent);
var dlVolumeFactor = row.QuerySelector("strong.tl_free") != null ? 0 : 1;
var cat = row.QuerySelector("td.cats_col > div").GetAttribute("class").Replace("tooltip cats_", "");
var category = new List<int> {
cat switch
{
"featurefilm" => TorznabCatType.Movies.ID,
"shortfilm" => TorznabCatType.Movies.ID,
"miniseries" => TorznabCatType.TV.ID,
"other" => TorznabCatType.Other.ID,
_ => throw new Exception($"Unknown category: {cat}")
}
};
var qImdb = row.QuerySelector("a[href^=\"https://www.imdb.com\"]");
var imdb = qImdb != null ? ParseUtil.GetImdbID(qImdb.GetAttribute("href").Split('/').Last()) : null;
qImdb = row.QuerySelector("a[href^=\"https://www.themoviedb.org\"]");
var tmdb = qImdb != null ? ParseUtil.GetLongFromString(qImdb.GetAttribute("href").Split('/').Last()) : null;
var release = new ReleaseInfo
{
MinimumRatio = 1,
MinimumSeedTime = 259200,
Description = description,
Title = title,
PublishDate = publishDate,
Category = category,
Link = link,
Details = details,
Guid = link,
Imdb = imdb,
TMDb = tmdb,
Poster = poster,
Seeders = seeders,
Peers = leechers + seeders,
Size = size,
Grabs = grabs,
Files = files,
DownloadVolumeFactor = dlVolumeFactor,
UploadVolumeFactor = 1
};
releases.Add(release);
}
}
catch (Exception ex)
{
OnParseError(results.ContentString, ex);
}
return releases;
}
}
}

View File

@@ -39,7 +39,7 @@ namespace Jackett.Common.Indexers
private const string SearchUrl = "buscar/";
public override string[] AlternativeSiteLinks { get; protected set; } = {
"https://dontorrent.click/",
"https://dontorrent.fail/",
"https://todotorrents.net/",
"https://tomadivx.net/",
"https://seriesblanco.one/",
@@ -48,7 +48,6 @@ namespace Jackett.Common.Indexers
};
public override string[] LegacySiteLinks { get; protected set; } = {
"https://dontorrent.dev/",
"https://dontorrent.bid/",
"https://dontorrent.pet/",
"https://dontorrent.soy/",
@@ -62,7 +61,8 @@ namespace Jackett.Common.Indexers
"https://dontorrent.ltd/",
"https://dontorrent.me/",
"https://dontorrent.gs/",
"https://dontorrent.gy/"
"https://dontorrent.gy/",
"https://dontorrent.click/"
};
private static Dictionary<string, string> CategoriesMap => new Dictionary<string, string>
@@ -80,7 +80,7 @@ namespace Jackett.Common.Indexers
: base(id: "dontorrent",
name: "DonTorrent",
description: "DonTorrent is a SPANISH public tracker for MOVIES / TV / GENERAL",
link: "https://dontorrent.click/",
link: "https://dontorrent.fail/",
caps: new TorznabCapabilities
{
TvSearchParams = new List<TvSearchParam>
@@ -146,7 +146,7 @@ namespace Jackett.Common.Indexers
public override async Task<byte[]> Download(Uri link)
{
var downloadUrl = link.ToString();
if (downloadUrl.Contains("cdn.pizza") || downloadUrl.Contains("blazing.network") || downloadUrl.Contains("tor.cat") || downloadUrl.Contains("cdndelta.com"))
if (downloadUrl.Contains("cdn.pizza") || downloadUrl.Contains("blazing.network") || downloadUrl.Contains("tor.cat") || downloadUrl.Contains("cdndelta.com") || downloadUrl.Contains("cdnbeta.in"))
{
return await base.Download(link);
}

View File

@@ -13,6 +13,7 @@ namespace Jackett.Common.Indexers
public class RetroFlix : SpeedAppTracker
{
protected override bool UseP2PReleaseName => true;
protected override int minimumSeedTime => 432000; // 120h
public override string[] LegacySiteLinks { get; protected set; } = {
"https://retroflix.net/"

View File

@@ -257,7 +257,7 @@ namespace Jackett.Updater
"Definitions/01torrent.yml",
"Definitions/24rolika.yml",
"Definitions/32pages.yml",
"Definitions/3evils.yml",
"Definitions/3evils-api.yml",
"Definitions/420files.yml",
"Definitions/7torrents.yml",
"Definitions/DasUnerwartete.yml",
@@ -412,6 +412,7 @@ namespace Jackett.Updater
"Definitions/kickasstorrent-kathow.yml", // renamed to kickasstorrents-ws
"Definitions/kickasstorrent.yml",
"Definitions/kikibt.yml",
"Definitions/kinonavse100.yml",
"Definitions/kisssub.yml",
"Definitions/lapausetorrents.yml",
"Definitions/lat-team.yml", // switch to *-API #8682
@@ -470,6 +471,7 @@ namespace Jackett.Updater
"Definitions/pornolive.yml",
"Definitions/pornorip.yml",
"Definitions/portugas.yml", // switch to *-API #13542
"Definitions/prostylex.yml",
"Definitions/ps4-torrent.yml",
"Definitions/pt99.yml",
"Definitions/puurhollands.yml",
@@ -495,7 +497,6 @@ namespace Jackett.Updater
"Definitions/scenexpress.yml",
"Definitions/sdkino.yml",
"Definitions/secretcinema.yml", // migrated to C# gazelle base tracker
"Definitions/seedfile.yml",
"Definitions/seedpeer.yml",
"Definitions/sexxi.yml",
"Definitions/sharefiles.yml",
@@ -557,6 +558,7 @@ namespace Jackett.Updater
"Definitions/torrentseed.yml", // renamed to latinop2p #9065
"Definitions/torrentseeds.yml", // migrated to c#
"Definitions/torrentsmd.yml",
"Definitions/torrent-town.yml",
"Definitions/torrentsurf.yml", // renamed xtremebytes #9951
"Definitions/torrentvault.yml",
"Definitions/torrentwal.yml",