Created
February 20, 2024 12:27
-
-
Save captmicr0/9cc2c331de9972197f716aa5981df65d to your computer and use it in GitHub Desktop.
Custom Definition to use the 1337x .onion website via the onion.ly tor2web proxy.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
id: 1337x-onion | |
name: 1337x-onion | |
description: "1337X is a Public torrent site that offers verified torrent downloads" | |
language: en-US | |
type: public | |
encoding: UTF-8 | |
requestDelay: 5 | |
links: | |
- https://l337xdarkkaqfwzntnfk5bmoaroivtl6xsbatabvlb52umg6v3ch44yd.onion.ly/ | |
#certificates: | |
# - A43A385883DDA889EDB192A91C3706100F6935C9 | |
caps: | |
categorymappings: | |
# Anime | |
- {id: 28, cat: TV/Anime, desc: "Anime/Anime"} | |
- {id: 78, cat: TV/Anime, desc: "Anime/Dual Audio"} | |
- {id: 79, cat: TV/Anime, desc: "Anime/Dubbed"} | |
- {id: 80, cat: TV/Anime, desc: "Anime/Subbed"} | |
- {id: 81, cat: TV/Anime, desc: "Anime/Raw"} | |
# Audio | |
- {id: 22, cat: Audio/MP3, desc: "Music/MP3"} | |
- {id: 23, cat: Audio/Lossless, desc: "Music/Lossless"} | |
- {id: 24, cat: Audio, desc: "Music/DVD"} | |
- {id: 25, cat: Audio/Video, desc: "Music/Video"} | |
- {id: 26, cat: Audio, desc: "Music/Radio"} | |
- {id: 27, cat: Audio/Other, desc: "Music/Other"} | |
- {id: 53, cat: Audio, desc: "Music/Album"} | |
- {id: 58, cat: Audio, desc: "Music/Box set"} | |
- {id: 59, cat: Audio, desc: "Music/Discography"} | |
- {id: 60, cat: Audio, desc: "Music/Single"} | |
- {id: 68, cat: Audio, desc: "Music/Concerts"} | |
- {id: 69, cat: Audio, desc: "Music/AAC"} | |
# Movies | |
- {id: 1, cat: Movies/DVD, desc: "Movies/DVD"} | |
- {id: 2, cat: Movies/SD, desc: "Movies/Divx/Xvid"} | |
- {id: 3, cat: Movies, desc: "Movies/SVCD/VCD"} | |
- {id: 4, cat: Movies/Foreign, desc: "Movies/Dubs/Dual Audio"} | |
- {id: 42, cat: Movies/HD, desc: "Movies/HD"} | |
- {id: 54, cat: Movies/HD, desc: "Movies/h.264/x264"} | |
- {id: 55, cat: Movies, desc: "Movies/Mp4"} | |
- {id: 66, cat: Movies/3D, desc: "Movies/3D"} | |
- {id: 70, cat: Movies/HD, desc: "Movies/HEVC/x265"} | |
- {id: 73, cat: Movies, desc: "Movies/Bollywood"} | |
- {id: 76, cat: Movies/UHD, desc: "Movies/UHD"} | |
# TV | |
- {id: 5, cat: TV, desc: "TV/DVD"} | |
- {id: 6, cat: TV, desc: "TV/Divx/Xvid"} | |
- {id: 7, cat: TV, desc: "TV/SVCD/VCD"} | |
- {id: 41, cat: TV/HD, desc: "TV/HD"} | |
- {id: 71, cat: TV, desc: "TV/HEVC/x265"} | |
- {id: 74, cat: TV, desc: "TV/Cartoons"} | |
- {id: 75, cat: TV/SD, desc: "TV/SD"} | |
- {id: 9, cat: TV/Documentary, desc: "TV/Documentary"} | |
# Apps | |
- {id: 18, cat: PC, desc: "Apps/PC Software"} | |
- {id: 19, cat: PC/Mac, desc: "Apps/Mac"} | |
- {id: 20, cat: PC, desc: "Apps/Linux"} | |
- {id: 21, cat: PC, desc: "Apps/Other"} | |
- {id: 56, cat: PC/Mobile-Android, desc: "Apps/Android"} | |
- {id: 57, cat: PC/Mobile-iOS, desc: "Apps/iOS"} | |
# Games | |
- {id: 10, cat: PC/Games, desc: "Games/PC Game"} | |
- {id: 11, cat: Console/PS3, desc: "Games/PS2"} | |
- {id: 12, cat: Console/PSP, desc: "Games/PSP"} | |
- {id: 13, cat: Console/XBox, desc: "Games/Xbox"} | |
- {id: 14, cat: Console/XBox 360, desc: "Games/Xbox360"} | |
- {id: 15, cat: Console/PS3, desc: "Games/PS1"} | |
- {id: 16, cat: Console/Other, desc: "Games/Dreamcast"} | |
- {id: 17, cat: PC/Mobile-Other, desc: "Games/Other"} | |
- {id: 43, cat: Console/PS3, desc: "Games/PS3"} | |
- {id: 44, cat: Console/Wii, desc: "Games/Wii"} | |
- {id: 45, cat: Console/NDS, desc: "Games/DS"} | |
- {id: 46, cat: Console/Other, desc: "Games/GameCube"} | |
- {id: 72, cat: Console/3DS, desc: "Games/3DS"} | |
- {id: 77, cat: Console/PS4, desc: "Games/PS4"} | |
- {id: 82, cat: Console/Other, desc: "Games/Switch"} | |
# XXX | |
- {id: 48, cat: XXX/DVD, desc: "XXX/Video"} | |
- {id: 49, cat: XXX/ImageSet, desc: "XXX/Picture"} | |
- {id: 50, cat: XXX, desc: "XXX/Magazine"} | |
- {id: 51, cat: XXX, desc: "XXX/Hentai"} | |
- {id: 67, cat: XXX, desc: "XXX/Games"} | |
# Other | |
- {id: 33, cat: Other, desc: "Other/Emulation"} | |
- {id: 34, cat: Books, desc: "Other/Tutorial"} | |
- {id: 35, cat: Other, desc: "Other/Sounds"} | |
- {id: 36, cat: Books/EBook, desc: "Other/E-books"} | |
- {id: 37, cat: Other, desc: "Other/Images"} | |
- {id: 38, cat: Other, desc: "Other/Mobile Phone"} | |
- {id: 39, cat: Books/Comics, desc: "Other/Comics"} | |
- {id: 40, cat: Other/Misc, desc: "Other/Other"} | |
- {id: 47, cat: Other, desc: "Other/Nulled Script"} | |
- {id: 52, cat: Audio/Audiobook, desc: "Other/Audiobook"} | |
modes: | |
search: [q] | |
tv-search: [q, season, ep] | |
movie-search: [q] | |
music-search: [q, album, artist] | |
book-search: [q] | |
allowrawsearch: true | |
settings: | |
- name: flaresolverr | |
type: info | |
label: FlareSolverr | |
default: This site may use Cloudflare DDoS Protection, therefore Prowlarr requires <a href="https://wiki.servarr.com/prowlarr/faq#can-i-use-flaresolverr-indexers" target="_blank" rel="noreferrer">FlareSolverr</a> to access it. | |
- name: downloadlink | |
type: select | |
label: Download link | |
default: "magnet:" | |
options: | |
"http://itorrents.org/": iTorrents.org | |
"magnet:": magnet | |
- name: downloadlink2 | |
type: select | |
label: Download link (fallback) | |
default: "magnet:" | |
options: | |
"http://itorrents.org/": iTorrents.org | |
"magnet:": magnet | |
- name: info_download | |
type: info | |
label: About the Download links | |
default: As the iTorrents .torrent download link on this site is known to fail from time to time, we suggest using the magnet link as a fallback. The BTCache and Torrage services are not supported because they require additional user interaction (a captcha for BTCache and a download button on Torrage.) | |
- name: sort | |
type: select | |
label: Sort requested from site | |
default: time | |
options: | |
time: created | |
seeders: seeders | |
size: size | |
- name: type | |
type: select | |
label: Order requested from site | |
default: desc | |
options: | |
desc: desc | |
asc: asc | |
download: | |
# the .torrent URL and magnet URI are on the details page | |
selectors: | |
- selector: ul li a[href^="{{ .Config.downloadlink }}"] | |
attribute: href | |
- selector: ul li a[href^="{{ .Config.downloadlink2 }}"] | |
attribute: href | |
search: | |
paths: | |
# present first page of movies tv and music results if there are no search parms supplied (20 hits per page) | |
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Movies{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/1/" | |
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/TV{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}2{{ else }}1{{ end }}/" | |
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Music{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}3{{ else }}1{{ end }}/" | |
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Other{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}4{{ else }}1{{ end }}/" | |
keywordsfilters: | |
- name: re_replace # daily standard S2023 > 2023 | |
args: ["\\bS(20\\d{2})\\b", "$1"] | |
rows: | |
selector: tr:has(a[href*="onion.ly/torrent/"]) | |
fields: | |
title_default: | |
# the movies, tv and music pages abbreviate the title | |
selector: td[class^="coll-1"] a[href*="onion.ly/torrent/"] | |
title_optional: | |
# the movies, tv and music pages abbreviate the title so we process the href instead. #8137 | |
optional: true | |
selector: td[class^="coll-1"] a[href*="onion.ly/torrent/"]:contains("...") | |
attribute: href | |
filters: | |
- name: urldecode | |
- name: split | |
args: ["/", 3] | |
title: | |
# title_optional can be empty so use the title_default instead #8586 | |
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}" | |
filters: | |
- name: re_replace | |
args: ["-([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "~$1"] | |
- name: replace | |
args: ["-", " "] | |
- name: re_replace | |
args: ["~([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "-$1"] | |
- name: replace | |
args: ["\u000f", ""] # get rid of unwanted character #6582 | |
# cleanup for Sonarr | |
- name: re_replace # EP 3 4 to E3-4 | |
args: ["(?i)\\sEP\\s(\\d{1,2})\\s(E?\\s?\\d{1,2})\\s", " E$1-$2 "] | |
- name: re_replace # S02E04 05 to S02E04-05 | |
args: ["(?i)\\sS(\\d{1,2})\\s?E\\s?(\\d{1,2})\\s(E?\\s?\\d{1,2})\\s", " S$1E$2-$3 "] | |
- name: re_replace | |
args: ["(?i)AC3\\s?(\\d)\\s(\\d)", "AC3 $1.$2"] | |
- name: re_replace | |
args: ["(?i) DD\\s?(\\d)\\s(\\d)", " DD $1.$2"] | |
- name: re_replace | |
args: ["(?i) DDP\\s?(\\d)\\s(\\d)", " DDP $1.$2"] | |
- name: re_replace | |
args: ["(?i)\\sE\\s?AC3", " EAC3"] | |
- name: re_replace | |
args: ["(?i)WEB\\sDL", "WEB-DL"] | |
- name: re_replace | |
args: ["(?i)HDTVRIP", "HDTV"] | |
category_optional: | |
optional: true | |
selector: td[class^="coll-1"] a[href*="onion.ly/sub/"] | |
attribute: href | |
filters: | |
# extract the third part | |
- name: split | |
args: ["/", 2] | |
category: | |
text: "{{ if .Result.category_optional }}{{ .Result.category_optional }}{{ else }}40{{ end }}" | |
details: | |
selector: td[class^="coll-1"] a[href*="onion.ly/torrent/"] | |
attribute: href | |
download: | |
# .torrent link is on the details page | |
selector: td[class^="coll-1"] a[href*="onion.ly/torrent/"] | |
attribute: href | |
# dates come in three flavours: | |
date_year: | |
# (within this year) 7am Sep. 14th | |
optional: true | |
selector: td[class^="coll-date"]:not(:contains(":")):not(:contains("'")) | |
filters: | |
- name: re_replace | |
args: ["st|nd|rd|th", ""] | |
- name: dateparse | |
args: "htt MMM. d" | |
date_years: | |
# (more than a year ago) Apr. 18th '11 | |
optional: true | |
selector: td[class^="coll-date"]:contains("'") | |
filters: | |
- name: replace | |
args: ["'", ""] | |
- name: re_replace | |
args: ["st|nd|rd|th", ""] | |
- name: dateparse | |
args: "MMM. d yy" | |
date_today: | |
# (today) 12:25am | |
optional: true | |
selector: td[class^="coll-date"]:contains(":") | |
filters: | |
- name: fuzzytime | |
date: | |
text: "{{ if or .Result.date_year .Result.date_years .Result.date_today }}{{ or .Result.date_year .Result.date_years .Result.date_today }}{{ else }}now{{ end }}" | |
size: | |
selector: td[class^="coll-4"] | |
seeders: | |
selector: td[class^="coll-2"] | |
leechers: | |
selector: td[class^="coll-3"] | |
downloadvolumefactor: | |
text: 0 | |
uploadvolumefactor: | |
text: 1 | |
# engine n/a |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment