mirror of
https://github.com/Prowlarr/Indexers.git
synced 2026-02-15 07:25:47 +00:00
jackett indexers as of e09d94ff036bdf1eefb6fa726283e4afc6c16988 [2026-02-11T02:31:13Z]
Added Indexers: definitions/v11/bluetorrents.yml definitions/v11/momentpt.yml definitions/v11/ptlgs.yml definitions/v11/ptzone.yml definitions/v11/siqi.yml definitions/v11/xingyung.yml definitions/v11/zamundarip.yml Removed Indexers: definitions/v11/arenabg.yml definitions/v11/xthor-api.yml definitions/v11/zamundanet.yml definitions/v11/zelkaorg.yml Modified Indexers: definitions/v11/Bittorrentfiles.yml definitions/v11/alingpt.yml definitions/v11/backups.yml definitions/v11/cangbaoge.yml definitions/v11/cdfile.yml definitions/v11/hhanclub.yml definitions/v11/kunlun.yml definitions/v11/lacale-api.yml definitions/v11/lajidui.yml definitions/v11/longpt.yml definitions/v11/magnetcat.yml definitions/v11/march.yml definitions/v11/novahd.yml definitions/v11/sextorrent-api.yml definitions/v11/shareisland-api.yml definitions/v11/tangmen.yml definitions/v11/tangpt.yml definitions/v11/torrent9.yml definitions/v11/uztracker.yml
This commit is contained in:
@@ -5,6 +5,8 @@ description: "Bittorrentfiles is a Private GERMAN Torrent Tracker for MOVIES / T
|
|||||||
language: de-DE
|
language: de-DE
|
||||||
type: private
|
type: private
|
||||||
encoding: UTF-8
|
encoding: UTF-8
|
||||||
|
certificates:
|
||||||
|
- f9d7cb73beb0254372638cfd7afca468ed568964 # Expired 10th Feb 2026
|
||||||
links:
|
links:
|
||||||
- https://bittorrentfiles.me/
|
- https://bittorrentfiles.me/
|
||||||
legacylinks:
|
legacylinks:
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -1,201 +0,0 @@
|
|||||||
---
|
|
||||||
id: arenabg
|
|
||||||
name: ArenaBG
|
|
||||||
description: "ArenaBG is a BULGARIAN Semi-Private Torrent Tracker for 0DAY / GENERAL"
|
|
||||||
language: bg-BG
|
|
||||||
type: semi-private
|
|
||||||
encoding: UTF-8
|
|
||||||
links:
|
|
||||||
- https://arenabg.com/
|
|
||||||
legacylinks:
|
|
||||||
- https://arenabg.ch/
|
|
||||||
|
|
||||||
caps:
|
|
||||||
categorymappings:
|
|
||||||
- {id: 1, cat: Movies, desc: "Movies"}
|
|
||||||
- {id: 8, cat: Movies, desc: "Movies / ArenaBG.TV"}
|
|
||||||
- {id: 9, cat: Movies/SD, desc: "Movies / XviD"}
|
|
||||||
- {id: 10, cat: Movies/DVD, desc: "Movies / DVD-R"}
|
|
||||||
- {id: 11, cat: Movies/HD, desc: "Movies / x264"}
|
|
||||||
- {id: 12, cat: TV/Anime, desc: "Movies / Anime & Manga"}
|
|
||||||
- {id: 13, cat: TV/Documentary, desc: "Movies / Documentaries"}
|
|
||||||
- {id: 14, cat: Movies/BluRay, desc: "Movies / Blu-ray"}
|
|
||||||
- {id: 15, cat: Movies, desc: "Movies / Weekend"}
|
|
||||||
- {id: 16, cat: Movies, desc: "Movies / Boxset"}
|
|
||||||
- {id: 17, cat: Movies/HD, desc: "Movies / x264 Boxset"}
|
|
||||||
- {id: 18, cat: Movies/HD, desc: "Movies / HDTV"}
|
|
||||||
- {id: 19, cat: Movies/3D, desc: "Movies / 3D"}
|
|
||||||
- {id: 20, cat: Movies/HD, desc: "Movies / Movies HD"}
|
|
||||||
- {id: 21, cat: Movies/HD, desc: "Movies / x265"}
|
|
||||||
- {id: 22, cat: Movies/UHD, desc: "Movies / 4K"}
|
|
||||||
- {id: 59, cat: Movies/HD, desc: "Movies / AV1"}
|
|
||||||
- {id: 2, cat: TV, desc: "Series"}
|
|
||||||
- {id: 23, cat: TV/HD, desc: "Series / TV Episodes HD"}
|
|
||||||
- {id: 24, cat: TV, desc: "Series / TV Episodes"}
|
|
||||||
- {id: 25, cat: TV, desc: "Series / TV Boxset"}
|
|
||||||
- {id: 26, cat: TV/HD, desc: "Series / TV Boxset HD"}
|
|
||||||
- {id: 60, cat: TV/UHD, desc: "Series / 4K"}
|
|
||||||
- {id: 3, cat: Audio, desc: "Music"}
|
|
||||||
- {id: 27, cat: Audio/MP3, desc: "Music / MP3"}
|
|
||||||
- {id: 28, cat: Audio/Video, desc: "Music / Video"}
|
|
||||||
- {id: 29, cat: Audio/Lossless, desc: "Music / FLAC"}
|
|
||||||
- {id: 30, cat: Audio, desc: "Music / DVD"}
|
|
||||||
- {id: 31, cat: Audio/Lossless, desc: "Music / APE"}
|
|
||||||
- {id: 32, cat: Audio, desc: "Music / DTS"}
|
|
||||||
- {id: 33, cat: Audio, desc: "Music / WavePack"}
|
|
||||||
- {id: 34, cat: Audio, desc: "Music / OST"}
|
|
||||||
- {id: 4, cat: PC/Games, desc: "Games"}
|
|
||||||
- {id: 35, cat: PC/Games, desc: "Games / PC ISO"}
|
|
||||||
- {id: 36, cat: PC, desc: "Games / PC RIP"}
|
|
||||||
- {id: 37, cat: Console, desc: "Games / PS2"}
|
|
||||||
- {id: 38, cat: Console/PSP, desc: "Games / PSP"}
|
|
||||||
- {id: 39, cat: Console/XBox, desc: "Games / XBOX"}
|
|
||||||
- {id: 40, cat: Console/XBox 360, desc: "Games / XBOX-360"}
|
|
||||||
- {id: 41, cat: Console/PS3, desc: "Games / PS3"}
|
|
||||||
- {id: 42, cat: Console/Wii, desc: "Games / WII"}
|
|
||||||
- {id: 43, cat: Console/NDS, desc: "Games / NDS"}
|
|
||||||
- {id: 44, cat: Console/PS4, desc: "Games / PS4"}
|
|
||||||
- {id: 5, cat: PC, desc: "Software"}
|
|
||||||
- {id: 45, cat: PC/ISO, desc: "Software / PC ISO"}
|
|
||||||
- {id: 46, cat: PC/Mobile-Other, desc: "Software / Smartphone"}
|
|
||||||
- {id: 47, cat: PC, desc: "Software / Tutorial"}
|
|
||||||
- {id: 48, cat: PC/Mac, desc: "Software / MAC"}
|
|
||||||
- {id: 49, cat: PC/Mobile-Android, desc: "Software / Android"}
|
|
||||||
- {id: 50, cat: PC/Mobile-iOS, desc: "Software / iOS"}
|
|
||||||
- {id: 51, cat: PC/Mobile-Other, desc: "Software / WM7"}
|
|
||||||
- {id: 6, cat: XXX, desc: "XXX"}
|
|
||||||
- {id: 52, cat: XXX, desc: "XXX / Porn"}
|
|
||||||
- {id: 53, cat: XXX, desc: "XXX / XXX HD"}
|
|
||||||
- {id: 7, cat: Other, desc: "Misc"}
|
|
||||||
- {id: 54, cat: Other/Misc, desc: "Misc / Other"}
|
|
||||||
- {id: 55, cat: Books/EBook, desc: "Misc / e-Books"}
|
|
||||||
- {id: 56, cat: Other, desc: "Misc / Banned"}
|
|
||||||
- {id: 57, cat: TV/Sport, desc: "Misc / Sports"}
|
|
||||||
- {id: 58, cat: PC/0day, desc: "Misc / 0-Day"}
|
|
||||||
|
|
||||||
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: downloadlink
|
|
||||||
type: select
|
|
||||||
label: Download link
|
|
||||||
default: "magnet:?xt="
|
|
||||||
options:
|
|
||||||
"/en/torrents/download/?key=": ".torrent"
|
|
||||||
"magnet:?xt=": "magnet"
|
|
||||||
- name: downloadlink2
|
|
||||||
type: select
|
|
||||||
label: Download link (fallback)
|
|
||||||
default: "/en/torrents/download/?key="
|
|
||||||
options:
|
|
||||||
"/en/torrents/download/?key=": ".torrent"
|
|
||||||
"magnet:?xt=": "magnet"
|
|
||||||
- name: info_download
|
|
||||||
type: info
|
|
||||||
label: About the Download links
|
|
||||||
default: You can optionally set as a fallback an automatic alternate link, so if the .torrent download link fails your download will still be successful.
|
|
||||||
|
|
||||||
login:
|
|
||||||
path: en/users/signin/
|
|
||||||
method: form
|
|
||||||
form: form[action="/en/users/signin/"]
|
|
||||||
inputs:
|
|
||||||
username_or_email: "{{ .Config.username }}"
|
|
||||||
password: "{{ .Config.password }}"
|
|
||||||
captcha:
|
|
||||||
type: image
|
|
||||||
selector: img[src="/captcha.php"]
|
|
||||||
input: captcha
|
|
||||||
error:
|
|
||||||
- selector: div.row div#container div.alert
|
|
||||||
test:
|
|
||||||
path: en/
|
|
||||||
selector: a[href="/en/users/logout/"]
|
|
||||||
|
|
||||||
download:
|
|
||||||
selectors:
|
|
||||||
- selector: a[href^="{{ .Config.downloadlink }}"]
|
|
||||||
attribute: href
|
|
||||||
- selector: a[href^="{{ .Config.downloadlink2 }}"]
|
|
||||||
attribute: href
|
|
||||||
|
|
||||||
search:
|
|
||||||
paths:
|
|
||||||
# https://arenabg.com/en/torrents/?text=ice+s01e01
|
|
||||||
- path: en/torrents/
|
|
||||||
inputs:
|
|
||||||
text: "{{ .Keywords }}"
|
|
||||||
subtitles: ""
|
|
||||||
audio: ""
|
|
||||||
# does not support multi-cats so defaulting to all
|
|
||||||
category: ""
|
|
||||||
|
|
||||||
rows:
|
|
||||||
selector: tr:has(a[href^="/en/torrents/?category="])
|
|
||||||
|
|
||||||
fields:
|
|
||||||
category:
|
|
||||||
selector: td.category a[href^="/en/torrents/?category="]:last-of-type
|
|
||||||
attribute: href
|
|
||||||
filters:
|
|
||||||
- name: querystring
|
|
||||||
args: category
|
|
||||||
_english:
|
|
||||||
selector: span[title="English"]
|
|
||||||
attribute: title
|
|
||||||
optional: true
|
|
||||||
_bulgarian:
|
|
||||||
selector: span[title="Bulgarian"]
|
|
||||||
attribute: title
|
|
||||||
optional: true
|
|
||||||
title:
|
|
||||||
selector: td.filename a.title
|
|
||||||
filters:
|
|
||||||
- name: append
|
|
||||||
args: "{{ if .Result._bulgarian }} {{ .Result._bulgarian }}{{ else }}{{ end }}{{ if .Result._english }} {{ .Result._english }}{{ else }}{{ end }}"
|
|
||||||
details:
|
|
||||||
selector: td.filename a.title
|
|
||||||
attribute: href
|
|
||||||
download:
|
|
||||||
selector: td.filename a.title
|
|
||||||
attribute: href
|
|
||||||
poster:
|
|
||||||
selector: td.filename a.title
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: "\"(.+?)\""
|
|
||||||
- name: replace
|
|
||||||
args: ["\\", ""]
|
|
||||||
date:
|
|
||||||
# 2 January 2021, Saturday @ 20:46
|
|
||||||
selector: small
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: "(.+?, .+? @ [0-9]{2}:[0-9]{2})"
|
|
||||||
- name: append
|
|
||||||
args: " +02:00" # EET
|
|
||||||
- name: dateparse
|
|
||||||
args: "d MMMM yyyy, dddd @ HH:mm zzz"
|
|
||||||
size:
|
|
||||||
selector: td:nth-child(3)
|
|
||||||
seeders:
|
|
||||||
selector: td:nth-child(4)
|
|
||||||
leechers:
|
|
||||||
selector: td:nth-child(5)
|
|
||||||
downloadvolumefactor:
|
|
||||||
text: 0
|
|
||||||
uploadvolumefactor:
|
|
||||||
text: 1
|
|
||||||
# engine n/a
|
|
||||||
@@ -14,30 +14,30 @@ caps:
|
|||||||
- {id: 100, cat: Console, desc: "Anbernic"}
|
- {id: 100, cat: Console, desc: "Anbernic"}
|
||||||
- {id: 15, cat: PC/Mobile-Android, desc: "Android"}
|
- {id: 15, cat: PC/Mobile-Android, desc: "Android"}
|
||||||
- {id: 35, cat: TV/Anime, desc: "Anime"}
|
- {id: 35, cat: TV/Anime, desc: "Anime"}
|
||||||
- {id: 51, cat: PC/Mac, desc: "Apple"}
|
|
||||||
- {id: 3, cat: PC, desc: "Apps"}
|
- {id: 3, cat: PC, desc: "Apps"}
|
||||||
- {id: 109, cat: PC, desc: "Attract-Mode"}
|
- {id: 109, cat: PC, desc: "Attract"}
|
||||||
- {id: 64, cat: Audio/Audiobook, desc: "Audiobooks"}
|
- {id: 64, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||||
- {id: 71, cat: Console, desc: "Batocera"}
|
- {id: 71, cat: Console, desc: "Batocera"}
|
||||||
|
- {id: 108, cat: Console, desc: "Bazpacks"}
|
||||||
- {id: 4, cat: Movies/BluRay, desc: "Blu-Ray"}
|
- {id: 4, cat: Movies/BluRay, desc: "Blu-Ray"}
|
||||||
- {id: 112, cat: Console, desc: "Brojack & Laws"}
|
- {id: 112, cat: Console, desc: "Brojack & Laws"}
|
||||||
- {id: 42, cat: Console, desc: "CoinOPS Official"}
|
- {id: 42, cat: Console, desc: "CoinOPS Official"}
|
||||||
- {id: 65, cat: Console, desc: "CoinOps Unofficial"}
|
- {id: 65, cat: Console, desc: "CoinOps Unofficial"}
|
||||||
- {id: 22, cat: Console, desc: "CoinOps"}
|
- {id: 22, cat: Console, desc: "CoinOps Xbox"}
|
||||||
- {id: 63, cat: Books/Comics, desc: "Comics"}
|
- {id: 63, cat: Books/Comics, desc: "Comics"}
|
||||||
- {id: 60, cat: Console, desc: "Core"}
|
- {id: 60, cat: Console, desc: "CORE"}
|
||||||
- {id: 72, cat: Console, desc: "CORE Community"}
|
- {id: 72, cat: Console, desc: "CORE Community"}
|
||||||
- {id: 44, cat: Console, desc: "CP78"}
|
- {id: 44, cat: Console, desc: "CP78"}
|
||||||
- {id: 16, cat: TV/Documentary, desc: "Docu"}
|
- {id: 16, cat: TV/Documentary, desc: "Docu"}
|
||||||
- {id: 41, cat: Console, desc: "Dragon"}
|
- {id: 41, cat: Console, desc: "Dragon"}
|
||||||
- {id: 5, cat: Books, desc: "EBooks"}
|
- {id: 5, cat: Books, desc: "eBooks"}
|
||||||
- {id: 89, cat: PC, desc: "Ghostware"}
|
- {id: 89, cat: PC, desc: "Ghostware"}
|
||||||
- {id: 84, cat: TV, desc: "GOG DRM FREE"}
|
- {id: 84, cat: TV, desc: "GOG"}
|
||||||
- {id: 77, cat: PC, desc: "Hyperspin"}
|
- {id: 77, cat: PC, desc: "Hyperspin"}
|
||||||
- {id: 34, cat: TV, desc: "Kids"}
|
- {id: 34, cat: TV, desc: "Kids"}
|
||||||
- {id: 107, cat: Console, desc: "KinHanK"}
|
- {id: 107, cat: Console, desc: "KinHanK"}
|
||||||
- {id: 43, cat: Console, desc: "LaunchBox"}
|
- {id: 43, cat: Console, desc: "LaunchBox"}
|
||||||
- {id: 85, cat: PC, desc: "MAME Rom Sets"}
|
- {id: 85, cat: PC, desc: "MAME"}
|
||||||
- {id: 32, cat: Movies, desc: "Movie Pack"}
|
- {id: 32, cat: Movies, desc: "Movie Pack"}
|
||||||
- {id: 106, cat: Movies/UHD, desc: "Movie Pack 4K"}
|
- {id: 106, cat: Movies/UHD, desc: "Movie Pack 4K"}
|
||||||
- {id: 6, cat: Movies, desc: "Movies"}
|
- {id: 6, cat: Movies, desc: "Movies"}
|
||||||
@@ -51,15 +51,15 @@ caps:
|
|||||||
- {id: 30, cat: Console, desc: "Playstation"}
|
- {id: 30, cat: Console, desc: "Playstation"}
|
||||||
- {id: 83, cat: PC, desc: "Retro eXo"}
|
- {id: 83, cat: PC, desc: "Retro eXo"}
|
||||||
- {id: 56, cat: PC, desc: "Retro Minis"}
|
- {id: 56, cat: PC, desc: "Retro Minis"}
|
||||||
- {id: 67, cat: PC, desc: "Retrobat"}
|
- {id: 67, cat: PC, desc: "RetroBat"}
|
||||||
- {id: 88, cat: PC, desc: "RetroFE"}
|
- {id: 88, cat: PC, desc: "RetroFE"}
|
||||||
- {id: 76, cat: Console, desc: "RGS"}
|
- {id: 76, cat: Console, desc: "RGS"}
|
||||||
- {id: 27, cat: PC, desc: "Roms and Emulators"}
|
- {id: 27, cat: PC, desc: "ROM Packs"}
|
||||||
- {id: 62, cat: PC, desc: "RPi"}
|
- {id: 62, cat: PC, desc: "RPi"}
|
||||||
- {id: 81, cat: PC, desc: "Scene"}
|
- {id: 81, cat: PC, desc: "Scene"}
|
||||||
- {id: 68, cat: PC, desc: "Schmoomer's"}
|
- {id: 68, cat: PC, desc: "Schmoomer"}
|
||||||
- {id: 110, cat: Console, desc: "ScummVM"}
|
- {id: 110, cat: Console, desc: "ScummVM"}
|
||||||
- {id: 57, cat: Console, desc: "Sega"}
|
- {id: 57, cat: Console, desc: "SEGA"}
|
||||||
- {id: 74, cat: PC, desc: "Sleyk/SGC"}
|
- {id: 74, cat: PC, desc: "Sleyk/SGC"}
|
||||||
- {id: 75, cat: Audio, desc: "Soundtracks"}
|
- {id: 75, cat: Audio, desc: "Soundtracks"}
|
||||||
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
||||||
@@ -68,9 +68,9 @@ caps:
|
|||||||
- {id: 9, cat: TV, desc: "TV Packs"}
|
- {id: 9, cat: TV, desc: "TV Packs"}
|
||||||
- {id: 11, cat: TV, desc: "TV Shows"}
|
- {id: 11, cat: TV, desc: "TV Shows"}
|
||||||
- {id: 73, cat: Console, desc: "Wolfanoz"}
|
- {id: 73, cat: Console, desc: "Wolfanoz"}
|
||||||
- {id: 26, cat: Console, desc: "Xbox"}
|
- {id: 26, cat: Console, desc: "XBOX"}
|
||||||
- {id: 12, cat: Console, desc: "XBOX360"}
|
- {id: 12, cat: Console, desc: "XBOX360"}
|
||||||
- {id: 23, cat: XXX, desc: "xxx18+"}
|
- {id: 23, cat: XXX, desc: "XXX18+"}
|
||||||
|
|
||||||
modes:
|
modes:
|
||||||
search: [q]
|
search: [q]
|
||||||
@@ -129,31 +129,31 @@ search:
|
|||||||
# sort is done via do=quick_sort, and freeleech sorting is part of that set
|
# sort is done via do=quick_sort, and freeleech sorting is part of that set
|
||||||
|
|
||||||
rows:
|
rows:
|
||||||
selector: "table#sortabletable > tbody > tr:has(a[href*=\"download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"freedownload.gif\"]){{ else }}{{ end }}"
|
selector: "table#sortabletable > tbody > tr:has(a[href*=\"download-torrent-\"]){{ if .Config.freeleech }}:has(img[src$=\"freedownload.gif\"]){{ else }}{{ end }}"
|
||||||
filters:
|
filters:
|
||||||
- name: andmatch
|
- name: andmatch
|
||||||
args: 66
|
args: 66
|
||||||
|
|
||||||
fields:
|
fields:
|
||||||
category:
|
category:
|
||||||
selector: a[href*="browse.php?category="]
|
selector: a[href*="torrent-category-"]
|
||||||
attribute: href
|
attribute: href
|
||||||
filters:
|
filters:
|
||||||
- name: querystring
|
- name: regexp
|
||||||
args: category
|
args: "torrent-category-(\\d+)"
|
||||||
title_default:
|
title_default:
|
||||||
# is often abbreviated
|
# is often abbreviated
|
||||||
selector: a[href*="details.php?id="]
|
selector: a[href*="torrent-details-"]
|
||||||
title:
|
title:
|
||||||
# can be abbreviated but usually longer than title_default
|
# can be abbreviated but usually longer than title_default
|
||||||
selector: div.tooltip-content > div
|
selector: div.tooltip-content > div
|
||||||
optional: true
|
optional: true
|
||||||
default: "{{ .Result.title_default }}"
|
default: "{{ .Result.title_default }}"
|
||||||
details:
|
details:
|
||||||
selector: a[href*="details.php?id="]
|
selector: a[href*="torrent-details-"]
|
||||||
attribute: href
|
attribute: href
|
||||||
download:
|
download:
|
||||||
selector: a[href*="download.php?id="]
|
selector: a[href*="download-torrent-"]
|
||||||
attribute: href
|
attribute: href
|
||||||
magnet:
|
magnet:
|
||||||
selector: a[href^="magnet:?xt="]
|
selector: a[href^="magnet:?xt="]
|
||||||
|
|||||||
121
definitions/v11/bluetorrents.yml
Normal file
121
definitions/v11/bluetorrents.yml
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
---
|
||||||
|
id: bluetorrents
|
||||||
|
name: BlueTorrents
|
||||||
|
description: "BlueTorrents is a Private Torrent Tracker for MOVIES / TV / MUSIC / GENERAL"
|
||||||
|
language: en-US
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://bluetorrents.com/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
# from https://bluetorrents.com/api/external?apikey=YOUR-API-KEY&t=caps
|
||||||
|
- {id: 2000, cat: Movies, desc: "Movies"}
|
||||||
|
- {id: 5000, cat: TV, desc: "TV Shows"}
|
||||||
|
- {id: 1000, cat: Console, desc: "Games"}
|
||||||
|
- {id: 3000, cat: Audio, desc: "Music"}
|
||||||
|
- {id: 4000, cat: PC/0day, desc: "Apps"}
|
||||||
|
- {id: 6000, cat: XXX, desc: "XXX"}
|
||||||
|
- {id: 8000, cat: Other, desc: "Other"}
|
||||||
|
- {id: 7000, cat: Books, desc: "Books"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
search: [q]
|
||||||
|
tv-search: [q, season, ep, imdbid]
|
||||||
|
movie-search: [q, tmdbid]
|
||||||
|
music-search: [q]
|
||||||
|
book-search: [q]
|
||||||
|
allowtvsearchimdb: true
|
||||||
|
|
||||||
|
settings:
|
||||||
|
- name: apikey
|
||||||
|
type: text
|
||||||
|
label: API Key
|
||||||
|
- name: info_key
|
||||||
|
type: info
|
||||||
|
label: About your API key
|
||||||
|
default: "You can find your API Key by accessing the <a href=\"https://bluetorrents.com/settings\" target=\"_blank\">BlueTorrents Settings</a> page, and scrolling down to the <b>API keys</b> section."
|
||||||
|
- name: info_3x
|
||||||
|
type: info
|
||||||
|
label: Including 3X
|
||||||
|
default: "IF you want to see 3x torrents access your <a href=\"https://bluetorrents.com/settings\" target=\"_blank\">BlueTorrents Settings</a> page and tick the <b>Show NSFW content</b> checkbox."
|
||||||
|
- name: info_activity
|
||||||
|
type: info
|
||||||
|
label: Account Inactivity
|
||||||
|
default: "Accounts with no activity for 90+ days may be disabled."
|
||||||
|
|
||||||
|
search:
|
||||||
|
paths:
|
||||||
|
- path: api/external
|
||||||
|
response:
|
||||||
|
type: xml
|
||||||
|
|
||||||
|
inputs:
|
||||||
|
apikey: "{{ .Config.apikey }}"
|
||||||
|
t: "{{ if .Query.TMDBID }}movie{{ else }}{{ end }}{{ if or .Query.Season .Query.Ep }}tvsearch{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.TMDBID .Query.Season .Query.Ep }}{{ else }}search{{ end }}"
|
||||||
|
q: "{{ .Keywords }}"
|
||||||
|
cat: "{{ join .Categories \",\" }}"
|
||||||
|
season: "{{ .Query.Season }}"
|
||||||
|
ep: "{{ .Query.Ep }}"
|
||||||
|
imdbid: "{{ .Query.IMDBID }}"
|
||||||
|
tmdbid: "{{ .Query.TMDBID }}"
|
||||||
|
limit: 100
|
||||||
|
|
||||||
|
keywordsfilters:
|
||||||
|
# replace spaces between words with percent wildcard
|
||||||
|
- name: re_replace
|
||||||
|
args: ["\\W+", "%"]
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: rss > channel > item
|
||||||
|
|
||||||
|
fields:
|
||||||
|
category:
|
||||||
|
selector: '[name="category"]'
|
||||||
|
attribute: value
|
||||||
|
title:
|
||||||
|
selector: title
|
||||||
|
details:
|
||||||
|
selector: link
|
||||||
|
download:
|
||||||
|
selector: enclosure
|
||||||
|
attribute: url
|
||||||
|
infohash:
|
||||||
|
selector: '[name="infohash"]'
|
||||||
|
attribute: value
|
||||||
|
imdbid:
|
||||||
|
selector: '[name="imdbid"]'
|
||||||
|
attribute: value
|
||||||
|
tmdbid:
|
||||||
|
selector: '[name="tmdbid"]'
|
||||||
|
attribute: value
|
||||||
|
date:
|
||||||
|
# Sun, 08 Feb 2026 03:32:24 -0800
|
||||||
|
selector: pubDate
|
||||||
|
filters:
|
||||||
|
- name: dateparse
|
||||||
|
args: "ddd, dd MMM yyyy HH:mm:ss zzz"
|
||||||
|
size:
|
||||||
|
selector: size
|
||||||
|
seeders:
|
||||||
|
selector: '[name="seeders"]'
|
||||||
|
attribute: value
|
||||||
|
leechers:
|
||||||
|
selector: '[name="peers"]'
|
||||||
|
attribute: value
|
||||||
|
grabs:
|
||||||
|
selector: '[name="grabs"]'
|
||||||
|
attribute: value
|
||||||
|
downloadvolumefactor:
|
||||||
|
selector: '[name="downloadvolumefactor"]'
|
||||||
|
attribute: value
|
||||||
|
uploadvolumefactor:
|
||||||
|
selector: '[name="uploadvolumefactor"]'
|
||||||
|
attribute: value
|
||||||
|
minimumratio:
|
||||||
|
text: 1.0
|
||||||
|
minimumseedtime:
|
||||||
|
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||||
|
text: 259200
|
||||||
|
# torznab xml
|
||||||
@@ -148,7 +148,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
optional: true
|
optional: true
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ login:
|
|||||||
ssl: yes
|
ssl: yes
|
||||||
trackerssl: yes
|
trackerssl: yes
|
||||||
error:
|
error:
|
||||||
- selector: div > div.flex:has(div:contains("失败"))
|
- selector: div#Container > div.flex:has(div:contains("失败"))
|
||||||
test:
|
test:
|
||||||
path: index.php
|
path: index.php
|
||||||
selector: a[href="logout.php"]
|
selector: a[href="logout.php"]
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -113,7 +113,7 @@ search:
|
|||||||
inputs:
|
inputs:
|
||||||
apikey: "{{ .Config.apikey }}"
|
apikey: "{{ .Config.apikey }}"
|
||||||
$raw: "{{ range .Categories }}cat={{.}}&{{end}}"
|
$raw: "{{ range .Categories }}cat={{.}}&{{end}}"
|
||||||
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}FRENCH{{ end }}"
|
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}*{{ end }}"
|
||||||
tmdbId: "{{ .Query.TMDBID }}"
|
tmdbId: "{{ .Query.TMDBID }}"
|
||||||
|
|
||||||
rows:
|
rows:
|
||||||
@@ -167,4 +167,4 @@ search:
|
|||||||
minimumseedtime:
|
minimumseedtime:
|
||||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||||
text: 172800
|
text: 172800
|
||||||
# json API
|
# json API v1.3
|
||||||
|
|||||||
@@ -154,7 +154,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -166,7 +166,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -9,14 +9,12 @@ encoding: UTF-8
|
|||||||
links:
|
links:
|
||||||
- https://magnetcatcat.com/
|
- https://magnetcatcat.com/
|
||||||
- https://clmclm.com/
|
- https://clmclm.com/
|
||||||
- https://www.8800536.xyz/
|
|
||||||
- https://www.8800537.xyz/
|
|
||||||
- https://www.8800538.xyz/
|
- https://www.8800538.xyz/
|
||||||
- https://www.8800539.xyz/
|
- https://www.8800539.xyz/
|
||||||
|
- https://www.8800540.xyz/
|
||||||
|
- https://www.8800541.xyz/
|
||||||
legacylinks:
|
legacylinks:
|
||||||
- https://www.clm472.sbs/
|
- https://www.clm472.sbs/
|
||||||
- https://www.8800520.xyz/
|
|
||||||
- https://www.8800519.xyz/
|
|
||||||
- https://www.8800521.xyz/
|
- https://www.8800521.xyz/
|
||||||
- https://www.8800522.xyz/
|
- https://www.8800522.xyz/
|
||||||
- https://www.8800523.xyz/
|
- https://www.8800523.xyz/
|
||||||
@@ -31,6 +29,8 @@ legacylinks:
|
|||||||
- https://www.8800532.xyz/
|
- https://www.8800532.xyz/
|
||||||
- https://www.8800533.xyz/
|
- https://www.8800533.xyz/
|
||||||
- https://www.8800534.xyz/
|
- https://www.8800534.xyz/
|
||||||
|
- https://www.8800536.xyz/
|
||||||
|
- https://www.8800537.xyz/
|
||||||
|
|
||||||
caps:
|
caps:
|
||||||
categorymappings:
|
categorymappings:
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
169
definitions/v11/momentpt.yml
Normal file
169
definitions/v11/momentpt.yml
Normal file
@@ -0,0 +1,169 @@
|
|||||||
|
---
|
||||||
|
id: momentpt
|
||||||
|
name: MomentPT
|
||||||
|
description: "MomentPT is a CHINESE Private Torrent Tracker for Photography"
|
||||||
|
language: zh-CN
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://www.momentpt.top/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
- {id: 401, cat: Other, desc: "写真(Portraiture)"}
|
||||||
|
- {id: 402, cat: Other, desc: "人像(Portrait)"}
|
||||||
|
- {id: 403, cat: Other, desc: "风光(Landscape)"}
|
||||||
|
- {id: 404, cat: Other, desc: "纪实(Documentary)"}
|
||||||
|
- {id: 416, cat: Other, desc: "杂志(Magazine)"}
|
||||||
|
- {id: 415, cat: Other, desc: "静物(Still Life)"}
|
||||||
|
- {id: 414, cat: Other, desc: "儿童(Children)"}
|
||||||
|
- {id: 413, cat: Other, desc: "超现实(Surreal)"}
|
||||||
|
- {id: 412, cat: Other, desc: "美食(Cuisine)"}
|
||||||
|
- {id: 411, cat: Other, desc: "动物(Animals)"}
|
||||||
|
- {id: 405, cat: Other, desc: "人文(Humanity)"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
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: "{{ .Keywords }}"
|
||||||
|
# 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: 0
|
||||||
|
# 0 AND, 2 exact
|
||||||
|
search_mode: 0
|
||||||
|
sort: "{{ .Config.sort }}"
|
||||||
|
type: "{{ .Config.type }}"
|
||||||
|
notnewword: 1
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: table.torrents > tbody > tr:has(a[href*="download.php?id="])
|
||||||
|
|
||||||
|
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
|
||||||
|
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:nth-child(6)
|
||||||
|
leechers:
|
||||||
|
selector: td.rowfollow:nth-child(7)
|
||||||
|
optional: true
|
||||||
|
grabs:
|
||||||
|
selector: td.rowfollow:nth-child(8)
|
||||||
|
optional: true
|
||||||
|
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.7 2025-09-24 (custom)
|
||||||
@@ -150,7 +150,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
195
definitions/v11/ptlgs.yml
Normal file
195
definitions/v11/ptlgs.yml
Normal file
@@ -0,0 +1,195 @@
|
|||||||
|
---
|
||||||
|
id: ptlgs
|
||||||
|
name: PTLGS
|
||||||
|
description: "PTLGS is a CHINESE Private Torrent Tracker for MOVIES / TV"
|
||||||
|
language: zh-CN
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://ptlgs.org/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
- {id: 409, cat: Other/Misc, desc: "其他(Other)"}
|
||||||
|
- {id: 407, cat: TV/Sport, desc: "体育(Sports)"}
|
||||||
|
- {id: 406, cat: Audio/Video, desc: "音乐(Music Video)"}
|
||||||
|
- {id: 403, cat: TV, desc: "综艺(Variety Shows)"}
|
||||||
|
- {id: 402, cat: TV, desc: "剧集(Drama Serie)"}
|
||||||
|
- {id: 405, cat: TV/Anime, desc: "动漫/Anime)"}
|
||||||
|
- {id: 404, cat: TV/Documentary, desc: "纪录片/Documentary)"}
|
||||||
|
- {id: 401, cat: Movies, desc: "电影(Movies)"}
|
||||||
|
- {id: 411, cat: Other, desc: "字幕组(Subtitle Group)"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
search: [q]
|
||||||
|
tv-search: [q, season, ep, imdbid, doubanid]
|
||||||
|
movie-search: [q, imdbid, doubanid]
|
||||||
|
|
||||||
|
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 SBPT 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>All users' accounts will be retained forever, and data will be retained forever</li><li>Newly registered accounts without traffic (i.e., upload/download data are 0) will be automatically frozen by the system if they do not log in for 7 consecutive days</li><li>Accounts that have been inactive for more than 30 days will be automatically banned by the system</li><li>determination method: When there is an unread announcement, it is necessary to manually confirm that the announcement has been read to be considered active; When there are no unread announcements, you need to visit the homepage to be active.</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("失败"))
|
||||||
|
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(a[href*="download.php?id="])
|
||||||
|
|
||||||
|
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:nth-child(6)
|
||||||
|
leechers:
|
||||||
|
selector: td.rowfollow:nth-child(7)
|
||||||
|
grabs:
|
||||||
|
selector: td.rowfollow:nth-child(8)
|
||||||
|
downloadvolumefactor:
|
||||||
|
case:
|
||||||
|
img.pro_free: 0
|
||||||
|
img.pro_free2up: 0
|
||||||
|
img.pro_50pctdown: 0.5
|
||||||
|
img.pro_50pctdown2up: 0.5
|
||||||
|
img.pro_30pctdown: 0.3
|
||||||
|
"*": 1
|
||||||
|
uploadvolumefactor:
|
||||||
|
case:
|
||||||
|
img.pro_50pctdown2up: 2
|
||||||
|
img.pro_free2up: 2
|
||||||
|
img.pro_2up: 2
|
||||||
|
"*": 1
|
||||||
|
minimumseedtime:
|
||||||
|
# 5 hours (as seconds = 5 x 60 x 60)
|
||||||
|
text: 18000
|
||||||
|
description:
|
||||||
|
selector: td.rowfollow:nth-child(2)
|
||||||
|
remove: a, b, font, img, span
|
||||||
|
# NexusPHP v1.8.13 2024-09-21
|
||||||
181
definitions/v11/ptzone.yml
Normal file
181
definitions/v11/ptzone.yml
Normal file
@@ -0,0 +1,181 @@
|
|||||||
|
---
|
||||||
|
id: ptzone
|
||||||
|
name: PTzone
|
||||||
|
description: "PTzone is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||||
|
language: zh-CN
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://ptzone.xyz/
|
||||||
|
|
||||||
|
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: "Documentaries(纪录片)"}
|
||||||
|
- {id: 405, cat: TV/Anime, desc: "Animations(动漫)"}
|
||||||
|
- {id: 406, cat: Audio, desc: "Music(音乐)"}
|
||||||
|
- {id: 407, cat: TV/Sport, desc: "Sports(体育)"}
|
||||||
|
- {id: 408, cat: Other, desc: "Others(其它)"}
|
||||||
|
- {id: 410, cat: PC/0day, desc: "Software(软件)"}
|
||||||
|
- {id: 411, cat: PC/Games, desc: "Games(游戏)"}
|
||||||
|
- {id: 409, cat: TV, desc: "Others(其它)"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
search: [q]
|
||||||
|
tv-search: [q, season, ep, imdbid, doubanid]
|
||||||
|
movie-search: [q, imdbid, doubanid]
|
||||||
|
music-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 regularly disables login page for certain events during the year
|
||||||
|
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 (not working)
|
||||||
|
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||||
|
# 0 AND, 1 OR, 2 exact
|
||||||
|
search_mode: 0
|
||||||
|
sort: "{{ .Config.sort }}"
|
||||||
|
type: "{{ .Config.type }}"
|
||||||
|
notnewword: 1
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||||
|
|
||||||
|
fields:
|
||||||
|
category:
|
||||||
|
selector: a[href^="?cat="]
|
||||||
|
attribute: href
|
||||||
|
filters:
|
||||||
|
- name: querystring
|
||||||
|
args: cat
|
||||||
|
title_default:
|
||||||
|
selector: a[href^="details.php?id="]
|
||||||
|
title:
|
||||||
|
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: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
|
||||||
|
description_verified:
|
||||||
|
case:
|
||||||
|
span[title="通过"], span[title="通過"], span[title="Allowed"]: "Verified:"
|
||||||
|
span[title="未审"], span[title="未審"], span[title="Not reviewed"]: "Unverified:"
|
||||||
|
span[title="拒绝"], span[title="拒絕"], span[title="Denied"]: "Banned:"
|
||||||
|
description:
|
||||||
|
selector: td.rowfollow:nth-child(2)
|
||||||
|
remove: a, b, font, img, span
|
||||||
|
filters:
|
||||||
|
- name: prepend
|
||||||
|
args: "{{ .Result.description_verified }} "
|
||||||
|
# NexusPHP v1.9.9 2025-10-02
|
||||||
@@ -5,65 +5,60 @@ description: "SexTorrent is a Private Torrent Tracker for 3X"
|
|||||||
language: en-US
|
language: en-US
|
||||||
type: private
|
type: private
|
||||||
encoding: UTF-8
|
encoding: UTF-8
|
||||||
certificates:
|
|
||||||
- 473e65bfd1884f2904b09ac811d0d88355f618b1 # expired 19 Jan 2025
|
|
||||||
links:
|
links:
|
||||||
- https://sextorrent.myds.me/
|
- https://sextorrent.myds.me/
|
||||||
|
|
||||||
caps:
|
caps:
|
||||||
categorymappings:
|
categorymappings:
|
||||||
- {id: 3, cat: XXX, desc: "Amateur"}
|
- {id: 4, cat: XXX, desc: "Hardcore"}
|
||||||
- {id: 4, cat: XXX, desc: "Anal"}
|
- {id: 5, cat: XXX, desc: "Anal"}
|
||||||
- {id: 5, cat: XXX, desc: "Asian"}
|
- {id: 6, cat: XXX, desc: "Asian"}
|
||||||
- {id: 6, cat: XXX, desc: "BDSM"}
|
- {id: 7, cat: XXX, desc: "BDSM"}
|
||||||
- {id: 7, cat: XXX, desc: "Big-Tits"}
|
- {id: 8, cat: XXX, desc: "Big.Tits"}
|
||||||
- {id: 8, cat: XXX, desc: "Busty"}
|
- {id: 9, cat: XXX, desc: "Busty"}
|
||||||
- {id: 9, cat: XXX, desc: "Creampie"}
|
- {id: 10, cat: XXX, desc: "Creampie"}
|
||||||
- {id: 10, cat: XXX, desc: "Fetish"}
|
- {id: 11, cat: XXX, desc: "Fetish"}
|
||||||
- {id: 11, cat: XXX, desc: "Mature"}
|
- {id: 12, cat: XXX, desc: "Mature"}
|
||||||
- {id: 12, cat: XXX, desc: "Hardcore"}
|
- {id: 13, cat: XXX, desc: "Amateur"}
|
||||||
- {id: 13, cat: XXX, desc: "Old and Young"}
|
- {id: 14, cat: XXX, desc: "Old and Young"}
|
||||||
- {id: 14, cat: XXX, desc: "Milf"}
|
- {id: 15, cat: XXX, desc: "Milf"}
|
||||||
- {id: 15, cat: XXX, desc: "Oral"}
|
- {id: 16, cat: XXX, desc: "Oral"}
|
||||||
- {id: 16, cat: XXX, desc: "Orgy Gang Bang"}
|
- {id: 17, cat: XXX, desc: "Orgy GangBang"}
|
||||||
- {id: 17, cat: XXX, desc: "Lesbian"}
|
- {id: 18, cat: XXX, desc: "Lesbian"}
|
||||||
- {id: 18, cat: XXX, desc: "Teen"}
|
- {id: 19, cat: XXX, desc: "Teen"}
|
||||||
- {id: 19, cat: XXX, desc: "HD - High.Definition"}
|
- {id: 20, cat: XXX/x264, desc: "HD High.Definition"}
|
||||||
- {id: 20, cat: XXX, desc: "Hentai"}
|
- {id: 21, cat: XXX/Other, desc: "Cartoon Hentai"}
|
||||||
- {id: 21, cat: XXX, desc: "Interracial"}
|
- {id: 22, cat: XXX, desc: "Interracial"}
|
||||||
- {id: 22, cat: XXX, desc: "Masturbate"}
|
- {id: 23, cat: XXX, desc: "Masturbate"}
|
||||||
- {id: 23, cat: XXX, desc: "Music Video"}
|
- {id: 24, cat: XXX/Other, desc: "Music.Video"}
|
||||||
- {id: 24, cat: XXX, desc: "POV"}
|
- {id: 25, cat: XXX, desc: "POV"}
|
||||||
- {id: 25, cat: XXX, desc: "Shemale -TS- TransSex"}
|
- {id: 26, cat: XXX, desc: "Shemale TS Trans.Sex"}
|
||||||
- {id: 26, cat: XXX, desc: "Straight"}
|
- {id: 27, cat: XXX, desc: "Straight"}
|
||||||
- {id: 27, cat: XXX, desc: "Mega.Pack"}
|
- {id: 28, cat: XXX/Pack, desc: "Mega.PACK"}
|
||||||
- {id: 28, cat: XXX, desc: "V.R. -Porn-"}
|
- {id: 29, cat: XXX, desc: "VR - Porn"}
|
||||||
- {id: 30, cat: XXX/ImageSet, desc: "Pictures"}
|
- {id: 30, cat: XXX/ImageSet, desc: "Pictures XXX"}
|
||||||
- {id: 29, cat: XXX, desc: "SiteRip"}
|
- {id: 31, cat: XXX, desc: "SiteRip"}
|
||||||
- {id: 31, cat: XXX, desc: "Foreign"}
|
- {id: 32, cat: XXX, desc: "Foreign"}
|
||||||
- {id: 32, cat: XXX, desc: "Latina"}
|
- {id: 33, cat: XXX, desc: "Latina"}
|
||||||
- {id: 33, cat: XXX/Other, desc: "Games"}
|
- {id: 34, cat: XXX/Other, desc: "Games All type"}
|
||||||
- {id: 34, cat: XXX, desc: "Magazines"}
|
- {id: 35, cat: XXX/Other, desc: "Magazines (Press.)"}
|
||||||
- {id: 35, cat: XXX, desc: "Feature"}
|
- {id: 36, cat: XXX, desc: "Feature"}
|
||||||
- {id: 36, cat: XXX, desc: "Big-Ass"}
|
- {id: 37, cat: XXX, desc: "Big-Ass"}
|
||||||
- {id: 37, cat: XXX/Other, desc: "Other"}
|
- {id: 38, cat: XXX/Other, desc: "Other (all.mixt.)"}
|
||||||
- {id: 38, cat: XXX, desc: "Cumshot"}
|
- {id: 39, cat: XXX, desc: "CumShot"}
|
||||||
- {id: 39, cat: XXX, desc: "Black"}
|
- {id: 40, cat: XXX, desc: "Black"}
|
||||||
- {id: 40, cat: XXX, desc: "Piss"}
|
- {id: 41, cat: XXX, desc: "Piss"}
|
||||||
- {id: 41, cat: XXX, desc: "Homemade"}
|
- {id: 42, cat: XXX, desc: "Homemade"}
|
||||||
- {id: 42, cat: XXX, desc: "Pregnant"}
|
- {id: 43, cat: XXX, desc: "Pregnant"}
|
||||||
- {id: 43, cat: XXX, desc: "Gay"}
|
- {id: 44, cat: XXX, desc: "GAY"}
|
||||||
- {id: 45, cat: XXX, desc: "Classic"}
|
- {id: 45, cat: XXX, desc: "Classic"}
|
||||||
- {id: 44, cat: XXX, desc: "SiteFan"}
|
- {id: 46, cat: XXX, desc: "Threesome"}
|
||||||
- {id: 1, cat: Movies, desc: "Movies"}
|
- {id: 1, cat: Movies, desc: "Movies"}
|
||||||
- {id: 2, cat: TV, desc: "TV"}
|
- {id: 2, cat: TV, desc: "TV"}
|
||||||
- {id: 47, cat: XXX, desc: "Threesome"}
|
- {id: 3, cat: Audio, desc: "Music"}
|
||||||
- {id: 46, cat: XXX, desc: "Ai Generated"}
|
|
||||||
|
|
||||||
modes:
|
modes:
|
||||||
search: [q]
|
search: [q]
|
||||||
tv-search: [q, season, ep]
|
|
||||||
movie-search: [q]
|
|
||||||
|
|
||||||
settings:
|
settings:
|
||||||
- name: apikey
|
- name: apikey
|
||||||
@@ -97,6 +92,10 @@ settings:
|
|||||||
options:
|
options:
|
||||||
desc: desc
|
desc: desc
|
||||||
asc: asc
|
asc: asc
|
||||||
|
- name: info_activity
|
||||||
|
type: info
|
||||||
|
label: Account Inactivity
|
||||||
|
default: "Inactive Account mean No trafic Up/Down, these will be wiped very fast."
|
||||||
|
|
||||||
login:
|
login:
|
||||||
path: /api/torrents
|
path: /api/torrents
|
||||||
@@ -204,9 +203,9 @@ search:
|
|||||||
True: 2 # double
|
True: 2 # double
|
||||||
uploadvolumefactor:
|
uploadvolumefactor:
|
||||||
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
|
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
|
||||||
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
|
# global MR is 0.7 but torrents must be seeded for 7 days regardless of ratio
|
||||||
# minimumratio:
|
# minimumratio:
|
||||||
# text: 0.4
|
# text: 0.7
|
||||||
minimumseedtime:
|
minimumseedtime:
|
||||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||||
text: 604800
|
text: 604800
|
||||||
|
|||||||
@@ -14,12 +14,12 @@ legacylinks:
|
|||||||
caps:
|
caps:
|
||||||
categorymappings:
|
categorymappings:
|
||||||
- {id: 1, cat: Movies, desc: "Movie"}
|
- {id: 1, cat: Movies, desc: "Movie"}
|
||||||
|
- {id: 28, cat: Movies, desc: "Foreign Movie"}
|
||||||
- {id: 2, cat: TV, desc: "Serie TV"}
|
- {id: 2, cat: TV, desc: "Serie TV"}
|
||||||
- {id: 15, cat: Books/EBook, desc: "Ebook"}
|
- {id: 15, cat: Books/EBook, desc: "Ebook"}
|
||||||
- {id: 26, cat: Audio/Audiobook, desc: "Audio Book"}
|
- {id: 26, cat: Audio/Audiobook, desc: "Audio Book"}
|
||||||
- {id: 17, cat: Books/Mags, desc: "Riviste e Giornali"}
|
- {id: 17, cat: Books/Mags, desc: "Riviste e Giornali"}
|
||||||
- {id: 3, cat: Audio, desc: "Music"}
|
- {id: 3, cat: Audio, desc: "Music"}
|
||||||
- {id: 27, cat: Audio/Other, desc: "Podcast"}
|
|
||||||
- {id: 7, cat: PC/Games, desc: "Games"}
|
- {id: 7, cat: PC/Games, desc: "Games"}
|
||||||
- {id: 23, cat: PC, desc: "Software"}
|
- {id: 23, cat: PC, desc: "Software"}
|
||||||
- {id: 24, cat: TV/Sport, desc: "Eventi Sportivi"}
|
- {id: 24, cat: TV/Sport, desc: "Eventi Sportivi"}
|
||||||
|
|||||||
165
definitions/v11/siqi.yml
Normal file
165
definitions/v11/siqi.yml
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|
---
|
||||||
|
id: siqi
|
||||||
|
name: Siqi
|
||||||
|
description: "Siqi is a CHINESE Private Tracker for HD image BOOKS and E-BOOKS"
|
||||||
|
language: zh-CN
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://si-qi.xyz/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
- {id: 411, cat: Books/Comics, desc: "漫画 (Comics)"}
|
||||||
|
- {id: 417, cat: Books/Technical, desc: "软件 (Software)"}
|
||||||
|
- {id: 416, cat: Books/EBook, desc: "摄影 (Photography)"}
|
||||||
|
- {id: 415, cat: Books/Technical, desc: "工具书 (Reference Books)"}
|
||||||
|
- {id: 414, cat: Books/Mags, desc: "杂志 (Magazines)"}
|
||||||
|
- {id: 413, cat: Other, desc: "图片集 (Photo Albums)"}
|
||||||
|
- {id: 412, cat: Books/Comics, desc: "连环画 (Comic Strips)"}
|
||||||
|
- {id: 418, cat: Books/EBook, desc: "插图书 (Illustrated Books)"}
|
||||||
|
- {id: 401, cat: Books/Technical, desc: "教学 (Instructional)"}
|
||||||
|
- {id: 409, cat: Books/Other, desc: "其他 (Others)"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
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.
|
||||||
|
|
||||||
|
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: "{{ .Keywords }}"
|
||||||
|
# 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: 0
|
||||||
|
# 0 AND, 2 exact
|
||||||
|
search_mode: 0
|
||||||
|
sort: "{{ .Config.sort }}"
|
||||||
|
type: "{{ .Config.type }}"
|
||||||
|
notnewword: 1
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: table.torrents > tbody > tr:has(a[href^="download.php?id="])
|
||||||
|
|
||||||
|
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
|
||||||
|
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:nth-child(6)
|
||||||
|
leechers:
|
||||||
|
selector: td.rowfollow:nth-child(7)
|
||||||
|
optional: true
|
||||||
|
grabs:
|
||||||
|
selector: td.rowfollow:nth-child(8)
|
||||||
|
optional: true
|
||||||
|
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: 1.0
|
||||||
|
minimumseedtime:
|
||||||
|
# 1 days (as seconds = 1 x 24 x 60 x 60)
|
||||||
|
text: 86400
|
||||||
|
description:
|
||||||
|
selector: td.rowfollow:nth-child(2)
|
||||||
|
remove: a, b, font, img, span
|
||||||
|
# NexusPHP v1.9.6 2025-06-25 (Custom)
|
||||||
@@ -171,7 +171,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ search:
|
|||||||
size:
|
size:
|
||||||
selector: td.rowfollow:nth-child(5)
|
selector: td.rowfollow:nth-child(5)
|
||||||
seeders:
|
seeders:
|
||||||
selector: td.rowfollow.rowfollow:nth-child(6)
|
selector: td.rowfollow:nth-child(6)
|
||||||
leechers:
|
leechers:
|
||||||
selector: td.rowfollow:nth-child(7)
|
selector: td.rowfollow:nth-child(7)
|
||||||
grabs:
|
grabs:
|
||||||
|
|||||||
@@ -8,9 +8,8 @@ encoding: UTF-8
|
|||||||
followredirect: true
|
followredirect: true
|
||||||
testlinktorrent: false
|
testlinktorrent: false
|
||||||
links:
|
links:
|
||||||
- https://ww2.torrent9.to/
|
- https://www5.torrent9.to/
|
||||||
legacylinks:
|
legacylinks:
|
||||||
- https://www.torrent09.uno/
|
|
||||||
- https://www.torrent9.pl/ # this is a proxy for torrent9clone
|
- https://www.torrent9.pl/ # this is a proxy for torrent9clone
|
||||||
- https://torrent9.black-mirror.xyz/ # this is a proxy for torrent9clone
|
- https://torrent9.black-mirror.xyz/ # this is a proxy for torrent9clone
|
||||||
- https://torrent9.unblocked.casa/ # this is a proxy for torrent9clone
|
- https://torrent9.unblocked.casa/ # this is a proxy for torrent9clone
|
||||||
@@ -34,6 +33,7 @@ legacylinks:
|
|||||||
- https://www.torrent9.zone/ # clone? details links are broken
|
- https://www.torrent9.zone/ # clone? details links are broken
|
||||||
- https://torrent9.to/
|
- https://torrent9.to/
|
||||||
- https://www5.torrent9.to/
|
- https://www5.torrent9.to/
|
||||||
|
- https://ww2.torrent9.to/
|
||||||
|
|
||||||
caps:
|
caps:
|
||||||
# dont forget to update the search fields category case block
|
# dont forget to update the search fields category case block
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ caps:
|
|||||||
- {id: 365, cat: TV/Anime, desc: " |- OVA"}
|
- {id: 365, cat: TV/Anime, desc: " |- OVA"}
|
||||||
- {id: 361, cat: TV/Anime, desc: "Фильмы"}
|
- {id: 361, cat: TV/Anime, desc: "Фильмы"}
|
||||||
- {id: 366, cat: TV/Anime, desc: " |- Новинки"}
|
- {id: 366, cat: TV/Anime, desc: " |- Новинки"}
|
||||||
- {id: 365, cat: TV/Anime, desc: " |- Аниме Фильмы (HD)"}
|
- {id: 364, cat: TV/Anime, desc: " |- Аниме Фильмы (HD)"}
|
||||||
- {id: 362, cat: TV/Anime, desc: " |- OVA"}
|
- {id: 362, cat: TV/Anime, desc: " |- OVA"}
|
||||||
# Музыка # Music
|
# Музыка # Music
|
||||||
- {id: 225, cat: Audio, desc: "♫ Российские исполнители ♫ (Mp3)♫"}
|
- {id: 225, cat: Audio, desc: "♫ Российские исполнители ♫ (Mp3)♫"}
|
||||||
|
|||||||
180
definitions/v11/xingyung.yml
Normal file
180
definitions/v11/xingyung.yml
Normal file
@@ -0,0 +1,180 @@
|
|||||||
|
---
|
||||||
|
id: xingyung
|
||||||
|
name: Xingyung (星陨阁)
|
||||||
|
description: "Xingyung (星陨阁) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||||
|
language: zh-CN
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://pt.xingyungept.org/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
- {id: 409, cat: Other, desc: "其他/Misc"}
|
||||||
|
- {id: 408, cat: Audio, desc: "音频/HQ Audio"}
|
||||||
|
- {id: 406, cat: Audio/Video, desc: "MV/Music Videos"}
|
||||||
|
- {id: 407, cat: TV/Sport, desc: "体育/Sports"}
|
||||||
|
- {id: 410, cat: TV, desc: "短剧/Playlet"}
|
||||||
|
- {id: 404, cat: TV/Documentary, desc: "纪录片/Documentary"}
|
||||||
|
- {id: 405, cat: TV/Anime, desc: "动漫/Animations"}
|
||||||
|
- {id: 403, cat: TV, desc: "综艺/TV Shows"}
|
||||||
|
- {id: 402, cat: TV, desc: "电视剧/TVSeries"}
|
||||||
|
- {id: 401, cat: Movies, desc: "电影/Movies"}
|
||||||
|
|
||||||
|
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(a[href*="download.php?id="])
|
||||||
|
|
||||||
|
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:nth-child(6)
|
||||||
|
leechers:
|
||||||
|
selector: td.rowfollow:nth-child(7)
|
||||||
|
optional: true
|
||||||
|
grabs:
|
||||||
|
selector: td.rowfollow:nth-child(8)
|
||||||
|
optional: true
|
||||||
|
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,209 +0,0 @@
|
|||||||
---
|
|
||||||
id: xthor-api
|
|
||||||
name: Xthor (API)
|
|
||||||
description: "Xthor is a FRENCH Private Torrent Tracker for MOVIES / GENERAL"
|
|
||||||
language: fr-FR
|
|
||||||
type: private
|
|
||||||
encoding: windows-1252
|
|
||||||
requestDelay: 2.5
|
|
||||||
links:
|
|
||||||
- https://xthor.help/
|
|
||||||
legacylinks:
|
|
||||||
- https://xthor.bz/
|
|
||||||
- https://xthor.to/
|
|
||||||
- https://xthor.tk
|
|
||||||
- https://xthor.tk/
|
|
||||||
|
|
||||||
caps:
|
|
||||||
categorymappings:
|
|
||||||
# Movies / Films
|
|
||||||
- {id: 118, cat: Movies/BluRay, desc: "Films/2160p/Bluray"}
|
|
||||||
- {id: 119, cat: Movies/UHD, desc: "Films/2160p/Remux"}
|
|
||||||
- {id: 127, cat: Movies/UHD, desc: "Films/2160p/AV1"}
|
|
||||||
- {id: 107, cat: Movies/UHD, desc: "Films/2160p/x265"}
|
|
||||||
- {id: 1, cat: Movies/BluRay, desc: "Films/1080p/BluRay"}
|
|
||||||
- {id: 2, cat: Movies/HD, desc: "Films/1080p/Remux"}
|
|
||||||
- {id: 126, cat: Movies/HD, desc: "Films/1080p/AV1"}
|
|
||||||
- {id: 100, cat: Movies/HD, desc: "Films/1080p/x265"}
|
|
||||||
- {id: 4, cat: Movies/HD, desc: "Films/1080p/x264"}
|
|
||||||
- {id: 5, cat: Movies/HD, desc: "Films/720p/x264"}
|
|
||||||
- {id: 7, cat: Movies/SD, desc: "Films/SD/x264"}
|
|
||||||
- {id: 3, cat: Movies/3D, desc: "Films/3D"}
|
|
||||||
- {id: 6, cat: Movies/SD, desc: "Films/XviD"}
|
|
||||||
- {id: 8, cat: Movies/DVD, desc: "Films/DVD"}
|
|
||||||
- {id: 122, cat: Movies/HD, desc: "Films/HDTV"}
|
|
||||||
- {id: 94, cat: Movies/WEB-DL, desc: "Films/WEBDL"}
|
|
||||||
- {id: 95, cat: Movies/WEB-DL, desc: "Films/WEBRiP"}
|
|
||||||
- {id: 12, cat: TV/Documentary, desc: "Films/Documentaire"}
|
|
||||||
- {id: 31, cat: Movies/Other, desc: "Films/Animation"}
|
|
||||||
- {id: 33, cat: Movies/Other, desc: "Films/Spectacle"}
|
|
||||||
- {id: 125, cat: TV/Sport, desc: "Films/Sports"}
|
|
||||||
- {id: 20, cat: Audio/Video, desc: "Films/Concerts, Clips"}
|
|
||||||
- {id: 9, cat: Movies/Other, desc: "Films/VOSTFR"}
|
|
||||||
# TV Series / Series TV
|
|
||||||
- {id: 104, cat: TV/Other, desc: "Series/BluRay"}
|
|
||||||
- {id: 13, cat: TV, desc: "Series/Pack VF"}
|
|
||||||
- {id: 15, cat: TV/HD, desc: "Series/HD VF"}
|
|
||||||
- {id: 14, cat: TV/SD, desc: "Series/SD VF"}
|
|
||||||
- {id: 98, cat: TV/Other, desc: "Series/Pack VOSTFR"}
|
|
||||||
- {id: 17, cat: TV/HD, desc: "Series/HD VOSTFR"}
|
|
||||||
- {id: 16, cat: TV/SD, desc: "Series/SD VOSTFR"}
|
|
||||||
- {id: 101, cat: TV/Anime, desc: "Series/Packs Anime"}
|
|
||||||
- {id: 32, cat: TV/Anime, desc: "Series/Animes"}
|
|
||||||
- {id: 110, cat: TV/Anime, desc: "Series/Anime VOSTFR"}
|
|
||||||
- {id: 123, cat: TV/Other, desc: "Series/Animation"}
|
|
||||||
- {id: 109, cat: TV/Documentary, desc: "Series/DOC"}
|
|
||||||
- {id: 34, cat: TV/Sport, desc: "Series/Sport"}
|
|
||||||
- {id: 30, cat: TV/Other, desc: "Series/Emission TV"}
|
|
||||||
# Porn / XxX
|
|
||||||
- {id: 36, cat: XXX, desc: "MISC/XxX/Films"}
|
|
||||||
- {id: 105, cat: XXX, desc: "MISC/XxX/Séries"}
|
|
||||||
- {id: 114, cat: XXX, desc: "MISC/XxX/Lesbiennes"}
|
|
||||||
- {id: 115, cat: XXX, desc: "MISC/XxX/Gays"}
|
|
||||||
- {id: 113, cat: XXX, desc: "MISC/XxX/Hentai"}
|
|
||||||
- {id: 120, cat: XXX, desc: "MISC/XxX/Magazines"}
|
|
||||||
# Books / Livres
|
|
||||||
- {id: 24, cat: Books/EBook, desc: "Livres/Romans"}
|
|
||||||
- {id: 124, cat: Audio/Audiobook, desc: "Livres/Audio Books"}
|
|
||||||
- {id: 96, cat: Books/Mags, desc: "Livres/Magazines"}
|
|
||||||
- {id: 99, cat: Books/Other, desc: "Livres/Bandes dessinées"}
|
|
||||||
- {id: 116, cat: Books/EBook, desc: "Livres/Romans Jeunesse"}
|
|
||||||
- {id: 102, cat: Books/Comics, desc: "Livres/Comics"}
|
|
||||||
- {id: 103, cat: Books/Other, desc: "Livres/Mangas"}
|
|
||||||
# Softwares / Logiciels
|
|
||||||
- {id: 25, cat: PC/Games, desc: "Logiciels/Jeux PC"}
|
|
||||||
- {id: 27, cat: Console/PS3, desc: "Logiciels/Playstation"}
|
|
||||||
- {id: 111, cat: PC/Mac, desc: "Logiciels/Jeux MAC"}
|
|
||||||
- {id: 26, cat: Console/XBox 360, desc: "Logiciels/XboX"}
|
|
||||||
- {id: 112, cat: PC, desc: "Logiciels/Jeux Linux"}
|
|
||||||
- {id: 28, cat: Console/Wii, desc: "Logiciels/Nintendo"}
|
|
||||||
- {id: 29, cat: Console/NDS, desc: "Logiciels/NDS"}
|
|
||||||
- {id: 117, cat: PC, desc: "Logiciels/ROM"}
|
|
||||||
- {id: 21, cat: PC, desc: "Logiciels/Applis PC"}
|
|
||||||
- {id: 22, cat: PC/Mac, desc: "Logiciels/Applis Mac"}
|
|
||||||
- {id: 23, cat: PC/Mobile-Android, desc: "Logiciels/Smartphone"}
|
|
||||||
|
|
||||||
modes:
|
|
||||||
search: [q]
|
|
||||||
movie-search: [q, tmdbid]
|
|
||||||
tv-search: [q, season, ep, tmdbid]
|
|
||||||
book-search: [q]
|
|
||||||
|
|
||||||
settings:
|
|
||||||
- name: passkey
|
|
||||||
type: text
|
|
||||||
label: Passkey
|
|
||||||
- name: info_key
|
|
||||||
type: info
|
|
||||||
label: About your Passkey
|
|
||||||
default: "Find your Passkey on <a href=\"https://xthor.help/api_doc.php\" target =_blank>Xthor > API page</a>."
|
|
||||||
- name: freeleech
|
|
||||||
type: checkbox
|
|
||||||
label: Search freeleech only
|
|
||||||
default: false
|
|
||||||
- name: multilang
|
|
||||||
type: checkbox
|
|
||||||
label: Replace MULTi by another language in release name
|
|
||||||
default: false
|
|
||||||
- name: multilanguage
|
|
||||||
type: select
|
|
||||||
label: Replace MULTi by this language
|
|
||||||
default: FRENCH
|
|
||||||
options:
|
|
||||||
FRENCH: FRENCH
|
|
||||||
MULTi.FRENCH: MULTi.FRENCH
|
|
||||||
ENGLISH: ENGLISH
|
|
||||||
MULTi.ENGLISH: MULTi.ENGLISH
|
|
||||||
VOSTFR: VOSTFR
|
|
||||||
MULTi.VOSTFR: MULTi.VOSTFR
|
|
||||||
- name: vostfr
|
|
||||||
type: checkbox
|
|
||||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
|
||||||
default: false
|
|
||||||
|
|
||||||
login:
|
|
||||||
path: "https://api.xthor.help/"
|
|
||||||
method: get
|
|
||||||
inputs:
|
|
||||||
passkey: "{{ .Config.passkey }}"
|
|
||||||
error:
|
|
||||||
- selector: ":root:contains(\"Passkey not found\")"
|
|
||||||
message:
|
|
||||||
text: "The Passkey was not accepted by {{ .Config.sitelink }}."
|
|
||||||
|
|
||||||
search:
|
|
||||||
paths:
|
|
||||||
# https://api.xthor.help/?passkey=<redacted>&search=&category=&freeleech=&tmdbid=&size=&accent=&price=&page=
|
|
||||||
- path: "https://api.xthor.help/"
|
|
||||||
inputs:
|
|
||||||
passkey: "{{ .Config.passkey }}"
|
|
||||||
category: "{{ if .Categories }}{{ range .Categories }}{{.}}+{{end}}{{ else }}{{ end }}"
|
|
||||||
search: "{{ .Keywords }}"
|
|
||||||
tmdbid: "{{ .Query.TMDBID }}"
|
|
||||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
|
||||||
response:
|
|
||||||
type: json
|
|
||||||
noResultsMessage: '"descr": "no result"'
|
|
||||||
|
|
||||||
rows:
|
|
||||||
selector: torrents
|
|
||||||
|
|
||||||
fields:
|
|
||||||
_id:
|
|
||||||
selector: id
|
|
||||||
category:
|
|
||||||
selector: category
|
|
||||||
title_phase1:
|
|
||||||
selector: name
|
|
||||||
title_vostfr:
|
|
||||||
text: "{{ .Result.title_phase1 }}"
|
|
||||||
filters:
|
|
||||||
- name: re_replace
|
|
||||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
|
||||||
title_phase2:
|
|
||||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
|
||||||
title_multilang:
|
|
||||||
text: "{{ .Result.title_phase2 }}"
|
|
||||||
filters:
|
|
||||||
- name: re_replace
|
|
||||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
|
||||||
title:
|
|
||||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
|
||||||
details:
|
|
||||||
text: "{{ .Config.sitelink }}details.php?id={{ .Result._id }}"
|
|
||||||
download:
|
|
||||||
selector: download_link
|
|
||||||
poster:
|
|
||||||
selector: descr
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: ["({{ .Config.sitelink }}info_images\\/allocine\\/covers\\/film\\/small_\\d+?\\.jpg)"]
|
|
||||||
tmdbid:
|
|
||||||
selector: tmdb_id
|
|
||||||
files:
|
|
||||||
selector: numfiles
|
|
||||||
date:
|
|
||||||
selector: added
|
|
||||||
size:
|
|
||||||
selector: size
|
|
||||||
seeders:
|
|
||||||
selector: seeders
|
|
||||||
leechers:
|
|
||||||
selector: leechers
|
|
||||||
grabs:
|
|
||||||
selector: times_completed
|
|
||||||
downloadvolumefactor:
|
|
||||||
# api returns 0=false, 1=true
|
|
||||||
selector: freeleech
|
|
||||||
case:
|
|
||||||
0: 1 # not free
|
|
||||||
1: 0 # freeleech
|
|
||||||
uploadvolumefactor:
|
|
||||||
text: 1
|
|
||||||
minimumseedtime:
|
|
||||||
# 24 hours (as seconds = 1 x 24 x 60 x 60)
|
|
||||||
text: 86400
|
|
||||||
minimumratio:
|
|
||||||
# minimum ratio per torrent is 0.8
|
|
||||||
text: 0.8
|
|
||||||
# json api
|
|
||||||
@@ -1,202 +0,0 @@
|
|||||||
---
|
|
||||||
id: zamundanet
|
|
||||||
name: Zamunda.net
|
|
||||||
description: "Zamunda is a BULGARIAN Private Torrent Tracker for 0DAY / GENERAL"
|
|
||||||
language: bg-BG
|
|
||||||
type: private
|
|
||||||
encoding: windows-1251
|
|
||||||
links:
|
|
||||||
- https://zamunda.net/ # Bulgarian IP address filtering
|
|
||||||
- https://zamunda.ch/ # Bulgarian IP address filtering
|
|
||||||
legacylinks:
|
|
||||||
- http://zamunda.net/
|
|
||||||
- http://zamunda.ch/
|
|
||||||
|
|
||||||
caps:
|
|
||||||
categorymappings:
|
|
||||||
# Movies
|
|
||||||
- {id: 5, cat: Movies/HD, desc: "Movies/HD"}
|
|
||||||
- {id: 19, cat: Movies/SD, desc: "Movies/SD"}
|
|
||||||
- {id: 20, cat: Movies/DVD, desc: "Movies/DVD-R"}
|
|
||||||
- {id: 24, cat: Movies, desc: "Movies/BG"}
|
|
||||||
- {id: 25, cat: TV/Anime, desc: "Animation/Anime"}
|
|
||||||
- {id: 28, cat: Movies, desc: "Movies/Russia"}
|
|
||||||
- {id: 31, cat: Movies, desc: "Movies/Science"}
|
|
||||||
- {id: 35, cat: Movies/HD, desc: "Video/HD"}
|
|
||||||
- {id: 42, cat: Movies/BluRay, desc: "Blu-ray"}
|
|
||||||
- {id: 46, cat: Movies/3D, desc: "Movies/3D"}
|
|
||||||
# Serial
|
|
||||||
- {id: 7, cat: TV/SD, desc: "Series"}
|
|
||||||
- {id: 33, cat: TV/HD, desc: "Series/HD"}
|
|
||||||
- {id: 55, cat: TV, desc: "Series/Russia"}
|
|
||||||
# Music
|
|
||||||
- {id: 6, cat: Audio, desc: "Music"}
|
|
||||||
- {id: 29, cat: Audio/Video, desc: "Music/DVD-R"}
|
|
||||||
- {id: 30, cat: Audio/Other, desc: "Music/DTS"}
|
|
||||||
- {id: 34, cat: Audio/Other, desc: "Music/Lossless"}
|
|
||||||
- {id: 51, cat: Audio/Lossless, desc: "Music/Hi-Res/Vinyl"}
|
|
||||||
# Games
|
|
||||||
- {id: 4, cat: PC/Games, desc: "Games/PC ISO"}
|
|
||||||
- {id: 12, cat: Console, desc: "Games/Console"}
|
|
||||||
- {id: 17, cat: Console/PS4, desc: "Games/PS"}
|
|
||||||
- {id: 21, cat: PC/Games, desc: "Games/PC Rip"}
|
|
||||||
- {id: 39, cat: PC/Games, desc: "Games/Mac"}
|
|
||||||
- {id: 40, cat: Console/XBox, desc: "Games/Xbox"}
|
|
||||||
- {id: 54, cat: PC/Games, desc: "Games/Linux"}
|
|
||||||
# Software
|
|
||||||
- {id: 1, cat: PC/ISO, desc: "Programs/PC ISO"}
|
|
||||||
- {id: 22, cat: PC/0day, desc: "Programs/other"}
|
|
||||||
- {id: 38, cat: PC/Mac, desc: "Programs/Mac"}
|
|
||||||
# Sport
|
|
||||||
- {id: 41, cat: TV/Sport, desc: "Sport/TV"}
|
|
||||||
- {id: 43, cat: TV/Sport, desc: "Sport/HD"}
|
|
||||||
# Other
|
|
||||||
- {id: 23, cat: Other, desc: "Clips"}
|
|
||||||
- {id: 26, cat: Other, desc: "Other"}
|
|
||||||
- {id: 32, cat: Books/Comics, desc: "Books/Comic"}
|
|
||||||
- {id: 36, cat: PC/Mobile-Other, desc: "Mobile/GSM"}
|
|
||||||
- {id: 37, cat: PC/0day, desc: "Dox"}
|
|
||||||
- {id: 52, cat: PC/Mobile-Android, desc: "Android/Games"}
|
|
||||||
- {id: 53, cat: PC/Mobile-Android, desc: "Android/Apps"}
|
|
||||||
# XXX
|
|
||||||
- {id: 9, cat: XXX, desc: "XXX"}
|
|
||||||
- {id: 27, cat: XXX, desc: "Hentai"}
|
|
||||||
- {id: 48, cat: XXX, desc: "XXX/3D"}
|
|
||||||
- {id: 49, cat: XXX, desc: "XXX/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: Filter freeleech only
|
|
||||||
default: false
|
|
||||||
- name: info_results
|
|
||||||
type: info
|
|
||||||
label: "Search results"
|
|
||||||
default: "This Indexer supports search results only from the <b>LIST</b> view.<br><li>Access the web site, bring up the torrent search page and click on the <b>LIST</b> icon setting (located to the top right of the search results table).</li><br>The alternate <i>GRID</i> view is not supported."
|
|
||||||
- name: sort
|
|
||||||
type: select
|
|
||||||
label: Sort requested from site
|
|
||||||
default: 6
|
|
||||||
options:
|
|
||||||
6: created
|
|
||||||
9: seeders
|
|
||||||
7: size
|
|
||||||
2: title
|
|
||||||
- name: type
|
|
||||||
type: select
|
|
||||||
label: Order requested from site
|
|
||||||
default: desc
|
|
||||||
options:
|
|
||||||
desc: desc
|
|
||||||
asc: asc
|
|
||||||
- name: ip_filtering
|
|
||||||
type: info
|
|
||||||
label: "IP Filtering"
|
|
||||||
default: "Zamunda occasionally blocks Non-Bulgarian IP addresses. A <b>FlareSolverr</b> error means your IP was not accepted."
|
|
||||||
- name: info_activity
|
|
||||||
type: info
|
|
||||||
label: Account Inactivity
|
|
||||||
default: "With the option for parking accounts you can prevent your user nickname from getting deleted by the system for deleting inactive accounts."
|
|
||||||
|
|
||||||
login:
|
|
||||||
path: takelogin.php
|
|
||||||
method: post
|
|
||||||
inputs:
|
|
||||||
username: "{{ .Config.username }}"
|
|
||||||
password: "{{ .Config.password }}"
|
|
||||||
error:
|
|
||||||
- selector: td.embedded:has(h2:contains("failed"))
|
|
||||||
test:
|
|
||||||
path: index.php
|
|
||||||
selector: a[href="/logout.php"]
|
|
||||||
|
|
||||||
search:
|
|
||||||
paths:
|
|
||||||
- path: bananas
|
|
||||||
inputs:
|
|
||||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
|
||||||
search: "{{ .Keywords }}"
|
|
||||||
# blank = incldead
|
|
||||||
incldead: ""
|
|
||||||
sort: "{{ .Config.sort }}"
|
|
||||||
type: "{{ .Config.type }}"
|
|
||||||
|
|
||||||
headers:
|
|
||||||
cookie: ["xporn=1"] # enable xxx downloads
|
|
||||||
|
|
||||||
rows:
|
|
||||||
selector: ".responsetop > tbody > tr:has(a[href^=\"banan?id=\"]){{ if .Config.freeleech }}:has(a[style=\"color: #b9a100;\"]){{ else }}{{ end }}"
|
|
||||||
|
|
||||||
fields:
|
|
||||||
category:
|
|
||||||
selector: a[href^="list?cat="]
|
|
||||||
attribute: href
|
|
||||||
filters:
|
|
||||||
- name: querystring
|
|
||||||
args: cat
|
|
||||||
title:
|
|
||||||
selector: a[href^="/download.php"]
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: " (.+?)'"
|
|
||||||
- name: re_replace
|
|
||||||
args: [" rq$", ""]
|
|
||||||
details:
|
|
||||||
selector: a[href^="banan?id="]
|
|
||||||
attribute: href
|
|
||||||
download:
|
|
||||||
selector: a[href^="/download.php"]
|
|
||||||
attribute: href
|
|
||||||
grabs:
|
|
||||||
selector: td:nth-child(7)
|
|
||||||
size:
|
|
||||||
selector: td:nth-child(6)
|
|
||||||
date:
|
|
||||||
# 2020-10-2411:18:30
|
|
||||||
selector: td:nth-child(5)
|
|
||||||
filters:
|
|
||||||
- name: append
|
|
||||||
args: " +02:00" # EET
|
|
||||||
- name: dateparse
|
|
||||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
|
||||||
seeders:
|
|
||||||
selector: td:nth-child(8)
|
|
||||||
leechers:
|
|
||||||
selector: td:nth-child(9)
|
|
||||||
poster:
|
|
||||||
selector: td:nth-child(2) > a:nth-child(1)
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: src=\\'([^\s\\]+)
|
|
||||||
genre:
|
|
||||||
selector: td:nth-child(2) > a:nth-child(1)
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: replace
|
|
||||||
args: ["<br>", " "]
|
|
||||||
- name: regexp
|
|
||||||
args: "Жанр:</b> (.+?)</td"
|
|
||||||
description:
|
|
||||||
text: "{{ .Result.genre }}"
|
|
||||||
downloadvolumefactor:
|
|
||||||
case:
|
|
||||||
"a[style=\"color: #b9a100;\"][href^=\"banan?\"]": 0
|
|
||||||
"*": 1
|
|
||||||
uploadvolumefactor:
|
|
||||||
text: 1
|
|
||||||
# engine n/a
|
|
||||||
100
definitions/v11/zamundarip.yml
Normal file
100
definitions/v11/zamundarip.yml
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
---
|
||||||
|
id: zamundarip
|
||||||
|
name: Zamunda RIP
|
||||||
|
description: "Zamunda RIP is a BULGARIAN Public Torrent Archive for MOVIES / TV / GENERAL"
|
||||||
|
language: bg-BG
|
||||||
|
type: public
|
||||||
|
encoding: UTF-8
|
||||||
|
links:
|
||||||
|
- https://zamunda.rip/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
# from https://zamunda.rip/api/torznab/api?t=caps
|
||||||
|
- {id: 1000, cat: Console, desc: "Console"}
|
||||||
|
- {id: 1050, cat: Console/XBox, desc: "Игри/Xbox"}
|
||||||
|
- {id: 2000, cat: Movies, desc: "Movies"}
|
||||||
|
- {id: 2040, cat: Movies/HD, desc: "Филми/HD"}
|
||||||
|
- {id: 2030, cat: Movies/SD, desc: "Филми/SD"}
|
||||||
|
- {id: 2010, cat: Movies, desc: "Филми/Русия"}
|
||||||
|
- {id: 2020, cat: Movies/Other, desc: "Филми/Документални"}
|
||||||
|
- {id: 2050, cat: Movies/BluRay, desc: "Blu-ray"}
|
||||||
|
- {id: 2060, cat: Movies/3D, desc: "Филми/3D"}
|
||||||
|
- {id: 3000, cat: Audio, desc: "Audio"}
|
||||||
|
- {id: 3010, cat: Audio, desc: "Музика"}
|
||||||
|
- {id: 3020, cat: Audio/Video, desc: "Музика/DVD-R"}
|
||||||
|
- {id: 3040, cat: Audio, desc: "Музика/DTS"}
|
||||||
|
- {id: 4000, cat: PC, desc: "PC"}
|
||||||
|
- {id: 4050, cat: PC/Games, desc: "Игри/PC ISO"}
|
||||||
|
- {id: 4030, cat: PC/Mac, desc: "Игри/Mac"}
|
||||||
|
- {id: 4020, cat: PC/ISO, desc: "Програми/PC ISO"}
|
||||||
|
- {id: 4010, cat: PC, desc: "Програми/други"}
|
||||||
|
- {id: 4040, cat: PC/Mobile-Other, desc: "Mobile/GSM"}
|
||||||
|
- {id: 4070, cat: PC/Mobile-Android, desc: "Андроид/Игри"}
|
||||||
|
- {id: 5000, cat: TV, desc: "TV"}
|
||||||
|
- {id: 5070, cat: TV/Anime, desc: "Анимации/Аниме"}
|
||||||
|
- {id: 5030, cat: TV, desc: "Сериали"}
|
||||||
|
- {id: 5040, cat: TV/HD, desc: "Сериали/HD"}
|
||||||
|
- {id: 5020, cat: TV, desc: "Сериали/Русия"}
|
||||||
|
- {id: 5060, cat: TV/Sport, desc: "Спорт/TV"}
|
||||||
|
- {id: 6000, cat: XXX, desc: "XXX"}
|
||||||
|
- {id: 6040, cat: XXX/x264, desc: "XXX"}
|
||||||
|
- {id: 7000, cat: Books, desc: "Other"}
|
||||||
|
- {id: 7030, cat: Books/Comics, desc: "Книги/Комикси"}
|
||||||
|
- {id: 8000, cat: Other, desc: "Misc"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
search: [q]
|
||||||
|
tv-search: [q, season, ep]
|
||||||
|
movie-search: [q]
|
||||||
|
music-search: [q]
|
||||||
|
book-search: [q]
|
||||||
|
|
||||||
|
settings: []
|
||||||
|
|
||||||
|
search:
|
||||||
|
paths:
|
||||||
|
# https://zamunda.rip/api/torznab/api?t=search&limit=100
|
||||||
|
- path: api/torznab/api
|
||||||
|
response:
|
||||||
|
type: xml
|
||||||
|
|
||||||
|
inputs:
|
||||||
|
t: search
|
||||||
|
q: "{{ .Keywords }}"
|
||||||
|
cat: "{{ join .Categories \",\" }}"
|
||||||
|
limit: 100
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: rss > channel > item
|
||||||
|
|
||||||
|
fields:
|
||||||
|
category:
|
||||||
|
selector: '[name="category"]'
|
||||||
|
attribute: value
|
||||||
|
title:
|
||||||
|
selector: title
|
||||||
|
details:
|
||||||
|
text: "{{ .Config.sitelink }}"
|
||||||
|
download:
|
||||||
|
selector: link
|
||||||
|
date:
|
||||||
|
# Sun, 08 Feb 2026 19:31:03 +0000
|
||||||
|
selector: pubDate
|
||||||
|
filters:
|
||||||
|
- name: dateparse
|
||||||
|
args: "ddd, dd MMM yyyy HH:mm:ss zzz"
|
||||||
|
size:
|
||||||
|
selector: '[name="size"]'
|
||||||
|
attribute: value
|
||||||
|
seeders:
|
||||||
|
selector: '[name="seeders"]'
|
||||||
|
attribute: value
|
||||||
|
leechers:
|
||||||
|
selector: '[name="peers"]'
|
||||||
|
attribute: value
|
||||||
|
downloadvolumefactor:
|
||||||
|
text: 0
|
||||||
|
uploadvolumefactor:
|
||||||
|
text: 1
|
||||||
|
# torznab xml
|
||||||
@@ -1,190 +0,0 @@
|
|||||||
---
|
|
||||||
id: zelkaorg
|
|
||||||
name: Zelka.org
|
|
||||||
description: "Zelka (Zamunda) is a BULGARIAN Private Torrent Tracker for 0DAY / GENERAL"
|
|
||||||
language: bg-BG
|
|
||||||
type: private
|
|
||||||
encoding: windows-1251
|
|
||||||
links:
|
|
||||||
- https://zelka.org/
|
|
||||||
- https://zamunda.se/
|
|
||||||
legacylinks:
|
|
||||||
- http://zelka.org/
|
|
||||||
- http://zamunda.se/
|
|
||||||
|
|
||||||
caps:
|
|
||||||
categorymappings:
|
|
||||||
- {id: 42, cat: Movies/BluRay, desc: "Blu-ray"}
|
|
||||||
- {id: 36, cat: PC/Mobile-Other, desc: "Mobile/GSM"}
|
|
||||||
- {id: 50, cat: TV, desc: "TV"}
|
|
||||||
- {id: 9, cat: XXX, desc: "XXX"}
|
|
||||||
- {id: 48, cat: XXX, desc: "XXX/3D"}
|
|
||||||
- {id: 49, cat: XXX/x264, desc: "XXX/HD"}
|
|
||||||
- {id: 25, cat: Movies/SD, desc: "Cartoons"}
|
|
||||||
- {id: 51, cat: Movies/HD, desc: "Cartoons/HD"}
|
|
||||||
- {id: 26, cat: Other, desc: "Others"}
|
|
||||||
- {id: 39, cat: PC/Mac, desc: "Games/Mac"}
|
|
||||||
- {id: 4, cat: PC/Games, desc: "Games/PC ISO"}
|
|
||||||
- {id: 21, cat: PC/Games, desc: "Games/PC Rip"}
|
|
||||||
- {id: 17, cat: Console/PS3, desc: "Games/PS"}
|
|
||||||
- {id: 40, cat: Console/XBox, desc: "Games/Xbox"}
|
|
||||||
- {id: 12, cat: Console/Other, desc: "Games/Console"}
|
|
||||||
- {id: 23, cat: Audio/Video, desc: "Clips/Concerts"}
|
|
||||||
- {id: 32, cat: Books/Comics, desc: "Books/Comics"}
|
|
||||||
- {id: 6, cat: Audio/MP3, desc: "Music"}
|
|
||||||
- {id: 29, cat: Movies/DVD, desc: "Music/DVD"}
|
|
||||||
- {id: 30, cat: Audio/Lossless, desc: "Music/Hi-Res Audio"}
|
|
||||||
- {id: 34, cat: Audio/Lossless, desc: "Music/Lossless"}
|
|
||||||
- {id: 52, cat: Audio/Other, desc: "Music/Vinyl HQRip"}
|
|
||||||
- {id: 22, cat: PC, desc: "Software"}
|
|
||||||
- {id: 38, cat: PC/Mac, desc: "Software/Mac"}
|
|
||||||
- {id: 1, cat: PC/ISO, desc: "Software/PC ISO"}
|
|
||||||
- {id: 7, cat: TV/SD, desc: "Series"}
|
|
||||||
- {id: 33, cat: TV/HD, desc: "Series/HD"}
|
|
||||||
- {id: 37, cat: PC, desc: "Warehouse"}
|
|
||||||
- {id: 41, cat: TV/Sport, desc: "Sport"}
|
|
||||||
- {id: 43, cat: TV/Sport, desc: "Sport/HD"}
|
|
||||||
- {id: 53, cat: Movies/HD, desc: "Movies/1080"}
|
|
||||||
- {id: 46, cat: Movies/3D, desc: "Movies/3D"}
|
|
||||||
- {id: 5, cat: Movies/HD, desc: "Movies/720"}
|
|
||||||
- {id: 20, cat: Movies/DVD, desc: "Movies/DVD"}
|
|
||||||
- {id: 54, cat: Movies/Other, desc: "Movies/VHS Rip"}
|
|
||||||
- {id: 35, cat: Movies/HD, desc: "Movies/x264"}
|
|
||||||
- {id: 19, cat: Movies/SD, desc: "Movies/XviD"}
|
|
||||||
- {id: 24, cat: Movies/Foreign, desc: "Movies/Bulgarian"}
|
|
||||||
- {id: 31, cat: TV/Documentary, desc: "Movies/Science"}
|
|
||||||
- {id: 28, cat: Movies/Foreign, desc: "Movies/Russian"}
|
|
||||||
- {id: 27, cat: TV/Anime, desc: "Hentai"}
|
|
||||||
|
|
||||||
modes:
|
|
||||||
search: [q]
|
|
||||||
tv-search: [q, season, ep]
|
|
||||||
movie-search: [q]
|
|
||||||
music-search: [q]
|
|
||||||
book-search: [q]
|
|
||||||
|
|
||||||
settings:
|
|
||||||
- name: username
|
|
||||||
type: text
|
|
||||||
label: Username
|
|
||||||
- name: password
|
|
||||||
type: password
|
|
||||||
label: Password
|
|
||||||
- name: freeleech
|
|
||||||
type: checkbox
|
|
||||||
label: Filter freeleech only
|
|
||||||
default: false
|
|
||||||
- name: sort
|
|
||||||
type: select
|
|
||||||
label: Sort requested from site
|
|
||||||
default: 6
|
|
||||||
options:
|
|
||||||
6: created
|
|
||||||
9: seeders
|
|
||||||
7: size
|
|
||||||
2: title
|
|
||||||
- name: type
|
|
||||||
type: select
|
|
||||||
label: Order requested from site
|
|
||||||
default: desc
|
|
||||||
options:
|
|
||||||
desc: desc
|
|
||||||
asc: asc
|
|
||||||
- name: ip_filtering
|
|
||||||
type: info
|
|
||||||
label: "IP Filtering"
|
|
||||||
default: "Zelka occasionally blocks Non-Bulgarian IP addresses. A <b>FlareSolverr</b> error means your IP was not accepted."
|
|
||||||
- name: info_activity
|
|
||||||
type: info
|
|
||||||
label: Account Inactivity
|
|
||||||
default: "With the option for parking accounts you can prevent your user nickname from getting deleted by the system for deleting inactive accounts."
|
|
||||||
|
|
||||||
login:
|
|
||||||
path: takelogin.php
|
|
||||||
method: post
|
|
||||||
inputs:
|
|
||||||
username: "{{ .Config.username }}"
|
|
||||||
password: "{{ .Config.password }}"
|
|
||||||
error:
|
|
||||||
- selector: td.embedded:has(h2:contains("failed"))
|
|
||||||
test:
|
|
||||||
path: index.php
|
|
||||||
selector: a[href="logout.php"]
|
|
||||||
|
|
||||||
search:
|
|
||||||
paths:
|
|
||||||
- path: browse.php
|
|
||||||
inputs:
|
|
||||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
|
||||||
search: "{{ .Keywords }}"
|
|
||||||
# 0 active, 1 all, 2 dead
|
|
||||||
incldead: 1
|
|
||||||
sort: "{{ .Config.sort }}"
|
|
||||||
type: "{{ .Config.type }}"
|
|
||||||
|
|
||||||
rows:
|
|
||||||
selector: ".test > tbody > tr:has(a[href^=\"browse.php\"]){{ if .Config.freeleech }}:has(a[style=\"color: #b9a100;\"]){{ else }}{{ end }}"
|
|
||||||
|
|
||||||
fields:
|
|
||||||
title:
|
|
||||||
selector: a:has(img[src$="/pic/download.gif"])
|
|
||||||
attribute: href
|
|
||||||
filters:
|
|
||||||
- name: urldecode
|
|
||||||
- name: re_replace
|
|
||||||
args: ["^(.*?)download\\.php\\/[0-9]{1,10}\\/|\\.torrent(?=[^.]*$)", ""]
|
|
||||||
details:
|
|
||||||
selector: td:nth-child(2) > a:nth-child(1)
|
|
||||||
attribute: href
|
|
||||||
category:
|
|
||||||
selector: td:nth-child(1) > a
|
|
||||||
attribute: href
|
|
||||||
filters:
|
|
||||||
- name: querystring
|
|
||||||
args: cat
|
|
||||||
download:
|
|
||||||
selector: a:has(img[src$="/pic/download.gif"])
|
|
||||||
attribute: href
|
|
||||||
magnet:
|
|
||||||
optional: true
|
|
||||||
selector: a:has(img[src$="/pic/magnet-icon-12w-12h.gif"])
|
|
||||||
attribute: href
|
|
||||||
grabs:
|
|
||||||
selector: td:nth-child(7)
|
|
||||||
size:
|
|
||||||
selector: td:nth-child(6)
|
|
||||||
date:
|
|
||||||
# 2020-10-2411:18:30
|
|
||||||
selector: td:nth-child(5)
|
|
||||||
filters:
|
|
||||||
- name: append
|
|
||||||
args: " +02:00" # EET
|
|
||||||
- name: dateparse
|
|
||||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
|
||||||
seeders:
|
|
||||||
selector: td:nth-child(8)
|
|
||||||
leechers:
|
|
||||||
selector: td:nth-child(9)
|
|
||||||
poster:
|
|
||||||
selector: td:nth-child(2) > a:nth-child(1)
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: regexp
|
|
||||||
args: src=([^\s]+)
|
|
||||||
genre:
|
|
||||||
selector: td:nth-child(2) > a:nth-child(1)
|
|
||||||
attribute: onmouseover
|
|
||||||
filters:
|
|
||||||
- name: replace
|
|
||||||
args: ["</p><p class=\\'pop\\'>", " "]
|
|
||||||
- name: regexp
|
|
||||||
args: "Genre:</b>(.+?)</div"
|
|
||||||
description:
|
|
||||||
text: "{{ .Result.genre }}"
|
|
||||||
downloadvolumefactor:
|
|
||||||
case:
|
|
||||||
"a[style=\"color: #b9a100;\"][href^=\"details.php?\"]": 0
|
|
||||||
"*": 1
|
|
||||||
uploadvolumefactor:
|
|
||||||
text: 1
|
|
||||||
# engine tbd
|
|
||||||
Reference in New Issue
Block a user