diff --git a/config/audiobookshelf/audiobooks/absdatabase.sqlite b/config/audiobookshelf/audiobooks/absdatabase.sqlite index a78eeb49..fc87564d 100644 Binary files a/config/audiobookshelf/audiobooks/absdatabase.sqlite and b/config/audiobookshelf/audiobooks/absdatabase.sqlite differ diff --git a/config/paperless/db/base/16384/16640 b/config/paperless/db/base/16384/16640 index 6aae9980..f49c461f 100644 Binary files a/config/paperless/db/base/16384/16640 and b/config/paperless/db/base/16384/16640 differ diff --git a/config/paperless/db/base/16384/16641 b/config/paperless/db/base/16384/16641 index 42aa48d7..5750e96f 100644 Binary files a/config/paperless/db/base/16384/16641 and b/config/paperless/db/base/16384/16641 differ diff --git a/config/paperless/db/base/16384/16646 b/config/paperless/db/base/16384/16646 index 413c37ac..735e9abc 100644 Binary files a/config/paperless/db/base/16384/16646 and b/config/paperless/db/base/16384/16646 differ diff --git a/config/paperless/db/base/16384/16648 b/config/paperless/db/base/16384/16648 index 93b9d048..7c4c5bc3 100644 Binary files a/config/paperless/db/base/16384/16648 and b/config/paperless/db/base/16384/16648 differ diff --git a/config/paperless/db/base/16384/16650 b/config/paperless/db/base/16384/16650 index 45487e6d..8163f32b 100644 Binary files a/config/paperless/db/base/16384/16650 and b/config/paperless/db/base/16384/16650 differ diff --git a/config/paperless/db/base/16384/16683 b/config/paperless/db/base/16384/16683 index 263d102f..4f6dc089 100644 Binary files a/config/paperless/db/base/16384/16683 and b/config/paperless/db/base/16384/16683 differ diff --git a/config/paperless/db/base/16384/16684 b/config/paperless/db/base/16384/16684 index 93041595..d05ddf74 100644 Binary files a/config/paperless/db/base/16384/16684 and b/config/paperless/db/base/16384/16684 differ diff --git a/config/paperless/db/base/16384/16685 b/config/paperless/db/base/16384/16685 index 6cd8af5a..254b6838 100644 Binary files a/config/paperless/db/base/16384/16685 and b/config/paperless/db/base/16384/16685 differ diff --git a/config/paperless/db/base/16384/16686 b/config/paperless/db/base/16384/16686 index 73100a8c..0273eddb 100644 Binary files a/config/paperless/db/base/16384/16686 and b/config/paperless/db/base/16384/16686 differ diff --git a/config/paperless/db/base/16384/16687 b/config/paperless/db/base/16384/16687 index c646551a..ad8a8a3a 100644 Binary files a/config/paperless/db/base/16384/16687 and b/config/paperless/db/base/16384/16687 differ diff --git a/config/paperless/db/base/16384/16691 b/config/paperless/db/base/16384/16691 index c593f4b0..8757583a 100644 Binary files a/config/paperless/db/base/16384/16691 and b/config/paperless/db/base/16384/16691 differ diff --git a/config/paperless/db/global/pg_control b/config/paperless/db/global/pg_control index cb8e518f..35ef6829 100644 Binary files a/config/paperless/db/global/pg_control and b/config/paperless/db/global/pg_control differ diff --git a/config/paperless/db/pg_wal/00000001000000000000001B b/config/paperless/db/pg_wal/00000001000000000000001B index 3d170493..8bc0f9c6 100644 Binary files a/config/paperless/db/pg_wal/00000001000000000000001B and b/config/paperless/db/pg_wal/00000001000000000000001B differ diff --git a/config/paperless/db/pg_xact/0000 b/config/paperless/db/pg_xact/0000 index 5188d5a1..7f21c857 100644 Binary files a/config/paperless/db/pg_xact/0000 and b/config/paperless/db/pg_xact/0000 differ diff --git a/config/prowlarr/Definitions/2fast4you.yml b/config/prowlarr/Definitions/2fast4you.yml deleted file mode 100644 index 6a0413fb..00000000 --- a/config/prowlarr/Definitions/2fast4you.yml +++ /dev/null @@ -1,227 +0,0 @@ ---- -id: 2fast4you -name: 2 Fast 4 You -description: "2 Fast 4 You is a FRENCH Private site for TV / MOVIES / GENERAL" -language: fr-FR -type: private -encoding: UTF-8 -links: - - https://2f4y.me/ -legacylinks: - - http://www.2f4y.me/ - - https://www.2f4y.me/ - -caps: - categorymappings: - - {id: 10, cat: TV/Anime, desc: "Animation: HD720P"} - - {id: 11, cat: TV/Anime, desc: "Animation: HD1080P"} - - {id: 56, cat: TV/Anime, desc: "Animation: DVDRip"} - - {id: 18, cat: PC/0day, desc: "Applications: PC"} - - {id: 16, cat: PC/Games, desc: "Applications: Jeux"} - - {id: 19, cat: PC/Mobile-Android, desc: "Applications: Android"} - - {id: 17, cat: PC/0day, desc: "Applications: Autres"} - - {id: 67, cat: TV, desc: "Autres: Emission TV"} - - {id: 68, cat: TV/Sport, desc: "Autres: Sport"} - - {id: 40, cat: Other, desc: "Autres: Autres"} - - {id: 14, cat: TV/Documentary, desc: "Documentaires: DivX"} - - {id: 15, cat: TV/Documentary, desc: "Documentaires: HD"} - - {id: 76, cat: TV/Documentary, desc: "Documentaires: TVRip"} - - {id: 62, cat: Audio/Audiobook, desc: "E-Books: E-Books Audio"} - - {id: 50, cat: Books, desc: "E-Books: Manuel Français"} - - {id: 49, cat: Books, desc: "E-Books: Manuel Anglais"} - - {id: 36, cat: Books, desc: "E-Books: Livres Français"} - - {id: 53, cat: Books, desc: "E-Books: Livre Anglais"} - - {id: 52, cat: Books, desc: "E-Books: Revue - Journaux"} - - {id: 51, cat: Books, desc: "E-Books: BD"} - - {id: 95, cat: Movies, desc: "Films: Film Divx XviD"} - - {id: 66, cat: Movies, desc: "Films: VOSTFR"} - - {id: 71, cat: Movies/WEB-DL, desc: "Films: WEB-DL"} - - {id: 65, cat: Movies, desc: "Films: VO"} - - {id: 72, cat: Movies/SD, desc: "Films: TVRip/HDTV"} - - {id: 70, cat: Movies/HD, desc: "Films: MHD X265"} - - {id: 57, cat: Movies/SD, desc: "Films: TS/CAM"} - - {id: 59, cat: Movies, desc: "Films: Spectacle"} - - {id: 55, cat: Movies/HD, desc: "Films: MHD 720P"} - - {id: 54, cat: Movies/HD, desc: "Films: MHD 1080P"} - - {id: 1, cat: Movies/HD, desc: "Films: HD720P"} - - {id: 2, cat: Movies/HD, desc: "Films: HD1080P"} - - {id: 90, cat: Movies/HD, desc: "Films: HD X265"} - - {id: 92, cat: Movies/HD, desc: "Films: 4K"} - - {id: 69, cat: Movies/3D, desc: "Films: Film 3D"} - - {id: 3, cat: Movies/DVD, desc: "Films: DVDRIP"} - - {id: 5, cat: Movies/DVD, desc: "Films: DVD9"} - - {id: 91, cat: Movies/HD, desc: "Films: RemuX"} - - {id: 89, cat: Movies/HD, desc: "Films: BD/BR Rip"} - - {id: 88, cat: Movies/BluRay, desc: "Films: Full BD/BR"} - - {id: 97, cat: Movies, desc: "Films: Cours Métrage"} - - {id: 79, cat: TV/Anime, desc: "Mangas: HD"} - - {id: 81, cat: TV/Anime, desc: "Mangas: HD VOSTFR"} - - {id: 85, cat: TV/Anime, desc: "Mangas: Web-DL"} - - {id: 86, cat: TV/Anime, desc: "Mangas: TV-RIP"} - - {id: 75, cat: Audio, desc: "Musique: Concert TVRip"} - - {id: 25, cat: Audio/MP3, desc: "Musique: Single MP3"} - - {id: 24, cat: Audio/Lossless, desc: "Musique: Single Flac"} - - {id: 22, cat: Audio/MP3, desc: "Musique: Album MP3"} - - {id: 23, cat: Audio/Lossless, desc: "Musique: Album Flac"} - - {id: 64, cat: Audio, desc: "Musique: Mégamix Maison"} - - {id: 96, cat: Audio/MP3, desc: "Musique: PlayList MP3"} - - {id: 94, cat: Audio, desc: "Musique: Podcast"} - - {id: 58, cat: Audio, desc: "Musique: Concert"} - - {id: 93, cat: TV, desc: "Serie TV: Saison VOSTFR"} - - {id: 61, cat: TV, desc: "Serie TV: Episode VOSTFR"} - - {id: 63, cat: TV, desc: "Serie TV: Episode VO"} - - {id: 12, cat: TV/Anime, desc: "Serie TV: Animation"} - - {id: 74, cat: TV, desc: "Serie TV: TVRip"} - - {id: 73, cat: TV/WEB-DL, desc: "Serie TV: WEB-DL"} - - {id: 7, cat: TV, desc: "Serie TV: Episode FR"} - - {id: 6, cat: TV, desc: "Serie TV: Saison FR"} - - {id: 98, cat: TV/Anime, desc: "Serie TV: Manga VOSTFR"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: order - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: form:contains("Erreur") - message: - selector: form - remove: table - test: - path: torrents-search.php - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 all, 1 notfree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 any, 1 French, 2 English, 3 Multi, 4-8 32-41 - lang: 0 - sort: "{{ .Config.sort}}" - order: "{{ .Config.order}}" - keywordsfilters: - - name: re_replace - args: ["^$", "%"] # replace empty search string with % - - rows: - selector: table.ttable_headinner > tbody > tr[class^="t-row"] - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_phase1: - selector: a[href^="torrents-details.php?id="] - filters: - - name: replace - args: [" - (Nouveau!)", ""] - 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: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="torrents-details.php?id="] - attribute: href - filters: - - name: replace - args: ["torrents-details.php", "download.php"] - poster: - selector: img.rounded-img - attribute: src - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - date: - text: now - downloadvolumefactor: - case: - img[title="freeleech"]: 0 - "*": 1 - uploadvolumefactor: - case: - "*": 1 - minimumratio: - text: 0.75 -# engine n/a diff --git a/config/prowlarr/Definitions/2xfree.yml b/config/prowlarr/Definitions/2xfree.yml deleted file mode 100644 index 48bdde57..00000000 --- a/config/prowlarr/Definitions/2xfree.yml +++ /dev/null @@ -1,201 +0,0 @@ ---- -id: 2xfree -name: 2xFree -description: "2xFree is a CHINESE Private Torrent Tracker for 3D MOVIES / TV" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://pt.2xfree.org/ - -caps: - categorymappings: - - # torrents.php - - {id: 526, cat: Movies, desc: "3DMovies(3D电影)"} - - {id: 527, cat: TV, desc: "3DSeries(3D剧集)"} - - {id: 533, cat: Movies, desc: "VRMovies(VR电影)"} - - {id: 534, cat: TV, desc: "VRSeries(VR剧集)"} - - {id: 537, cat: TV, desc: "VRShows(VR演出)"} - - {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)"} - - {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)"} - - {id: 532, cat: Other, desc: "VRTools(VR工具软件)"} - - 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 2FA code box if you have enabled 2FA on the 2xFree 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 Torrents per page: setting to 100 on your account profile. - - name: info_ulslr - type: info - label: Upload Speed Limit Rule - default: The upload bandwidth shall not exceed 120Mbps, that is, the upload speed shall not exceed 15MB/s. - - name: info_flaresolverr - type: info_flaresolverr - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
  1. Veteran User and above will be retained forever
  2. Elite User and above will not be deleted after parking (in the control panel)
  3. Users with a parked account will be deleted if they do not log in for 400 consecutive days
  4. Users with a non-parked account will be deleted if they do not log in for 150 consecutive days
  5. Users with no traffic (ie, upload/download data are both 0) will be deleted if they do not log in for 100 consecutive days.
" - -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 (4 does not appear to work) - 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 - minimumratio: - text: 0.8 - description: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.6 2023-06-18 diff --git a/config/prowlarr/Definitions/3wmg.yml b/config/prowlarr/Definitions/3wmg.yml deleted file mode 100644 index b853c4eb..00000000 --- a/config/prowlarr/Definitions/3wmg.yml +++ /dev/null @@ -1,200 +0,0 @@ ---- -id: 3wmg -name: 3Wmg -description: "3Wmg is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://www.3wmg.com/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影", default: true} - - {id: 402, cat: TV, desc: "TV Series/电视剧", default: true} - - {id: 403, cat: TV, desc: "TV Shows/综艺", default: true} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片", default: true} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫", default: true} - - {id: 406, cat: Audio, desc: "Music/音乐", default: true} - - {id: 407, cat: Other/Misc, desc: "Leanrning学习", default: true} - - {id: 409, cat: Books, desc: "Ebook电子书", default: true} - - {id: 410, cat: Other, desc: "Misc/其他", default: true} - # special - - {id: 411, cat: XXX, desc: "Uncensored无码", default: false} - - {id: 412, cat: XXX, desc: "Censored有码", default: false} - - {id: 413, cat: XXX, desc: "Lgbt同志", default: false} - - {id: 414, cat: XXX, desc: "III三级、写真", default: false} - - {id: 415, cat: XXX, desc: "Animations动漫", default: false} - - {id: 416, cat: XXX, desc: "Other其他", default: false} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the 3Wmg 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 Torrents per page: setting to 100 on your account profile. - -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("失敗")) - - selector: td.embedded:has(h2:contains("失败")) - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 402, 403, 404, 405, 406, 407, 409, 410] - - path: special.php - categories: [411, 412, 413, 414, 415, 416] - 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, 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 - 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 - minimumratio: - text: 1.0 - description: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.5 2023-07-29 diff --git a/config/prowlarr/Definitions/acidlounge.yml b/config/prowlarr/Definitions/acidlounge.yml deleted file mode 100644 index f5f869c7..00000000 --- a/config/prowlarr/Definitions/acidlounge.yml +++ /dev/null @@ -1,188 +0,0 @@ ---- -id: acidlounge -name: Acid-Lounge -description: "Acid Lounge (A-L) is a Private Torrent Tracker for 0DAY / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.acid-lounge.org.uk/ - -caps: - categorymappings: - - {id: 79, cat: PC/Mobile-Android, desc: "Android"} - - {id: 61, cat: TV/Anime, desc: "Anime"} - - {id: 55, cat: PC/0day, desc: "Appz/0-Day"} - - {id: 59, cat: PC/Mac, desc: "Appz/Mac"} - - {id: 22, cat: PC, desc: "Appz/Misc"} - - {id: 32, cat: PC, desc: "Appz/PC"} - - {id: 48, cat: Audio/Audiobook, desc: "Audio/Books"} - - {id: 84, cat: Other, desc: "Damaged Torrent"} - - {id: 14, cat: Books/EBook, desc: "eBooks"} - - {id: 82, cat: Books/Comics, desc: "eBooks/Comics"} - - {id: 81, cat: Books/Mags, desc: "eBooks/Mags"} - - {id: 60, cat: PC/Mac, desc: "Games/Mac"} - - {id: 54, cat: Console/NDS, desc: "Games/NDS"} - - {id: 4, cat: PC/Games, desc: "Games/PC"} - - {id: 42, cat: Console/PS3, desc: "Games/PS3"} - - {id: 56, cat: Console/Wii, desc: "Games/Wii"} - - {id: 36, cat: Console/XBox 360, desc: "Games/xbox360"} - - {id: 69, cat: Other, desc: "Halloween"} - - {id: 80, cat: PC/Mobile-iOS, desc: "iPhone / iPad"} - - {id: 46, cat: Other, desc: "Kids"} - - {id: 63, cat: PC, desc: "Linux"} - - {id: 49, cat: Other, desc: "Misc"} - - {id: 77, cat: Movies/3D, desc: "Movies/3D BLURAY"} - - {id: 73, cat: Movies/HD, desc: "Movies/Boxsets HD"} - - {id: 74, cat: Movies/SD, desc: "Movies/Boxsets SD"} - - {id: 25, cat: Movies/DVD, desc: "Movies/DVD-R"} - - {id: 51, cat: Movies/HD, desc: "Movies/HD"} - - {id: 26, cat: Movies, desc: "Movies/Retro"} - - {id: 29, cat: Movies/SD, desc: "Movies/SD"} - - {id: 52, cat: Movies/SD, desc: "Movies/WMV"} - - {id: 85, cat: Movies/HD, desc: "Movies/X265"} - - {id: 66, cat: Audio/Lossless, desc: "Music/Flac"} - - {id: 35, cat: Audio/MP3, desc: "Music/MP3"} - - {id: 31, cat: Audio/Video, desc: "Music/Videos"} - - {id: 72, cat: Movies, desc: "Sci-Fi"} - - {id: 83, cat: Movies, desc: "Tribute Packs"} - - {id: 30, cat: TV, desc: "TV"} - - {id: 50, cat: TV/HD, desc: "TV-HD/X264"} - - {id: 71, cat: TV/SD, desc: "TV-SD/X264"} - - {id: 75, cat: TV/HD, desc: "TV/Boxsets HD"} - - {id: 76, cat: TV/SD, desc: "TV/Boxsets SD"} - - {id: 37, cat: XXX, desc: "XXX"} - - {id: 68, cat: XXX, desc: "XXX/0-Day"} - - {id: 78, cat: XXX, desc: "XXX/3D"} - - {id: 67, cat: XXX/ImageSet, desc: "XXX/Imagesets"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: dateAdded - options: - dateAdded: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Accounts with nothing uploaded/ downloaded will be disabled after 4 weeks." - -login: - path: Main/?act=Login - method: form - form: form#login - captcha: - type: image - selector: img[alt="Security code"] - input: code - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.errorWrap - test: - path: index.php - selector: a[href$="logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}cat[]={{.}}&{{end}}" - search: "{{ .Keywords }}" - # alive, aliveanddead, nobot, dead, free, nuked - status: "{{ if .Config.freeleech }}free{{ else }}aliveanddead{{ end }}" - # title, desc, both - search_type: title - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table#browse_torrents_table > tbody > tr[id^="torrent_row_"] - - fields: - category: - selector: a[href^="browse.php?cat[]="] - attribute: href - filters: - - name: querystring - args: cat[] - title: - selector: a.torrent_name - attribute: title - details: - selector: a.torrent_name - attribute: href - download: - selector: a[href^="download.php?"] - attribute: href - description: - selector: span.torrent_small_desc - genre: - selector: span.torrent_small_desc - filters: - - name: regexp - args: "\\[.+?\\] \\[(.+?)\\]" - - name: replace - args: [" ", "_"] - files: - selector: td.torrent_table_files - date: - selector: td.torrent_table_dateAdded - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td.torrent_table_size - grabs: - selector: td.torrent_table_snatched - filters: - - name: regexp - args: (\d+) - seeders: - selector: td.torrent_table_seeders - leechers: - selector: td.torrent_table_leechers - downloadvolumefactor: - case: - ":root div#notice_ratioBoostingMadness": 0 - img[src$="images/freedownload.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 5 day (as seconds = 5 x 24 x 60 x 60) - text: 432000 # 3 days for torrents under 20GB -# engine n/a diff --git a/config/prowlarr/Definitions/adbt.yml b/config/prowlarr/Definitions/adbt.yml deleted file mode 100644 index 8cf5c648..00000000 --- a/config/prowlarr/Definitions/adbt.yml +++ /dev/null @@ -1,178 +0,0 @@ ---- -id: adbt -name: ADBT -description: "ADBT (Anime Datenbank Tracker) is a GERMAN Private Tracker for Anime, Hentai and Cartoons" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://adbt.is-into-anime.com/ - -caps: - categorymappings: - - {id: 34, cat: Console, desc: "3D Game"} - - {id: 35, cat: Movies, desc: "3D Movie"} - - {id: 36, cat: Audio, desc: "3D OST"} - - {id: 37, cat: TV, desc: "3D Serie"} - - {id: 38, cat: XXX, desc: "3D XXX"} - - {id: 39, cat: Audio, desc: "ADBT Radio"} - - {id: 40, cat: Audio/Video, desc: "AMV"} - - {id: 21, cat: Console, desc: "Anime Games"} - - {id: 41, cat: Movies, desc: "Anime Live"} - - {id: 6, cat: TV/Anime, desc: "Anime Movies"} - - {id: 24, cat: Audio, desc: "Anime OST"} - - {id: 42, cat: TV/Anime, desc: "Anime OVA"} - - {id: 12, cat: TV/Anime, desc: "Anime Serien"} - - {id: 23, cat: Other, desc: "Anime Sonstige"} - - {id: 28, cat: Other, desc: "Bildergalerien"} - - {id: 43, cat: Books, desc: "Comic"} - - {id: 44, cat: Books, desc: "Doujinshi"} - - {id: 53, cat: XXX, desc: "Hentai Doujinshi"} - - {id: 27, cat: Console, desc: "Hentai Games"} - - {id: 45, cat: Books, desc: "Hentai Light Novel"} - - {id: 54, cat: Books, desc: "Hentai Manga"} - - {id: 25, cat: Movies, desc: "Hentai Movies"} - - {id: 4, cat: TV, desc: "Hentai Serien"} - - {id: 46, cat: Other, desc: "Hentai Visual Novel"} - - {id: 47, cat: Audio, desc: "J-Music"} - - {id: 48, cat: Books, desc: "Light Novel"} - - {id: 33, cat: Books, desc: "Manga"} - - {id: 49, cat: Audio, desc: "Music"} - - {id: 9, cat: Other, desc: "Sonstiges"} - - {id: 50, cat: Other, desc: "Visual Novel"} - - {id: 51, cat: Console, desc: "Zeichentrick Game"} - - {id: 31, cat: Movies, desc: "Zeichentrick Movie"} - - {id: 52, cat: Audio, desc: "Zeichentrick OST"} - - {id: 30, cat: TV, desc: "Zeichentrick Serie"} - - {id: 32, cat: XXX, desc: "Zeichentrick XXX"} - - 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: onlyupload - type: checkbox - label: Search OnlyUpload only - default: false - - name: info_free - type: info - label: About OnlyUpload at ADBT - default: "" - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeds: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents pro Seite: (Torrents per Page) setting to 100 on your Profile. The default is 15. - - name: info_layout - type: info - label: Torrent Page layout - default: Only the Platzsparendes Layout mit PopUp für zusätzliche Informationen (Space saving layout using pop-ups for detailed information) on your Profile is supported by this indexer. Tabellarisches Layout, sehr breite Darstellung (Schedular layout, width display) will return no results. - -login: - path: login.php - method: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table.tableinborder:contains("Login fehlgeschlagen!") > tbody > tr > td.tablea - test: - path: index.php? - selector: a[href="logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - showsearch: 1 - search: "{{ .Keywords }}" - # 0 active, 1 all, 2 UpOn, 3 dead - incldead: "{{ if .Config.onlyupload }}2{{ else }}1{{ end }}" - # 0 title, 1 title + descr, 2 descr - suchwo: 0 - # search by type: - all, etc - tt: "-" - # search in series: - none, etc - se: "-" - # 0 all, etc - team: 0 - # 0 all, etc - subcat: 0 - orderby: "{{ .Config.sort }}" - sort: "{{ .Config.type }}" - # site does not support imdbid searching or display imdb links in results. - - rows: - selector: table.tableinborder:has(colgroup) > tbody > tr - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - attribute: title - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download/"] - attribute: href - size: - selector: td.tablea > table > tbody > tr:nth-child(2) > td > b - files: - selector: td.tablea > table > tbody > tr:nth-child(2) > td > b:nth-child(2) - seeders: - selector: td.tablea > table > tbody > tr:nth-child(2) > td:nth-child(2) > b > font - leechers: - selector: td.tablea > table > tbody > tr:nth-child(2) > td:nth-child(2) > a + b > font - grabs: - selector: td.tablea > table > tbody > tr:nth-child(2) > td:nth-child(3) > b - date: - selector: td.tablea > table > tbody > tr:nth-child(2) > td:nth-child(5) - filters: - - name: replace - args: ["\u00a0", " "] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyy HH:mm:ss zzz" - downloadvolumefactor: - case: - img[src="pic/upon.gif"]: 0 # only upload is counted - "*": 1 - uploadvolumefactor: - text: 1 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# NetVision diff --git a/config/prowlarr/Definitions/anilibria.yml b/config/prowlarr/Definitions/anilibria.yml deleted file mode 100644 index 7462eb62..00000000 --- a/config/prowlarr/Definitions/anilibria.yml +++ /dev/null @@ -1,300 +0,0 @@ ---- -id: anilibria -name: AniLibria -description: "AniLibria is a Public torrent tracker for anime, voiced on russian by AniLibria team" -language: ru-RU -type: public -encoding: UTF-8 -links: - - https://www.anilibria.tv/ - -caps: - categories: - Anime: TV/Anime - Movies: Movies/Other - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: sonarr_compatibility - type: checkbox - label: Improve Sonarr compatibility by trying to better parse Season information in release titles. - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - -search: - paths: - # https://github.com/anilibria/docs/blob/master/api_v3.md - - path: "https://api.anilibria.tv/v3/title/{{ if .Keywords }}search{{ else }}updates{{ end }}" - response: - type: json - - inputs: - search: "{{ .Keywords }}" - filter: "names,posters.small.url,code,torrents.list,season.year,description" - limit: 100 - - keywordsfilters: - # strip season and/or ep - - name: re_replace - args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""] - - rows: - selector: list - attribute: torrents.list - multiple: true - - fields: - _episodes: - selector: episodes.string - optional: true - category: - text: "{{ if eq .Result._episodes \"Фильм\" }}Movies{{ else }}Anime{{ end }}" - title_ru: - selector: ..names.ru - title_en: - selector: ..names.en - title_en_parsed: - selector: ..names.en - filters: - - name: re_replace - args: ["(?i)\\bPart\\s*1\\b", "Part One"] - - name: re_replace - args: ["(?i)\\bPart\\s*2\\b", "Part Two"] - - name: re_replace - args: ["(?i)\\bPart\\s*3\\b", "Part Three"] - - name: re_replace - args: ["(?i)\\bPart\\s*4\\b", "Part Four"] - - name: re_replace - args: ["(?i)\\bPart\\s*5\\b", "Part Five"] - - name: re_replace - args: ["(?i)\\bPart\\s*6\\b", "Part Six"] - - name: re_replace - args: ["(?i)\\bPart\\s*7\\b", "Part Seven"] - - name: re_replace - args: ["(?i)\\bPart\\s*8\\b", "Part Eight"] - - name: re_replace - args: ["(?i)\\bPart\\s*9\\b", "Part Nine"] - - name: re_replace - args: ["(?i)\\bseason\\s*(\\d+)\\b", ""] - - name: re_replace - args: ["(?i)\\b(\\d+)(st|nd|rd|th)\\s*season[\\s\\.]*", ""] - - name: re_replace - args: ["(?i)\\b(\\d+)\\s*season\\b[\\s\\.]*", ""] - - name: re_replace - args: ["(?i)\\bseason\\s*([IVXLCDM]+)\\b", ""] - - name: re_replace - args: ["\\bI$", ""] - - name: re_replace - args: ["\\bII$", ""] - - name: re_replace - args: ["\\bIII$", ""] - - name: re_replace - args: ["\\bIV$", ""] - - name: re_replace - args: ["\\bV$", ""] - - name: re_replace - args: ["\\bVI$", ""] - - name: re_replace - args: ["\\bVII$", ""] - - name: re_replace - args: ["\\bVIII$", ""] - - name: re_replace - args: ["\\bIX$", ""] - - name: re_replace - args: ["\\bX$", ""] - - name: re_replace - args: ["(?i)\\b(\\d+)(?:st|nd|rd|th)?\\b", ""] - - name: trim - title_alternative: - selector: ..names.alternative - optional: true - filters: - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: re_replace - args: ["^OVA$", ""] - _season_number_en: - selector: ..names.en - filters: - - name: re_replace - args: ["(?i)\\bPart\\s*\\d+\\s*$", ""] - - name: re_replace - args: ["(?i)(^.*\\bseason\\s*(\\d+)\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)(st|nd|rd|th)\\s*season\\b.*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)\\s*season\\b.*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\bseason\\s*([IVXLCDM]+)\\b\\s*$)", "$1"] - - name: re_replace - args: ["(^.*X$)", "S10"] - - name: re_replace - args: ["(^.*IX$)", "S9"] - - name: re_replace - args: ["(^.*VIII$)", "S8"] - - name: re_replace - args: ["(^.*VII$)", "S7"] - - name: re_replace - args: ["(^.*VI$)", "S6"] - - name: re_replace - args: ["(^.*V$)", "S5"] - - name: re_replace - args: ["(^.*IV$)", "S4"] - - name: re_replace - args: ["(^.*III$)", "S3"] - - name: re_replace - args: ["(^.*II$)", "S2"] - - name: re_replace - args: ["(^.*I$)", "S1"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)(?:st|nd|rd|th)?\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)^(?!S\\d+).*", ""] - _season_number_alternative: - selector: ..names.alternative - optional: true - filters: - - name: re_replace - args: ["(?i)\\bPart\\s*\\d+\\s*$", ""] - - name: re_replace - args: ["(?i)(^.*\\bseason\\s*(\\d+)\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)(st|nd|rd|th)\\s*season\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)\\s*season\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)(^.*\\bseason\\s*([IVXLCDM]+)\\b\\s*$)", "$1"] - - name: re_replace - args: ["(^.*X$)", "S10"] - - name: re_replace - args: ["(^.*IX$)", "S9"] - - name: re_replace - args: ["(^.*VIII$)", "S8"] - - name: re_replace - args: ["(^.*VII$)", "S7"] - - name: re_replace - args: ["(^.*VI$)", "S6"] - - name: re_replace - args: ["(^.*V$)", "S5"] - - name: re_replace - args: ["(^.*IV$)", "S4"] - - name: re_replace - args: ["(^.*III$)", "S3"] - - name: re_replace - args: ["(^.*II$)", "S2"] - - name: re_replace - args: ["(^.*I$)", "S1"] - - name: re_replace - args: ["(?i)(^.*\\b(\\d+)(?:st|nd|rd|th)?\\b\\s*$)", "S$2"] - - name: re_replace - args: ["(?i)^(?!S\\d+).*", ""] - _season_number: - text: "{{ .Result._season_number_en }}" - filters: - - name: append - args: "{{ .Result._season_number_alternative }}" - - name: re_replace - args: ["^S1S1$", "S1"] - - name: re_replace - args: ["^S1(.+)$", "$1"] - - name: re_replace - args: ["^(S\\d+).*$", "$1"] - - name: re_replace - args: ["^$", "S1"] - year: - selector: ..season.year - _quality: - selector: quality.string - _quality_type: - selector: quality.type - _quality_resolution: - selector: quality.resolution - _quality_encoder: - selector: quality.encoder - filters: - - name: re_replace - args: ["(?i)^h", "x"] - title_parsed: - text: "{{ if .Config.stripcyrillic }}{{ else }}{{ .Result.title_ru }} / {{ end }}{{ .Result.title_en_parsed }} {{ .Result._season_number}}E{{ .Result._episodes }} [{{ .Result._quality_type }} {{ .Result._quality_resolution }} {{ .Result._quality_encoder }}]" - filters: - - name: re_replace - args: ["\\bS\\d+EФильм\\b", "({{ .Result.year }}) MOVIE"] - - name: re_replace - args: ["\\bS\\d+EOVA\\b", "({{ .Result.year }}) OVA"] - - name: re_replace - args: ["\\bS\\d+EONA\\b", "({{ .Result.year }}) ONA"] - - name: re_replace - args: ["\\bS\\d+EMovie\\b", "({{ .Result.year }}) MOVIE"] - - name: re_replace - args: ["\\bS\\d+EП/м фильм\\b", "({{ .Result.year }}) MOVIE"] - - name: re_replace - args: ["\\bS\\d+EРекап\\b", "({{ .Result.year }}) RECAP"] - - name: re_replace - args: ["\\bS\\d+ETV-Special\\b", "({{ .Result.year }}) SPECIAL"] - - name: append - args: "{{ if .Config.addrussiantotitle }} - RUS{{ else }}{{ end }}" - title_original: - text: "{{ if .Config.stripcyrillic }}{{ else }}{{ .Result.title_ru }} / {{ end }}{{ .Result.title_en }}{{ if .Result.title_alternative }} / AKA {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}]{{ if .Result._episodes }} - E{{ .Result._episodes }}{{ else }}{{ end }}" - filters: - - name: re_replace - args: [" - \\bEФильм\\b", " - MOVIE"] - - name: re_replace - args: [" - \\bEMovie\\b", " - MOVIE"] - - name: re_replace - args: [" - \\bEП/м фильм\\b", " - MOVIE"] - - name: re_replace - args: [" - \\bEOVA\\b", " - OVA"] - - name: re_replace - args: [" - \\bEONA\\b", " - ONA"] - - name: append - args: "{{ if .Config.addrussiantotitle }} - RUS{{ else }}{{ end }}" - title: - text: "{{ if .Config.sonarr_compatibility }}{{ .Result.title_parsed }}{{ else }}{{ .Result.title_original }}{{ end }}" - _code: - selector: ..code - details: - text: "{{ .Config.sitelink }}release/{{ .Result._code }}.html" - download_url: - selector: url - download: - text: "{{ .Config.sitelink }}{{ .Result.download_url }}" - magnet: - selector: magnet - poster: - selector: ..posters.small.url - filters: - - name: prepend - args: "https://static.anilibria.tv" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: downloads - date: - # unix - selector: uploaded_timestamp - size: - selector: total_size - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - description: - selector: ..description -# json api v3 diff --git a/config/prowlarr/Definitions/anime-free.yml b/config/prowlarr/Definitions/anime-free.yml deleted file mode 100644 index 5df77e57..00000000 --- a/config/prowlarr/Definitions/anime-free.yml +++ /dev/null @@ -1,145 +0,0 @@ ---- -id: anime-free -name: Anime-Free -description: "Anime-Free is a RUSSIAN Semi-Private Torrent Tracker for Hentai manga, eroge and flash porn games" -language: ru-RU -type: semi-private -encoding: windows-1251 -testlinktorrent: false -links: - - https://anime-free.one/ -legacylinks: - - https://anime-free.net/ # redirects to *.biz - - https://anime-free.biz/ - - http://anime-free.one/ - -caps: - categorymappings: - - {id: 14, cat: TV/Anime, desc: "Аниме хентай"} - - {id: 47, cat: TV/Anime, desc: " Хентай на Русском языке"} - - {id: 48, cat: TV/Anime, desc: " Хентай Без русского перевода"} - - {id: 45, cat: TV/Anime, desc: " Хентай Без цензуры"} - - {id: 46, cat: TV/Anime, desc: " Хентай с цензурой"} - - {id: 54, cat: Other, desc: "Косплей"} - - {id: 51, cat: TV/Anime, desc: "[3D] хентай и анимация"} - - {id: 5, cat: Books/Comics, desc: "Хентай манга"} - - {id: 56, cat: Console, desc: "Игры"} - - {id: 10, cat: Console, desc: " Эротические и хентай игры"} - - {id: 55, cat: Console, desc: " 3DCG/3D-Animation игры"} - - {id: 57, cat: Console, desc: " Игры на русском языке"} - - {id: 58, cat: Other, desc: " Онлайн игры"} - - {id: 52, cat: Books/Comics, desc: "Порно комиксы"} - - {id: 49, cat: XXX/ImageSet, desc: "Хентай картинки, иллюстрации, обои и Art "} - - {id: 43, cat: TV/Anime, desc: "Эччи (Легкая эротика)"} - - {id: 4, cat: TV/Anime, desc: "Аниме Хентай"} - - {id: 50, cat: Other, desc: "Хентай Онлайн"} - - modes: - search: [q] - -settings: - - name: email - type: text - label: Email - - name: password - type: password - label: Password - -login: - path: / - method: form - form: form.login-form - inputs: - login_name: "{{ .Config.email }}" - login_password: "{{ .Config.password }}" - error: - - selector: div.berrors - test: - path: / - selector: a[href$="/index.php?action=logout"] - -download: - selectors: - - selector: a[href*="/engine/download.php?id="] - attribute: href - -search: - # https://anime-free.biz/index.php?do=search&subaction=search&search_start=0&full_search=1&result_from=1&story=slaves+to+passion&all_word_seach=1&titleonly=3&searchuser=&replyless=0&replylimit=0&searchdate=0&beforeafter=after&sortby=date&resorder=desc&showposts=0&catlist[]=0 - paths: - - path: index.php - inputs: - $raw: "{{ range .Categories }}catlist[]={{.}}&{{end}}" - do: search - subaction: search - search_start: 0 - full_search: 1 - result_from: 1 - showposts: 0 - all_word_seach: 1 - # 0 article, 1 comments, 2 static pages, 3 article titles - titleonly: "{{ if .Keywords }}3{{ else }}0{{ end }}" - searchdate: 0 - searchuser: "" - story: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - sortby: date - resorder: desc - - rows: - selector: article - - fields: - category_optional: - optional: true - selector: a[href*="category="] - attribute: href - case: - a[href$="3d_hentai"]: 51 - a[href$="3dcg_game"]: 55 - a[href$="censored"]: 46 - a[href$="comics"]: 52 - a[href$="cosplay"]: 54 - a[href$="etty"]: 43 - a[href$="h-game"]: 10 - a[href$="h-online"]: 50 - a[href$="hentai"]: 4 - a[href$="hentai_games"]: 56 - a[href$="hentai_manga"]: 5 - a[href$="hentai_raznoe"]: 49 - a[href$="hentai_rus"]: 47 - a[href$="online_games"]: 58 - a[href$="original_hentai"]: 48 - a[href$="rus-game"]: 57 - a[href$="uncensored"]: 45 - category: - text: "{{ if .Result.category_optional }}{{ .Result.category_optional }}{{ else }}54{{ end }}" - title: - selector: h2.title a - details: - selector: h2.title a - attribute: href - download: - selector: h2.title a - attribute: href - poster: - selector: img.entry-image - attribute: src - description: - selector: div[itemprop="description"] - date: - selector: li:has(img#adddate) - filters: - - name: dateparse - args: "dd-MM-yyyy, HH:mm" - seeders: - text: 1 - leechers: - text: 1 - size: - selector: b.file_size - optional: true - default: 0 B - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/anime-time.yml b/config/prowlarr/Definitions/anime-time.yml deleted file mode 100644 index 64caf12f..00000000 --- a/config/prowlarr/Definitions/anime-time.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -id: anime-time -name: Anime Time -description: "Anime Time is a Public Torrent Tracker for ANIME." -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://animetime.cc/ - -caps: - categories: - anime: TV/Anime - books: Books - - modes: - search: [q] - tv-search: [q, season, ep] - book-search: [q] - -settings: [] - -search: - paths: - # https://animetime.cc/search?query= - - path: "{{ if .Keywords }}search{{ else }}{{ end }}" - - inputs: - query: "{{ .Keywords }}" - - keywordsfilters: - - name: trim - - name: re_replace - args: ["\\W+", "%"] - - rows: - selector: div.flow-root > div.divide-y > div.p-2.space-y-2 - - fields: - category: - selector: span.badge.badge-primary - title: - selector: a[href*="/view/"] - details: - selector: a[href*="/view/"] - attribute: href - download: - selector: a[href*="/download/"] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - date: - selector: span[data-tip] - attribute: data-tip - filters: - - name: append - args: " +02:00" # EET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: span.badge.badge-ghost - seeders: - text: 1 - leechers: - text: 1 - genre: - selector: span.badge.badge-secondary, span.badge.badge-error - filters: - - name: replace - args: ["non english", "non_english"] - - name: replace - args: ["music video", "music_video"] - - name: replace - args: ["Anime Time", "Anime_Time"] - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/anime-timel.yml b/config/prowlarr/Definitions/anime-timel.yml deleted file mode 100644 index 502b1292..00000000 --- a/config/prowlarr/Definitions/anime-timel.yml +++ /dev/null @@ -1,103 +0,0 @@ ---- -id: anime-timel -name: Anime TimeL -description: "This is the Anime Time indexer with Login enabled in the config to include NSFW content." -language: en-US -type: semi-private -encoding: UTF-8 -requestDelay: 2 -links: - - https://animetime.cc/ - -caps: - categories: - anime: TV/Anime - books: Books - - modes: - search: [q] - tv-search: [q, season, ep] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - -login: - path: auth/log-in - method: form - form: form[action$="/auth/log-in"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember_me: true - error: - - selector: span.text-error - test: - path: / - selector: form[action$="/auth/log-out"] - -search: - paths: - # https://animetime.cc/search?query= - - path: "{{ if .Keywords }}search{{ else }}{{ end }}" - - inputs: - query: "{{ .Keywords }}" - - keywordsfilters: - - name: trim - - name: re_replace - args: ["\\W+", "%"] - - rows: - selector: div.flow-root > div.divide-y > div.p-2.space-y-2 - - fields: - category: - selector: span.badge.badge-primary - title: - selector: a[href*="/view/"] - details: - selector: a[href*="/view/"] - attribute: href - download: - selector: a[href*="/download/"] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - date: - selector: span[data-tip] - attribute: data-tip - filters: - - name: append - args: " +02:00" # EET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: span.badge.badge-ghost - seeders: - text: 1 - leechers: - text: 1 - genre: - selector: span.badge.badge-secondary, span.badge.badge-error - filters: - - name: replace - args: ["non english", "non_english"] - - name: replace - args: ["music video", "music_video"] - - name: replace - args: ["Anime Time", "Anime_Time"] - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/animetime.yml b/config/prowlarr/Definitions/animetime.yml deleted file mode 100644 index 4356ad51..00000000 --- a/config/prowlarr/Definitions/animetime.yml +++ /dev/null @@ -1,81 +0,0 @@ ---- -id: animetime -name: Anime Time -description: "Anime Time is a PUBLIC torrent tracker for ANIME" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://animetime.cc/ - -caps: - categories: - anime: TV/Anime - books: Books - - modes: - search: [q] - tv-search: [q, season, ep] - book-search: [q] - -settings: [] - -search: - paths: - # https://animetime.cc/search?query= - - path: "{{ if .Keywords }}search{{ else }}{{ end }}" - - inputs: - query: "{{ .Keywords }}" - - keywordsfilters: - - name: trim - - name: re_replace - args: ["\\W+", "%"] - - rows: - selector: div.flow-root > div.divide-y > div.p-2.space-y-2 - - fields: - category: - selector: span.badge.badge-primary - title: - selector: a[href*="/view/"] - details: - selector: a[href*="/view/"] - attribute: href - download: - selector: a[href*="/download/"] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - date: - selector: span[data-tip] - attribute: data-tip - filters: - - name: append - args: " +02:00" # EET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: span.badge.badge-ghost - seeders: - text: 1 - leechers: - text: 1 - genre: - selector: span.badge.badge-secondary - filters: - - name: replace - args: ["non english", "non_english"] - - name: replace - args: ["music video", "music_video"] - - name: replace - args: ["Anime Time", "Anime_Time"] - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/anirena.yml b/config/prowlarr/Definitions/anirena.yml deleted file mode 100644 index e580e6d2..00000000 --- a/config/prowlarr/Definitions/anirena.yml +++ /dev/null @@ -1,87 +0,0 @@ ---- -id: aniRena -name: AniRena -description: "AniRena is a Public torrent tracker for the latest anime and Japanese related torrents" -language: en-US -type: public -encoding: UTF-8 -links: - - https://www.anirena.com/ - -settings: - - name: info_flaresolverr - type: info_flaresolverr - -caps: - categorymappings: - # Anime - - {id: 1, cat: TV/Anime, desc: "Raw Animes"} - - {id: 2, cat: TV/Anime, desc: "Anime"} - - {id: 3, cat: TV/Anime, desc: "Hentai"} - - {id: 4, cat: TV/Anime, desc: "Drama"} - - {id: 9, cat: TV/Anime, desc: "Anime Music Videos"} - - {id: 10, cat: TV/Anime, desc: "Non-English"} - # Software - - {id: 5, cat: PC/ISO, desc: "DVD/ISO"} - - {id: 6, cat: PC, desc: "Hentai-Game"} - # Literature - - {id: 7, cat: Books, desc: "Manga"} - # Audio - - {id: 8, cat: Audio, desc: "Audio"} - # Other - - {id: 11, cat: Other, desc: "Other"} - - modes: - search: [q] - tv-search: [q, season, ep] - music-search: [q] - book-search: [q] - -search: - paths: - - path: / - inputs: - s: "{{ .Keywords }}" - - rows: - selector: table tbody tr:has(td.torrents_small_type_data1) - - fields: - title: - selector: .torrents_small_info_data1 div - download: - selector: .torrents_small_info_data2 a[title="Download Torrent"] - attribute: href - magnet: - selector: .torrents_small_info_data2 a[title="Magnet Link"] - attribute: href - date: - text: now - size: - selector: .torrents_small_size_data1 - seeders: - selector: .torrents_small_seeders_data1 b big - leechers: - selector: .torrents_small_leechers_data1 b big - grabs: - selector: .torrents_small_downloads_data1 - category: - selector: .torrents_small_type_data1 img - attribute: src - case: - "[src=\"./styles/tracker/imageset/cat_raw_small.png\"]": 1 - "[src=\"./styles/tracker/imageset/cat_anime_small.png\"]": 2 - "[src=\"./styles/tracker/imageset/cat_hentai_small.png\"]": 3 - "[src=\"./styles/tracker/imageset/cat_drama_small.png\"]": 4 - "[src=\"./styles/tracker/imageset/cat_dvd_small.png\"]": 5 - "[src=\"./styles/tracker/imageset/cat_hgame2_small.png\"]": 6 - "[src=\"./styles/tracker/imageset/cat_manga_small.png\"]": 7 - "[src=\"./styles/tracker/imageset/cat_music_small.png\"]": 8 - "[src=\"./styles/tracker/imageset/cat_musicvid_small.png\"]": 9 - "[src=\"./styles/tracker/imageset/cat_noneng_small.png\"]": 10 - "[src=\"./styles/tracker/imageset/cat_other_small.png\"]": 11 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/anitoons.yml b/config/prowlarr/Definitions/anitoons.yml deleted file mode 100644 index ba1944fb..00000000 --- a/config/prowlarr/Definitions/anitoons.yml +++ /dev/null @@ -1,164 +0,0 @@ ---- -id: anitoons -name: AniToons -description: "AniToons is a BRAZILIAN Private Torrent Tracker for ANIME / CARTOONS" -language: pt-BR -type: private -encoding: UTF-8 -links: - - https://anitoons.xyz/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 6, cat: XXX, desc: "Adult"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your AniToons account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Ficção científica)", "Ficção_científica"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 5 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 -# json UNIT3D 7.0.3 diff --git a/config/prowlarr/Definitions/at12project.yml b/config/prowlarr/Definitions/at12project.yml deleted file mode 100644 index ebaaff6a..00000000 --- a/config/prowlarr/Definitions/at12project.yml +++ /dev/null @@ -1,168 +0,0 @@ ---- -id: at12project -name: AT-12 Project -description: "AT-12 Project is a Private Torrent Tracker for JAPANESE MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://at-12project.cc/ - -caps: - categorymappings: - - {id: 7, cat: Movies, desc: "MOVIE"} - - {id: 8, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your AT-12 Project account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - minimumratio: - text: 1.0 - title_filename: - selector: "files[0].name" - optional: true - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" -# json UNIT3D 8.0.1 diff --git a/config/prowlarr/Definitions/badasstorrents.yml b/config/prowlarr/Definitions/badasstorrents.yml deleted file mode 100644 index ae78d2f9..00000000 --- a/config/prowlarr/Definitions/badasstorrents.yml +++ /dev/null @@ -1,104 +0,0 @@ ---- -id: badasstorrents -name: Badass Torrents -description: "Badass Torrents is a Public torrent site for MOVIES / TV / GENERAL" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 5 -links: - - https://badasstorrents.com/ -legacylinks: - - https://badasstorrents.mrunblock.bond/ - - https://badasstorrents.nocensor.cloud/ - -caps: - categories: - Anime: TV/Anime - Apps: PC - Books: Books - Games: PC/Games - Movies: Movies - Music: Audio - Other: Other - TV: TV - XXX: XXX - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q, album, artist] - book-search: [q] - -settings: - - name: downloadlink - type: select - label: Download link - default: "magnet:?xt=" - options: - "/d/": ".torrent" - "magnet:?xt=": "magnet" - - name: downloadlink2 - type: select - label: Download link (fallback) - default: "/d/" - options: - "/d/": ".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. - -download: - selectors: - - selector: a[href*="{{ .Config.downloadlink }}"] - attribute: href - - selector: a[href*="{{ .Config.downloadlink2 }}"] - attribute: href - -search: - paths: - # search has 10 torrents per page, latest has 100 torrents per page. - - path: "{{ if .Keywords }}s/{{ .Keywords }}{{ else }}latest.html{{ end }}" - - path: "{{ if .Keywords }}s/{{ .Keywords }}&page=10{{ else }}{{ end }}" - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "-"] - - name: tolower - - rows: - selector: table.table-hover > tbody > tr - filters: - - name: andmatch - - fields: - category: - selector: a[href^="/c/"] - title: - selector: a[href*="/v/"] - details: - selector: a[href*="/v/"] - attribute: href - download: - selector: a[href*="/v/"] - attribute: href - date: - selector: td:nth-child(3) - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td:nth-child(4) - seeders: - selector: td:nth-child(5) - leechers: - selector: td:nth-child(6) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/beitai.yml b/config/prowlarr/Definitions/beitai.yml deleted file mode 100644 index 17bc233e..00000000 --- a/config/prowlarr/Definitions/beitai.yml +++ /dev/null @@ -1,171 +0,0 @@ ---- -id: beitai -name: BeiTai (备胎) -description: "BeiTai (备胎) is a CHINESE Private Torrent Tracker for HD MOVIES / TV" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://www.beitai.pt/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 402, cat: TV, desc: "TV Series/剧集"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 406, cat: Audio/Video, desc: "MusicVideo/音乐MV"} - - {id: 407, cat: TV/Sport, desc: "Sports/运体"} - - {id: 409, cat: Other, desc: "Misc/其他"} - - {id: 408, cat: Audio, desc: "HQ Audio/无损音乐"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
  1. Veteran User and above will be retained forever
  2. Elite User and above will not have their account deleted after parking (in the control panel)
  3. Users with a parked account will be deleted if they do not log in for 400 consecutive days
  4. Users with a non-parked account be deleted if they do not log in for 150 consecutive days
  5. Users with no traffic (ie, upload/download data are both 0) will be deleted if they do not log in for 100 consecutive days.
" - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - 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 .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ 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 (4 does not appear to work). - 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(table.torrentname) - - fields: - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - imdbid: - selector: div.imdb_100 > a - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td: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: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP Standard v1.5 Beta 4 diff --git a/config/prowlarr/Definitions/beyond-hd.yml b/config/prowlarr/Definitions/beyond-hd.yml deleted file mode 100644 index 4281bcde..00000000 --- a/config/prowlarr/Definitions/beyond-hd.yml +++ /dev/null @@ -1,133 +0,0 @@ ---- -id: beyond-hd -name: Beyond-HD -description: "Without BeyondHD, your HDTV is just a TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://beyond-hd.me/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: info_oid - type: info - label: "About 2FA" - default: "If you want to enable 2FA then use the Beyond-HD (API) indexer instead." - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login - method: form - form: form[action$="/login"] - captcha: - type: image - selector: img[src^="/captcha?_CAPTCHA"] - input: key - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: on - selectorinputs: - _token: - selector: input[name="_token"] - attribute: value - error: - - selector: form[action$="/login"] .text-red - - selector: script:contains("toastr.error") - message: - selector: script:contains("toastr.error") -# test: -# path: torrents - -search: - paths: - - path: torrents - inputs: - $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}" - search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - imdb: "{{ .Query.IMDBIDShort }}" - tmdb: "{{ .Query.TMDBID }}" - sorting: "{{ .Config.sort }}" - direction: "{{ .Config.type }}" - qty: 100 - - rows: - selector: div.table-torrents > table > tbody > tr[id^="torrentposter"] - - fields: - category: - selector: a[href*="/categories/"] - attribute: href - optional: true - default: 1 - filters: - - name: regexp - args: "/categories/.*?\\.(\\d+)" - title: - selector: a.torrent-name - details: - selector: a.torrent-name - attribute: href - download: - selector: a[href*="/download/"] - attribute: href - date: - selector: td:not(a[href$="/history"]) span.text-orange - filters: - - name: timeago - size: - selector: td span.text-blue - seeders: - selector: a[href$="/peers"] span.text-green - leechers: - selector: a[href$="/peers"] span.text-red - grabs: - selector: a[href$="/history"] - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - tmdbid: - selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] - attribute: href - downloadvolumefactor: - case: - i[data-original-title="100% Free"]: 0 - i[data-original-title="100% Free (Limited UL)"]: 0 - i[data-original-title="25% Promo"]: 0.75 - i[data-original-title="50% Promo"]: 0.5 - i[data-original-title="75% Promo"]: 0.25 - "*": 1 - uploadvolumefactor: - text: 1 -# UNIT3D (custom) diff --git a/config/prowlarr/Definitions/bithorlo.yml b/config/prowlarr/Definitions/bithorlo.yml deleted file mode 100644 index 4e16e7b4..00000000 --- a/config/prowlarr/Definitions/bithorlo.yml +++ /dev/null @@ -1,176 +0,0 @@ ---- -id: bithorlo -name: Bithorlo -description: "Bithorlo (BHO) is a HUNGARIAN Private Torrent Tracker for MOVIES / GENERAL" -language: hu-HU -type: private -encoding: UTF-8 -links: - - https://www.bithorlo.info/ - -caps: - categorymappings: - # E-book - - {id: 40, cat: Books, desc: "E-book/Eng"} - - {id: 19, cat: Books, desc: "E-book/Hun"} - # Játék - - {id: 38, cat: Console, desc: "Játék/Consol"} - - {id: 37, cat: PC/Games, desc: "Játék/Rip"} - - {id: 15, cat: PC/Games, desc: "Játék/ISO"} - # Filmek - - {id: 2, cat: Movies/DVD, desc: "DVD/Eng"} - - {id: 51, cat: Movies/SD, desc: "Cam/Eng"} - - {id: 50, cat: Movies/SD, desc: "Cam/Hun"} - - {id: 42, cat: Movies/DVD, desc: "Dvd9/Eng"} - - {id: 41, cat: Movies/DVD, desc: "Dvd9/Hun"} - - {id: 33, cat: TV, desc: "Sorozat/Eng"} - - {id: 29, cat: Movies/HD, desc: "HD/Eng"} - - {id: 28, cat: Movies/HD, desc: "HD/Hun"} - - {id: 52, cat: TV/HD, desc: "Sorozat/Eng/HD"} - - {id: 53, cat: TV/HD, desc: "Sorozat/Hun/HD"} - - {id: 1, cat: Movies/DVD, desc: "DVD/Hun"} - - {id: 5, cat: TV, desc: "Sorozat/Hun"} - - {id: 4, cat: Movies/SD, desc: "Xvid/Eng"} - - {id: 3, cat: Movies/SD, desc: "Xvid/Hun"} - # Zene - - {id: 13, cat: Audio, desc: "Zene/Hun"} - - {id: 12, cat: Audio, desc: "Zene/Eng"} - # Egyéb - - {id: 21, cat: PC/Mobile-Other, desc: "Mobil"} - - {id: 20, cat: Other, desc: "Képek"} - # Program - - {id: 54, cat: PC/0day, desc: "Win/Program/ISO"} - - {id: 23, cat: PC/0day, desc: "Win/Program/Rip"} - # Felnőtt tartalom - - {id: 10, cat: XXX, desc: "XXX/Kép"} - - {id: 9, cat: XXX, desc: "XXX/Film"} - - 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: useragent - type: text - label: User-Agent - - name: info_useragent - type: info_useragent - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sortBy - type: select - label: SortBy requested from site - default: 2 - options: - 2: created - 5: seeders - 3: size - 1: title - - name: orderBy - type: select - label: OrderBy requested from site - default: 0 - options: - 0: desc - 1: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Vacation mode is used to avoid deletion due to inactivity for 90 days. You can turn it on or off in the Profile menu, set the appropriate option and save your changes." - -login: - # using cookie method because login page has embedded Google reCAPTCHA - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index/ - selector: a[href="/logout/"] - -search: - paths: - # https://www.bithorlo.info/torrents/?action=search&categories[]=29&categories[]=4&search_text=&incldead=1&torrent_tags= - - path: torrents/ - inputs: - action: search - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - search_text: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - # 0 active, 1 incldead, 2 onlydead, 3 freeleech, 5 waiting for seed, 6 multiple upload - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - sort: "{{ .Config.sortBy }}" - order_by: "{{ .Config.orderBy }}" - - headers: - User-Agent: ["{{ .Config.useragent }}"] - - rows: - selector: table#torrenttable > tbody > tr - - fields: - category: - selector: td.fixed-width-category > a - attribute: href - filters: - - name: querystring - args: categories[] - title: - selector: a.torrent-name - details: - selector: a.torrent-name - attribute: href - download: - selector: a[href^="/download/"] - attribute: href - poster: - selector: span.custom-popover - attribute: data-bs-content - filters: - - name: regexp - args: \"(.+?)\" - date: - selector: span.bg-green - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td.fixed-width-size > a - grabs: - selector: td.fixed-width-completed - seeders: - selector: td.fixed-width-seeders - leechers: - selector: td.fixed-width-leechers - description: - case: - img[src="./themes/Born/nemlatta.png"]: Unverified - "*": Verified - downloadvolumefactor: - case: - "span:contains(\"FREE\")": 0 - "*": 1 - uploadvolumefactor: - case: - "span:contains(\"2x\")": 2 - "span:contains(\"3x\")": 3 - "span:contains(\"4x\")": 4 - "span:contains(\"5x\")": 5 - "span:contains(\"6x\")": 6 - "span:contains(\"7x\")": 7 - "span:contains(\"8x\")": 8 - "span:contains(\"9x\")": 9 - "*": 1 - minimumratio: - text: 1.0 -# engine n/a diff --git a/config/prowlarr/Definitions/bitsexy.yml b/config/prowlarr/Definitions/bitsexy.yml deleted file mode 100644 index 869f63d4..00000000 --- a/config/prowlarr/Definitions/bitsexy.yml +++ /dev/null @@ -1,186 +0,0 @@ ---- -id: bitsexy -name: BitSexy -description: "BitSexy is a Private Torrent Tracker for 3X" -language: en-US -type: private -encoding: UTF-8 -links: - - https://bitsexy.org/ - -caps: - categorymappings: - - {id: 33, cat: XXX, desc: "Amateur"} - - {id: 19, cat: XXX, desc: "Anal"} - - {id: 16, cat: XXX, desc: "Anime"} - - {id: 17, cat: XXX, desc: "Asian"} - - {id: 26, cat: XXX, desc: "BBW"} - - {id: 22, cat: XXX, desc: "BDSM"} - - {id: 18, cat: XXX, desc: "Big Tits"} - - {id: 43, cat: XXX, desc: "Black"} - - {id: 46, cat: XXX, desc: "Classic"} - - {id: 41, cat: XXX, desc: "Creampie"} - - {id: 28, cat: XXX, desc: "DVD-R"} - - {id: 21, cat: XXX, desc: "Ebony"} - - {id: 20, cat: XXX, desc: "Extreme"} - - {id: 44, cat: XXX, desc: "Feature"} - - {id: 31, cat: XXX, desc: "Fetish"} - - {id: 35, cat: XXX, desc: "Foreign"} - - {id: 53, cat: XXX, desc: "Gay"} - - {id: 30, cat: XXX, desc: "Gonzo"} - - {id: 51, cat: XXX, desc: "Handjob"} - - {id: 36, cat: XXX, desc: "Hardcore"} - - {id: 24, cat: XXX, desc: "Interracial"} - - {id: 37, cat: XXX, desc: "Latina"} - - {id: 25, cat: XXX, desc: "Lesbian"} - - {id: 52, cat: XXX, desc: "Magazines"} - - {id: 49, cat: XXX, desc: "Masturbation"} - - {id: 23, cat: XXX, desc: "Mature"} - - {id: 40, cat: XXX, desc: "MILF"} - - {id: 38, cat: XXX, desc: "Oral"} - - {id: 42, cat: XXX, desc: "Orgy"} - - {id: 29, cat: XXX, desc: "Other"} - - {id: 39, cat: XXX, desc: "Packs"} - - {id: 27, cat: XXX, desc: "PC Games"} - - {id: 15, cat: XXX, desc: "Pics"} - - {id: 48, cat: XXX, desc: "POV"} - - {id: 50, cat: XXX, desc: "Public"} - - {id: 14, cat: XXX, desc: "Reality"} - - {id: 47, cat: XXX, desc: "Shemale"} - - {id: 45, cat: XXX, desc: "Softcore"} - - {id: 55, cat: XXX, desc: "Solo"} - - {id: 54, cat: XXX, desc: "Squirt"} - - {id: 32, cat: XXX, desc: "Teens"} - - {id: 34, cat: XXX, desc: "Virtual"} - - modes: - search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img.cimage - input: captcha - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table.main:contains("failed") - test: - path: my.php - selector: a[href$="logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead, 3 freeleech, 4 480p, 5 720p, 6 1080p, 7 4k - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - keywordsfilters: - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: div.torrentrow:has(a[href^="download.php?torrent="]) - filters: - - name: andmatch - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?torrent="] - attribute: href - poster: - selector: a[onmouseover] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) width" - files: - selector: div.torrenttable:nth-last-child(7) - date_day: - # Today 02:40 PM - # Yesterday 09:10 AM - selector: div.torrenttable:nth-last-child(5):contains("day") - # auto adjusted by site account profile - optional: true - date_year: - # Jul 4 2019 08:04 AM - selector: div.torrenttable:nth-last-child(5):not(:contains("day")) - # auto adjusted by site account profile - optional: true - filters: - - name: dateparse - args: "MMM d yyyy hh:mm tt" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - size: - selector: div.torrenttable:nth-last-child(4) - grabs: - selector: div.torrenttable:nth-last-child(3) - seeders: - selector: div.torrenttable:nth-last-child(2) - leechers: - selector: div.torrenttable:nth-last-child(1) - downloadvolumefactor: - case: - img[src$="/pic/freeleech.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 1 days (as seconds = 1 x 24 x 60 x 60) - text: 86400 -# TBdev diff --git a/config/prowlarr/Definitions/bitspyder.yml b/config/prowlarr/Definitions/bitspyder.yml deleted file mode 100644 index 88212453..00000000 --- a/config/prowlarr/Definitions/bitspyder.yml +++ /dev/null @@ -1,182 +0,0 @@ ---- -id: bitspyder -name: Bitspyder -description: "Bitspyder is a Private site for Educational BOOKS / AUDIO" -language: en-US -type: private -encoding: iso-8859-1 -links: - - https://bitspyder.net/ -legacylinks: - - http://bitspyder.net/ - -caps: - categorymappings: - - {id: 61, cat: Books, desc: "3D"} - - {id: 69, cat: Books, desc: "Anim|GFX"} - - {id: 56, cat: Books, desc: "Art"} - - {id: 40, cat: Audio/Audiobook, desc: "Audio Books"} - - {id: 55, cat: Books, desc: "Business"} - - {id: 46, cat: Books, desc: "Career"} - - {id: 2, cat: Books, desc: "CBTs"} - - {id: 39, cat: Books, desc: "Cert QA"} - - {id: 63, cat: Books, desc: "College"} - - {id: 53, cat: Books, desc: "Cooking"} - - {id: 35, cat: Books, desc: "Developer"} - - {id: 42, cat: Books, desc: "Documentary"} - - {id: 37, cat: Books/EBook, desc: "e-Books"} - - {id: 65, cat: Books, desc: "Engineering"} - - {id: 45, cat: Books, desc: "Ethical hacking"} - - {id: 54, cat: Books, desc: "Health-Fitness"} - - {id: 64, cat: Books, desc: "Kids"} - - {id: 47, cat: Books, desc: "Languages"} - - {id: 49, cat: Books, desc: "Linux CBTs"} - - {id: 43, cat: Books, desc: "Lynda.com"} - - {id: 57, cat: Books/Mags, desc: "Magazines"} - - {id: 60, cat: Books, desc: "Medical"} - - {id: 44, cat: Books, desc: "Misc Learning"} - - {id: 51, cat: Books, desc: "Music Learning"} - - {id: 41, cat: Books, desc: "Others"} - - {id: 58, cat: Books, desc: "Packt"} - - {id: 52, cat: Books, desc: "Photography"} - - {id: 71, cat: Books, desc: "Pluralsight"} - - {id: 68, cat: Books, desc: "Self Growth"} - - {id: 72, cat: Books, desc: "Templates"} - - {id: 38, cat: Books, desc: "Udemy"} - - {id: 59, cat: Books, desc: "WEB | SocialMedia"} - - modes: - search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: sort - type: select - label: Sort requested from site - default: 8 - options: - 8: created - 6: seeders - 4: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: login.php - method: form - form: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: td.msg_info > font > b - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 title, 1 default - scope: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - keywordsfilters: - - name: re_replace - args: ["\\s+", " "] # More than 1 space to 1 space - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - name: trim - - rows: - selector: table > tbody > tr[class] - - fields: - # there are two styles, we support both - title: - selector: a[href^="details.php?id="] - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="details.php?id="] - attribute: href - filters: - - name: replace - args: ["details.php?id=", "download.php/"] - - name: replace - args: ["&hit=1", "/dummy.torrent"] - size: - selector: td.rowcol:nth-child(6):has(br), font:contains("Size:") + font - files: - selector: a[href*="&filelist=1"] - grabs: - selector: td.rowcol:nth-child(7):has(br), td.clear:nth-child(4) - seeders: - selector: td.rowcol:nth-last-child(3) - leechers: - selector: td.rowcol:nth-last-child(2) - date_added: - optional: true - selector: font[color="5F5F5F"] - filters: - - name: split - args: [" (", 0] - - name: replace - args: ["\xA0", " "] - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_upload: - optional: true - selector: a[title^="Upploaded at"] - attribute: title - filters: - - name: replace - args: ["Upploaded at - ", ""] - - name: replace - args: ["\xA0", " "] - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date: - text: "{{ if or .Result.date_upload .Result.date_added }}{{ or .Result.date_upload .Result.date_added }}{{ else }}now{{ end }}" - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 - description: - selector: font[color="#990000"] - minimumratio: - text: 1.0 -# custom v4 diff --git a/config/prowlarr/Definitions/bitstream.yml b/config/prowlarr/Definitions/bitstream.yml deleted file mode 100644 index 3ae5838e..00000000 --- a/config/prowlarr/Definitions/bitstream.yml +++ /dev/null @@ -1,180 +0,0 @@ ---- -id: bitstream-api -name: BitStream (API) -description: "BitStream is a SPANISH Private tracker for H.265 MOVIES / TV" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://bitstream.click/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your BitStream account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Not logging in for a month will result in the account being deactivated or banned. If an account does not register downloads in a month, it will be banned for users with the User rank. Other ranks will be given a timeframe determined by staff." - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }} Spanish" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" - minimumseedtime: - # 15 days (as seconds = 15 x 24 x 60 x 60) - text: 1296000 -# json UNIT3D 8.2.0 diff --git a/config/prowlarr/Definitions/bolly-api.yml b/config/prowlarr/Definitions/bolly-api.yml deleted file mode 100644 index 8f597a6f..00000000 --- a/config/prowlarr/Definitions/bolly-api.yml +++ /dev/null @@ -1,177 +0,0 @@ ---- -id: bolly-api -name: Bolly (API) -description: "Bolly (Telly) is an INDIAN Private Tracker for MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://bolly.wtf/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movie"} - - {id: 2, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your Bolly account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" -# json UNIT3D 8.2.0 diff --git a/config/prowlarr/Definitions/broadcity.yml b/config/prowlarr/Definitions/broadcity.yml deleted file mode 100644 index 85123870..00000000 --- a/config/prowlarr/Definitions/broadcity.yml +++ /dev/null @@ -1,139 +0,0 @@ ---- -id: broadcity -name: BroadCity -description: "BroadCity is a TURKISH Private Torrent Tracker for MOVIES and TV" -language: tr-TR -type: private -encoding: UTF-8 -links: - - https://broadcity.in/ # site is forcing to https -legacylinks: - - http://broadcity.in/ - -caps: - categorymappings: - - {id: 1, cat: Movies/UHD, desc: "UHD"} - - {id: 2, cat: Movies/UHD, desc: "UHD - BluRay"} - - {id: 8, cat: Movies/UHD, desc: "UHD - TV"} - - {id: 6, cat: Movies/WEB-DL, desc: "UHD - WEB-DL"} - - {id: 16, cat: Movies/UHD, desc: "UHD - WEBRip"} - - {id: 31, cat: Movies/BluRay, desc: "BluRay Disk"} - - {id: 3, cat: Movies/HD, desc: "HD"} - - {id: 25, cat: Movies/3D, desc: "HD - 3D"} - - {id: 4, cat: Movies/HD, desc: "HD - BluRay"} - - {id: 7, cat: Movies/HD, desc: "HD - TV"} - - {id: 5, cat: Movies/WEB-DL, desc: "HD - WEB-DL"} - - {id: 14, cat: Movies/HD, desc: "HD - WEBRip"} - - {id: 40, cat: Movies/HD, desc: "PTer"} - - {id: 9, cat: Movies/SD, desc: "SD"} - - {id: 23, cat: Movies/SD, desc: "SD - BluRay"} - - {id: 10, cat: Movies/DVD, desc: "SD - DVD"} - - {id: 36, cat: Movies/SD, desc: "SD - DVDRip"} - - {id: 12, cat: Movies/SD, desc: "SD - TV"} - - {id: 13, cat: Movies/WEB-DL, desc: "SD - WEB-DL"} - - {id: 15, cat: Movies/SD, desc: "SD - WEBRip"} - - {id: 17, cat: TV, desc: "TV"} - - {id: 26, cat: TV/Other, desc: "TV - TV Program"} - - {id: 19, cat: TV, desc: "TV - Yabanci Dizi"} - - {id: 18, cat: TV, desc: "TV - Yerli Dizi"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: cookie - type: text - label: Cookie - - name: info - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -download: - before: - path: takethanks.php - method: post - inputs: - torrentid: "{{ .DownloadUri.Query.id }}" - selectors: - - selector: a[href*="download.php?id="] - attribute: href - -search: - paths: - - path: browse.php - inputs: - # does not support multi categories so defaulting to ALL - do: search - keywords: "{{ .Keywords }}" - category: 0 - search_type: t_name - include_dead_torrents: yes - - rows: - selector: "table#sortabletable tbody tr:has(div[id^=\"port-target-\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: div[id^="port-target-"] a - details: - selector: div[id^="port-target-"] a - attribute: href - download: - selector: div[id^="port-target-"] a - attribute: href - poster: - selector: div[id^="port-content-"] img - attribute: src - date: - selector: td:nth-child(2) - filters: - - name: regexp - args: (\d{2}-\d{2}-\d{4} \d{2}:\d{2}) - - name: append - args: " +03:00" # TRT - - name: dateparse - args: "dd-MM-yyyy HH:mm zzz" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - minimumratio: - text: 0.5 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# TS Special Edition v.7.5 diff --git a/config/prowlarr/Definitions/brsociety-api.yml b/config/prowlarr/Definitions/brsociety-api.yml deleted file mode 100644 index 4c92bda6..00000000 --- a/config/prowlarr/Definitions/brsociety-api.yml +++ /dev/null @@ -1,149 +0,0 @@ ---- -id: brsociety-api -name: BrSociety (API) -description: "BrSociety (SemeandoCC) is a BRAZILIAN Private Torrent Tracker for E-LEARNING" -language: pt-BR -type: private -encoding: UTF-8 -links: - - https://brsociety.club/ - -caps: - categorymappings: - - {id: 1, cat: Other, desc: "Cursos"} - - {id: 2, cat: Books/EBook, desc: "eBooks"} - - {id: 5, cat: Books/Mags, desc: "Revistas"} - - {id: 3, cat: Audio/Audiobook, desc: "Audiobooks"} - - {id: 4, cat: Other, desc: "Arquivos de Auxilio"} - - {id: 6, cat: Other, desc: "Graduação"} - - {id: 7, cat: TV/Documentary, desc: "Documentários"} - - modes: - search: [q] - tv-search: [q, season, ep] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your BrSociety account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Your account will be considered inactive if it exceeds 90 days without you logging in to the Website. After 90 days of inactivity (i.e., 180 days without login) it will be deleted from the tracker." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - magnet: - selector: magnet_link - optional: true - infohash: - selector: info_hash - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.7 but torrents must be seeded for 4 days regardless of ratio -# minimumratio: -# text: 0.7 - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# json UNIT3D 7.1.3 (custom) diff --git a/config/prowlarr/Definitions/btmet.yml b/config/prowlarr/Definitions/btmet.yml deleted file mode 100644 index 9c496dd6..00000000 --- a/config/prowlarr/Definitions/btmet.yml +++ /dev/null @@ -1,104 +0,0 @@ ---- -id: btmet -name: BTMET -description: "BTMET is a Public magnet indexer" -language: en-US -type: public -encoding: UTF-8 -links: - - https://btmet.com/ - -caps: - categories: - Audio: Audio - Compressed: Other - Document: Books - Image: Other - Installation: PC - Other: Other - TV: TV # dummy cat to allow both Movies,TV to be categorised when Video is found. - Video: Movies - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: 0 - options: - 0: relevance - 1: created - 2: size - - name: info_flaresolverr - type: info_flaresolverr - -search: - paths: - # https://btmet.com/search.php?q=2022&c=&l=&o=1 - - path: search.php - inputs: - q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - o: "{{ if .Keywords }}{{ .Config.sort }}{{ else }}1{{ end }}" - - rows: - selector: div.search-item:has(a[href^="magnet"]) - filters: - - name: andmatch - - fields: - category: - selector: div.item-bar > span[class="cpill blue-pill"] - category|append: - # add tv to video - optional: true - selector: div.item-bar > span[class="cpill blue-pill"] - filters: - - name: replace - args: ["Video", "TV"] - title: - selector: a.smashTitle > script:contains("decodeURIComponent") - filters: - - name: urldecode - - name: replace - args: ['document.write(decodeURIComponent("', ""] - - name: replace - args: ['"));', ""] - - name: replace - args: ["", ""] - - name: replace - args: ["", ""] - - name: htmldecode - details: - selector: a.smashTitle - attribute: href - infohash: - selector: a[href^="magnet:?xt="] - attribute: href - filters: - - name: regexp - args: ([a-f|0-9]{40}) - date: - # unix - selector: div.item-bar > span:nth-child(2) > b - attribute: t - filters: - - name: regexp - args: (\d{10}) - size: - selector: div.item-bar > span:nth-child(3) > b - files: - selector: div.item-bar > span:nth-child(4) > b - seeders: - selector: div.item-bar > span:nth-child(5) > b - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/btsate.yml b/config/prowlarr/Definitions/btsate.yml deleted file mode 100644 index 43ca4eb3..00000000 --- a/config/prowlarr/Definitions/btsate.yml +++ /dev/null @@ -1,70 +0,0 @@ ---- -id: btsate -name: btsate -description: "btsate is a Public BitTorrent DHT search engine." -language: en-US -type: public -encoding: UTF-8 -links: - - https://btstate.com/ - -caps: - categories: - Other: Other - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_category_8000 - type: info_category_8000 - -search: - paths: - # https://btstate.com/api/searchByKeyword/2025?take=100&skip=0&page=1&pageSize=100 - - path: "api/searchByKeyword/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - response: - type: json - - inputs: - take: 100 - skip: 0 - page: 1 - pageSize: 100 - - rows: - selector: items - attribute: _source - filters: - - name: andmatch - - fields: - category: - text: Other - title: - selector: name - details: - text: "{{ .Config.sitelink }}" - infohash: - selector: infohash - date: - # unix - selector: createTime - filters: - - name: regexp - args: ^(\d{10}) - size: - selector: size - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# json api diff --git a/config/prowlarr/Definitions/btsow.yml b/config/prowlarr/Definitions/btsow.yml deleted file mode 100644 index 7b8f8b8d..00000000 --- a/config/prowlarr/Definitions/btsow.yml +++ /dev/null @@ -1,88 +0,0 @@ ---- -id: btsow -name: BTSOW -description: "BTSOW is a Public torrent indexer" -language: en-US -type: public -encoding: UTF-8 -# use https://tellme.pw/btsow to find the new domain -links: - - https://btsow.lol/ -legacylinks: - - https://btsow.cfd/ - - https://btsow.sbs/ - - https://btsow.quest/ - - https://btsow.autos/ - - https://btsow.beauty/ - - https://btsow.mom/ - - https://btsow.boats/ - - https://btsow.hair/ - - https://btsow.bond/ - - https://btsow.skin/ - - https://btsow.makeup/ - - https://btsow.homes/ - - https://btsow.yachts/ - - https://btsow.motorcycles/ - - https://btsow.pics/ - -caps: - categories: - Other: Other - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_category_8000 - type: info_category_8000 - -download: - selectors: - - selector: a#magnetOpen - attribute: href - -search: - paths: - - path: "search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - - headers: - # site blocks Jackett's User-Agents, so slightly alter it here (e.g. Safari/537.36 > Safari/537.35) - User-Agent: ["Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.35"] - - rows: - selector: div.row:has(a[href*="/detail/hash/"]) - - fields: - category: - text: Other - title: - selector: a[href*="/detail/hash/"] - attribute: title - details: - selector: a[href*="/detail/hash/"] - attribute: href - download: - selector: a[href*="/detail/hash/"] - attribute: href - date: - selector: div.date - filters: - - name: append - args: " -00:00" # GMT - - name: dateparse - args: "yyyy-MM-dd zzz" - size: - selector: div.size - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/cartoonchaos.yml b/config/prowlarr/Definitions/cartoonchaos.yml deleted file mode 100644 index 6c2a6b7e..00000000 --- a/config/prowlarr/Definitions/cartoonchaos.yml +++ /dev/null @@ -1,196 +0,0 @@ ---- -id: cartoonchaos -name: CartoonChaos -description: "CartoonChaos (CC) is a Private Torrent Tracker for ANIMATED MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - http://www.cartoonchaos.org/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID - -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: "Only the xBtit_Default style is supported with this indexer.
For best results, increase the torrents number in your profile to 100.
Default is 15." - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - -caps: - categorymappings: - - {id: 30, cat: TV, desc: "Complete Sets"} - - {id: 15, cat: TV, desc: "Educational"} - - {id: 16, cat: TV, desc: "Kids"} - - {id: 17, cat: TV, desc: "Mature Cartoons"} - - {id: 41, cat: TV, desc: "Shorts"} - - {id: 20, cat: TV/Anime, desc: "Anime Movies"} - - {id: 21, cat: TV/Anime, desc: "Anime Series"} - - {id: 26, cat: Movies, desc: "Animated Movies"} - - {id: 23, cat: Audio, desc: "Sound Tracks"} - - {id: 24, cat: Audio, desc: "Theme Tunes"} - - {id: 43, cat: Audio/Other, desc: "Misc Audio"} - - {id: 14, cat: TV, desc: "Banned"} - - {id: 29, cat: TV, desc: "Public Domain"} - - {id: 42, cat: TV/Foreign, desc: "Foreign Language"} - - {id: 28, cat: TV, desc: "Animated Adverts"} - - {id: 45, cat: TV/Documentary, desc: "Documentaries"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - -login: - path: index.php?page=login - method: form - form: form[action^="index.php?page=login"] - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # http://www.cartoonchaos.org/index.php?page=torrents&search=transformers&category=30;21;20;26;15;16;17&options=0&active=0 - - path: index.php - keywordsfilters: - # if searching for season packs switch S01 to season 1 #11775 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "season $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "season $2"] - inputs: - page: torrents - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}" - # 0=title, 1=title&descr, 2=descr - options: "{{ if .Query.IMDBID }}2{{ else }}0{{ end }}" - # 0 all, 1 activeonly, 2 deadonly - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - - rows: - selector: "table.lista tr td table.lista tr:has(a[href^=\"index.php?page=torrent-details\"]):not(:has(a[href=\"index.php?page=torrents&category=0\"])){{ if .Config.freeleech }}:has(img[src=\"gold/gold.gif\"]){{ else }}{{ end }}" - - fields: - title_torrent: - selector: a[href^="download.php?id="] - attribute: href - filters: - - name: querystring - args: f - - name: htmldecode - - name: re_replace - args: ["(?i)\\.torrent$", ""] - title_text: - selector: td a[href^="index.php?page=torrent-details"] - category: - selector: td a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}" - filters: - # #11775 - - name: re_replace # Seasons X-Y --> S0X-S0Y - args: ["(?i)\\bSeasons?[-.\\s]*(\\d)[-.\\s]*(?:-|to)[-.\\s]*(\\d)\\b", "S0$1-S0$2"] - - name: re_replace # Seasons X-YY --> S0X-SYY - args: ["(?i)\\bSeasons?[-.\\s]*(\\d)[-.\\s]*(?:-|to)[-.\\s]*(\\d+)\\b", "S0$1-S$2"] - - name: re_replace # Seasons XX-YY --> SXX-SYY - args: ["(?i)\\bSeasons?[-.\\s]*(\\d+)[-.\\s]*(?:-|to)[-.\\s]*(\\d+)\\b", "S$1-S$2"] - - name: re_replace # Season X --> S0X - args: ["(?i)\\bSeasons?[-.\\s]*(\\d)\\b", "S0$1"] - - name: re_replace # Season XX --> SXX - args: ["(?i)\\bSeasons?[-.\\s]*(\\d+)\\b", "S$1"] - details: - selector: td a[href^="index.php?page=torrent-details"] - attribute: href - download: - selector: td a[href^="download.php"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - filters: - # http://anonym.to?javascript:popdetails('http://www.imdb.com/title/tt0086817'); - - name: regexp - args: tt(\d+) - poster: - selector: td a[href^="index.php?page=torrent-details"]:not(a[onmouseover*="torrentimg/nocover.jpg"]) - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - size: - selector: td:nth-child(10) - # two flavours of dates - date_day: - # Yesterday at 10:03:30 PM - selector: td:nth-child(5):contains("day") - # auto adjusted by site account profile - optional: true - filters: - - name: re_replace - args: ["[ ]at|[//\xa0\\s,]+", " "] - date_year: - # February 09, 2019, 06:35:08 AM - selector: td:nth-child(5):not(:contains("day")) - # auto adjusted by site account profile - optional: true - filters: - - name: re_replace - args: ["[//\xa0\\s,]+", " "] - - name: dateparse - args: "MMMM dd yyyy hh:mm:ss tt" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img[src="gold/gold.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 7 day (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# xbtit 2.0.0 diff --git a/config/prowlarr/Definitions/centraltorrent.yml b/config/prowlarr/Definitions/centraltorrent.yml deleted file mode 100644 index e74f8ffa..00000000 --- a/config/prowlarr/Definitions/centraltorrent.yml +++ /dev/null @@ -1,163 +0,0 @@ ---- -id: centraltorrent -name: Central Torrent -description: "Central Torrent is a POLISH Private Torrent Tracker for MOVIES / MUSIC" -language: pl-PL -type: private -encoding: ISO-8859-2 -links: - - http://central-torrent.eu/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID - -caps: - categorymappings: - - {id: 23, cat: TV/Anime, desc: "Animowane"} - - {id: 1, cat: PC, desc: "Aplikacje"} - - {id: 26, cat: Movies, desc: "Dzieci/Bajki"} - - {id: 29, cat: Books/EBook, desc: "E-books"} - - {id: 20, cat: Movies/SD, desc: "Filmy/DVD"} - - {id: 22, cat: Movies/SD, desc: "Filmy/RMVB"} - - {id: 35, cat: Movies/UHD, desc: "Filmy/UHD"} - - {id: 24, cat: Movies/HD, desc: "Filmy/x264"} - - {id: 36, cat: Movies/HD, desc: "Filmy/x265"} - - {id: 19, cat: Movies/SD, desc: "Filmy/XviD"} - - {id: 21, cat: Movies/SD, desc: "Filmy/XviD PL"} - - {id: 12, cat: PC/Games, desc: "Gry"} - - {id: 17, cat: PC/Games, desc: "Gry/Konsole"} - - {id: 4, cat: PC/Games, desc: "Gry/PC ISO"} - - {id: 28, cat: Other, desc: "GSM/PDA"} - - {id: 32, cat: Movies/BluRay, desc: "HD/Blu-ray"} - - {id: 31, cat: Audio/Lossless, desc: "Music/Lossless"} - - {id: 6, cat: Audio, desc: "Muzyka"} - - {id: 30, cat: Other, desc: "Rozne"} - - {id: 25, cat: TV/Sport, desc: "Sport"} - - {id: 27, cat: Audio/Video, desc: "Teledyski"} - - {id: 7, cat: TV, desc: "TV/Seriale"} - - {id: 9, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "User accounts of the Power User class and lower, inactive for a period longer than 42 days, are deleted. Therefore, if for some reason you cannot access Central Torrent for some time, park your account. Although you won't be able to download torrents, you can be sure that you won't have to log in for 64 days. However, if after this time you do not log in to your account, it will be deleted." - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - captcha: - type: image - selector: img.cimage - input: captcha - error: - - selector: td.embedded:has(h2:contains("failed")) - - selector: td.embedded:has(h2:contains("Error")) - - selector: form[action="takelogin.php"] - message: - text: "Login page detected at {{ .Config.sitelink }}." - test: - path: index.php - selector: a[href="/my.php"] - -download: - selectors: - - selector: a[href^="download.php/"] - attribute: href - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 all, 2 dead, 3 freeleech - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - # 0 all, 1 polish, 2 non-polish - polish: 0 - # 0 name - blah: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - rows: - selector: table[onMouseover] > tbody > tr:has(a[href^="details.php?id="]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="details.php?id="] - attribute: href - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(5) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss" - size: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - seeders: - selector: td:nth-child(9) - leechers: - selector: td:nth-child(10) - downloadvolumefactor: - case: - img[src="pic/freedownload.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# tbsource diff --git a/config/prowlarr/Definitions/cheggit.yml b/config/prowlarr/Definitions/cheggit.yml deleted file mode 100644 index dca75cc8..00000000 --- a/config/prowlarr/Definitions/cheggit.yml +++ /dev/null @@ -1,165 +0,0 @@ ---- -id: cheggit -name: cheggit -description: "cheggit is a Private site for 3X" -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.cheggit.me/ - -caps: - categorymappings: - - {id: 1, cat: XXX, desc: "Amateur"} - - {id: 2, cat: XXX, desc: "Anal"} - - {id: 5, cat: XXX, desc: "Asian"} - - {id: 6, cat: XXX, desc: "BBW"} - - {id: 30, cat: XXX, desc: "BDSM"} - - {id: 36, cat: XXX, desc: "Big Ass"} - - {id: 8, cat: XXX, desc: "Big Tits"} - - {id: 7, cat: XXX, desc: "Black"} - - {id: 9, cat: XXX, desc: "Classic"} - - {id: 37, cat: XXX, desc: "Creampie"} - - {id: 10, cat: XXX, desc: "Cumshot"} - - {id: 11, cat: XXX, desc: "DVD-R"} - - {id: 12, cat: XXX, desc: "Fetish"} - - {id: 14, cat: XXX, desc: "Gang Bang / Orgy"} - - {id: 39, cat: XXX, desc: "Gay / Bi"} - - {id: 56, cat: XXX, desc: "Hairy"} - - {id: 35, cat: XXX, desc: "Hardcore"} - - {id: 44, cat: XXX, desc: "HD Porn"} - - {id: 3, cat: XXX, desc: "Hentai / 3D"} - - {id: 25, cat: XXX, desc: "Homemade"} - - {id: 43, cat: XXX, desc: "Interracial"} - - {id: 16, cat: XXX, desc: "Latina"} - - {id: 23, cat: XXX, desc: "Lesbian"} - - {id: 52, cat: XXX, desc: "Lingerie"} - - {id: 27, cat: XXX, desc: "Magazines"} - - {id: 53, cat: XXX, desc: "Manga / Comic"} - - {id: 18, cat: XXX, desc: "Masturbation"} - - {id: 26, cat: XXX, desc: "Mature"} - - {id: 40, cat: XXX, desc: "Megapack"} - - {id: 41, cat: XXX, desc: "Natural Tits"} - - {id: 17, cat: XXX, desc: "Oral"} - - {id: 29, cat: XXX, desc: "Other"} - - {id: 47, cat: XXX, desc: "Parody"} - - {id: 21, cat: XXX, desc: "Pictures / Images"} - - {id: 50, cat: XXX, desc: "Piss"} - - {id: 55, cat: XXX, desc: "Porn Music Videos"} - - {id: 46, cat: XXX, desc: "Pregnant / Preggo"} - - {id: 15, cat: XXX, desc: "Shemale / TS"} - - {id: 22, cat: XXX, desc: "Siterip"} - - {id: 20, cat: XXX, desc: "Softcore"} - - {id: 49, cat: XXX, desc: "Squirt"} - - {id: 34, cat: XXX, desc: "Straight"} - - {id: 19, cat: XXX, desc: "Teen"} - - {id: 45, cat: XXX, desc: "Voyeur"} - - {id: 13, cat: PC/Games, desc: "XXX Games / Apps"} - - modes: - search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: time - options: - time: created - seeders: seeders - size: size - - 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 Torrents per page: setting to 100 on your account profile. - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - keeplogged: 1 - error: - - selector: span.warning:contains(" was incorrect.") - test: - path: index.php - selector: a[href^="logout.php?auth="] - -search: - paths: - # https://www.cheggit.me/torrents.php?filter_cat[1]=1&order_by=time&order_way=desc&filter_freeleech=1&searchtext=&search_type=0&taglist=&tags_type=0 - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - searchtext: "{{ .Keywords }}" - # 0=any, 1=all - search_type: 1 - - rows: - selector: table#torrent_table > tbody > tr:not(tr.colhead) - - fields: - category: - selector: a[href^="torrents.php?filter_cat"] - attribute: href - filters: - - name: regexp - args: \[(\d+)\] - title: - selector: a[href^="torrents.php?id="] - details: - selector: a[href^="torrents.php?id="] - attribute: href - download: - selector: a[href^="torrents.php?action=download"] - attribute: href - description: - selector: div.tags - files: - selector: td:nth-child(3) - date: - selector: span.time - attribute: title - filters: - - name: append - args: " +00:00" # auto adjusted by site account profile - - name: dateparse - args: "MMM dd yyyy, HH:mm zzz" - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.51 -# engine n/a diff --git a/config/prowlarr/Definitions/chilebt.yml b/config/prowlarr/Definitions/chilebt.yml deleted file mode 100644 index dfabb6b2..00000000 --- a/config/prowlarr/Definitions/chilebt.yml +++ /dev/null @@ -1,211 +0,0 @@ ---- -id: chilebt -name: ChileBT -description: "ChileBT is a CHILEAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: es-CL -type: private -encoding: UTF-8 -links: - - https://chilebt.com/ - -caps: - categorymappings: - - {id: 10, cat: Movies, desc: "Movies"} - - {id: 11, cat: TV, desc: "TV"} - - {id: 9, cat: Audio, desc: "Music"} - - {id: 7, cat: Other, desc: "Cultura / Educativos"} - - {id: 8, cat: PC/Games, desc: "Juegos"} - - {id: 6, cat: Books, desc: "EBook"} - - {id: 4, cat: TV/Anime, desc: "Anime"} - - {id: 5, cat: PC/0day, desc: "Aplicaciones / Programas"} - - {id: 14, cat: Movies, desc: "Infantil"} - - {id: 12, cat: Other/Misc, desc: "VIP"} - - {id: 13, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login - method: form - form: form[action$="/login"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: on - selectorinputs: - _token: - selector: input[name="_token"] - attribute: value - error: - - selector: script[nonce]:contains("Error") - message: - selector: script[nonce]:contains("Error") -# test: -# path: / -# selector: a[href$="/logout"] - -search: - paths: - - path: filterTorrents - inputs: - $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}" - search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - imdb: "{{ .Query.IMDBIDShort }}" - tvdb: "{{ .Query.TVDBID }}" - tmdb: "{{ .Query.TMDBID }}" - sorting: "{{ .Config.sort }}" - direction: "{{ .Config.type }}" - qty: 50 - page: 0 - view: list - freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - # can search by genre but need range support. &genres[]=Action&genres[]=Comedy for Action and Comedy - - rows: - selector: table > tbody > tr - - fields: - category: - selector: a[href*="/categories/"] - attribute: href - filters: - - name: regexp - args: "/categories/.*?\\.(\\d+)" - title: - selector: a.view-torrent - download: - selector: a[href*="/download/"] - attribute: href - details: - selector: a.view-torrent - attribute: href - poster: - selector: div.torrent-poster img - attribute: src - filters: - - name: prepend - args: "https://images.weserv.nl/?url=" # for display on dashboard - - name: append - args: "&w=180&h=270" # for display on dashboard - - name: replace - args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""] - genre: - selector: td:nth-last-child(6) - filters: - - name: replace - args: ["\n", ""] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: validate - args: "Action, Adventure, Animation, Biography, Comedy, Crime, Documentary, Drama, Family, Fantasy, Game-Show, History, Horror, Music, Musical, Mystery, News, Reality-TV, Romance, Science_Fiction, Sitcom, Sport, Talk-Show, Thriller, War, Western" - description: - text: "{{ .Result.genre }}" - size: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - grabs: - selector: td:nth-last-child(1) - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - tmdbid: - selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] - attribute: href - date: - selector: time - filters: - # translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish - - name: re_replace - args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"] - - name: re_replace - args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"] - - name: re_replace - args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"] - - name: re_replace - args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"] - - name: re_replace - args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"] - - name: re_replace - args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"] - - name: re_replace - args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"] - - name: re_replace - args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"] - - name: re_replace - args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"] - - name: re_replace - args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"] - - name: re_replace - args: ["(?i) (ay)", "month"] - - name: re_replace - args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"] - - name: re_replace - args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"] - - name: re_replace - args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"] - - name: re_replace - args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"] - - name: re_replace - args: ["(?i) (an)", "year"] - - name: re_replace - args: ["(?i)(För |und)", ""] # Misc removals - - name: timeago - downloadvolumefactor: - case: - i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From BON Store - i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups - i[class*="fa-star text-bold"]: 0 # Freeleech From Token - i[class*="fa-coins text-bold"]: 0 # Freeleech From Token - i[class*="fa-globe text-blue"]: 0 # Global Freeleech - i[class*="fa-star text-gold"]: 0 # Freeleech - i[class*="fa-certificate text-pink"]: 0 # Featured Torrent - "*": 1 - uploadvolumefactor: - case: - i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload - i[class*="fa-globe text-green"]: 2 # Global Double Upload - i[class*="fa-certificate text-pink"]: 2 # Featured Torrent - "*": 1 -# global MR is 0.5 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.5 - minimumseedtime: - # 7 day (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# UNIT3D 1.9.3 diff --git a/config/prowlarr/Definitions/classix.yml b/config/prowlarr/Definitions/classix.yml deleted file mode 100644 index 893abb62..00000000 --- a/config/prowlarr/Definitions/classix.yml +++ /dev/null @@ -1,186 +0,0 @@ ---- -id: classix -name: Classix -description: "Classix is a Private Torrent Tracker for classic MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - http://classix-unlimited.co.uk/ # site does not support https ERR_CONNECTION_CLOSED - -caps: - categorymappings: - - {id: 59, cat: PC/0day, desc: "Apps: Movies: Misc"} - - {id: 55, cat: PC/0day, desc: "Apps: Graphics Editing GNU/Linux"} - - {id: 53, cat: PC/0day, desc: "Apps: Apps DVD/Blu-Ray Copy Mac"} - - {id: 57, cat: PC/0day, desc: "Apps: DVD/Blu-Ray Copy GNU/Linux"} - - {id: 51, cat: PC/0day, desc: "Apps: Graphics Editing Mac"} - - {id: 58, cat: PC/0day, desc: "Apps: Music Editing & Recording GNU/"} - - {id: 52, cat: PC/0day, desc: "Apps: Apps DVD Editing Mac"} - - {id: 56, cat: PC/0day, desc: "Apps: DVD Editing GNU/Linux"} - - {id: 54, cat: PC/0day, desc: "Apps: Music Editing & Recording Mac"} - - {id: 18, cat: PC/0day, desc: "Apps: Graphics Editing PC"} - - {id: 19, cat: PC/0day, desc: "Apps: DVD Editing PC"} - - {id: 20, cat: PC/0day, desc: "Apps: DVD/Blu-Ray Copying PC"} - - {id: 21, cat: PC/0day, desc: "Apps: Music Editing & Recording PC"} - - {id: 66, cat: Other, desc: "grumpyman: pending torrents"} - - {id: 67, cat: Books/EBook, desc: "Media: pdf"} - - {id: 49, cat: Movies/HD, desc: "Movies: HD-Compressed Or Stripped"} - - {id: 47, cat: Movies/Other, desc: "Movies: Covers & Artwork"} - - {id: 48, cat: Movies/SD, desc: "Movies: DVD-Compressed Or Stripped"} - - {id: 1, cat: Movies/DVD, desc: "Movies: DVD-Untouched"} - - {id: 50, cat: Movies, desc: "Movies: Made For TV"} - - {id: 2, cat: Movies/SD, desc: "Movies: Divx/Xvid/Avi"} - - {id: 60, cat: Movies/HD, desc: "Movies: HD-mkv/mts"} - - {id: 65, cat: Movies/Foreign, desc: "Movies: Movies - w/additional lang/sub"} - - {id: 42, cat: Movies/HD, desc: "Movies: HD-Untouched"} - - {id: 3, cat: Movies/SD, desc: "Movies: SVCD/VCD"} - - {id: 71, cat: Movies/UHD, desc: "Movies: 4K-Untouched"} - - {id: 4, cat: Movies/Other, desc: "Movies: Other"} - - {id: 22, cat: Audio/MP3, desc: "Music: MP3"} - - {id: 23, cat: Audio/Lossless, desc: "Music: Lossless"} - - {id: 24, cat: Audio/Video, desc: "Music: DVD"} - - {id: 70, cat: Audio/Video, desc: "Music: HD"} - - {id: 25, cat: Audio/Video, desc: "Music: Video"} - - {id: 27, cat: Audio/Other, desc: "Music: Other"} - - {id: 63, cat: Other, desc: "Other: Educational/Instructional"} - - {id: 61, cat: Books/EBook, desc: "Other: Related Material"} - - {id: 37, cat: Other, desc: "Other: Images"} - - {id: 62, cat: TV, desc: "TV: Mini-Series"} - - {id: 64, cat: TV/Other, desc: "TV: Covers & Art Work"} - - {id: 69, cat: TV/SD, desc: "TV: Series - Compressed"} - - {id: 5, cat: TV/SD, desc: "TV: Series: DVD"} - - {id: 73, cat: TV/HD, desc: "TV: Complete Series HD"} - - {id: 72, cat: TV/SD, desc: "TV: Complete Series DVD"} - - {id: 41, cat: TV/HD, desc: "TV: Series: HD"} - - {id: 74, cat: TV, desc: "TV: Series Compilation: DVD or HD"} - - {id: 6, cat: TV/SD, desc: "TV: Divx/Xvid/AVI"} - - {id: 7, cat: TV/SD, desc: "TV: SVCD/VCD"} - - {id: 68, cat: TV, desc: "TV: .mkv"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: info_free - type: info - label: About Freeleech at Classix - default: This appears to only be uploads by the admin grumpyman57. - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.myContent:contains("Access Denied") - test: - path: index.php - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - inputs: -# category search returns results from unrelated categories -# $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - cat: 0 - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 notfree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 all, 1 english, etc - lang: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # does not support imdbid search and does not return imdb link in results - - keywordsfilters: - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: table > tbody > tr:has(a[href^="torrents.php?cat="]) - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="torrents-details.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.+?)>" - date: - selector: a[href^="torrents-details.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: "Date Added: (\\d{2}-\\d{2}-\\d{4})
" - - name: dateparse - args: "MM-dd-yyyy" - size: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - genre: - selector: a[href^="torrents.php?gen="] - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - # returned results not marked as freeleech - text: "{{ if .Config.freeleech }}0{{ else }}1{{ end }}" - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 2 day (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# engine TorrentTrader v2-svn diff --git a/config/prowlarr/Definitions/cpabien.yml b/config/prowlarr/Definitions/cpabien.yml deleted file mode 100644 index 1c9339f5..00000000 --- a/config/prowlarr/Definitions/cpabien.yml +++ /dev/null @@ -1,153 +0,0 @@ ---- -id: cpasbien -name: cpasbien -description: "cpasbien is a FRENCH Public site for TV / MOVIES / GENERAL" -language: fr-FR -type: public -encoding: UTF-8 -followredirect: true -links: - - https://feminalpes.fr/ -legacylinks: - - https://www.cpasbiens.cz/ - - https://www.cpasbiens.bz/ - - https://www.cpasbien.vg/ - - https://www.cpasbien.lol/ - - https://www.gktorrent.biz/ - - https://vww.cpasbien-fr.fr/ - - https://wvw.cpasbien-fr.fr/ - - https://wwwv.cpasbien-fr.fr/ - - https://www2.cpasbien-fr.fr/ - - https://www.cpasbien-fr.nz/ - - https://vwwvwvwvvw.cpasbien-fr.nz/ - - https://cpasbiens3.fr/ - - https://labastidevivante.fr/ - - https://cpasbiens911.fr/ - - https://jardattraction.fr/ - - https://cpasbien-vf.fr/ - - https://cpasbien-vf.pics/ - - https://cpasbien-vf.li/ - -caps: - categories: - Other: Other - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: info_flaresolverr - type: info_flaresolverr - - name: info_category_8000 - type: info - label: About cpasbien Categories - default: cpasbien does not return categories in its search results. To sync to your apps, include 8000(Other) in your Apps' Sync Categories. - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - -download: - selectors: - - selector: a[href^="magnet:?xt="] - attribute: href - -search: - paths: - - path: "{{ if .Keywords }}index.php?do=search&subaction=search{{ else }}{{ end }}" - method: post - # postData is mandatory FlareSolverr/FlareSolverr#789 - allowEmptyInputs: true - inputs: - story: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ end }}" - # does not support imdbid search and does not return imdb link in results. - - keywordsfilters: - # if searching for season packs with S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)\\b(?:S0?)(\\d{1,3})\\b", "saison $1"] - - headers: - # site blocks Linux UAs, so slightly alter the Windows UA here (e.g. Safari/537.36 > Safari/537.35) - User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.35"] - - rows: - selector: div#gauche > table > tbody > tr:has(a), div#dle-content > a.cover2 - - fields: - category: - text: Other - title_phase1_title: - selector: a - title_phase1_url: - selector: a - attribute: href - filters: - - name: regexp - args: torrents\d+\/(.+?)\/ - - name: replace - args: ["-", " "] - title_phase1: - text: "{{ if .Result.title_phase1_title }}{{ .Result.title_phase1_title }}{{ else }}{{ .Result.title_phase1_url }}{{ end }}" - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b((19|20)\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details: - selector: a - attribute: href - download: - selector: a - attribute: href - poster: - selector: img - attribute: src - size: - selector: div.poid - optional: true - default: "512 MB" - date: - text: now - seeders: - selector: div.up - optional: true - default: 0 - leechers: - selector: div.down - optional: true - default: 0 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/dajiao.yml b/config/prowlarr/Definitions/dajiao.yml deleted file mode 100644 index 4b9b941b..00000000 --- a/config/prowlarr/Definitions/dajiao.yml +++ /dev/null @@ -1,194 +0,0 @@ ---- -id: dajiao -name: Dajiao (打胶) -description: "Dajiao (打胶) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://dajiao.cyou/ - -caps: - categorymappings: - - {id: 414, cat: Console, desc: "Games/游戏"} - - {id: 412, cat: Audio/Audiobook, desc: "Audio Books/有声书"} - - {id: 409, cat: Other, desc: "Others/音乐"} - - {id: 411, cat: Books/Comics, desc: "Manga/漫画"} - - {id: 413, cat: Books/EBook, desc: "E-Books/电子书"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 403, cat: TV, desc: "TV Variety Shows/综艺"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 401, cat: Movies, desc: "Movies/电影"} - - {id: 416, cat: TV, desc: "TV Shows/电视节目"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the Kufei 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 Torrents per page: setting to 100 on your account profile. - -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(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[data-src] - attribute: data-src - imdbid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td.rowfollow:nth-child(4) > span[title] - attribute: title - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_added: - # time added - selector: td.rowfollow:nth-child(4):not(:has(span)) - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss zzz" - date: - text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" - size: - selector: td.rowfollow:nth-child(5) - seeders: - selector: td.rowfollow:nth-child(6) - leechers: - selector: td.rowfollow:nth-child(7) - grabs: - selector: td.rowfollow:nth-child(8) - downloadvolumefactor: - case: - img.pro_free: 0 - img.pro_free2up: 0 - img.pro_50pctdown: 0.5 - img.pro_50pctdown2up: 0.5 - img.pro_30pctdown: 0.3 - "*": 1 - uploadvolumefactor: - case: - img.pro_50pctdown2up: 2 - img.pro_free2up: 2 - img.pro_2up: 2 - "*": 1 - minimumratio: - text: 1.0 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.15 2024-12-10 diff --git a/config/prowlarr/Definitions/dariustracker.yml b/config/prowlarr/Definitions/dariustracker.yml deleted file mode 100644 index 92c8f1b4..00000000 --- a/config/prowlarr/Definitions/dariustracker.yml +++ /dev/null @@ -1,177 +0,0 @@ ---- -id: dariustracker -name: Darius Tracker -description: "Darius Tracker is a HUNGARIAN Private Tracker for MOVIES / TV / GENERAL" -language: hu-HU -type: private -encoding: UTF-8 -links: - - https://dariustracker.hu/ - -caps: - categorymappings: - - {id: 86, cat: Movies/SD, desc: "Film/Cam/XviD/Eng"} - - {id: 85, cat: Movies/SD, desc: "Film/Cam/XviD/Hun"} - - {id: 19, cat: Movies/DVD, desc: "Film/DVD-R/Eng"} - - {id: 17, cat: Movies/DVD, desc: "Film/DVD-R/Hun"} - - {id: 88, cat: XXX, desc: "Film/DVD/XXX"} - - {id: 62, cat: Movies/DVD, desc: "Film/DVD9/Hun"} - - {id: 82, cat: Movies/HD, desc: "Film/HD/Eng"} - - {id: 83, cat: Movies/HD, desc: "Film/HD/Hun"} - - {id: 89, cat: XXX, desc: "Film/HD/XXX"} - - {id: 48, cat: Movies/HD, desc: "Film/x264/Eng"} - - {id: 34, cat: Movies/HD, desc: "Film/x264/Hun"} - - {id: 16, cat: Movies/SD, desc: "Film/XviD/Eng"} - - {id: 15, cat: Movies/SD, desc: "Film/XviD/Hun"} - - {id: 64, cat: Movies/SD, desc: "Film/XviD/Pack"} - - {id: 70, cat: TV/Sport, desc: "Film/XviD/Sport"} - - {id: 33, cat: XXX, desc: "Film/XviD/XXX"} - - {id: 90, cat: Audio/Audiobook, desc: "Hangoskönyv"} - - {id: 31, cat: PC/Games, desc: "Játék/Pc/Iso"} - - {id: 29, cat: PC/Games, desc: "Játék/Pc/Rip"} - - {id: 54, cat: Console/PS3, desc: "Játék/PS2/PS3"} - - {id: 32, cat: Console/XBox, desc: "Játék/XBOX"} - - {id: 50, cat: Books, desc: "Könyv/Eng"} - - {id: 27, cat: Books, desc: "Könyv/Hun"} - - {id: 65, cat: Other, desc: "Képek"} - - {id: 66, cat: XXX, desc: "Képek/XXX"} - - {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng"} - - {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun"} - - {id: 68, cat: Movies/DVD, desc: "Mese/DVD"} - - {id: 69, cat: Movies/SD, desc: "Mese/XviD"} - - {id: 67, cat: PC/Mobile-Other, desc: "Mobiltelefon"} - - {id: 26, cat: Audio/MP3, desc: "Mp3/Eng"} - - {id: 25, cat: Audio/MP3, desc: "Mp3/Hun"} - - {id: 14, cat: PC, desc: "Program/Egyéb"} - - {id: 81, cat: PC/ISO, desc: "Program/Iso"} - - {id: 49, cat: PC, desc: "Program/Rip"} - - {id: 58, cat: TV, desc: "Sorozat/Eng"} - - {id: 22, cat: TV, desc: "Sorozat/Hun"} - - {id: 24, cat: Audio/Video, desc: "Videóklipp"} - - 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_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 1: name - 5: size - 4: added - 7: seeders - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table[cellpadding="5"]:contains("Hiba") - test: - path: index.php - selector: a[href^="logout.php"] - -search: - paths: - # https://dariustracker.hu/browse.php?viewMode=&c68=1&c69=1&search=&incldead=1&sort=4&type=desc - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c[{{.}}]=1&{{end}}" - viewMode: "" - search: "{{ .Keywords }}" - # 0 active, 1 active and dead, 2 deadonly, 3 my torrents, 4 seedless - incldead: 1 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - # does not support imdbid searches - - rows: - selector: "table[cellpadding=\"5\"] > tbody > tr > td > table[cellpadding=\"5\"] > tbody > tr:has(a[href^=\"download.php?torrent=\"]){{ if .Config.freeleech }}:has(img[src$=\"/arrowdown.png\"] ~ span:contains(\"0x\")){{ else }}{{ end }}" - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - attribute: title - filters: - - name: re_replace - args: ["(?i)(Név: |Első név: -)|Második név: -", ""] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?torrent="] - attribute: href - poster: - selector: a.preview - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - files: - selector: td:nth-last-child(7) - date: - selector: td:nth-last-child(5) - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td:nth-last-child(4) b - grabs: - selector: td:nth-last-child(3) - seeders: - selector: td:nth-last-child(2) - leechers: - selector: td:nth-last-child(1) - downloadvolumefactor: - selector: img[src$="/arrowdown.png"] ~ span - filters: - - name: regexp - args: (\d+) - uploadvolumefactor: - selector: img[src$="/arrowup.png"] ~ span - filters: - - name: regexp - args: (\d+) - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# engine n/a diff --git a/config/prowlarr/Definitions/dark-shadow.yml b/config/prowlarr/Definitions/dark-shadow.yml deleted file mode 100644 index bf7268b1..00000000 --- a/config/prowlarr/Definitions/dark-shadow.yml +++ /dev/null @@ -1,160 +0,0 @@ ---- -id: dark-shadow -name: Dark-Shadow -description: "Dark-Shadow (D-S) is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://dark-shadow.me/ -legacylinks: - - https://dark-shadow.ml/ - - https://projekt.dark-shadow.me/ - -caps: - categorymappings: - - {id: 32, cat: Movies/HD, desc: "Filme > HD"} - - {id: 28, cat: Movies/SD, desc: "Filme > SD"} - - {id: 114, cat: Movies/UHD, desc: "Filme > UHD"} - - {id: 140, cat: Movies/BluRay, desc: "Filme > BluRay"} - - {id: 138, cat: Movies, desc: "Filme > Pack's"} - - {id: 147, cat: Movies/HD, desc: "Filme > h266/x266"} - - {id: 57, cat: TV/HD, desc: "Serien > HD"} - - {id: 60, cat: TV/SD, desc: "Serien > SD"} - - {id: 139, cat: TV/UHD, desc: "Serien > UHD"} - - {id: 59, cat: TV, desc: "Serien > Pack's"} - - {id: 110, cat: Audio/MP3, desc: "Audio > MP3"} - - {id: 48, cat: Audio/Lossless, desc: "Audio > Flac"} - - {id: 52, cat: Audio, desc: "Audio > Pack"} - - {id: 63, cat: Audio/Audiobook, desc: "Audio > Hörbuch"} - - {id: 120, cat: Audio/Video, desc: "Audio > Videos"} - - {id: 12, cat: PC/0day, desc: "Apps > Windows"} - - {id: 125, cat: PC/Mac, desc: "Apps > Mac-OSX"} - - {id: 11, cat: PC/Mobile-Other, desc: "Apps > Mobil"} - - {id: 141, cat: PC/ISO, desc: "Apps > Other"} - - {id: 15, cat: TV/Documentary, desc: "Doku > SD"} - - {id: 14, cat: TV/Documentary, desc: "Doku > HD"} - - {id: 148, cat: TV/Documentary, desc: "Doku > UHD"} - - {id: 123, cat: TV/Documentary, desc: "Doku > Pack's"} - - {id: 17, cat: PC/Games, desc: "Spiel > PC"} - - {id: 24, cat: Console, desc: "Spiel > Konsole"} - - {id: 126, cat: Console/Other, desc: "Spiel > Mobil"} - - {id: 121, cat: Console, desc: "Spiel > Wimmelbild"} - - {id: 61, cat: TV/Sport, desc: "Sport > HD"} - - {id: 62, cat: TV/Sport, desc: "Sport > SD"} - - {id: 96, cat: Books/Mags, desc: "ePaper > Zeitungen"} - - {id: 136, cat: Books/EBook, desc: "ePaper > E-Book"} - - {id: 137, cat: Books/Comics, desc: "ePaper > Comics"} - - {id: 143, cat: XXX/x264, desc: "XXX > HD / SD"} - - {id: 149, cat: XXX/Other, desc: "XXX > Magazine"} - - {id: 75, cat: XXX/Pack, desc: "XXX > Pack's"} - - {id: 142, cat: XXX/ImageSet, desc: "XXX > Pic's"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_password - type: info - label: About Password Expiry - default: "D-S has an 8 week Password Expiry regime. So if the Indexer has stopped working then the first thing you should do is check if your password has expired by login in at Dark-Shadow, and if necessary use the Passwort anfordern (Request password) button to renew it." - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: onlyupload - type: checkbox - label: Search OnlyUpload - default: false - - name: info_free - type: info - label: About OnlyUpload at D-S - default: "OnlyUpload are torrents where download is not counted but upload is. Good for building your Ratio up. (On the Jackett dashboard search results these are tagged as Freeleech)." - - name: info_activity - type: info - label: Account Inactivity - default: "Inactive accounts will be deactivated after 7 weeks and deleted after another 3 weeks." - -login: - path: login.php - method: form - form: form - inputs: - login_identifier: "{{ .Config.username }}" - password: "{{ .Config.password }}" - loggiin: Login - error: - - selector: div#login_error - - selector: div.error-message - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # https://dark-shadow.me//selection.php?ajax=true&search=&page=1&visible=no&free=no&c32=1&c28=1 - - path: selection.php - response: - type: json - - inputs: - ajax: true - search: "{{ .Keywords }}" - page: 1 - # all=active+inactive, yes=active, no=inactive (the default is all, which ajax simply drops the parm) - # visible: all - # all=all+onlyup, yes=onlyup, no=without onlyup (the default is all, which ajax simply drops the parm) - free: "{{ if .Config.onlyupload }}yes{{ else }}{{ end }}" - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - - rows: - selector: $ - - fields: - categorydesc: - selector: category - filters: - - name: htmldecode - title: - selector: name - _id: - selector: id - details: - text: "details.php?id={{ .Result._id }}" - download: - selector: download_link - poster: - selector: cover - size: - selector: size - date: - # 25.12.2024 16:02 - selector: added - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyy HH:mm zzz" - seeders: - selector: seeders - leechers: - selector: leechers - _onlyup: - selector: free_button:contains(Only Upload) - optional: true - downloadvolumefactor: - text: "{{ if .Result._onlyup }}0{{ else }}1{{ end }}" - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 1.5 days (as seconds = 1.5 x 24 x 60 x 60) - text: 129600 -# THX JSON diff --git a/config/prowlarr/Definitions/demonoid.yml b/config/prowlarr/Definitions/demonoid.yml deleted file mode 100644 index d9b24d5d..00000000 --- a/config/prowlarr/Definitions/demonoid.yml +++ /dev/null @@ -1,402 +0,0 @@ ---- -id: demonoid -name: Demonoid -description: "Demonoid is a Semi-Private torrent site for MOVIES / TV / GENERAL" -language: en-US -type: semi-private -encoding: UTF-8 -links: - - https://www.demonoid.is/ - - https://www.dnoid.to/ -legacylinks: - - https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/ - - https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/ - - https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.link/ # Origin is unreachable Error code 523 - - https://demonoid.torrentbay.to/ - - https://demonoid.unblockit.rsvp/ - - https://demonoid.unblockit.vegas/ - - https://demonoid.unblockit.esq/ - - https://demonoid.unblockit.zip/ - - https://demonoid.unblockit.foo/ - - https://demonoid.unblockit.ing/ - - https://demonoid.torrentbay.net/ - - https://demonoid.mrunblock.bond/ - - https://demonoid.nocensor.cloud/ - - https://demonoid.unblockit.date/ - - https://demonoid.unblockit.dad/ - - https://demonoid.unblockit.africa/ - - https://demonoid.unblockit.casa/ # 302 - - https://unblockit.sbs/ # 526 - - https://unblockit.ong/ # 526 - - https://demonoid.unblockit.black/ # site broken by ad - - https://www.dnoid.pw/ - - https://demonoid.torrentbay.st/ - - https://demonoid.unblockit.meme/ # site broken by ad - - https://demonoid.unblockit.download/ # site broken by ad - -caps: - categorymappings: - # fetch these from https://www.demonoid.is/cached/torrent_categories_script.js?v5 - # Everything - - {id: 0, cat: Other/Misc, desc: "Miscellaneous"} - # Applications - - {id: 1, cat: PC/Mobile-Android, desc: "Applications Android"} - - {id: 2, cat: PC/Mobile-iOS, desc: "Applications phone / Ipod touch"} - - {id: 3, cat: PC, desc: "Applications Linux"} - - {id: 4, cat: PC/Mac, desc: "Applications Mac"} - - {id: 5, cat: PC/Mobile-Other, desc: "Applications Mobile phone"} - - {id: 6, cat: PC, desc: "Applications PocketPC"} - - {id: 7, cat: PC/0day, desc: "Applications Windows"} - # Audio Books - - {id: 8, cat: Audio/Audiobook, desc: "Audio Books Action"} - - {id: 9, cat: Audio/Audiobook, desc: "Audio Books Adventure"} - - {id: 10, cat: Audio/Audiobook, desc: "Audio Books Biography"} - - {id: 11, cat: Audio/Audiobook, desc: "Audio Books Childrens"} - - {id: 12, cat: Audio/Audiobook, desc: "Audio Books Computers and Technology"} - - {id: 13, cat: Audio/Audiobook, desc: "Audio Books Contemporary"} - - {id: 14, cat: Audio/Audiobook, desc: "Audio Books Cooking"} - - {id: 15, cat: Audio/Audiobook, desc: "Audio Books Crafts and Hobbies"} - - {id: 16, cat: Audio/Audiobook, desc: "Audio Books Educational"} - - {id: 17, cat: Audio/Audiobook, desc: "Audio Books Fantasy"} - - {id: 18, cat: Audio/Audiobook, desc: "Audio Books Fiction"} - - {id: 19, cat: Audio/Audiobook, desc: "Audio Books General"} - - {id: 20, cat: Audio/Audiobook, desc: "Audio Books History"} - - {id: 21, cat: Audio/Audiobook, desc: "Audio Books Horror"} - - {id: 22, cat: Audio/Audiobook, desc: "Audio Books Humor"} - - {id: 23, cat: Audio/Audiobook, desc: "Audio Books Literary"} - - {id: 24, cat: Audio/Audiobook, desc: "Audio Books Magazine"} - - {id: 25, cat: Audio/Audiobook, desc: "Audio Books Mainstream"} - - {id: 26, cat: Audio/Audiobook, desc: "Audio Books Medicine and Health"} - - {id: 27, cat: Audio/Audiobook, desc: "Audio Books Mystery and Suspense"} - - {id: 28, cat: Audio/Audiobook, desc: "Audio Books Newspaper"} - - {id: 29, cat: Audio/Audiobook, desc: "Audio Books Nonfiction"} - - {id: 30, cat: Audio/Audiobook, desc: "Audio Books Other"} - - {id: 31, cat: Audio/Audiobook, desc: "Audio Books Paranormal"} - - {id: 32, cat: Audio/Audiobook, desc: "Audio Books Religion"} - - {id: 33, cat: Audio/Audiobook, desc: "Audio Books Romance"} - - {id: 34, cat: Audio/Audiobook, desc: "Audio Books RPG"} - - {id: 35, cat: Audio/Audiobook, desc: "Audio Books Sci-Fi"} - - {id: 36, cat: Audio/Audiobook, desc: "Audio Books Self-help"} - - {id: 37, cat: Audio/Audiobook, desc: "Audio Books Suspense"} - - {id: 38, cat: Audio/Audiobook, desc: "Audio Books Textbook"} - - {id: 39, cat: Audio/Audiobook, desc: "Audio Books Thriller"} - - {id: 40, cat: Audio/Audiobook, desc: "Audio Books Western"} - - {id: 41, cat: Audio/Audiobook, desc: "Audio Books Young Adult"} - # Books - - {id: 42, cat: Books/EBook, desc: "Books Action and Adventure"} - - {id: 43, cat: Books/EBook, desc: "Books Biography"} - - {id: 44, cat: Books/EBook, desc: "Books Childrens"} - - {id: 45, cat: Books/EBook, desc: "Books Computers and Technology"} - - {id: 46, cat: Books/EBook, desc: "Books Contemporary"} - - {id: 47, cat: Books/EBook, desc: "Books Cooking"} - - {id: 48, cat: Books/EBook, desc: "Books Crafts and Hobbies"} - - {id: 49, cat: Books/EBook, desc: "Books Educational"} - - {id: 50, cat: Books/EBook, desc: "Books Fantasy"} - - {id: 51, cat: Books/EBook, desc: "Books Fiction"} - - {id: 52, cat: Books/EBook, desc: "Books General"} - - {id: 53, cat: Books/EBook, desc: "Books History"} - - {id: 54, cat: Books/EBook, desc: "Books Horror"} - - {id: 55, cat: Books/EBook, desc: "Books Humor"} - - {id: 56, cat: Books/EBook, desc: "Books Literary"} - - {id: 57, cat: Books/Mags, desc: "Books Magazine"} - - {id: 58, cat: Books/EBook, desc: "Books Mainstream"} - - {id: 59, cat: Books/EBook, desc: "Books Medicine and Health"} - - {id: 60, cat: Books/EBook, desc: "Books Mystery and Suspense"} - - {id: 61, cat: Books/EBook, desc: "Books Newspaper"} - - {id: 62, cat: Books/EBook, desc: "Books Nonfiction"} - - {id: 63, cat: Books/EBook, desc: "Books Other"} - - {id: 64, cat: Books/EBook, desc: "Books Paranormal"} - - {id: 65, cat: Books/EBook, desc: "Books Religion"} - - {id: 66, cat: Books/EBook, desc: "Books Romance"} - - {id: 67, cat: Books/EBook, desc: "Books RPG"} - - {id: 68, cat: Books/EBook, desc: "Books Sci-Fi"} - - {id: 69, cat: Books/EBook, desc: "Books Self-help"} - - {id: 70, cat: Books/EBook, desc: "Books Suspense"} - - {id: 71, cat: Books/EBook, desc: "Books Textbook"} - - {id: 72, cat: Books/EBook, desc: "Books Thriller"} - - {id: 73, cat: Books/EBook, desc: "Books Western"} - - {id: 74, cat: Books/EBook, desc: "Books Young Adult"} - # Comics - - {id: 75, cat: Books/Comics, desc: "Comics Action / Adventure"} - - {id: 76, cat: Books/Comics, desc: "Comics Crime"} - - {id: 77, cat: Books/Comics, desc: "Comics Drama"} - - {id: 78, cat: Books/Comics, desc: "Comics Fantasy"} - - {id: 79, cat: Books/Comics, desc: "Comics Historical fiction"} - - {id: 80, cat: Books/Comics, desc: "Comics Horror"} - - {id: 81, cat: Books/Comics, desc: "Comics Illustrated novel"} - - {id: 82, cat: Books/Comics, desc: "Comics Manga"} - - {id: 83, cat: Books/Comics, desc: "Comics Other"} - - {id: 84, cat: Books/Comics, desc: "Comics Real-Life"} - - {id: 85, cat: Books/Comics, desc: "Comics Sci-Fi"} - - {id: 86, cat: Books/Comics, desc: "Comics Super Hero"} - # Games - - {id: 87, cat: PC, desc: "Games DOS"} - - {id: 88, cat: Console/Other, desc: "Games Dreamcast"} - - {id: 89, cat: Console/Other, desc: "Games Emulators"} - - {id: 90, cat: Console/Other, desc: "Games GameBoy"} - - {id: 91, cat: Console/Other, desc: "Games GameCube"} - - {id: 92, cat: PC, desc: "Games Linux"} - - {id: 93, cat: PC/Mac, desc: "Games Mac"} - - {id: 94, cat: PC/Mobile-Other, desc: "Games Mobile phone"} - - {id: 95, cat: Console/NDS, desc: "Games Nintendo DS"} - - {id: 96, cat: Console/Other, desc: "Games Palm"} - - {id: 97, cat: Console/PS3, desc: "Games Playstation"} - - {id: 98, cat: Console/Other, desc: "Games PocketPC"} - - {id: 99, cat: Console/PSP, desc: "Games PSP"} - - {id: 100, cat: Console/Wii, desc: "Games Wii / Wii U"} - - {id: 101, cat: PC/Games, desc: "Games Windows"} - - {id: 102, cat: Console/XBox, desc: "Games XBox"} - # Anime - - {id: 103, cat: TV/Anime, desc: "Anime Action"} - - {id: 104, cat: TV/Anime, desc: "Anime Adventure"} - - {id: 105, cat: TV/Anime, desc: "Anime Comedy"} - - {id: 106, cat: TV/Anime, desc: "Anime Drama"} - - {id: 107, cat: TV/Anime, desc: "Anime Fantasy"} - - {id: 108, cat: TV/Anime, desc: "Anime Horror"} - - {id: 109, cat: TV/Anime, desc: "Anime Other"} - - {id: 157, cat: TV/Anime, desc: "Anime Romance"} - - {id: 158, cat: TV/Anime, desc: "Anime Sci-Fi"} - # Movies - - {id: 151, cat: Movies, desc: "Movies Action"} - - {id: 110, cat: Movies, desc: "Movies Adventure"} - - {id: 236, cat: Movies, desc: "Movies Animation"} - - {id: 111, cat: Movies, desc: "Movies Biography"} - - {id: 152, cat: Movies, desc: "Movies Comedy"} - - {id: 112, cat: Movies, desc: "Movies Concerts"} - - {id: 113, cat: Movies, desc: "Movies Crime"} - - {id: 114, cat: Movies, desc: "Movies Documentary"} - - {id: 115, cat: Movies, desc: "Movies Drama"} - - {id: 116, cat: Movies, desc: "Movies Family"} - - {id: 153, cat: Movies, desc: "Movies Fantasy"} - - {id: 117, cat: Movies, desc: "Movies Horror"} - - {id: 118, cat: Movies, desc: "Movies Musical"} - - {id: 119, cat: Movies, desc: "Movies Mystery"} - - {id: 120, cat: Movies, desc: "Movies Other"} - - {id: 121, cat: Movies, desc: "Movies Romance"} - - {id: 154, cat: Movies, desc: "Movies Sci-Fi"} - - {id: 159, cat: Movies, desc: "Movies Short-Film"} - - {id: 160, cat: Movies, desc: "Movies Sports"} - - {id: 161, cat: Movies, desc: "Movies Thriller"} - - {id: 162, cat: Movies, desc: "Movies Trailers"} - - {id: 163, cat: Movies, desc: "Movies War"} - - {id: 164, cat: Movies, desc: "Movies Western"} - # Music - - {id: 122, cat: Audio, desc: "Music Alternative"} - - {id: 123, cat: Audio, desc: "Music Bluegrass"} - - {id: 124, cat: Audio, desc: "Music Blues"} - - {id: 125, cat: Audio, desc: "Music Childrens"} - - {id: 126, cat: Audio, desc: "Music Christian"} - - {id: 127, cat: Audio, desc: "Music Classical"} - - {id: 128, cat: Audio, desc: "Music Comedy"} - - {id: 129, cat: Audio, desc: "Music Contemporary African"} - - {id: 130, cat: Audio, desc: "Music Country"} - - {id: 131, cat: Audio, desc: "Music Dance / Disco"} - - {id: 132, cat: Audio, desc: "Music Drum and Bass"} - - {id: 133, cat: Audio, desc: "Music Electro / Techno"} - - {id: 134, cat: Audio, desc: "Music Folk"} - - {id: 165, cat: Audio, desc: "Music Gospel"} - - {id: 166, cat: Audio, desc: "Music Grunge"} - - {id: 167, cat: Audio, desc: "Music Hip-Hop / Rap"} - - {id: 168, cat: Audio, desc: "Music Indie"} - - {id: 169, cat: Audio, desc: "Music Industrial"} - - {id: 170, cat: Audio, desc: "Music J-Pop"} - - {id: 171, cat: Audio, desc: "Music Jazz"} - - {id: 172, cat: Audio, desc: "Music Latin American"} - - {id: 173, cat: Audio, desc: "Music Melodic"} - - {id: 174, cat: Audio, desc: "Music Metal"} - - {id: 175, cat: Audio, desc: "Music Other"} - - {id: 176, cat: Audio, desc: "Music Pop"} - - {id: 177, cat: Audio, desc: "Music Punk"} - - {id: 178, cat: Audio, desc: "Music Radio Show"} - - {id: 179, cat: Audio, desc: "Music Reggae"} - - {id: 180, cat: Audio, desc: "Music Rhythm and blues"} - - {id: 181, cat: Audio, desc: "Music Rock"} - - {id: 182, cat: Audio, desc: "Music Soul"} - - {id: 183, cat: Audio, desc: "Music Soundtrack"} - - {id: 184, cat: Audio, desc: "Music Trance"} - - {id: 185, cat: Audio, desc: "Music Trip Hop"} - # Music Videos - - {id: 135, cat: Audio/Video, desc: "Music Videos Alternative"} - - {id: 136, cat: Audio/Video, desc: "Music Videos Bluegrass"} - - {id: 137, cat: Audio/Video, desc: "Music Videos Blues"} - - {id: 138, cat: Audio/Video, desc: "Music Videos Childrens"} - - {id: 139, cat: Audio/Video, desc: "Music Videos Christian"} - - {id: 186, cat: Audio/Video, desc: "Music Videos Classical"} - - {id: 187, cat: Audio/Video, desc: "Music Videos Comedy"} - - {id: 188, cat: Audio/Video, desc: "Music Videos Contemporary African"} - - {id: 189, cat: Audio/Video, desc: "Music Videos Country"} - - {id: 190, cat: Audio/Video, desc: "Music Videos Dance / Disco"} - - {id: 191, cat: Audio/Video, desc: "Music Videos Drum and Bass"} - - {id: 192, cat: Audio/Video, desc: "Music Videos Electro / Techno"} - - {id: 193, cat: Audio/Video, desc: "Music Videos Folk"} - - {id: 194, cat: Audio/Video, desc: "Music Videos Gospel"} - - {id: 195, cat: Audio/Video, desc: "Music Videos Grunge"} - - {id: 196, cat: Audio/Video, desc: "Music Videos Hip-Hop / Rap"} - - {id: 197, cat: Audio/Video, desc: "Music Videos Indie"} - - {id: 198, cat: Audio/Video, desc: "Music Videos Industrial"} - - {id: 199, cat: Audio/Video, desc: "Music Videos J-Pop"} - - {id: 200, cat: Audio/Video, desc: "Music Videos Jazz"} - - {id: 201, cat: Audio/Video, desc: "Music Videos Latin American"} - - {id: 202, cat: Audio/Video, desc: "Music Videos Melodic"} - - {id: 203, cat: Audio/Video, desc: "Music Videos Metal"} - - {id: 204, cat: Audio/Video, desc: "Music Videos Other"} - - {id: 205, cat: Audio/Video, desc: "Music Videos Pop"} - - {id: 206, cat: Audio/Video, desc: "Music Videos Punk"} - - {id: 207, cat: Audio/Video, desc: "Music Videos Radio Show"} - - {id: 208, cat: Audio/Video, desc: "Music Videos Reggae"} - - {id: 209, cat: Audio/Video, desc: "Music Videos Rhythm and blues"} - - {id: 210, cat: Audio/Video, desc: "Music Videos Rock"} - - {id: 211, cat: Audio/Video, desc: "Music Videos Soul"} - - {id: 212, cat: Audio/Video, desc: "Music Videos Soundtrack"} - - {id: 213, cat: Audio/Video, desc: "Music Videos Trance"} - - {id: 214, cat: Audio/Video, desc: "Music Videos Trip Hop"} - # Pictures - - {id: 140, cat: Other, desc: "Pictures Art"} - - {id: 141, cat: Other, desc: "Pictures Commercial"} - - {id: 142, cat: Other, desc: "Pictures Glamour"} - - {id: 215, cat: Other, desc: "Pictures Other"} - - {id: 216, cat: Other, desc: "Pictures Photojournalism"} - - {id: 217, cat: Other, desc: "Pictures Snapshots"} - - {id: 218, cat: Other, desc: "Pictures Sports"} - - {id: 219, cat: Other, desc: "Pictures Wildlife"} - # TV - - {id: 155, cat: TV, desc: "TV Action"} - - {id: 143, cat: TV, desc: "TV Adventure"} - - {id: 144, cat: TV, desc: "TV Biography"} - - {id: 145, cat: TV, desc: "TV Cartoons"} - - {id: 146, cat: TV, desc: "TV Comedy"} - - {id: 147, cat: TV, desc: "TV Concerts"} - - {id: 148, cat: TV, desc: "TV Crime"} - - {id: 149, cat: TV, desc: "TV Documentary"} - - {id: 156, cat: TV, desc: "TV Drama"} - - {id: 220, cat: TV, desc: "TV Family"} - - {id: 221, cat: TV, desc: "TV Fantasy"} - - {id: 222, cat: TV, desc: "TV Horror"} - - {id: 223, cat: TV, desc: "TV Musical"} - - {id: 224, cat: TV, desc: "TV Mystery"} - - {id: 225, cat: TV, desc: "TV Other"} - - {id: 226, cat: TV, desc: "TV Reality"} - - {id: 227, cat: TV, desc: "TV Romance"} - - {id: 228, cat: TV, desc: "TV Sci-Fi"} - - {id: 229, cat: TV, desc: "TV Short film"} - - {id: 230, cat: TV, desc: "TV Sports"} - - {id: 231, cat: TV, desc: "TV Talk show"} - - {id: 232, cat: TV, desc: "TV Thriller"} - - {id: 233, cat: TV, desc: "TV Trailers"} - - {id: 234, cat: TV, desc: "TV War"} - - {id: 235, cat: TV, desc: "TV Western"} - # cat 7 Miscellaneous has no subcats - - 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 - type: info - label: How to get the Cookie - default: "
  1. Access this tracker with your browser
  2. click on the Apply Filter button on the page to invoke the search and solve the challenge
  3. Open the DevTools panel by pressing F12
  4. Select the Network tab
  5. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  6. Refresh the page by pressing F5
  7. Click on the first row entry
  8. Select the Headers tab on the Right panel
  9. Find 'cookie:' in the Request Headers section
  10. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: sort - type: select - label: Sort requested from site - default: _ - options: - _: created - S: seeders desc - s: seeders asc - B: size desc - b: size asc - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: / - selector: a[href^="/account_handler.php"] - -download: - infohash: - hash: - selector: tr:has(td:contains("Torrent hash")) - filters: - # 907617B7 070AACB6 08CC213C 5277368D 217C1666 - - name: replace - args: [" ", ""] - - name: regexp - args: ([A-F|0-9]{40}) - title: - selector: td.ctable_header - filters: - - name: replace - args: ["Details for ", ""] - -search: - paths: - # https://www.demonoid.is/files/?category=0&subcategory=0&quality=0&seeded=2&external=2&query=&sort=S - # https://www.demonoid.is/files/?c154&language=0&quality=0&seeded=2&query=world&to=1&sort= - # https://www.demonoid.is/files/?seeded=2&language=0&quality=0&to=1&query=world - - path: files/ - inputs: - $raw: "{{ range .Categories }}c{{.}}&{{end}}" - # 0 seeded, 1 unseeded, 2 both - seeded: 2 - # 0 all - quality: 0 - # 0 Demonoid, 1 External, 2 Both - external: 2 - # search in titles only - to: "{{ if .Query.IMDBID }}{{ else }}1{{ end }}" - query: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - sort: "{{ re_replace .Config.sort \"_\" \"\" }}" - # does not return imdb link in results - - rows: - selector: table.font_12px tbody tr:has(td[class^="tone_1"]):not(:has(script)) - after: 1 - dateheaders: - selector: td.added_today:not(:contains("Sponsored links")) - filters: - - name: replace - args: ["Added ", ""] - - name: replace - args: ["on ", ""] - - fields: - category: - selector: a.subcategory - attribute: href - optional: true - default: 0 - filters: - - name: querystring - args: subcategory - title: - selector: a[href^="/files/details/"] - details: - selector: a[href^="/files/details/"] - attribute: href - download: - selector: a[href^="/files/details/"] - attribute: href - description: - selector: td:nth-last-child(8) - size: - selector: td:nth-last-child(6) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/denofsimps-api.yml b/config/prowlarr/Definitions/denofsimps-api.yml deleted file mode 100644 index 4053d521..00000000 --- a/config/prowlarr/Definitions/denofsimps-api.yml +++ /dev/null @@ -1,175 +0,0 @@ ---- -id: denofsimps-api -name: DenOfSimps (API) -description: "DenOfSimps (DoS) is a Private Torrent Tracker for 3X Fansite content only" -language: en-US -type: private -encoding: UTF-8 -links: - - https://denofsimps.club/ - -caps: - categorymappings: - - {id: 1, cat: XXX/WEB-DL, desc: "OnlyFans"} - - {id: 2, cat: XXX/WEB-DL, desc: "Fansly"} - - {id: 3, cat: XXX/WEB-DL, desc: "ManyVids"} - - {id: 4, cat: XXX/WEB-DL, desc: "Clips4Sale"} - - {id: 15, cat: XXX/WEB-DL, desc: "iWantClips"} - - {id: 6, cat: XXX/WEB-DL, desc: "Privacy"} - - {id: 10, cat: XXX/WEB-DL, desc: "Chaturbate"} - - {id: 11, cat: XXX/WEB-DL, desc: "LoyalFans"} - - {id: 12, cat: XXX/WEB-DL, desc: "CamSoda"} - - {id: 8, cat: XXX/WEB-DL, desc: "MyDirtyHobby"} - - {id: 5, cat: XXX/WEB-DL, desc: "JustForFans"} - - {id: 14, cat: XXX/WEB-DL, desc: "Other"} - - modes: - search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your DenOfSimps account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Unused accounts may be pruned without warning." - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 50 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - _id: - selector: ..id - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - text: "{{ .Config.sitelink }}files/img/torrent-cover_{{ .Result._id }}.jpg" - genre: - selector: type - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" -# global MR is 1.0 but torrents must be seeded for 5 days regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 -# json UNIT3D 8.1.3 (custom) diff --git a/config/prowlarr/Definitions/digitalcore.yml b/config/prowlarr/Definitions/digitalcore.yml deleted file mode 100644 index b7035cbe..00000000 --- a/config/prowlarr/Definitions/digitalcore.yml +++ /dev/null @@ -1,251 +0,0 @@ ---- -id: digitalcore -name: DigitalCore -description: "DigitalCore (DC) is a Private Torrent Tracker for 0DAY / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://digitalcore.club/ - - https://prxy.digitalcore.club/ - -caps: - categorymappings: - - {id: 2, cat: Movies/SD, desc: Movies/SD} - - {id: 1, cat: Movies/DVD, desc: Movies/DVDR} - - {id: 5, cat: Movies/HD, desc: Movies/720p} - - {id: 6, cat: Movies/HD, desc: Movies/1080p} - - {id: 4, cat: Movies/UHD, desc: Movies/2160p} - - {id: 3, cat: Movies/BluRay, desc: Movies/BluRay} - - {id: 38, cat: Movies/UHD, desc: Movies/Bluray/UHD} - - {id: 7, cat: Movies/HD, desc: Movies/PACKS} - - {id: 10, cat: TV/SD, desc: Tv/SD} - - {id: 11, cat: TV/SD, desc: Tv/DVDR} - - {id: 8, cat: TV/HD, desc: Tv/720p} - - {id: 9, cat: TV/HD, desc: Tv/1080p} - - {id: 13, cat: TV/UHD, desc: Tv/2160p} - - {id: 14, cat: TV/HD, desc: Tv/BluRay} - - {id: 12, cat: TV/HD, desc: Tv/PACKS} - - {id: 15, cat: TV/Sport, desc: Tv/SPORTS} - - {id: 17, cat: Other, desc: Unknown} - - {id: 18, cat: PC/0day, desc: Apps/0DAY} - - {id: 20, cat: PC/ISO, desc: Apps/PC} - - {id: 21, cat: PC/Mac, desc: Apps/Mac} - - {id: 33, cat: PC, desc: Apps/Tutorials} - - {id: 22, cat: Audio/MP3, desc: Music/MP3} - - {id: 23, cat: Audio/Lossless, desc: Music/FLAC} - - {id: 24, cat: Audio/Video, desc: Music/MTV} - - {id: 29, cat: Audio, desc: Music/PACKS} - - {id: 39, cat: Audio/Video, desc: Music/DVD} - - {id: 40, cat: Audio/Video, desc: Music/Bluray} - - {id: 25, cat: PC/Games, desc: Games/PC} - - {id: 27, cat: PC/Mac, desc: Games/Mac} - - {id: 26, cat: Console, desc: Games/Consoles} - - {id: 43, cat: Console, desc: Games/ROMS} - - {id: 42, cat: XXX/Other, desc: Games/XXX} - - {id: 44, cat: Audio/Audiobook, desc: Audiobooks} - - {id: 28, cat: Books/EBook, desc: Ebooks} - - {id: 30, cat: XXX/SD, desc: XXX/SD} - - {id: 31, cat: XXX, desc: XXX/HD} - - {id: 32, cat: XXX/UHD, desc: XXX/4K} - - {id: 35, cat: XXX/SD, desc: XXX/Movies/SD} - - {id: 36, cat: XXX, desc: XXX/Movies/HD} - - {id: 37, cat: XXX/UHD, desc: XXX/Movies/4K} - - {id: 34, cat: XXX/ImageSet, desc: XXX/Imagesets} - - {id: 41, cat: XXX, desc: XXX/PACKS} - - 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: p2p_releases_only - type: checkbox - label: Search P2P releases only - default: false - - name: unrar_releases_only - type: checkbox - label: Search UNRAR releases only - default: false - - name: sort - type: select - label: Sort requested from site - default: d - options: - d: created - up: seeders - s: size - n: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "If your account is inactive (you do not sign in) for more than 60 days, your account is disabled. Park your account if you are going away for more than 60 days." - -login: - # using cookie method because login page is dynamically generated using JS - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - -search: - paths: - - path: api/v1/torrents - response: - type: json - noResultsMessage: "" - - inputs: - $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}" - dead: true - extendedDead: true - extendedSearch: false - freeleech: "{{ if .Config.freeleech }}true{{ else }}false{{ end }}" - index: 0 - limit: 100 - order: "{{ .Config.type }}" - p2p: "{{ if .Config.p2p_releases_only }}true{{ else }}{{ end }}" - page: search - searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}" - section: all - sort: "{{ .Config.sort }}" - stereoscopic: false - unrar: "{{ if .Config.unrar_releases_only }}true{{ else }}{{ end }}" - watchview: false - - rows: - selector: $ - filters: - - name: andmatch - - fields: - category: - selector: category - title: - selector: name - _id: - selector: id - details: - text: "/torrent/{{ .Result._id }}/" - download: - text: "/api/v1/torrents/download/{{ .Result._id }}" - imdbid: - selector: imdbid2 - imdbid_full: - optional: true - selector: imdbid2 - poster_normal: - optional: true - selector: firstpic - poster_imdb: - optional: true - text: "{{ if .Result.imdbid }}/img/imdb/{{ .Result.imdbid_full }}.jpg{{ else }}{{ end }}" - poster: - text: "{{ if .Result.poster_imdb }}{{ .Result.poster_imdb }}{{ else }}{{ .Result.poster_normal }}{{ end }}" - date: - # 2021-10-27 12:07:22 - selector: added - filters: - - name: append - args: " +02:00" # EET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: size - files: - selector: numfiles - grabs: - selector: times_completed - seeders: - selector: seeders - leechers: - selector: leechers - downloadvolumefactor: - # api returns 0=false, 1=true - selector: frileech - case: - 0: 1 # not free - 1: 0 # freeleech - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.1 - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 - title_desc: - optional: true - selector: title - year: - optional: true - selector: year - genre: - selector: genres - _tagline_desc: - optional: true - selector: tagline - _cast_desc: - optional: true - selector: cast - _rating_desc: - optional: true - selector: rating - filters: - - name: re_replace - args: ["^0$", ""] - _section_desc: - optional: true - selector: section - _predate_desc: - selector: preDate - filters: - - name: re_replace - args: ["0000-00-00 00:00:00", ""] - _p2ptag: - selector: p2p - case: - 0: "" - 1: P2P - _unrartag: - selector: unrar - case: - 0: "" - 1: UNRAR - optional: true - _packtag: - selector: pack - case: - 0: "" - 1: Pack - _reqidtag: - selector: reqid - case: - 0: "" - "*": Request - _tag_desc: - optional: true - text: "{{ if .Result._p2ptag }}{{ .Result._p2ptag }}, {{ else }}{{ end }}{{ if .Result._unrartag }}{{ .Result._unrartag }}, {{ else }}{{ end }}{{ if .Result._packtag }}{{ .Result._packtag }}, {{ else }}{{ end }}{{ if .Result._reqidtag }}{{ .Result._reqidtag }}{{ else }}{{ end }}" - filters: - - name: regexp - args: "(.+?), $" - description: - text: "{{ if .Result.title_desc }}Title: {{ .Result.title_desc }}
{{ else }}{{ end }}{{ if .Result.year }}Year: {{ .Result.year }}
{{ else }}{{ end }}{{ if .Result.genre }}Genres: {{ .Result.genre }}
{{ else }}{{ end }}{{ if .Result._tagline_desc }}Tagline: {{ .Result._tagline_desc }}
{{ else }}{{ end }}{{ if .Result._cast_desc }}Cast: {{ .Result._cast_desc }}
{{ else }}{{ end }}{{ if .Result._rating_desc }}Rating: {{ .Result._rating_desc }}
{{ else }}{{ end }}{{ if .Result._tag_desc }}Tags: {{ .Result._tag_desc }}
{{ else }}{{ end }}{{ if .Result._predate_desc }}PRE: {{ .Result._predate_desc }}
{{ else }}{{ end }}{{ if .Result._section_desc }}Section: {{ .Result._section_desc }}{{ else }}{{ end }}" -# json rartracker api v1 diff --git a/config/prowlarr/Definitions/divteam.yml b/config/prowlarr/Definitions/divteam.yml deleted file mode 100644 index 4c4bb0c6..00000000 --- a/config/prowlarr/Definitions/divteam.yml +++ /dev/null @@ -1,194 +0,0 @@ ---- -id: divteam -name: DivTeam -description: "DivTeam is a SPANISH Private Torrent Tracker for MOVIES / GENERAL" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://divteam.com/ - -caps: - categorymappings: - - {id: 60, cat: Movies/HD, desc: "MicroHD 720p"} - - {id: 77, cat: Movies/HD, desc: "MicroHD 1080p"} - - {id: 78, cat: Movies/UHD, desc: "MicroHD 4K"} - - {id: 64, cat: TV/HD, desc: "Pack Series"} - - {id: 65, cat: TV/HD, desc: "Pack Series VOSE"} - - {id: 80, cat: Movies/HD, desc: "BDRip X265 1080p"} - - {id: 81, cat: Movies/UHD, desc: "UHDRip x265 4K"} - - {id: 82, cat: Movies/WEB-DL, desc: "Pelis Web-DL 1080"} - - {id: 83, cat: Movies/WEB-DL, desc: "Pelis Web-DL 720"} - - {id: 84, cat: Movies/UHD, desc: "UHD Remux x265"} - - {id: 91, cat: Movies/HD, desc: "BDRip x264"} - - {id: 89, cat: Movies/HD, desc: "BDRemux"} - - {id: 88, cat: Movies/BluRay, desc: "Full HD"} - - {id: 90, cat: Movies/BluRay, desc: "UHD Full"} - - {id: 92, cat: Movies/UHD, desc: "Web-DL UHD"} - - {id: 23, cat: TV/Sport, desc: "Deportes"} - - {id: 20, cat: TV/HD, desc: "Series"} - - {id: 31, cat: TV/HD, desc: "Series VOSE"} - - {id: 69, cat: Movies, desc: "Ciclo Cine Clasico"} - - {id: 70, cat: Movies, desc: "Ciclo Clint Eastwood"} - - {id: 71, cat: Movies, desc: "Ciclo Studio Ghibli"} - - {id: 72, cat: Movies, desc: "Ciclo George A. Romero"} - - {id: 73, cat: Movies, desc: "Saga Fast And Furious"} - - {id: 74, cat: Movies, desc: "Saga Crepúsculo"} - - {id: 75, cat: Movies, desc: "Saga The Purge"} - - {id: 79, cat: Movies, desc: "Saga Star Wars"} - - {id: 76, cat: Movies, desc: "x-men saga"} - - {id: 85, cat: Movies, desc: "Sean Connery"} - - {id: 6, cat: Books/EBook, desc: "EBooks"} - - {id: 58, cat: Books/Mags, desc: "Kiosko"} - - {id: 24, cat: TV/Documentary, desc: "Documentales"} - - {id: 32, cat: TV/Documentary, desc: "Documentales VOSE"} - - {id: 49, cat: Books/Technical, desc: "eLearning"} - - {id: 68, cat: Books/Technical, desc: "eLearning Multimedia"} - - {id: 87, cat: Audio/Audiobook, desc: "Audiolibros"} - - {id: 0, cat: Other, desc: "Otros"} # results can have a category of 0, but searching by category 0 returns all results - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: cookie - type: text - label: Cookie - - name: info_cookie - type: info_cookie - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info_results - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "In principle, the STAFF reserves the right to delete any user who has not accessed the tracker in 90 days or has not downloaded/uploaded any contribution in the last 180 days, if you are going to be away for a while, park the account from your panel." - -login: - # using cookie method because login page has embedded Google reCAPTCHA - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # https://divteam.com/index.php?page=torrents&search=daredevil&category=20;23;31;65;64;60;63;69;70;71;72;73;74;75;76;77;78;80;81;82;83;84&active=1 - - path: index.php - inputs: - page: torrents - category: "{{ range .Categories }}{{.}};{{end}}" - search: "{{ .Keywords }}" - # 0 title, 1 title&desc, 2 descr, 3 uploaders, 5 gold, 6 silver, 9 2x, 10 3x, 11 4x, 12 5x - # note the options are exclusive, so searching for gold means the search keywords are ignored - options: 0 - # 0 all, 1 activeonly, 2 deadonly - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # does not support imdbid search and does not supply imdb link in results. - - rows: - selector: "table.table.table-bordered > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}, table.table.table-bordered > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"freeleech.gif\"]){{ else }}{{ end }}" - - fields: - download: - selector: a[href^="download.php?id="] - attribute: href - title_vose: - selector: a[href^="index.php?page=torrent-details"][onmouseover]:contains("VOSE") - optional: true - filters: - - name: append - args: " English" - title_notvose: - selector: a[href^="index.php?page=torrent-details"][onmouseover]:not(:contains("VOSE")) - optional: true - filters: - - name: append - args: " MULTi/SPANiSH" # DivTeam doesn't bring languages. Usually Original + Spanish. - - name: re_replace - args: ["\\.+", "."] # More than 1 dot -> . - - name: re_replace - args: ["^\\.", ""] # Delete first dot - - name: replace - args: ["UHDRip", "Bluray-2160p"] # Fix for Radarr - - name: replace - args: ["2160p BDRip", "Bluray-2160p"] # Fix for Radarr - title: - text: "{{ if .Result.title_vose }}{{ .Result.title_vose }}{{ else }}{{ .Result.title_notvose }}{{ end }}" - poster: - selector: a[onmouseover][href^="index.php?page=torrent-details"] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - details: - selector: a[href^="index.php?page=torrent-details"] - attribute: href - size: - selector: td:nth-child(4) - date: - selector: td:nth-child(6) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd/MM/yyyy" - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - grabs: - selector: td:nth-last-child(2) - downloadvolumefactor: - case: - img[src="images/freeleech.gif"]: 0 - img[src="images/gold.png"]: 0 - img[src="images/silver.png"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src="images/2x.png"]: 2 - img[src="images/3x.png"]: 3 - img[src="images/4x.png"]: 4 - img[src="images/5x.png"]: 5 - "*": 1 - minimumratio: - text: 0.7 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# xbtit customised diff --git a/config/prowlarr/Definitions/dreamtracker.yml b/config/prowlarr/Definitions/dreamtracker.yml deleted file mode 100644 index fdcb48a4..00000000 --- a/config/prowlarr/Definitions/dreamtracker.yml +++ /dev/null @@ -1,232 +0,0 @@ ---- -id: dreamtracker -name: Dream Tracker -description: "Dream Tracker is a Subscription only GREEK Private tracker for TV / MOVIES / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://dream-tracker.net/ - -caps: - categorymappings: - # Anime - - {id: 113, cat: TV/Anime, desc: "Anime"} - - {id: 114, cat: TV/Anime, desc: "Anime Series"} - - {id: 115, cat: Movies/Other, desc: "Anime Movies"} - # VIP - - {id: 122, cat: Other, desc: "Only VIP"} - - {id: 123, cat: Audio, desc: "VIP Music"} - - {id: 124, cat: Movies, desc: "VIP Movies"} - # Kids Stuff - - {id: 1, cat: Movies/Other, desc: "Kids Stuff"} - - {id: 14, cat: Movies/Other, desc: "Cartoon No Subs"} - - {id: 16, cat: Movies/Other, desc: "Cartoon Sub. No Embed."} - - {id: 17, cat: Movies/Other, desc: "Cartoon Sub. Embed."} - - {id: 31, cat: Movies/Other, desc: "Cartoon in Greek "} - - {id: 107, cat: Movies/Other, desc: "Kids in Greek"} - - {id: 120, cat: Movies/Other, desc: "Cartoon Series"} - - {id: 88, cat: Audio/Other, desc: "Music Kids"} - # Movies Subs No Embed. - - {id: 38, cat: Movies, desc: "Movies Subs No Embed."} - - {id: 40, cat: Movies/SD, desc: "DVDscr - PPVRiP - WebRip -Web-DL- TVRiP"} - - {id: 41, cat: Movies/SD, desc: "DVDRrip/R6/R5 Xvid/x264"} - - {id: 42, cat: Movies/SD, desc: "BDRip/BRRip/HDRip/480p"} - - {id: 43, cat: Movies/HD, desc: "HD - 720p"} - - {id: 44, cat: Movies/HD, desc: "HD - 1080p"} - - {id: 104, cat: Movies/HD, desc: "Micro"} - # Movies Subs Embed. - - {id: 45, cat: Movies, desc: "Movies Subs Embed."} - - {id: 47, cat: Movies/SD, desc: "DVDscr - PPVRiP - WebRip - Web-DL-TVRiP"} - - {id: 48, cat: Movies/SD, desc: "DVDRrip/R6/R5 Xvid/x264"} - - {id: 49, cat: Movies/SD, desc: "BDRip/BRRip/HDRip/480p"} - - {id: 50, cat: Movies/HD, desc: "HD - 720p"} - - {id: 51, cat: Movies/HD, desc: "HD - 1080p"} - - {id: 105, cat: Movies/HD, desc: "Micro"} - # Movie Packs - - {id: 90, cat: Movies, desc: "Movie Packs"} - - {id: 91, cat: Movies, desc: "Movie Packs Greek"} - - {id: 106, cat: Movies/Foreign, desc: "Movie Packs Foreign"} - # Movies in Greek - - {id: 56, cat: Movies, desc: "Movies in Greek"} - - {id: 57, cat: Movies, desc: "Movies in Greek"} - - {id: 58, cat: Movies, desc: "Movies Greek All Time Classics"} - - {id: 98, cat: Movies, desc: "Greek Filmographies"} - - {id: 99, cat: Movies/HD, desc: "HD 1080p"} - - {id: 100, cat: Movies/HD, desc: "HD 720p"} - # Movies 3D + 4K - - {id: 97, cat: Movies, desc: "Movies 3D + 4K"} - - {id: 111, cat: Movies/UHD, desc: "Movies 4K"} - - {id: 112, cat: Movies/3D, desc: "Movies 3D"} - # Tv Shows & Series - - {id: 59, cat: TV, desc: "Tv Shows & Series"} - - {id: 62, cat: TV/Foreign, desc: "Tv Shows Foreign"} - - {id: 63, cat: TV, desc: "Tv Shows Greek"} - - {id: 126, cat: TV/Foreign, desc: "Mini Series Foreign"} - - {id: 64, cat: TV/Foreign, desc: "Series Foreign"} - - {id: 65, cat: TV, desc: "Series Greek"} - - {id: 92, cat: TV/Foreign, desc: "Series Foreign Packs"} - - {id: 93, cat: TV, desc: "Series Greek Packs"} - # Sports - - {id: 66, cat: TV/Sport, desc: "Sports"} - - {id: 67, cat: TV/Sport, desc: "Sports"} - # Documentary - - {id: 68, cat: TV/Documentary, desc: "Documentary"} - - {id: 69, cat: TV/Documentary, desc: "Documentary"} - # Applications - - {id: 6, cat: PC/0day, desc: "Applications"} - - {id: 74, cat: PC/0day, desc: "Windows"} - - {id: 73, cat: PC/Mobile-Android, desc: "Applications Mobile"} - # eBooks & Images - - {id: 87, cat: Books/EBook, desc: "eBooks & Images"} - - {id: 83, cat: Books/EBook, desc: "Ebooks"} - - {id: 110, cat: Books/Mags, desc: "EMagazines"} - - {id: 82, cat: Other, desc: "Pics & Images"} - - {id: 119, cat: Audio/Audiobook, desc: "Audio Books"} - # Games - - {id: 2, cat: PC/Games, desc: "Games"} - - {id: 27, cat: PC/Games, desc: "PC"} - # Music - - {id: 7, cat: Audio, desc: "Music"} - - {id: 75, cat: Audio/MP3, desc: "Music Greek"} - - {id: 76, cat: Audio/MP3, desc: "Music Greek Discographies"} - - {id: 116, cat: Audio/Lossless, desc: "Greek Flac"} - - {id: 77, cat: Audio/Foreign, desc: "Music Foreign"} - - {id: 78, cat: Audio/Foreign, desc: "Music Foreign Discographies"} - - {id: 94, cat: Audio/Lossless, desc: "Foreign Flac"} - - {id: 117, cat: Audio, desc: "Compact Disc Club"} - - {id: 20, cat: Audio/Video, desc: "Music Videos"} - - {id: 118, cat: Audio, desc: "Dream Radio Music"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_vip - type: info - label: VIP - default: "On 1st March 2024 this site became VIP only. You will not be able to access the Torrents page with this indexer if you do not have a subscription membership." - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: info - type: info - label: Layout - default: "" - -login: - path: ?p=home&pid=1 - method: form - form: form#sls_form - submitpath: ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: ":contains(\"-ERROR-\")" - test: - path: ?p=home&pid=1 - selector: a[href*="/?p=logout&"] - -search: - paths: - - path: / - inputs: - p: torrents - pid: 10 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - - rows: - selector: "table#torrents_table_classic tr:has(td.torrent_name){{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}" - - fields: - title: - selector: a[href*="?p=torrents&pid=10&action=details"] - category: - selector: div.category_image > a - attribute: href - filters: - - name: querystring - args: cid - details: - selector: a[href*="?p=torrents&pid=10&action=details"] - attribute: href - download: - selector: a[href*="?p=torrents&pid=10&action=download"] - attribute: href - date_day: - # Uploaded Friday at 05:11 by - # Uploaded Today at 00:48 by - # Uploaded Yesterday at 23:57 by - selector: td.torrent_name:contains(" at "):not(:has(abbr[data-time])) - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: fuzzytime - date_year: - # Uploaded 30-01-2019 15:02 by - selector: td.torrent_name:not(:contains(" at ")):not(:has(abbr[data-time])) - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_unix: - # within the hour (unix) - selector: abbr[data-time] - attribute: data-time - optional: true - date: - text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}" - size: - selector: a[rel="torrent_size"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - grabs: - selector: a[rel="times_completed"] - poster: - selector: a[rel="fancybox"] - attribute: href - downloadvolumefactor: - case: - "img[src$=\"/silver.gif\"]": 0.5 - "img[src$=\"/torrent_free.png\"]": 0 - "*": 1 - uploadvolumefactor: - case: - "img[src$=\"/torrent_multiple_upload.png\"]": 2 - "*": 1 - minimumseedtime: - # 110 hours (as seconds = 110 x 60 x 60) - text: 396000 - minimumratio: - text: 1.0 -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/eniahd.yml b/config/prowlarr/Definitions/eniahd.yml deleted file mode 100644 index ddbeb3a4..00000000 --- a/config/prowlarr/Definitions/eniahd.yml +++ /dev/null @@ -1,262 +0,0 @@ ---- -id: eniahd -name: EniaHD -description: "EniaHD is a RUSSIAN Semi-Private Torrent Tracker for MOVIES / TV" -language: ru-RU -type: semi-private -encoding: UTF-8 -links: - - https://eniatv.com/ -legacylinks: - - https://eniahd.com/ - -caps: - categorymappings: - # Cinema - - {id: 13, cat: Movies/HD, desc: "Зарубежное кино HD"} - - {id: 11, cat: Movies, desc: "Зарубежное кино"} - - {id: 12, cat: Movies, desc: "Наше кино"} - - {id: 66, cat: Movies, desc: "Зарубежное кино | VIP"} - - {id: 67, cat: Movies, desc: "Зарубежное кино HD | VIP"} - - {id: 68, cat: Movies, desc: "Фабельманы / The Fabelmans"} - # TV - - {id: 2, cat: TV/HD, desc: "Зарубежные сериалы HD"} - - {id: 65, cat: TV/HD, desc: "Майя МС / Майянцы / Mayans M.C."} - - {id: 52, cat: TV/HD, desc: "Блудный сын / Prodigal Son"} - - {id: 49, cat: TV/HD, desc: "Пенниуорт / Pennyworth"} - - {id: 62, cat: TV/HD, desc: "Черный список / The Blacklist"} - - {id: 64, cat: TV/HD, desc: "Игра престолов / Game of Thrones"} - - {id: 59, cat: TV/HD, desc: "Американская история ужасов / American Horror Story"} - - {id: 60, cat: TV/HD, desc: "Хороший доктор / The Good Doctor"} - - {id: 54, cat: TV/HD, desc: "Рэй Донован / Ray Donovan"} - - {id: 55, cat: TV/HD, desc: "Сверхъестественное / Supernatural"} - - {id: 56, cat: TV/HD, desc: "Сквозь снег / Snowpiercer"} - - {id: 57, cat: TV/HD, desc: "Теория большого взрыва / The Big Bang Theory"} - - {id: 58, cat: TV/HD, desc: "Миллиарды / Billions"} - - {id: 53, cat: TV/HD, desc: "Родина / Homeland"} - - {id: 51, cat: TV/HD, desc: "Новобранец / The Rookie"} - - {id: 50, cat: TV/HD, desc: "Это мы / This Is Us"} - - {id: 48, cat: TV/HD, desc: "Бэтвумен / Batwoman"} - - {id: 32, cat: TV/HD, desc: "Кости / Bones"} - - {id: 31, cat: TV/HD, desc: "Американские боги / American Gods"} - - {id: 30, cat: TV/HD, desc: "Агенты Щ.И.Т. / Agents of S.H.I.E.L.D."} - - {id: 17, cat: TV/HD, desc: "Зарубежные сериалы HD для Apple TV"} - - {id: 22, cat: TV, desc: "Зарубежные сериалы HEVC"} - - {id: 3, cat: TV, desc: "Зарубежные сериалы"} - - {id: 14, cat: TV, desc: "Русские сериалы"} - - {id: 10, cat: TV, desc: "Звуковые дорожки"} - # Cartoons - - {id: 24, cat: TV, desc: "Мультфильмы"} - - {id: 25, cat: TV, desc: "Мультсериалы"} - # Documentary - - {id: 7, cat: TV/Documentary, desc: "Документальные (HD Video)"} - - {id: 21, cat: TV/Documentary, desc: "Документальные"} - - {id: 28, cat: TV/Documentary, desc: "Развлекательные телепередачи и шоу"} - # Private Forums - - {id: 47, cat: TV/HD, desc: "Рассказ служанки / The Handmaid's Tale"} - # Miscellaneous - - {id: 8, cat: Other, desc: "Разное (раздачи)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: freeleech_50 - type: checkbox - label: Search freeleech and 50% freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 1 - options: - 1: created - 10: seeders - 7: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - -login: - path: login.php - method: form - form: form[action="login.php"] - inputs: - login_username: "{{ .Config.username }}" - login_password: "{{ .Config.password }}" - autologin: 1 - error: - - selector: table.error - test: - path: index.php - selector: a[href="./login.php?logout=1"] - -search: - paths: - - path: tracker.php - inputs: - $raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}" - prev_allw: 0 - prev_a: 0 - prev_dla: 0 - prev_dlc: 0 - prev_dld: 0 - prev_dlw: 0 - prev_my: 0 - prev_new: 0 - prev_sd: 0 - prev_da: 1 - prev_dc: 0 - prev_df: 1 - prev_ds: 0 - prev_tor_type: 0 - o: "{{ .Config.sort }}" - s: "{{ .Config.type }}" - # show category - dc: 0 - # show forum - df: 1 - # show author - da: 1 - # show speed - ds: 0 - # -1=all time - tm: -1 - # seed not seen -1=disregard - sns: -1 - # group releases -1=not selected - srg: -1 - # title search - nm: "{{ .Keywords }}" - # search by partial word - allw: 0 - tor_type: "{{ if .Config.freeleech_50 }}1{{ else }}{{ end }}" - - keywordsfilters: - - name: diacritics - args: replace - # strip season and/or ep - - name: re_replace - args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""] - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: tr[id^="tor_"]:has(a[href^="./dl.php?id="]) - - fields: - title: - selector: a.tLink - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a.tLink - attribute: href - download: - selector: a[href^="./dl.php?id="] - attribute: href - magnet: - optional: true - selector: a[href^="magnet:?xt="] - attribute: href - category: - selector: a.gen - attribute: href - filters: - - name: querystring - args: f - size: - selector: td:nth-child(6) > u - seeders: - selector: td.seedmed > b - leechers: - selector: td.leechmed > b - grabs: - selector: td:nth-child(9) - date: - # unix - selector: td:last-child > u - downloadvolumefactor: - case: - img[src$="/tor_gold.gif"]: 0 - img[src$="/tor_silver.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 100 hours (as seconds = 100 x 60 x 60) - text: 360000 - description: - selector: a.tLink -# TorrentPier diff --git a/config/prowlarr/Definitions/enthralled.yml b/config/prowlarr/Definitions/enthralled.yml deleted file mode 100644 index 34d62103..00000000 --- a/config/prowlarr/Definitions/enthralled.yml +++ /dev/null @@ -1,140 +0,0 @@ ---- -id: enthralled -name: Enthralled -description: "Enthralled is a Private Torrent Tracker for FETISH 3X" -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.enthralled.me/ - -caps: - categorymappings: - - {id: 1, cat: XXX, desc: "FemDom"} - - {id: 2, cat: XXX, desc: "LezDom"} - - {id: 4, cat: XXX, desc: "POV"} - - {id: 5, cat: XXX, desc: "Scat"} - - {id: 3, cat: XXX, desc: "TransDom"} - - modes: - search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: time - options: - time: created - seeders: seeders - size: size - - 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 Torrents per page: setting to 100 on your account profile. - -login: - path: login - method: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - cinfo: "2550|1350|24|-60" - keeploggedin: 1 - error: - - selector: div.error - test: - path: index.php - selector: "#nav_userinfo" - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - title: "{{ .Keywords }}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - action: advanced - filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - - rows: - selector: table#torrent_table > tbody > tr[class^="torrent shaded_row"]:has(a[href*="action=download"]) - - fields: - category: - selector: a[href*="filter_cat"] - attribute: href - filters: - - name: regexp - args: "(\\d+)]=1" - title: - selector: a[href^="/torrents.php?id="] - details: - selector: a[href^="/torrents.php?id="] - attribute: href - download: - selector: a[href^="/torrents.php?action=download&id="] - attribute: href - description_tags: - selector: div.tags - description: - case: - span.icon_okay: "Verified: {{ .Result.description_tags }}" - "*": "Unverified: {{ .Result.description_tags }}" - poster: - selector: td:nth-child(2) > script - filters: - - name: regexp - args: "src=\\\\\"(.*?)\\\\\"" - - name: re_replace - args: ["\\\\(.)", "$1"] - - name: replace - args: ["/static/common/noartwork/noimage.png", ""] - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(5) > span - attribute: title - # auto adjusted by site account profile - filters: - - name: dateparse - args: "MMM dd yyyy, HH:mm" - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - span.icon[title*="Freeleech"]: 0 - "img[alt=\"Freeleech\"]": 0 - "*": 1 - uploadvolumefactor: - case: - span.icon[title*="DoubleSeed"]: 2 - "img[alt=\"DoubleSeed\"]": 2 - "*": 1 - minimumratio: - text: 0.5 -# Luminance diff --git a/config/prowlarr/Definitions/enthralled2fa.yml b/config/prowlarr/Definitions/enthralled2fa.yml deleted file mode 100644 index 4eacc271..00000000 --- a/config/prowlarr/Definitions/enthralled2fa.yml +++ /dev/null @@ -1,134 +0,0 @@ ---- -id: enthralled2fa -name: Enthralled2FA -description: "Enthralled is a Private Torrent Tracker for FETISH 3X. Cookie Login for 2FA use." -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.enthralled.me/ - -caps: - categorymappings: - - {id: 1, cat: XXX, desc: "FemDom"} - - {id: 2, cat: XXX, desc: "LezDom"} - - {id: 4, cat: XXX, desc: "POV"} - - {id: 5, cat: XXX, desc: "Scat"} - - {id: 3, cat: XXX, desc: "TransDom"} - - 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: time - options: - time: created - seeders: seeders - size: size - - 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 Torrents per page: setting to 100 on your account profile. - -login: - # using cookie method because login page can present second page for 2FA when enabled - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: "#nav_userinfo" - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - title: "{{ .Keywords }}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - action: advanced - filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - - rows: - selector: table#torrent_table > tbody > tr[class^="torrent shaded_row"]:has(a[href*="action=download"]) - - fields: - category: - selector: a[href*="filter_cat"] - attribute: href - filters: - - name: regexp - args: "(\\d+)]=1" - title: - selector: a[href^="/torrents.php?id="] - details: - selector: a[href^="/torrents.php?id="] - attribute: href - download: - selector: a[href^="/torrents.php?action=download&id="] - attribute: href - description_tags: - selector: div.tags - description: - case: - span.icon_okay: "Verified: {{ .Result.description_tags }}" - "*": "Unverified: {{ .Result.description_tags }}" - poster: - selector: td:nth-child(2) > script - filters: - - name: regexp - args: "src=\\\\\"(.*?)\\\\\"" - - name: re_replace - args: ["\\\\(.)", "$1"] - - name: replace - args: ["/static/common/noartwork/noimage.png", ""] - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(5) > span - attribute: title - # auto adjusted by site account profile - filters: - - name: dateparse - args: "MMM dd yyyy, HH:mm" - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - span.icon[title*="Freeleech"]: 0 - "img[alt=\"Freeleech\"]": 0 - "*": 1 - uploadvolumefactor: - case: - span.icon[title*="DoubleSeed"]: 2 - "img[alt=\"DoubleSeed\"]": 2 - "*": 1 - minimumratio: - text: 0.5 -# Luminance diff --git a/config/prowlarr/Definitions/extremlymtorrents.yml b/config/prowlarr/Definitions/extremlymtorrents.yml deleted file mode 100644 index 56361494..00000000 --- a/config/prowlarr/Definitions/extremlymtorrents.yml +++ /dev/null @@ -1,189 +0,0 @@ ---- -id: extremlymtorrents -name: ExtremlymTorrents -description: "ExtremlymTorrents (XTR) is a Semi-Private tracker for MOVIES / TV / GENERAL" -language: en-US -type: semi-private -encoding: UTF-8 -links: - - https://extremlymtorrents.ws/ -caps: - categorymappings: - - {id: 15, cat: Movies/HD, desc: "1080p HD"} - - {id: 52, cat: Other/Misc, desc: "2021 xROBOT Extern"} - - {id: 40, cat: Movies/UHD, desc: "4K UHD 2160p"} - - {id: 48, cat: Audio/Video, desc: "4K | 2160p | Music Video"} - - {id: 22, cat: Movies/HD, desc: "720p HD"} - - {id: 19, cat: PC/Mobile-Android, desc: "Android Apk"} - - {id: 28, cat: TV/Anime, desc: "Anime | Japanese"} - - {id: 3, cat: PC, desc: "Applications"} - - {id: 16, cat: Movies/3D, desc: "BluRay 3D"} - - {id: 12, cat: Movies/BluRay, desc: "BluRay HDR"} - - {id: 44, cat: Movies, desc: "Bollywood"} - - {id: 35, cat: Movies, desc: "BRRip | BDRip | HDRip"} - - {id: 36, cat: Movies, desc: "CAMRip | REC"} - - {id: 8, cat: Books/EBook, desc: "Comics | EBook"} - - {id: 31, cat: TV/Documentary, desc: "DOC's"} - - {id: 27, cat: Movies/DVD, desc: "DVD | PAL | NTSC"} - - {id: 5, cat: Movies/DVD, desc: "DVDRip"} - - {id: 1, cat: PC/Games, desc: "Games PC"} - - {id: 32, cat: PC/Mobile-Other, desc: "GPS Navigation"} - - {id: 13, cat: TV/HD, desc: "HDTV"} - - {id: 43, cat: XXX, desc: "Hentai | Manga"} - - {id: 20, cat: PC/Mobile-iOS, desc: "Iphone iOS"} - - {id: 9, cat: TV, desc: "Kidz | Cartoons"} - - {id: 23, cat: PC, desc: "Linux"} - - {id: 7, cat: PC/Mac, desc: "Mac"} - - {id: 6, cat: Audio, desc: "Music Mp3 | FLAC"} - - {id: 21, cat: Movies, desc: "Pack"} - - {id: 30, cat: TV/SD, desc: "PDTV | SDTV"} - - {id: 11, cat: XXX, desc: "Porn -[+18]- xXx"} - - {id: 47, cat: XXX/UHD, desc: "Porn UHD 4K -[+18]- xXx"} - - {id: 18, cat: Console/PS3, desc: "PS3 | Playstation 3"} - - {id: 46, cat: Console/PS4, desc: "PS4 | PlayStation 4"} - - {id: 17, cat: Console/PSP, desc: "PSP | Playstation"} - - {id: 39, cat: TV/Sport, desc: "Sport TV"} - - {id: 38, cat: Movies, desc: "TS: TeleSync | HD-TS"} - - {id: 10, cat: TV, desc: "TV Episode | Season Complete"} - - {id: 49, cat: TV/UHD, desc: "TV UHD | 2160p | Episodes"} - - {id: 41, cat: TV/WEB-DL, desc: "TVRip"} - - {id: 24, cat: Audio/Video, desc: "VideoClip"} - - {id: 45, cat: Audio, desc: "Vinyl Rip"} - - {id: 14, cat: Other, desc: "Wallpapers"} - - {id: 25, cat: Movies/WEB-DL, desc: "WEBRip | WEB-DL"} - - {id: 26, cat: Console/Wii, desc: "Wii Games"} - - {id: 29, cat: PC/0day, desc: "Windows PC"} - - {id: 42, cat: Other/Misc, desc: "X EXTERN ONLY MAGNET"} - - {id: 2, cat: Console/XBox 360, desc: "XBOX 360"} - - {id: 50, cat: XXX/ImageSet, desc: "xXx iMAGESET (+18)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: span.titlebar:contains("Access Denied") - message: - selector: td.text - test: - path: index.php - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 all 1 English 2 etc... - lang: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - keywordsfilters: - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: table.xtrz > tbody > tr[class^="ttable_col"] - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - _language: - selector: td:nth-last-child(5) - _vip: - selector: img[src="/images/vip-icon.png"] - attribute: alt - optional: true - title: - selector: a[href^="file.php?id="] b - filters: - - name: append - args: " {{ .Result._language }}{{ if .Result._vip }} VIP ONLY{{ else }}{{ end }}" - details: - selector: a[href^="file.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="file.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.+?) " - - name: replace - args: ["/pic/uploadimage.jpg", ""] - date: - selector: td:nth-last-child(1) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd.MM.yyyyHH:mm:ss" - leechers: - selector: td:nth-last-child(2) - seeders: - selector: td:nth-last-child(3) - size: - selector: td:nth-last-child(4) - downloadvolumefactor: - case: - img[src="/images/free.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - genre: - # Drama, Romance | N/A | 2022 | 112 min | N/A - # Drama:Family:Romance - selector: td:nth-child(2) - remove: a - filters: - - name: split - args: ["|", 0] - - name: re_replace - args: ["\\bn\\\\a\\b", ""] - description: - text: "{{ .Result.genre }}{{ if .Result._vip }}
VIP ONLY{{ else }}{{ end }}" - minimumratio: - text: 1.0 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# engine n/a diff --git a/config/prowlarr/Definitions/exttorrents.yml b/config/prowlarr/Definitions/exttorrents.yml deleted file mode 100644 index c595e3a5..00000000 --- a/config/prowlarr/Definitions/exttorrents.yml +++ /dev/null @@ -1,170 +0,0 @@ ---- -id: exttorrents -name: EXT Torrents -description: "EXT Torrents is a Public torrent site for MOVIES / TV / GENERAL" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 5 -links: - - https://ext.to/ - - https://search.extto.com/ - - https://extranet.torrentbay.st/ -legacylinks: - - https://ext.unblockninja.com/ - - https://t.extto.com/ - - https://torrent.extto.com/ - - https://site.extto.com/ - - https://ext.torrentbay.to/ - - https://extranet.torrentbay.to/ - - https://extranet.torrentbay.net/ - -caps: - categorymappings: - - {id: "/anime/", cat: TV/Anime, desc: Anime} - - {id: "/anime//anime/audio-lossless/", cat: Audio/Lossless, desc: "Anime Audio Lossless"} - - {id: "/anime//anime/english-translated/", cat: TV/Anime, desc: "Anime English Translated"} - - {id: "/anime//anime/raw", cat: TV/Anime, desc: Anime Raw} - - {id: "/anime//anime/subs/", cat: TV/Anime, desc: Anime Subs} - - {id: "/anime/raw", cat: TV/Anime, desc: Anime Raw} - - {id: "/applications/", cat: PC, desc: Apps} - - {id: "/applications//applications/android/", cat: PC/Mobile-Android, desc: "Apps Android"} - - {id: "/applications//applications/ios/", cat: PC/Mobile-iOS, desc: "Apps iOS"} - - {id: "/applications//applications/linux/", cat: PC, desc: "Apps Linux"} - - {id: "/applications//applications/mac/", cat: PC/Mac, desc: "Apps Mac"} - - {id: "/applications//applications/other-applications/", cat: PC/Mobile-Other, desc: "Apps Other"} - - {id: "/applications//applications/windows/", cat: PC/0day, desc: "Apps Windows"} - - {id: "/books/", cat: Books, desc: Books} - - {id: "/books//books/audio-books/", cat: Audio/Audiobook, desc: "Books Audiobooks"} - - {id: "/books//books/comics/", cat: Books/Comics, desc: "Books Comics"} - - {id: "/books//books/ebooks/", cat: Books/EBook, desc: "Books Ebooks"} - - {id: "/games/", cat: PC/Games, desc: Games} - - {id: "/games//games/mac/", cat: PC/Mac, desc: "Games Mac"} - - {id: "/games//games/nds/", cat: Console/NDS, desc: "Games NDS"} - - {id: "/games//games/other-games/", cat: Console/Other, desc: "Games Other"} - - {id: "/games//games/pc-games/", cat: PC/Games, desc: "Games PC"} - - {id: "/games//games/ps3/", cat: Console/PS3, desc: "Games PS3"} - - {id: "/games//games/ps4/", cat: Console/PS4, desc: "Games PS4"} - - {id: "/games//games/psp/", cat: Console/PSP, desc: "Games PSP"} - - {id: "/games//games/switch/", cat: Console/Other, desc: "Games Switch"} - - {id: "/games//games/wii/", cat: Console/Wii, desc: "Games Wii"} - - {id: "/games//games/xbox360/", cat: Console/XBox 360, desc: "Games Xbox360"} - - {id: "/movies/", cat: Movies, desc: Movies} - - {id: "/movies//movies/3d-movies/", cat: Movies/3D, desc: "Movies 3D"} - - {id: "/movies//movies/bollywood/", cat: Movies, desc: "Movies Bollywood"} - - {id: "/movies//movies/documentary/", cat: Movies, desc: "Movies Documentary"} - - {id: "/movies//movies/dubbed-movies/", cat: Movies, desc: "Movies Dubbed"} - - {id: "/movies//movies/dvd/", cat: Movies/DVD, desc: "Movies DVD"} - - {id: "/movies//movies/highres-movies/", cat: Movies/HD, desc: "Movies Highres"} - - {id: "/movies//movies/movie-clips/", cat: Movies/Other, desc: "Movies Movie clips"} - - {id: "/movies//movies/mp4/", cat: Movies, desc: "Movies MP4"} - - {id: "/movies//movies/music-videos/", cat: Audio/Video, desc: "Movies Music videos"} - - {id: "/movies//movies/other-movies/", cat: Movies, desc: "Movies Other Movies"} - - {id: "/movies//movies/ultrahd/", cat: Movies/UHD, desc: "Movies UltraHD"} - - {id: "/music/", cat: Audio, desc: Music} - - {id: "/music//music/aac/", cat: Audio, desc: "Music AAC"} - - {id: "/music//music/lossless/", cat: Audio/Lossless, desc: "Music Lossless"} - - {id: "/music//music/mp3/", cat: Audio/MP3, desc: "Music MP3"} - - {id: "/music//music/other-music/", cat: Audio/Other, desc: "Music Other"} - - {id: "/music//music/radio-shows/", cat: Audio, desc: "Music Radio Shows"} - - {id: "/other/", cat: Other, desc: Other} - - {id: "/tv/", cat: TV, desc: TV} - - {id: "/video/", cat: XXX, desc: "XXX Video"} - - {id: "/xxx/", cat: XXX, desc: XXX} - - {id: "/xxx//xxx/games/", cat: XXX/Other, desc: "XXX Games"} - - {id: "/xxx//xxx/hentai/", cat: XXX/Other, desc: "XXX Hentai"} - - {id: "/xxx//xxx/magazines/", cat: XXX/Other, desc: "XXX Magazines"} - - {id: "/xxx//xxx/pictures/", cat: XXX/ImageSet, desc: "XXX Pictures"} - - {id: "/xxx//xxx/video/", cat: XXX, desc: "XXX Video"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: age - options: - age: created - seed: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_flaresolverr - type: info_flaresolverr - -search: - paths: - # https://ext.to/browse/?sort=age&order=desc&age=4&with_adult=1 - # https://ext.to/browse/?sort=age&order=desc&q=wipeout&with_adult=1 - # https://ext.to/browse/?imdb_id=tt2693776 - - path: browse/ - - path: browse/ - inputs: - page: 2 - followredirect: true - inputs: - q: "{{ .Keywords }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # 0=last 24 hours, 1=last 3 days, 2=last week, 3=last 2 weeks, 4=last month - age: "{{ if or .Keywords .Query.IMDBID }}{{ else }}0{{ end }}" - # familysafe 0=enabled, 1=disabled - with_adult: "{{ if .Query.IMDBID }}{{ else }}1{{ end }}" - imdb_id: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}" - - rows: - selector: table.table-striped > tbody > tr - - fields: - category_part1: - selector: td:nth-child(1) div div a:nth-child(2) - attribute: href - optional: true - category_part2: - selector: td:nth-child(1) div div a:nth-child(3) - attribute: href - optional: true - category_combined: - text: "{{ .Result.category_part1 }}{{ .Result.category_part2 }}" - optional: true - category: - text: "{{ if .Result.category_combined }}{{ .Result.category_combined }}{{ else }}/other/{{ end }}" - title: - selector: td:nth-child(1) div a - details: - selector: td:nth-child(1) div a - attribute: href - infohash: - selector: a[href^="magnet:?xt="] - attribute: href - filters: - - name: regexp - args: ([A-F|a-f|0-9]{40}) - size: - selector: td:nth-child(2) - files: - selector: td:nth-child(3) - optional: true - default: 1 - date: - selector: td:nth-child(4) - seeders: - selector: td:nth-child(5) - leechers: - selector: td:nth-child(6) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/falkonvisionteam.yml b/config/prowlarr/Definitions/falkonvisionteam.yml deleted file mode 100644 index 153b663a..00000000 --- a/config/prowlarr/Definitions/falkonvisionteam.yml +++ /dev/null @@ -1,157 +0,0 @@ ---- -id: falkonvisionteam -name: Falkon Vision Team -description: "Falkon Vision Team is a CROATIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: hr-HR -type: private -encoding: UTF-8 -links: - - http://falkonvision-team.com/ # does not support https, CA expired March 2018 - -caps: - categorymappings: - - {id: 16, cat: Audio/Audiobook, desc: "Audio knjige"} - - {id: 10, cat: Movies/BluRay, desc: "Blue Ray"} - - {id: 6, cat: TV/Documentary, desc: "Dokumentarci"} - - {id: 9, cat: Movies/DVD, desc: "DVD"} - - {id: 4, cat: Movies/DVD, desc: "DVDRip"} - - {id: 12, cat: Books/EBook, desc: "E-KNJIGE"} - - {id: 3, cat: Other, desc: "FVT"} - - {id: 13, cat: Movies/HD, desc: "HD Rip"} - - {id: 14, cat: Audio/Video, desc: "Koncerti"} - - {id: 7, cat: Audio, desc: "Muzika"} - - {id: 15, cat: TV, desc: "Serije"} - - {id: 8, cat: TV/Sport, desc: "Sport"} - - {id: 5, cat: TV, desc: "TV Rip"} - - {id: 11, cat: Movies/Other, desc: "Video spotovi"} - - 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: added - options: - added: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "To keep records updated reguarly, all inactive accounts will be deleted after 60 days of inactivity." - -login: - path: login.php? - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img#regimage - input: imagestring - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: "" - error: - - selector: table:contains("Greska") - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -search: - paths: - - path: browse.php - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "%"] - inputs: - do: search - keywords: "{{ .Keywords }}" - # t_name, t_description, t_both, t_uploader, t_genre - # searching t_name yields no results! - search_type: t_both - # does not support multi category searching so defaulting to all. - category: 0 - include_dead_torrents: yes - sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}" - order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}" - # does not return imdb link in results and t_genre does not return imdbid search results - - rows: - selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href*="/details.php?id="] - details: - selector: a[href*="/details.php?id="] - attribute: href - download: - selector: a[href*="/download.php?id="] - attribute: href - poster: - selector: img[src*="/torrents/images/"] - attribute: src - date: - selector: td:nth-child(2) - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{2} \\d{2}:\\d{2})" - - name: dateparse - args: "dd-MM-yy HH:mm" - size: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - description: - # Wait: 4 h - # Cekanje: 4 h - selector: div.tooltip-content > div:last-child - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - minimumseedtime: - # 60 hours (as seconds = 60 x 60 x 60) - text: 216000 -# TS Special Edition v.7.4 diff --git a/config/prowlarr/Definitions/fantastiko.yml b/config/prowlarr/Definitions/fantastiko.yml deleted file mode 100644 index 7f8edf03..00000000 --- a/config/prowlarr/Definitions/fantastiko.yml +++ /dev/null @@ -1,223 +0,0 @@ ---- -id: fantastiko -name: Fantastiko -description: "Fantastiko is a GREEK Private Torrent Tracker for SCI-FI / FANTASY / HORROR MOVIES / TV / GENERAL" -language: el-GR -type: private -encoding: UTF-8 -links: - - https://fantastiko.space/ -legacylinks: - - http://fantastiko.space/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 14, cat: Movies/BluRay, desc: "Movies DVDRip/BRRip"} - - {id: 56, cat: Movies/HD, desc: "Movies BluRay 720p/1080p/2160p"} - - {id: 17, cat: Movies/DVD, desc: "Movies DVD5/9"} - - {id: 49, cat: Movies, desc: "Movies Packs/filmographies"} - - {id: 50, cat: Movies/Other, desc: "Movies Others (screener-webrip-tvrip)"} - - {id: 53, cat: Movies/SD, desc: "Movies VHS"} - - {id: 51, cat: Movies, desc: "Movies Short films"} - - {id: 52, cat: Movies, desc: "Movie Serials"} - - {id: 32, cat: TV, desc: "Series"} - - {id: 38, cat: TV, desc: "TV Episodes"} - - {id: 39, cat: TV, desc: "TV Packs"} - - {id: 57, cat: TV/WEB-DL, desc: "Web Episodes"} - - {id: 65, cat: TV/WEB-DL, desc: "Web Episode Packs"} - - {id: 64, cat: TV, desc: "Video Episodes"} - - {id: 66, cat: TV, desc: "Video Episode Packs"} - - {id: 36, cat: TV/Anime, desc: "Animation"} - - {id: 54, cat: TV/Anime, desc: "Animation Movies"} - - {id: 55, cat: TV/Anime, desc: "Animation TV Series"} - - {id: 60, cat: TV/Anime, desc: "Animation Web Series"} - - {id: 61, cat: TV/Anime, desc: "Animation Video Series"} - - {id: 59, cat: TV/Anime, desc: "Animation Shorts"} - - {id: 33, cat: TV/Documentary, desc: "Ντοκιμαντέρ/Τηλ.Εκπομπές (Documentaries)"} - - {id: 58, cat: TV, desc: "Supermarionation"} - - {id: 62, cat: TV, desc: "Supermarionation Movies"} - - {id: 63, cat: TV, desc: "Supermarionation Series"} - - {id: 34, cat: Books, desc: "Βιβλία"} - - {id: 40, cat: Books/EBook, desc: "E-Books"} - - {id: 41, cat: Audio/Audiobook, desc: "Audio Books"} - - {id: 42, cat: Books/Mags, desc: "Περιοδικά (Magazines)"} - - {id: 35, cat: Books/Comics, desc: "Comics"} - - {id: 37, cat: Other, desc: "Παραστάσεις (Theater)"} - - {id: 45, cat: Other, desc: "Photos"} - - {id: 7, cat: Audio/Other, desc: "Music/Soundtrack"} - - {id: 2, cat: PC/Games, desc: "Games"} - - {id: 46, cat: PC, desc: "Software"} - - {id: 47, cat: Other, desc: "Κατασκευές (Constructions)"} - - {id: 48, cat: Other, desc: "Borg Cube"} - - 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_activity - type: info - label: Account Inactivity - default: "Newcomers with zero offer and participation are deleted after 1 week. Those users who fall into a ratio below 1 or make 3 hit'n'runs (2 for newcomers) become a redshirt (this means limited access to the tracker, removal of invites and reset of forum statistics) and at 5, if they don't enter the seed and 15 days pass, they are banned to the nearest barren planet..." - -login: - path: ?p=home&pid=1 - method: form - form: form#sls_form - submitpath: /ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: ":contains(\"-ERROR-\")" - test: - path: ?p=home&pid=1 - selector: a#logout - -search: - paths: - - path: / - keywordsfilters: - - name: re_replace # add brackets to year on searchquery if missing - args: ["\\(*((19|20)\\d{2})\\)*", "($1)"] - - name: re_replace - args: ["[^\\w\\d\\(\\)]+", "%"] - inputs: - p: torrents - pid: 32 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - error: - - selector: div#show_error - - rows: - selector: "tr:has(a[href*=\"?p=torrents\"][href*=\"&cid=\"]){{ if .Config.freeleech }}:has(img[src*=\"torrent_free.png\"]){{ else }}{{ end }}" - filters: - - name: andmatch - - fields: - category: - selector: a[href*="?p=torrents"][href*="&cid="] - attribute: href - filters: - - name: querystring - args: cid - title: - selector: a[href*="?p=torrents"][href*="&action=details"] - details: - selector: a[href*="?p=torrents"][href*="&action=details"] - attribute: href - download: - selector: a[href*="?p=torrents"][href*="&action=download"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: a[rel="torrent_size"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - grabs: - selector: a[rel="times_completed"] - poster: - selector: a[rel="fancybox"] - attribute: href - downloadvolumefactor: - case: - "img[src*=\"torrent_free.png\"]": 0 - "*": 1 - uploadvolumefactor: - text: 1 - date_day: - selector: td.torrent_name:contains("day"), td.torrent_name:contains("σήμερα"), td.torrent_name:contains("εχθές"), td.torrent_name:contains("Δευτέρα"), td.torrent_name:contains("Τρίτη"), td.torrent_name:contains("Τετάρτη"), td.torrent_name:contains("Πέμπτη"), td.torrent_name:contains("Παρασκευή"), td.torrent_name:contains("Σάββατο"), td.torrent_name:contains("Κυριακή") - # auto adjusted by site account profile - optional: true - remove: span, a - filters: - - name: replace - args: ["Uploaded ", ""] - - name: replace - args: [" by", ""] - - name: replace - args: ["Ανέβηκε ", ""] # Uploaded - - name: replace - args: [" από", ""] # by - - name: replace - args: [" τον/την", ""] # him/her - - name: replace - args: ["στις ", "at "] # at - - name: replace - args: ["σήμερα", "Today"] - - name: replace - args: ["εχθές", "Yesterday"] - - name: replace - args: ["Δευτέρα", "Monday"] - - name: replace - args: ["Τρίτη", "Tuesday"] - - name: replace - args: ["Τετάρτη", "Wednesday"] - - name: replace - args: ["Πέμπτη", "Thursday"] - - name: replace - args: ["Παρασκευή", "Friday"] - - name: replace - args: ["Σάββατο", "Saturday"] - - name: replace - args: ["Κυριακή", "Sunday"] - - name: fuzzytime - date_year: - selector: td.torrent_name:contains("-") - # auto adjusted by site account profile - optional: true - remove: span, a - filters: - - name: replace - args: ["Uploaded ", ""] - - name: replace - args: [" by", ""] - - name: replace - args: ["at ", ""] - - name: replace - args: ["Ανέβηκε ", ""] # Uploaded - - name: replace - args: [" από", ""] # by - - name: replace - args: [" τον/την", ""] # him/her - - name: replace - args: ["στις ", ""] # at - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# TSUE 2.1 diff --git a/config/prowlarr/Definitions/fastscene.yml b/config/prowlarr/Definitions/fastscene.yml deleted file mode 100644 index a8543999..00000000 --- a/config/prowlarr/Definitions/fastscene.yml +++ /dev/null @@ -1,134 +0,0 @@ ---- -id: fastscene -name: FastScene -description: "FastScene is a ROMANIAN / ENGLISH Private site for MOVIES / TV / GENERAL" -language: ro-RO -type: private -encoding: UTF-8 -links: - - https://fastscene.net/ - -caps: - categorymappings: - - {id: 1, cat: TV/Anime, desc: "Anime"} - - {id: 2, cat: TV/Anime, desc: "Anime-Ro"} - - {id: 3, cat: Movies/BluRay, desc: "BluRay"} - - {id: 4, cat: Movies/BluRay, desc: "BluRay-Ro"} - - {id: 5, cat: Movies/UHD, desc: "4K"} - - {id: 6, cat: Movies/UHD, desc: "4K-Ro"} - - {id: 7, cat: Movies/3D, desc: "3D"} - - {id: 8, cat: Movies/3D, desc: "3D-Ro"} - - {id: 9, cat: Movies/HD, desc: "HD"} - - {id: 10, cat: Movies/HD, desc: "HD-Ro"} - - {id: 11, cat: Movies/SD, desc: "XVID"} - - {id: 12, cat: Movies/SD, desc: "XVID-Ro"} - - {id: 13, cat: Movies, desc: "Oldies"} - - {id: 14, cat: Movies, desc: "Oldies-Ro"} - - {id: 15, cat: Movies, desc: "Packs Movies"} - - {id: 16, cat: Movies, desc: "Packs Movies-Ro"} - - {id: 17, cat: TV, desc: "TV-Episodes"} - - {id: 18, cat: TV, desc: "TV-Episodes-Ro"} - - {id: 19, cat: PC/Games, desc: "Games PC"} - - {id: 20, cat: PC/Games, desc: "Games Packs"} - - {id: 21, cat: Audio/MP3, desc: "Music MP3"} - - {id: 22, cat: Movies, desc: "APPZ"} - - {id: 23, cat: TV/Sport, desc: "Sports"} - - {id: 24, cat: PC/Mobile-Android, desc: "Android"} - - {id: 25, cat: TV/Documentary, desc: "Docs"} - - {id: 26, cat: Other, desc: "Images"} - - {id: 27, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - book-search: [q] - -settings: - - name: cookie - type: text - label: Cookie - - name: info - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: info_activity - type: info - label: Account Inactivity - default: "Accounts with ZERO activity (0 bytes downloaded and 0 bytes uploaded) will automatically be deleted after 90 days. Inactive accounts (Lower than VIP class) will be automatically deleted after 150 days." - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: / - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 all, 1 nofree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # does not support imdbid searches or provide sort options - - rows: - selector: table.ttable_headinner > tbody > tr - - fields: - category: - selector: a[href*="cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] b - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - filters: - - name: replace - args: ["&hit=1", ""] # avoid redirect - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[onMouseover] img - attribute: src - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - date: - text: now - size: - selector: td:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - genre: - selector: b:contains("Genre") font:nth-child(2) - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - case: - img[src$="/FREE.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.1 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# TorrentTrader (custom 3.0) diff --git a/config/prowlarr/Definitions/file-shack.yml b/config/prowlarr/Definitions/file-shack.yml deleted file mode 100644 index b841faa4..00000000 --- a/config/prowlarr/Definitions/file-shack.yml +++ /dev/null @@ -1,176 +0,0 @@ ---- -id: file-shack -name: File-Shack -description: "File-Shack is a Private tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://file-shack.xyz/ - -caps: - categorymappings: - - {id: 6, cat: PC/0day, desc: "Apps: Windows"} - - {id: 7, cat: PC/Mac, desc: "Apps: Mac"} - - {id: 8, cat: PC, desc: "Apps: Linux"} - - {id: 75, cat: Movies/DVD, desc: "Movies: DVD"} - - {id: 26, cat: Movies/BluRay, desc: "Movies: Blu-Ray"} - - {id: 42, cat: Movies/HD, desc: "Movies: FHD-HD"} - - {id: 50, cat: Movies/WEB-DL, desc: "Movies: Web-Dl"} - - {id: 74, cat: Movies/SD, desc: "Movies: SD"} - - {id: 49, cat: Movies/UHD, desc: "Movies: 4k"} - - {id: 46, cat: Movies/3D, desc: "Movies: 3D"} - - {id: 24, cat: Movies, desc: "Movies: Packs"} - - {id: 28, cat: Movies/Other, desc: "Movies: Cartoons"} - - {id: 47, cat: XXX, desc: "Movies: XXX"} - - {id: 41, cat: TV/HD, desc: "TV: HD"} - - {id: 52, cat: TV/WEB-DL, desc: "TV: WEB-DL"} - - {id: 48, cat: TV, desc: "TV: Packs"} - - {id: 9, cat: TV/Documentary, desc: "TV: Documentaries"} - - {id: 22, cat: Audio/MP3, desc: "Music: MP3"} - - {id: 23, cat: Audio/Lossless, desc: "Music: FLAC"} - - {id: 25, cat: Audio/Video, desc: "Music: Video"} - - {id: 27, cat: Audio, desc: "Music: Pack"} - - {id: 53, cat: PC/Games, desc: "Games: Pc"} - - {id: 54, cat: Console, desc: "Games: PsP"} - - {id: 76, cat: Audio/Audiobook, desc: "Books: Audio"} - - {id: 77, cat: Books/EBook, desc: "Books: eBooks"} - - {id: 78, cat: TV/UHD, desc: "TV: 4k"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Search results - default: "If you are not getting results, then access the site with your browser and mark as read all PMs." - - name: info_activity - type: info - label: Account Inactivity - default: "Be active here, you must login at least once a month. Also, not downloading anything is considered being inactive (except if you're an uploader or VIP). The accounts inactive for 3 months are deleted." - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.myFrame:contains("Access Denied") - test: - path: index.php - selector: a[href^="account-logout.php"] - -search: - paths: - # https://file-shack.xyz/torrents-search.php?c22=1&c23=1&c76=1&c77=1&search=&incldead=0&freeleech=0&inclrosub=0 - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - # 0 only active 1 incl dead 2 only dead - incldead: 1 - # 0 all 1 not freeleech 2 only freeleech - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table.ttable_headinner > tbody > tr - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] - attribute: title - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="torrents-details.php?id="]:not(a[onmouseover*="images/nocover.png"]) - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: td:nth-child(4) - date: - # 15.11.21
07:47 - selector: td:nth-child(5) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "d.MM.yyHH:mm" - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - genre: - selector: a:contains("Genre:") - filters: - - name: replace - args: ["Genre: ", ""] - _source: - case: - img[src="images/t_extern.png"]: External - "*": Local - description: - text: "{{ .Result._source }} - {{ .Result.genre }}" - downloadvolumefactor: - case: - img[src="images/t_extern.png"]: 0 - img[src="images/free.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 -# global MR is 1.0 but torrents must be seeded for 1 day regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# engine n/a diff --git a/config/prowlarr/Definitions/finvip.yml b/config/prowlarr/Definitions/finvip.yml deleted file mode 100644 index 962aa5b5..00000000 --- a/config/prowlarr/Definitions/finvip.yml +++ /dev/null @@ -1,175 +0,0 @@ ---- -id: finvip -name: FinVip -description: "FinVip is a FINNISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: fi-FI -type: private -encoding: UTF-8 -testlinktorrent: false -links: - - https://finvip.org/ - -caps: - categorymappings: - - {id: 5, cat: TV/Anime, desc: "Anime"} - - {id: 25, cat: TV/Documentary, desc: "Dokumentit (docs)"} - - {id: 6, cat: Books/EBook, desc: "e-Kirjat (ebooks)"} - - {id: 49, cat: Audio/Audiobook, desc: "Äänikirjat (audiobook)"} - - {id: 20, cat: TV/SD, desc: "Lasten DVD (kids)"} - - {id: 33, cat: TV/SD, desc: "Lasten SD (kids)"} - - {id: 50, cat: TV/HD, desc: "Lasten HD (kids)"} - - {id: 51, cat: TV/UHD, desc: "Lasten 4K (kids)"} - - {id: 11, cat: Movies/DVD, desc: "Leffat DVD (movies)"} - - {id: 13, cat: Movies/SD, desc: "Leffat SD (movies)"} - - {id: 21, cat: Movies/HD, desc: "Leffat HD (movies)"} - - {id: 48, cat: Movies/UHD, desc: "Leffat 4K (movies)"} - - {id: 15, cat: Audio/MP3, desc: "Musiikki (music)"} - - {id: 53, cat: Audio/Lossless, desc: "Musiikki Flac (music)"} - - {id: 12, cat: Audio/Video, desc: "Musavideot (clips)"} - - {id: 7, cat: PC/0day, desc: "Ohjelmat (apps)"} - - {id: 17, cat: PC/Games, desc: "Pelit PC (games)"} - - {id: 18, cat: Console, desc: "Pelit Konsoli (console)"} - - {id: 23, cat: XXX/SD, desc: "Porn SD"} - - {id: 36, cat: XXX/Other, desc: "Porn Muut"} - - {id: 47, cat: XXX/x264, desc: "Porn HD"} - - {id: 54, cat: XXX/UHD, desc: "Porn 4K"} - - {id: 1, cat: TV/SD, desc: "Sarjat Boxset (series)"} - - {id: 30, cat: TV/SD, desc: "Sarjat SD (series)"} - - {id: 41, cat: TV/HD, desc: "Sarjat HD (series)"} - - {id: 52, cat: TV/UHD, desc: "Sarjat 4K (series)"} - - {id: 40, cat: TV/Sport, desc: "Urheilu (sport)"} - - {id: 31, cat: Other, desc: "Muut (other)"} - - {id: 43, cat: TV, desc: "Salkkarit (drama)"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: info_results - type: info - label: "Search results" - default: "
  1. Only the Xbtit style is supported.
  2. For best results, increase the torrents number in your profile to 100.
" - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info_activity - type: info - label: Account Inactivity - default: "If you do not log into your account once for three months, i.e. your username is considered 'dead', it will be automatically deleted from the system." - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - logout: no - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -download: - selectors: - - selector: a[href^="download.php?id="] - attribute: href - -search: - paths: - # https://finvip.org/index.php?page=torrents&active=0&gold=0&category=5;25;6&order=3&by=2 - - path: index.php - inputs: - page: torrents - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}" - # 0 title 1 title&descr 2 descr - options: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}" - # 0 all, 1 activeonly, 2 deadonly - active: 0 - # 0 all, 1 classic, 2 50%free, 3 100%free, 4 50%+100&free - gold: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}" - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - - rows: - selector: table.lista tr td table.lista tr:has(a[href^="index.php?page=torrent-details"]) - - fields: - category: - selector: td a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: td a[href^="index.php?page=torrent-details"] - details: - selector: td a[href^="index.php?page=torrent-details"] - attribute: href - download: - selector: td a[href^="index.php?page=downloadcheck"] - attribute: href - imdbid: - # javascript:popdetails('http://www.imdb.com/title/tt10209130'); - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: td:nth-last-child(1) - leechers: - selector: td:nth-last-child(2) - seeders: - selector: td:nth-last-child(3) - date: - # 23/12/2019 07:57 - selector: td:nth-last-child(4) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd/MM/yyyy HH:mm" - genre: - selector: td:nth-child(2) - remove: a - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - case: - img[src="images/silver.gif"]: 0.5 - img[src="images/gold.gif"]: 0 - img[src="images/freeleech.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# xbtit 2.0.0 diff --git a/config/prowlarr/Definitions/fsm.yml b/config/prowlarr/Definitions/fsm.yml deleted file mode 100644 index 22b3e6ea..00000000 --- a/config/prowlarr/Definitions/fsm.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -id: fsm -name: FSM -description: "FSM is a CHINESE Private Torrent Tracker for 3X" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 4 -links: - - https://fsm.name/ - -caps: - categorymappings: - - {id: 1, cat: XXX, desc: "日本AV"} - - {id: 2, cat: XXX, desc: "国产视频"} - - {id: 3, cat: XXX/ImageSet, desc: "写真"} - - {id: 4, cat: XXX/Other, desc: "黄油"} - - {id: 5, cat: XXX, desc: "里番"} - - {id: 6, cat: XXX/Other, desc: "黄色漫画"} - - {id: 7, cat: XXX, desc: "欧美视频"} - - {id: 8, cat: XXX, desc: "其他"} - - modes: - search: [q] - -settings: - - name: apitoken - type: text - label: API Token - - name: info_token - type: info - label: About your API Token - default: "Generate your API token on the FSM API page." - - name: passkey - type: text - label: Passkey - - name: info_passkey - type: info - label: About your Passkey - default: "Find your Passkey on the FSM RSS page." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: info_activity - type: info - label: Account Inactivity - default: "To be on the safe side, you need to complete a new torrent every 60 days (either seed after publishing the torrent or download a torrent entirely), otherwise, your account will be locked and can be unlocked via the password recovery feature on the login page." - -login: - path: https://api.fsm.name/Torrents/listTorrents - method: get - inputs: {} # TODO: remove in v10 - -search: - paths: - - path: https://api.fsm.name/Torrents/listTorrents - response: - type: json - - headers: - APITOKEN: ["{{ .Config.apitoken }}"] - - inputs: - type: 0 - keyword: "{{ .Keywords }}" - # 0 all, 1 2xfree, 2 free - systematics: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - - rows: - selector: data.list - - fields: - category: - selector: type.id - title: - selector: title - _id: - selector: tid - details: - text: "{{ .Config.sitelink }}Torrents/details?tid={{ .Result._id }}" - download: - text: "/Torrents/download?tid={{ .Result._id }}&passkey={{ .Config.passkey }}" - infohash: - selector: fileHash - poster: - selector: cover - genre: - selector: tags - description: - text: "{{ .Result.genre }}" - seeders: - selector: peers.upload - leechers: - selector: peers.download - grabs: - selector: finish - date: - selector: createdTs - size: - selector: fileSize - downloadvolumefactor: - selector: status.downCoefficient - uploadvolumefactor: - selector: status.upCoefficient - minimumratio: - text: 1.0 -# json TNode diff --git a/config/prowlarr/Definitions/gamera.yml b/config/prowlarr/Definitions/gamera.yml deleted file mode 100644 index 400821d1..00000000 --- a/config/prowlarr/Definitions/gamera.yml +++ /dev/null @@ -1,174 +0,0 @@ ---- -id: gamera -name: Gamera (駕瞑羅) -description: "Gamera (駕瞑羅) is a CHINESE Private Torrent Tracker for Japanese Monster and Superhero MOVIES / TV" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://gamerapt.link/ - -caps: - categorymappings: - - {id: 410, cat: Movies, desc: "Monster怪兽"} - - {id: 410, cat: TV, desc: "Monster怪兽"} - - {id: 411, cat: Movies, desc: "Kamen Rider假面骑士"} - - {id: 411, cat: TV, desc: "Kamen Rider假面骑士"} - - {id: 412, cat: Movies, desc: "Ultraman奥特曼"} - - {id: 412, cat: TV, desc: "Ultraman奥特曼"} - - {id: 413, cat: Movies, desc: "Team战队"} - - {id: 413, cat: TV, desc: "Team战队"} - - {id: 414, cat: Movies, desc: "Other其他特摄"} - - {id: 414, cat: TV, desc: "Other其他特摄"} - - {id: 415, cat: Movies, desc: "Musical特摄音乐"} - - {id: 415, cat: TV, desc: "Musical特摄音乐"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q, imdbid, doubanid] - -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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
  1. Veteran User or above will be retained forever
  2. Elite User or above will not be deleted after parking (in the control panel)
  3. Users with a non-parked account will be deleted if they have not logged in for more than 365 consecutive days.
" - -login: - 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 - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[data-src] - attribute: data-src - imdbid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td.rowfollow:nth-last-of-type(5) > span[title] - attribute: title - optional: true - filters: - - name: append - args: " +08:00" - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_added: - # time added - selector: td.rowfollow:nth-last-of-type(5):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-last-of-type(4) - seeders: - selector: td.rowfollow:nth-last-of-type(3) - leechers: - selector: td.rowfollow:nth-last-of-type(2) - grabs: - selector: td.rowfollow:nth-last-of-type(1) - 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: - selector: td:nth-child(2) - remove: a, b, font, img, span - minimumratio: - text: 0.2 -# NexusPHP KEMURIKUSA 2019-01-09 diff --git a/config/prowlarr/Definitions/genesismovement.yml b/config/prowlarr/Definitions/genesismovement.yml deleted file mode 100644 index 988b1dc8..00000000 --- a/config/prowlarr/Definitions/genesismovement.yml +++ /dev/null @@ -1,143 +0,0 @@ ---- -id: genesismovement -name: Genesis-Movement -description: "Genesis-Movement is a Semi-Private Torrent Tracker for GENESIS BOOTLEG MUSIC" -language: en-US -type: semi-private -encoding: iso-8859-1 -links: - - https://torrent.genesis-movement.org/ - -caps: - categorymappings: - - {id: 20, cat: Audio, desc: "Audio - Genesis"} - - {id: 28, cat: Audio, desc: "Audio - Mike And The Mechanics "} - - {id: 22, cat: Audio, desc: "Audio - Peter Gabriel"} - - {id: 24, cat: Audio, desc: "Audio - Phil Collins"} - - {id: 30, cat: Audio, desc: "Audio - Ray Wilson"} - - {id: 26, cat: Audio, desc: "Audio - Steve Hackett"} - - {id: 32, cat: Audio, desc: "Audio - Tony Banks"} - - {id: 36, cat: Audio/Other, desc: "Misc - BrandX"} - - {id: 19, cat: Audio/Other, desc: "Misc - Misc"} - - {id: 38, cat: Audio/Other, desc: "Misc - Non-Music"} - - {id: 21, cat: Audio/Video, desc: "Video - Genesis"} - - {id: 29, cat: Audio/Video, desc: "Video - Mike And The Mechanics"} - - {id: 23, cat: Audio/Video, desc: "Video - Peter Gabriel"} - - {id: 25, cat: Audio/Video, desc: "Video - Phil Collins"} - - {id: 31, cat: Audio/Video, desc: "Video - Ray Wilson"} - - {id: 27, cat: Audio/Video, desc: "Video - Steve Hackett"} - - {id: 33, cat: Audio/Video, desc: "Video - Tony Banks"} - - modes: - search: [q] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - name: title - size: size - seeders: seeders - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table.bblock:contains("Access Denied") - test: - path: index.php - selector: a[href="account-logout.php"] - -search: - paths: - # https://torrent.genesis-movement.org/torrents-search.php?c20=1&c24=1&search=&cat=0&tour=0&incldead=1&freeleech=0&lang=0&owner=0 - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 all - tour: 0 - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 any, 1 notfree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian - lang: 0 - # 0 all - owner: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table[class="ttable_headinner"] > tbody > tr:not(:has(td.ttable_head)) - after: 1 - filters: - - name: andmatch - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] - attribute: title - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - date: - selector: div[id^="kt"] > table > tbody > tr > td:contains("Date Added:") - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{4} at \\d{2}:\\d{2}:\\d{2})" - - name: replace - args: [" at ", " "] - - name: dateparse - args: "dd-MM-yyyy HH:mm:ss" - size: - selector: td:nth-last-child(6) - grabs: - selector: td:nth-last-child(5) - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - downloadvolumefactor: - case: - a[title="FreeLeech!"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# TorrentTrader diff --git a/config/prowlarr/Definitions/gktorrent.yml b/config/prowlarr/Definitions/gktorrent.yml deleted file mode 100644 index 391a4266..00000000 --- a/config/prowlarr/Definitions/gktorrent.yml +++ /dev/null @@ -1,152 +0,0 @@ ---- -id: gktorrent -name: GkTorrent -description: "GkTorrent is a French Public site for TV / MOVIES / GENERAL" -language: fr-FR -type: public -encoding: UTF-8 -# to fetch current domain use https://www.rantop.org/ -links: - - https://www-gktorrent.com/ -legacylinks: - # latest domains list - - https://www.rantop.org/ - - https://gktorrent.news/ - - https://www.torrent.onl/ - - https://www.site-torrent.com/ - # domain lists no longer working - - https://www.protege-torrent.com/ - - https://www.torrent.ws/ - - https://www.protege-liens.com/ - - https://www.protege-liens.net/ - # actual legacylinks - - https://www.gktorrent.sh/ - - https://www.gktorrent.eu/ - - https://www.gktorrent.xyz/ - - https://www.gktorrent.pm/ - - https://www.gktorrent.tw/ - - https://www.gktorrent.in/ - - https://www.gktorrent.sk/ - - https://www.gktorrent.uno/ - - https://www.gktorrent.gy/ - - https://www.gktorrent.si/ - - https://www.gktorrent.my/ - - https://www.gktorrent.cz/ - - https://www.gktorrent.ke/ - - https://www.gktorrent.cv/ - - https://wvw-gktorrent.com/ - -caps: - categorymappings: - - {id: Films, cat: Movies, desc: "Movies"} - - {id: Vidéos, cat: Movies, desc: "Vidéos"} - - {id: Animes, cat: TV/Anime, desc: "Anime"} - - {id: Séries, cat: TV, desc: "TV Series"} - - {id: Spectacles, cat: TV, desc: "TV Shows"} - - {id: Documentaires, cat: TV/Documentary, desc: "Documentaries"} - - {id: Sports, cat: TV/Sport, desc: "Sport"} - - {id: Musiques, cat: Audio, desc: "Music"} - - {id: Ebooks, cat: Books, desc: "Books"} - - {id: Livres, cat: Books, desc: "Books"} - - {id: Logiciels, cat: PC, desc: "Software"} - - {id: Jeux-PC, cat: PC/Games, desc: "PC Games"} - - {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"} - - {id: Porno, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: info_flaresolverr - type: info_flaresolverr - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - -download: - selectors: - - selector: a[href^="magnet:?"] - attribute: href - - selector: script:contains("magnet:?") - filters: - - name: regexp - args: "\\s'(magnet:\\?.+?)';" - -search: - paths: - - path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}home{{ end }}" - keywordsfilters: - # if searching for season packs swith S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "saison $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "saison $2"] - - rows: - selector: table.table-hover > tbody > tr:has(td a[href]) - - fields: - category: - selector: td:nth-child(1) > i - attribute: class - title_phase1: - selector: td:nth-child(1) a - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b(19|20\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details: - selector: td:nth-child(1) a - attribute: href - filters: - - name: regexp - args: (/?detail/\d+) - download: - text: "{{ .Result.details }}" - size: - selector: td:nth-child(2) - date: - text: now - seeders: - selector: td:nth-child(3) - leechers: - selector: td:nth-child(4) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/glodls.yml b/config/prowlarr/Definitions/glodls.yml deleted file mode 100644 index aecdd2a4..00000000 --- a/config/prowlarr/Definitions/glodls.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -id: glodls -name: GloDLS -description: "GloDLS is a Public Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: public -encoding: UTF-8 -links: - - https://glodls.to/ - - https://gtso.cc/ - - https://glodls.unblockninja.com/ -legacylinks: - - https://glodls.rocks/ - - https://gtdb.to/ - - https://gtdb.cc/ - - https://www.gtdb.to/ - - https://glotorrents.mrunblock.bond/ - - https://glotorrents.nocensor.cloud/ - - https://glodls.ninjaproxy1.com/ # blank - - https://glotorrents.unblockit.download/ - -caps: - categorymappings: - - {id: 50, cat: XXX, desc: "XXX"} - - {id: 5, cat: PC/Mobile-Android, desc: "Android"} - - {id: 28, cat: TV/Anime, desc: "Anime"} - - {id: 18, cat: PC, desc: "Apps"} - - {id: 51, cat: Books/EBook, desc: "Books"} - - {id: 73, cat: XXX, desc: "Desi Porn"} - - {id: 75, cat: Audio/Lossless, desc: "FLAC"} - - {id: 10, cat: PC/Games, desc: "Games"} - - {id: 55, cat: PC/Mac, desc: "Macintosh"} - - {id: 52, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 22, cat: Audio, desc: "Music"} - - {id: 33, cat: Other, desc: "Other"} - - {id: 72, cat: TV, desc: "Packs"} - - {id: 70, cat: Other, desc: "Pictures"} - - {id: 76, cat: TV/Sport, desc: "Sports"} - - {id: 74, cat: Books, desc: "Tutorials"} - - {id: 41, cat: TV, desc: "TV"} - - {id: 71, cat: Audio/Video, desc: "Videos"} - - {id: 54, cat: PC/0day, desc: "Windows"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -search: - paths: - # https://glodls.to/search_results.php?c1=1&c72=1&c41=1&search=blacklist+s07e05&cat=0&incldead=1&inclexternal=0&lang=0&sort=id&order=desc - - path: search_results.php - allowEmptyInputs: true - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - cat: 0 - # 0 active 1 incldead 2 onlydead - incldead: 1 - # 0 both 1 local 2 external - inclexternal: 0 - # 0 all 1 english etc - lang: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table.ttable_headinner tr.t-row - after: 1 - - fields: - category_optional: - selector: a[href^="/search.php?cat="] - attribute: href - optional: true - filters: - - name: querystring - args: cat - category: - text: "{{ if .Result.category_optional }}{{ .Result.category_optional }}{{ else }}33{{ end }}" - title: - selector: td:nth-child(2) a[title] - attribute: title - details: - selector: td:nth-child(2) a[title] - attribute: href - download: - selector: a[href^="/down.php?id="], a[href*="itorrents.org/torrent/"] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - size: - selector: td:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - date: - text: now - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/goodtracker.yml b/config/prowlarr/Definitions/goodtracker.yml deleted file mode 100644 index 0f35cd5c..00000000 --- a/config/prowlarr/Definitions/goodtracker.yml +++ /dev/null @@ -1,155 +0,0 @@ ---- -id: goodtracker -name: GOOD tracker -description: "GOOD tracker is a RUSSIAN Semi-Private Torrent Tracker for MOVIES / TV / GENERAL" -language: ru-RU -type: semi-private -encoding: windows-1251 -links: - - http://good73.net/ # does not support https - -caps: - categorymappings: - - {id: 1, cat: PC/ISO, desc: "Приложения ISO"} - - {id: 9, cat: Books, desc: "Документация"} - - {id: 5, cat: PC/Games, desc: "Игры PC"} - - {id: 10, cat: Audio, desc: "Музыка"} - - {id: 11, cat: TV, desc: "Сериалы"} - - {id: 12, cat: TV/Anime, desc: "Аниме"} - - {id: 13, cat: Movies/DVD, desc: "Фильмы DVDRip"} - - {id: 14, cat: Movies/HD, desc: "Фильмы HDRip"} - - {id: 15, cat: Movies/DVD, desc: "Фильмы DVD"} - - {id: 21, cat: Movies/Other, desc: "Мультфильмы"} - - {id: 16, cat: Books/EBook, desc: "Книги"} - - {id: 18, cat: PC, desc: "Софт"} - - {id: 20, cat: Other, desc: "Temp"} - - {id: 22, cat: Console/PSP, desc: "SONY PSP"} - - {id: 23, cat: TV/Documentary, desc: "Документальные фильмы"} - - {id: 25, cat: Audio, desc: "Многоканальная музыка"} - - {id: 26, cat: TV/Sport, desc: "Спорт"} - - {id: 28, cat: Console/XBox, desc: "PlayStation/X-Box"} - - {id: 29, cat: PC/Mobile-Other, desc: "Мобильные устройства"} - - {id: 30, cat: Other, desc: "Клипы"} - - {id: 31, cat: Other, desc: "*nix"} - - {id: 34, cat: Audio/Audiobook, desc: "Аудиокниги"} - - {id: 35, cat: Audio/Video, desc: "Музыкальное DVD"} - - {id: 36, cat: Movies/3D, desc: "Фильмы 3D"} - - {id: 37, cat: Movies/HD, desc: "Фильмы HD/BD"} - - {id: 38, cat: Other, desc: "Обучающие материалы"} - - {id: 39, cat: Other, desc: "Фильмографии"} - - {id: 40, cat: Other, desc: "Трейлеры"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - book-search: [q] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 1: title - 4: added - 5: size - 7: seeders - - 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 Торрентов на страницу: setting to 100 on your account profile. - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - submit: Вход! - error: - - selector: div.error:contains("Ошибка входа") - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # http://good73.net/browse.php?c9=1&search=&incldead=1&cat=0&browse=&sort=7&type=desc - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead, 3 silver, 4 gold, 5 noseed, 6 dead for over 30 days - incldead: "{{ if .Config.freeleech }}4{{ else }}1{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - # site does not support imdbid searching or have imdbid in results - - rows: - selector: tbody[id="highlighted"] > tr:has(a[href^="details.php?id="]) - after: 1 - filters: - - name: andmatch - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href*="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - date: - # 2023-10-06 09:48:07 - selector: font:contains("-") - filters: - - name: regexp - args: "(\\d{4}-\\d{2}-\\d{2}\\s\\d{2}:\\d{2}:\\d{2}) |" - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - files: - selector: td:nth-child(4) - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - img[src="pic/freedownload.gif"]: 0 - img[src="pic/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - text: 1 -# TBDEV custom v2.0 diff --git a/config/prowlarr/Definitions/greekdiamond.yml b/config/prowlarr/Definitions/greekdiamond.yml deleted file mode 100644 index 6aaa2310..00000000 --- a/config/prowlarr/Definitions/greekdiamond.yml +++ /dev/null @@ -1,189 +0,0 @@ ---- -id: greekdiamond -name: GreekDiamond -description: "GreekDiamond is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL" -language: el-GR -type: private -encoding: UTF-8 -links: - - https://greekdiamond.info/ - -caps: - categorymappings: - # TV - - {id: 22, cat: TV, desc: "TV Greek series"} - - {id: 23, cat: TV, desc: "TV series packs"} - # Movies - - {id: 21, cat: Movies, desc: "Movies World series"} - - {id: 12, cat: Movies/DVD, desc: "Movies DVDRIp"} - - {id: 13, cat: Movies/HD, desc: "Movies Hd rip x264"} - - {id: 14, cat: Movies/SD, desc: "Movies Cam-Ts-R6"} - - {id: 10, cat: Movies/HD, desc: "Movies 720p-1080p"} - - {id: 16, cat: Movies/BluRay, desc: "Movies Blue Ray"} - - {id: 17, cat: Movies, desc: "Movies pack"} - - {id: 18, cat: TV/Documentary, desc: "TV Documentary"} - - {id: 19, cat: Movies, desc: "Movies Greek"} - - {id: 51, cat: TV, desc: "TV Greek Packs"} - - {id: 52, cat: Movies, desc: "Movies Greek Packs"} - - {id: 53, cat: Movies/HD, desc: "BDRIP-BRRIP"} - # Music - - {id: 24, cat: Audio, desc: "Music Greek"} - - {id: 25, cat: Audio, desc: "Music Greek discografy"} - - {id: 26, cat: Audio, desc: "Music Rock"} - - {id: 27, cat: Audio, desc: "Music Rock discografy"} - - {id: 28, cat: Audio, desc: "Music Compat Disc Club"} - - {id: 29, cat: Audio, desc: "Music HipHop/Rap/RnB"} - - {id: 30, cat: Audio, desc: "Music Pop/Electronic"} - - {id: 31, cat: Audio, desc: "Music Soundtracks-VArtists"} - - {id: 32, cat: Audio/Video, desc: "Music videos"} - - {id: 50, cat: Audio/Other, desc: "Music Διάφορα (Other)"} - # Games - - {id: 33, cat: PC/Games, desc: "Games PC"} - - {id: 34, cat: Console/PSP, desc: "Games Playstation/PSP"} - - {id: 35, cat: Console/XBox, desc: "Games Xbox"} - # Children - - {id: 36, cat: TV/Anime, desc: "Anime /Μεταγλωτισμένα"} - - {id: 37, cat: TV/Anime, desc: "Anime /Subtitled"} - # Books - - {id: 40, cat: Books/Comics, desc: "Comics"} - - {id: 41, cat: Books/Mags, desc: "Magazines"} - - {id: 42, cat: Books/EBook, desc: "E-books"} - - {id: 43, cat: Books/EBook, desc: "PDF"} - # Other - - {id: 44, cat: Other, desc: "Images"} - - {id: 45, cat: TV/Sport, desc: "Football Leagues"} - - {id: 46, cat: TV/Sport, desc: "Formula 1"} - # Apps - - {id: 48, cat: PC/0day, desc: "Apps Win"} - - {id: 8, cat: PC, desc: "Apps Linux"} - - {id: 9, cat: PC/Mac, desc: "Apps Mac"} - - {id: 49, cat: PC/Mobile-Other, desc: "Apps Mobile"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: uid - type: text - label: Username - - name: pwd - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - form: form[action="index.php?page=login"] - inputs: - uid: "{{ .Config.uid }}" - pwd: "{{ .Config.pwd }}" - error: - - selector: form[action="index.php?page=login&returnto=index.php"] table tr:nth-of-type(2) td span - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: index.php - inputs: - page: torrents - search: "{{ .Keywords }}" - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 title 1 title&descr 2 descr - options: 0 - # 0 all, 1 activeonly, 2 deadonly - active: 0 - # 0 all, 1 classic, 2 silver, 3 gold, 4 silver&gold - gold: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}" - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # does not support imdbid search and does not ruturn imdb link in results - - rows: - selector: table > tbody > tr > td > table.lista > tbody > tr:has(td[onmouseover="this.className='post'"]) - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - details: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - # some users will have an extra wait time column before the bookmark column, so we count up from the bottom - date: - selector: td:nth-last-of-type(12) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd/MM/yyyy" - seeders: - selector: td:nth-last-of-type(10) - leechers: - selector: td:nth-last-of-type(9) - grabs: - selector: td:nth-last-of-type(8) - size: - selector: td:nth-last-of-type(6) - description: - selector: td:nth-last-of-type(4) img - attribute: title - filters: - - name: prepend - args: "Language: " - downloadvolumefactor: - case: - img[src="images/freeleech.gif"]: 0 - img[src="gold/gold.gif"]: 0 - img[src="gold/slver.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# xbtit dt fm v20.0 diff --git a/config/prowlarr/Definitions/greekteam.yml b/config/prowlarr/Definitions/greekteam.yml deleted file mode 100644 index 767eeed0..00000000 --- a/config/prowlarr/Definitions/greekteam.yml +++ /dev/null @@ -1,197 +0,0 @@ ---- -id: greekteam -name: Greek Team -description: "Greek Team is a GREEK Private site for TV / MOVIES / GENERAL" -language: el-GR -type: private -encoding: windows-1253 -links: - - https://www.greek-team.cc/ -legacylinks: - - http://www.greek-team.cc/ - -caps: - categorymappings: - - {id: 9, cat: TV/Anime, desc: "Anime/Cartoon HD"} - - {id: 63, cat: TV/Anime, desc: "Anime/Cartoon HDTV"} - - {id: 35, cat: TV/Anime, desc: "Anime/Cartoon SD"} - - {id: 59, cat: TV/Anime, desc: "Anime/Cartoon SD Emb"} - - {id: 57, cat: TV/Anime, desc: "Anime/Cartoon TV"} - - {id: 46, cat: PC, desc: "Applications Linux"} - - {id: 45, cat: PC, desc: "Applications MAC"} - - {id: 23, cat: PC, desc: "Applications Windows"} - - {id: 10, cat: Books, desc: "Books/Magazines/English"} - - {id: 12, cat: Books, desc: "Books/Magazines/Greek"} - - {id: 8, cat: TV/Documentary, desc: "Documentaries"} - - {id: 5, cat: TV/Documentary, desc: "Documentaries Greek"} - - {id: 25, cat: TV/Documentary, desc: "Documentaries HD"} - - {id: 27, cat: Movies/DVD, desc: "Movies DVD-R"} - - {id: 31, cat: Console/Other, desc: "Games Other"} - - {id: 20, cat: PC/Games, desc: "Games Windows"} - - {id: 11, cat: Other, desc: "Misc"} - - {id: 47, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 53, cat: Movies/3D, desc: "Movies 3D"} - - {id: 15, cat: Movies/UHD, desc: "Movies 4K"} - - {id: 18, cat: Movies/BluRay, desc: "Movies Bluray"} - - {id: 29, cat: Movies, desc: "Movies Emb Packs"} - - {id: 19, cat: Movies/HD, desc: "Movies HD"} - - {id: 13, cat: Movies/HD, desc: "Movies HD Emb"} - - {id: 52, cat: Movies/HD, desc: "Movies HD Packs"} - - {id: 40, cat: Movies/SD, desc: "Movies SD"} - - {id: 14, cat: Movies/SD, desc: "Movies SD Emb"} - - {id: 60, cat: Movies/SD, desc: "Movies SD Packs"} - - {id: 22, cat: Audio, desc: "Music"} - - {id: 2, cat: Audio, desc: "Music Discographies"} - - {id: 48, cat: Audio, desc: "Music DJ & Promos"} - - {id: 33, cat: Audio/Lossless, desc: "Music Flac"} - - {id: 1, cat: Audio, desc: "Music Greek"} - - {id: 21, cat: Audio, desc: "Music Greek Discographies"} - - {id: 50, cat: Audio/Lossless, desc: "Music Greek Flac"} - - {id: 16, cat: Audio/Video, desc: "Music Videos"} - - {id: 6, cat: TV/Sport, desc: "Sports"} - - {id: 54, cat: TV/Sport, desc: "Sports HD"} - - {id: 55, cat: TV/SD, desc: "TV Greek Movies"} - - {id: 49, cat: TV/HD, desc: "TV Greek Movies HD"} - - {id: 3, cat: TV/SD, desc: "TV Greek Series"} - - {id: 44, cat: TV/SD, desc: "TV Greek Packs"} - - {id: 4, cat: TV/SD, desc: "TV Greek Shows"} - - {id: 34, cat: TV/SD, desc: "TV Series"} - - {id: 7, cat: TV/SD, desc: "TV Series Emb"} - - {id: 26, cat: TV/SD, desc: "TV Series Emb Packs"} - - {id: 36, cat: TV/HD, desc: "TV Series HD"} - - {id: 62, cat: TV/HD, desc: "TV Series HD Packs"} - - {id: 42, cat: TV/SD, desc: "TV Series Packs"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: DESC - options: - DESC: desc - ASC: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. The default is 25. - -login: - path: login.php - method: post - inputs: - take_login: 1 - logout: no - 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 }}c{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - # 0 active, 1 incldead, 2 onlydead, 3 free (gold) - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - # 0 name, 1 descr, 2 uploader - blah: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - d: "{{ .Config.type }}" - # does not show IMDB but can support searching with it in descriptions - - rows: - selector: table.row1 > tbody > tr:has(a.torname) - - fields: - _id: - selector: a.torname - attribute: href - filters: - - name: querystring - args: id - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a.torname - details: - selector: a.torname - attribute: href - download: - text: "download2.php?torrent={{ .Result._id }}" - files: - selector: td:has(a[href$="filelist=1"]) - date: - selector: td:has(a[href$="filelist=1"]) ~ td ~ td > nobr - filters: - - name: append - args: " +02:00" # EET - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss zzz" - size: - selector: td:has(a[href$="filelist=1"]) ~ td ~ td ~ td ~ td - grabs: - selector: td:has(a[href$="filelist=1"]) ~ td ~ td ~ td ~ td ~ td - seeders: - selector: td:has(a[href$="filelist=1"]) ~ td ~ td ~ td ~ td ~ td ~ td - leechers: - selector: td:has(a[href$="filelist=1"]) ~ td ~ td ~ td ~ td ~ td ~ td ~ td - optional: true - default: 0 - description: - case: - img[src="pic/checked2.png"]: Verified - img[src="pic/notchecked.png"]: Unverified - downloadvolumefactor: - case: - img[src="pic/free.png"]: 0 - img[src="pic/freedownload.gif"]: 0 # freeleech slot exchange - img[src="pic/personal_free.png"]: 0 # applies to VIPs only - "*": 1 - uploadvolumefactor: - case: - img[src="pic/x2new.png"]: 0 # double uploaded with a freleech slot exchange - "*": 1 - minimumratio: - case: - img[src="pic/hnrfree.png"]: 0 # exempt from H&R - img[src="pic/hnr-50.png"]: 0.5 # min ratio is 0.5 - "*": 0.5 # rules say 0.3 but FAQ says 0.4 but H&R says 0.5 !#? - minimumseedtime: - case: - img[src="pic/hnrfree.png"]: 0 # exempt from H&R - "*": 432000 # 5 days (as seconds = 5 x 24 x 60 x 60) -# engine n/a diff --git a/config/prowlarr/Definitions/h-p2p.yml b/config/prowlarr/Definitions/h-p2p.yml deleted file mode 100644 index c154ca12..00000000 --- a/config/prowlarr/Definitions/h-p2p.yml +++ /dev/null @@ -1,167 +0,0 @@ ---- -id: h-p2p -name: H-P2P -description: "H-P2P is a Private Torrent Tracker for OnlyFans XXX" -language: en-US -type: private -encoding: UTF-8 -links: - - https://h-p2p.xyz/ -legacylinks: - - https://h-p2p.cam/ - -caps: - categorymappings: - - {id: 1, cat: XXX/WEB-DL, desc: "OnlyFans"} - - {id: 2, cat: XXX/WEB-DL, desc: "Fansly"} - - {id: 3, cat: XXX/WEB-DL, desc: "Privacy"} - - {id: 4, cat: XXX/WEB-DL, desc: "JustForFans"} - - {id: 5, cat: XXX/WEB-DL, desc: "ManyVids"} - - {id: 6, cat: XXX/WEB-DL, desc: "Clips4Sale"} - - {id: 7, cat: XXX/WEB-DL, desc: "Hentai"} - - {id: 8, cat: XXX/WEB-DL, desc: "JAV"} - - {id: 9, cat: XXX/WEB-DL, desc: "Paid Site"} - - {id: 10, cat: XXX/WEB-DL, desc: "HomeMade"} - - {id: 11, cat: XXX/WEB-DL, desc: "Other"} - - {id: 27, cat: XXX/WEB-DL, desc: "Gay"} - - {id: 28, cat: XXX/WEB-DL, desc: "XXX Movie"} - - modes: - search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your H-P2P account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 75 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - _id: - selector: ..id - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - text: "{{ .Config.sitelink }}files/img/torrent-cover_{{ .Result._id }}.jpg" - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# json UNIT3D 8.1.3 (custom) diff --git a/config/prowlarr/Definitions/haresclub.yml b/config/prowlarr/Definitions/haresclub.yml deleted file mode 100644 index e6f28b3c..00000000 --- a/config/prowlarr/Definitions/haresclub.yml +++ /dev/null @@ -1,195 +0,0 @@ ---- -id: haresclub -name: Hares Club (白兔俱乐部) -description: "Hares Club (白兔俱乐部) is a CHINESE Private site that focuses on 4K media." -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://club.hares.top/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies | 电影"} - - {id: 402, cat: TV, desc: "TV Series | 电视剧"} - - {id: 403, cat: TV, desc: "TV Shows | 综艺"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries | 纪录片"} - - {id: 405, cat: TV/Anime, desc: "Animations | 动漫"} - - {id: 406, cat: Audio/Video, desc: "Music Videos | 音乐视频"} - - {id: 407, cat: TV/Sport, desc: "Sports | 体育"} - - {id: 409, cat: Audio/Video, desc: "Concert | 演唱会"} - - {id: 416, cat: TV, desc: "Show LIVE | 现场LIVE"} - - {id: 415, cat: Other, desc: "Others | 其他"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the Hares Club 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 Torrents per page: setting to 100 on your account profile. - -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: script:contains("'失败'") - message: - text: "图片代码无效!The Image code is invalid. Close the config and start again." - - selector: script:contains("'登录失败!'") - message: - text: "用户名或密码不正确!或者你还没有通过验证。The username or password is incorrect! Close the config and start again." - 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 .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ 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 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*="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: div.layui-torrents-Stills > a - attribute: rel - filters: - - name: replace - args: ["re.php?cache=", ""] - date_elapsed: - # time type: time elapsed (default) - selector: td:nth-last-child(6) > 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:nth-last-child(6):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:nth-last-child(5) - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - grabs: - selector: td:nth-last-child(2) - 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_text: - selector: td:nth-child(2) - remove: a, b, font, img, span - description: - case: - i.fa-check: "Verified: {{ .Result.description_text }}" - i.fa-question: "Unverified: {{ .Result.description_text }}" - i.fa-times: "Banned: {{ .Result.description_text }}" -# NexusPHP v1.6.2 2022-03-19 diff --git a/config/prowlarr/Definitions/hd4fans.yml b/config/prowlarr/Definitions/hd4fans.yml deleted file mode 100644 index cbffdbdb..00000000 --- a/config/prowlarr/Definitions/hd4fans.yml +++ /dev/null @@ -1,189 +0,0 @@ ---- -id: hd4fans -name: HD4FANS -description: "HD4FANS is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://pt.hd4fans.org/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries"} - - {id: 405, cat: TV/Anime, desc: "Animations"} - - {id: 402, cat: TV, desc: "TV Series"} - - {id: 403, cat: TV, desc: "TV Shows"} - - {id: 406, cat: Audio/Video, desc: "Music Videos"} - - {id: 407, cat: TV/Sport, desc: "Sports"} - - {id: 409, cat: Other, desc: "Misc"} - - {id: 408, cat: Audio, desc: "Music"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the Free Farm 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 Torrents per page: setting to 100 on your account profile. - -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 - description: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.8 2023-09-25 diff --git a/config/prowlarr/Definitions/hdatmos.yml b/config/prowlarr/Definitions/hdatmos.yml deleted file mode 100644 index 4ec26d8f..00000000 --- a/config/prowlarr/Definitions/hdatmos.yml +++ /dev/null @@ -1,198 +0,0 @@ ---- -id: hdatmos -name: HDAtmos -description: "HDAtmos is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://hdatmos.club/ - -caps: - # dont forget to update the path categories in the search block - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影", default: true} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片", default: true} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫", default: true} - - {id: 402, cat: TV, desc: "TV Series/电视剧", default: true} - - {id: 406, cat: Audio/Video, desc: "Music Videos/MV演唱会", default: true} - - {id: 407, cat: TV/Sport, desc: "Sports/体育", default: true} - - {id: 408, cat: Audio, desc: "HQ Audio/音乐", default: true} - - {id: 416, cat: Audio, desc: "洗版区/音乐", default: false} - - {id: 415, cat: TV/Sport, desc: "洗版区/体育", default: false} - - {id: 414, cat: Audio/Video, desc: "洗版区/MV演唱会", default: false} - - {id: 413, cat: TV/Anime, desc: "洗版区/动漫", default: false} - - {id: 412, cat: TV, desc: "洗版区/电视剧", default: false} - - {id: 411, cat: TV/Documentary, desc: "洗版区/纪录片", default: false} - - {id: 410, cat: Movies, desc: "洗版区/电影", default: false} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the HDAtmos 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Veteran User or above would never be deleted.
  2. Elite User or above would never be deleted if parked (at User CP).
  3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row.
  4. Unparked accounts would be deleted if users have not logged in for more than 150 days in a row.
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
" - - name: info_special - type: info - label: Special Categories - default: "Only Power User or above can view Special section. Searching for 洗版区 categories by users below this class will result in search errors." - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img[alt="CAPTCHA"] - input: imagestring - inputs: - secret: "" - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - two_step_code: "{{ .Config.2facode }}" - logout: "" - securelogin: "" - ssl: yes - trackerssl: yes - error: - - selector: td.embedded:has(h2:contains("失败")) - message: - selector: td.text - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 404, 405, 402, 406, 407, 408] - - path: special.php - categories: [416, 415, 414, 413, 412, 411, 410] - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% - spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 title, 1 descr, 3 uploader, 4 imdburl - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td: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: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.12 2024-07-13 diff --git a/config/prowlarr/Definitions/hdchina.yml b/config/prowlarr/Definitions/hdchina.yml deleted file mode 100644 index 2843aceb..00000000 --- a/config/prowlarr/Definitions/hdchina.yml +++ /dev/null @@ -1,143 +0,0 @@ ---- -id: hdchina -name: HDChina -description: "HDChina (HDWing) is a CHINESE Private Torrent Tracker for HD MOVIES / TV" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://hdchina.org/ -legacylinks: - - https://hdchina.club/ - -caps: - categorymappings: - - {id: 20, cat: Movies/BluRay, desc: "Movie Full BD/原盘"} - - {id: 17, cat: Movies/HD, desc: "Movie 1080p/电影"} - - {id: 16, cat: Movies/HD, desc: "Movie 1080i/电影"} - - {id: 9, cat: Movies/HD, desc: "Movie 720p/电影"} - - {id: 13, cat: TV, desc: "EU/US TV series/欧美剧"} - - {id: 25, cat: TV, desc: "Chinese TV series/中港台剧集"} - - {id: 26, cat: TV, desc: "Kor Drama/韩剧"} - - {id: 24, cat: TV, desc: "Jpn Drama/日剧"} - - {id: 21, cat: TV, desc: "EU/US TV series pack/欧美剧集包"} - - {id: 22, cat: TV, desc: "Chinese TV series pack/中港台剧集包"} - - {id: 23, cat: TV, desc: "JPN/KOR drama pack/日韩剧集包"} - - {id: 27, cat: Movies/SD, desc: "iPad Video/iPad视频"} - - {id: 5, cat: TV/Documentary, desc: "Documentary/纪录片"} - - {id: 15, cat: TV/Sport, desc: "Sports/体育节目"} - - {id: 14, cat: TV/Anime, desc: "Animation/动画片"} - - {id: 401, cat: TV, desc: "TV Shows/综艺"} - - {id: 402, cat: Audio, desc: "Vocal Concert/演唱会"} - - {id: 406, cat: Audio, desc: "Music Video/MV"} - - {id: 408, cat: Audio, desc: "Music/音乐"} - - {id: 19, cat: Audio, desc: "Audio Track/补充音轨"} - - {id: 405, cat: Audio, desc: "Drama/戏剧"} - - {id: 404, cat: Books, desc: "Book/书籍"} - - {id: 409, cat: Other, desc: "Other/其他"} - - {id: 410, cat: Movies/HD, desc: "4K UltraHD"} - - {id: 411, cat: TV, desc: "Travel/旅游"} - - {id: 412, cat: TV, desc: "Food/饮食"} - - 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 - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: torrents.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 }}{{ .Keywords }}{{ end }}" - # 0=incldead, 1=active, 2=dead - incldead: 0 - # 0=all, 1=normal, 2=free, 3=2x, 4=2x free, 5=50%, 6=2x 50%, 7=30% - spstate: 0 - # 0=title, 1=descr, 3=uploader, 4=imdb URL - search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}" - # 0=AND, 1=OR, 2=Exact - search_mode: 0 - notnewword: 1 - - rows: - selector: table.torrent_list > tbody > tr:has(a[href^="?cat="]) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - filters: - - name: re_replace - args: ["\\.", " "] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?hash="] - attribute: href - description: - selector: h4 - size: - selector: td.t_size - grabs: - selector: td.t_completed - seeders: - selector: td.t_torrents - leechers: - selector: td.t_leech - date_elapsed: - # time type: time elapsed (default) - selector: td.t_time > 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.t_time: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 }}" - downloadvolumefactor: - # DLVF and ULVF are dynamically presented via javascript so not available to cardigann - text: 1 - uploadvolumefactor: - text: 1 -# NexusPHP 4e16128 (Customised) diff --git a/config/prowlarr/Definitions/hdfun.yml b/config/prowlarr/Definitions/hdfun.yml deleted file mode 100644 index 64b4427b..00000000 --- a/config/prowlarr/Definitions/hdfun.yml +++ /dev/null @@ -1,227 +0,0 @@ ---- -id: hdfun -name: HDFun -description: "HDFun (HDZone) is a CHINESE Private Torrent Tracker for HD MOVIES / TV" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://hdzone.me/ -legacylinks: - - https://hdfun.me/ - -caps: - categorymappings: - - {id: 411, cat: Movies/SD, desc: "Movies SD"} - - {id: 412, cat: Movies, desc: "Movies IPad"} - - {id: 413, cat: Movies/HD, desc: "Movies 720p"} - - {id: 414, cat: Movies/HD, desc: "Movies 1080p"} - - {id: 415, cat: Movies, desc: "Movies REMUX"} - - {id: 450, cat: Movies/BluRay, desc: "Movies Bluray"} - - {id: 499, cat: Movies/UHD, desc: "Movies UHD Blu-ray"} - - {id: 416, cat: Movies/UHD, desc: "Movies 2160p"} - - {id: 417, cat: TV/Documentary, desc: "Doc SD"} - - {id: 418, cat: TV/Documentary, desc: "Doc IPad"} - - {id: 419, cat: TV/Documentary, desc: "Doc 720p"} - - {id: 420, cat: TV/Documentary, desc: "Doc 1080p"} - - {id: 421, cat: TV/Documentary, desc: "Doc REMUX"} - - {id: 451, cat: TV/Documentary, desc: "Doc Bluray"} - - {id: 500, cat: TV/Documentary, desc: "Doc UHD Blu-ray"} - - {id: 422, cat: TV/Documentary, desc: "Doc 2160p"} - - {id: 423, cat: Audio/Video, desc: "TVMusic 720p"} - - {id: 424, cat: Audio/Video, desc: "TVMusic 1080i"} - - {id: 425, cat: TV/SD, desc: "TVShow SD"} - - {id: 426, cat: TV, desc: "TVShow IPad"} - - {id: 471, cat: TV, desc: "TVShow IPad"} - - {id: 427, cat: TV/HD, desc: "TVShow 720p"} - - {id: 472, cat: TV/HD, desc: "TVShow 720p"} - - {id: 428, cat: TV/HD, desc: "TVShow 1080i"} - - {id: 429, cat: TV/HD, desc: "TVShow 1080p"} - - {id: 430, cat: TV, desc: "TVShow REMUX"} - - {id: 452, cat: TV/HD, desc: "TVShow Bluray"} - - {id: 431, cat: TV/UHD, desc: "TVShow 2160p"} - - {id: 432, cat: TV/SD, desc: "TVSeries SD"} - - {id: 433, cat: TV, desc: "TVSeries IPad"} - - {id: 434, cat: TV/HD, desc: "TVSeries 720p"} - - {id: 435, cat: TV/HD, desc: "TVSeries 1080i"} - - {id: 436, cat: TV/HD, desc: "TVSeries 1080p"} - - {id: 437, cat: TV, desc: "TVSeries REMUX"} - - {id: 453, cat: TV/HD, desc: "TVSeries Bluray"} - - {id: 438, cat: TV/UHD, desc: "TVSeries 2160p"} - - {id: 439, cat: Audio, desc: "Music APE"} - - {id: 440, cat: Audio/Lossless, desc: "Music FLAC"} - - {id: 441, cat: Audio/Video, desc: "Music MV"} - - {id: 442, cat: TV/Sport, desc: "Sports 720p"} - - {id: 443, cat: TV/Sport, desc: "Sports 1080i"} - - {id: 444, cat: TV/Anime, desc: "Anime SD"} - - {id: 445, cat: TV/Anime, desc: "Anime IPad"} - - {id: 446, cat: TV/Anime, desc: "Anime 720p"} - - {id: 447, cat: TV/Anime, desc: "Anime 1080p"} - - {id: 448, cat: TV/Anime, desc: "Anime REMUX"} - - {id: 454, cat: TV/Anime, desc: "Anime Bluray"} - - {id: 409, cat: Other, desc: "Misc"} - - {id: 449, cat: TV/Anime, desc: "Anime 2160p"} - - {id: 501, cat: TV/Anime, desc: "Anime UHD Blu-ray"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Nexus Master or above would never be deleted
  2. Insane User or above would never be deleted if parked (at User CP)
  3. Parked accounts would be deleted if users have not logged in for more than 120 days in a row
  4. Un-parked accounts would be deleted if users have not logged in for more than 60 days in a row
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 7 days in a row.
" - -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 }}" - logout: "" - securelogin: "" - ssl: yes - trackerssl: yes - error: - - selector: td.embedded:has(h2:contains("失败")) - test: - path: torrents.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - # currently supports only one query id at one time. - 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 onlydead - 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 imdb - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 1 OR, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img.pro_free: 0 - img.pro_free2up: 0 - img.pro_50pctdown: 0.5 - img.pro_50pctdown2up: 0.5 - img.pro_30pctdown: 0.3 - "*": 1 - uploadvolumefactor: - case: - img.pro_50pctdown2up: 2 - img.pro_free2up: 2 - img.pro_2up: 2 - "*": 1 - minimumratio: - text: 1.2 -# does not appear to be implemented, no h&r tag found -# minimumseedtime: -# # 14 days (as seconds = 2 x 24 x 60 x 60) -# text: 1209600 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP Standard v1.5 Beta 4 diff --git a/config/prowlarr/Definitions/hdmayi.yml b/config/prowlarr/Definitions/hdmayi.yml deleted file mode 100644 index d5f721ee..00000000 --- a/config/prowlarr/Definitions/hdmayi.yml +++ /dev/null @@ -1,209 +0,0 @@ ---- -id: hdmayi -name: HDMaYi (小蚂蚁PT站) -description: "HDMaYi (小蚂蚁PT站) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://hdmayi.com/ -legacylinks: - - http://hdmayi.com/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 406, cat: Audio/Video, desc: "MusicVideo/MV"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 409, cat: Other, desc: "Misc/其他"} - - {id: 408, cat: Audio, desc: "Music/音乐"} - - {id: 410, cat: PC, desc: "Softs/软件"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the HDMaYi 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Veteran User or above would never be deleted
  2. Elite User or above would never be deleted if parked (at User CP)
  3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row
  4. Un-parked accounts would be deleted if users have not logged in for more than 150 days in a row
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
" - -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 (4 does not appear to work) - 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 - minimumratio: - text: 1.0 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 - 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.8.6 2023-08-18 diff --git a/config/prowlarr/Definitions/hdonly.yml b/config/prowlarr/Definitions/hdonly.yml deleted file mode 100644 index 2dbc05c7..00000000 --- a/config/prowlarr/Definitions/hdonly.yml +++ /dev/null @@ -1,321 +0,0 @@ ---- -id: hdonly -name: HD-Only -description: "HD-Only (HD-O) is a FRENCH Private Torrent Tracker for HD MOVIES / TV" -language: fr-FR -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://hd-only.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Films"} - - {id: 2, cat: TV, desc: "Séries"} - # Fake ids to match release types by desc - - {id: 101, cat: Movies, desc: "Film"} - - {id: 103, cat: Movies/Other, desc: "Dessin animé"} - - {id: 105, cat: TV, desc: "Série"} - - {id: 106, cat: TV/Anime, desc: "Série Animée"} - - {id: 107, cat: Movies/Other, desc: "Film d'animation"} - - {id: 109, cat: Audio/Video, desc: "Concert"} - - {id: 111, cat: TV/Documentary, desc: "Documentaire"} - - {id: 113, cat: Movies/Other, desc: "Court-métrage"} - - {id: 114, cat: Movies/Other, desc: "Clip"} - - {id: 115, cat: Movies/Other, desc: "Démonstration"} - - {id: 121, cat: Other, desc: "Autre"} - - modes: - search: [q] - tv-search: [q, season, ep, tmdbid, genre] - movie-search: [q, tmdbid, genre] - allowrawsearch: true - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2fa_code - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the HD-Only Web Site. Otherwise just leave it empty." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: add_hybrid_features_to_filename - type: checkbox - label: Include DV/HDR10 in filename when a release has multiple HDR formats. - default: false - - name: add_version_francophone_to_title - type: checkbox - label: Append Version Francophone flags to titles if available (VFF, VFQ, VFI, VF) - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi.FRENCH: MULTi.FRENCH - ENGLISH: ENGLISH - MULTi.ENGLISH: MULTi.ENGLISH - VOSTFR: VOSTFR - MULTi.VOSTFR: MULTi.VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: 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 - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - twofa: "{{ .Config.2fa_code }}" - keeplogged: 1 - error: - - selector: form#loginform > span.warning - test: - path: torrents.php - selector: a[href^="logout.php?auth="] - -search: - # https://hd-only.org/ajax.php?filelist=blood+2009&action=browse&group_results=0&order_by=time&order_way=desc&freetorrent=1 - paths: - - path: ajax.php - response: - type: json - - inputs: - # does not support categories, uses releasetype for single filter, so we cannot do multi releasetype filtering either. - # $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - searchstr: "{{ .Keywords }}" - tmdb: "{{ .Query.TMDBID }}" - taglist: "{{ .Query.Genre }}" - action: browse - group_results: 0 - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - # 1 freeleech, 0 normal - freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - # site does not support imdbid search or display imdb links in results - - keywordsfilters: - # strip season - - name: re_replace - args: ["(?i)\\bS\\d{1,3}\\b", ""] - - name: trim - - rows: - selector: response.results - - fields: - _group_id: - selector: group.groupId - _torrent_id: - selector: torrentId - category: - selector: group.categoryId - categorydesc|append: - selector: group.releaseType - optional: true - details: - text: "torrents.php?id={{ .Result._group_id }}&torrentid={{ .Result._torrent_id }}" - download: - text: "torrents.php?action=download&id={{ .Result._torrent_id }}" - genre: - selector: group.tags - filters: - - name: re_replace - args: ["(?i)(science.fiction)", "science_fiction"] - poster: - selector: group.cover - optional: true - tmdbid: - selector: group.tmdb - files: - selector: fileCount - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: snatches - size: - selector: size - date: - selector: time - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - year: - selector: group.groupYear - optional: true - _season: - selector: season - optional: true - filters: - - name: re_replace - args: ["^0$", ""] - - name: re_replace - args: ["^([1-9])$", "S0$1"] - - name: re_replace - args: ["^(\\d{2,})$", "S$1"] - _episode: - selector: episode - optional: true - filters: - - name: re_replace - args: ["^0$", ""] - - name: re_replace - args: ["^([1-9])$", "E0$1"] - - name: re_replace - args: ["^(\\d{2,})$", "E$1"] - _episode_info: - text: "{{ .Result._season }}{{ .Result._episode }}" - _format: - selector: format - filters: - - name: replace - args: ["Blu-Ray Original", "COMPLETE BLURAY"] - - name: re_replace - args: ["Blu-Ray Remux", "Remux"] - - name: re_replace - args: ["Blu-Ray Rip", "BluRay.Rip"] - - name: re_replace - args: ["mHD", "mHD.BluRay.Rip"] - _encoding: - selector: encoding - _release_group: - selector: team - optional: true - _media: - selector: media - optional: true - _vff: - selector: vff - optional: true - _vfq: - selector: vfq - optional: true - _vf2: - selector: vf2 - optional: true - _vfi: - selector: vfi - optional: true - _vf: - selector: vf - optional: true - _vof: - selector: vof - optional: true - _hdr: - selector: hdr - optional: true - _hdr10plus: - selector: hdr10plus - optional: true - _dovi: - selector: dovi - optional: true - title_optional: - selector: group.groupName - filters: - - name: append - args: ".{{ .Result.year }}.{{ .Result._episode_info }}.{{ .Result._format }}.{{ .Result._encoding }}.{{ .Result._media }}{{ if eq .Result._hdr \"True\" }}.HDR{{ else }}{{ end }}.{{ if eq .Result._hdr10plus \"True\" }}.HDR10+{{ else }}{{ end }}.{{ if eq .Result._dovi \"True\" }}.DoVi{{ else }}{{ end }}" - - name: append - args: "{{ if or (eq .Result._vf2 \"True\") (or (eq .Result._vff \"True\") (or (eq .Result._vfq \"True\") (or (eq .Result._vfi \"True\") (eq .Result._vf \"True\")))) }}.MULTI{{ else }}{{ end }}" - - name: re_replace - args: ["(\\.MULTI)\\1", ".MULTI"] - - name: append - args: "{{ if and (.Config.add_version_francophone_to_title) (eq .Result._vf2 \"True\") }}.VF2{{ else }}{{ end }}" - - name: append - args: "{{ if and (.Config.add_version_francophone_to_title) (eq .Result._vff \"True\") }}.VFF{{ else }}{{ end }}" - - name: append - args: "{{ if and (.Config.add_version_francophone_to_title) (eq .Result._vfq \"True\") }}.VFQ{{ else }}{{ end }}" - - name: append - args: "{{ if and (.Config.add_version_francophone_to_title) (eq .Result._vfi \"True\") }}.VFI{{ else }}{{ end }}" - - name: append - args: "{{ if and (.Config.add_version_francophone_to_title) (eq .Result._vf \"True\") }}.VF{{ else }}{{ end }}" - - name: append - args: "{{ if eq .Result._vof \"True\" }}.FRENCH{{ else }}{{ end }}" - - name: re_replace - args: ["[\\s.]+", "."] - - name: re_replace - args: ["\\.*([\\-:,])\\.*", "$1"] - - name: trim - - name: trim - args: . - - name: append - args: "{{ if .Result._release_group }}-{{ .Result._release_group }}{{ else }}{{ end }}" - title_filename: - selector: "fileName" - optional: true - filters: - - name: re_replace - args: ["\\s÷$", ""] - - name: append - args: " {{ if and (.Config.add_hybrid_features_to_filename) (eq .Result._hdr \"True\") }}[HDR]{{ else }}{{ end }}{{ if and (.Config.add_hybrid_features_to_filename) (eq .Result._hdr10plus \"True\") }}[HDR10+]{{ else }}{{ end }}{{ if and (.Config.add_hybrid_features_to_filename) (eq .Result._dovi \"True\") }}[DoVi]{{ else }}{{ end }}" - title_phase1: - text: "{{ if and (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - description: - text: "{{ .Result.title_filename }}" - filters: - - name: re_replace - args: ["\\s÷$", ""] - _free: - selector: isFreeleech - downloadvolumefactor: - text: "{{ if eq .Result._free \"True\" }}0{{ else }}1{{ end }}" - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# JSON Gazelle diff --git a/config/prowlarr/Definitions/hdpt.yml b/config/prowlarr/Definitions/hdpt.yml deleted file mode 100644 index ef595085..00000000 --- a/config/prowlarr/Definitions/hdpt.yml +++ /dev/null @@ -1,199 +0,0 @@ ---- -id: hdpt -name: HDPT (明教) -description: "HDPT (明教) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://hdpt.xyz/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 406, cat: Audio/Video, desc: "Music Videos/音乐 视频"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 409, cat: Other, desc: "Misc/其他"} - - {id: 408, cat: Audio, desc: "HQ Audio/高清音轨"} - - {id: 410, cat: PC, desc: "Software/软件"} - - {id: 411, cat: Books/EBook, desc: "E-book/电子书"} - - {id: 412, cat: Books/Comics, desc: "Comics/漫画"} - - {id: 413, cat: Other/Misc, desc: "Learning/学习资料"} - - {id: 414, cat: Console, desc: "Games/游戏"} - - {id: 415, cat: Other/Misc, desc: "gallery/图库"} - - {id: 416, cat: Audio, desc: "Quyi/曲艺"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the CarPT 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 Torrents per page: setting to 100 on your account profile. - -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 }}{{ .Keywords }}{{ 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 }}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 - minimumratio: - text: 1.0 - description: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.6 2023-08-18 diff --git a/config/prowlarr/Definitions/hdt-lafenice.yml b/config/prowlarr/Definitions/hdt-lafenice.yml deleted file mode 100644 index 2926bd00..00000000 --- a/config/prowlarr/Definitions/hdt-lafenice.yml +++ /dev/null @@ -1,167 +0,0 @@ ---- -id: hdt-lafenice -name: HDT-LaFenice -description: "HDT-LaFenice is an ITALIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: it-IT -type: private -encoding: UTF-8 -links: - - https://hdtlafenice.eu/ - -caps: - categorymappings: - - {id: 32, cat: Movies/BluRay, desc: "BluRay"} - - {id: 33, cat: Movies/UHD, desc: "Film-2160p"} - - {id: 34, cat: Movies/HD, desc: "Film-1080p"} - - {id: 35, cat: Movies/HD, desc: "Film-720p"} - - {id: 37, cat: Movies/DVD, desc: "Film-DVD"} - - {id: 50, cat: Movies/SD, desc: "Film-DVDRip"} - - {id: 48, cat: TV/Other, desc: "Cartoni"} - - {id: 39, cat: TV/Anime, desc: "Anime"} - - {id: 51, cat: Movies/SD, desc: "Film-Cine"} - - {id: 40, cat: TV/HD, desc: "TV-HD"} - - {id: 41, cat: TV/SD, desc: "TV-SD"} - - {id: 46, cat: Audio, desc: "Musica"} - - {id: 42, cat: PC/Games, desc: "PC-Giochi"} - - {id: 43, cat: PC/0day, desc: "App-Win"} - - {id: 44, cat: PC/Mac, desc: "App-Mac"} - - {id: 45, cat: PC/Mobile-Android, desc: "Android"} - - {id: 47, cat: Books/EBook, desc: "E-Book"} - - {id: 52, cat: Books/Mags, desc: "Edicola"} - - {id: 49, cat: Other, desc: "Altro"} - - 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: added - options: - added: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Inactive accounts are automatically deleted." - -login: - path: ajax/login.php - method: post - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - error: - - selector: div.error - - selector: :contains("-ERROR-") - test: - path: ?p=home&pid=1 - selector: div#member_info_bar - -search: - paths: - - path: /?p=torrents&pid=10 - method: post - keywordsfilters: - - name: re_replace - args: ["[^a-zA-Z0-9]+", "%25"] - inputs: - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - "sortOptions[sortBy]": "{{ .Config.sort }}" - "sortOptions[sortOrder]": "{{ .Config.type }}" - # does not support imdbid search but has imdbid links in results. - error: - - selector: div.error:not(:contains("There are no results found.")) - - rows: - selector: "div.torrent-box[id^=\"torrent_\"]{{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}, tr:has(a[href*=\"?p=torrents\"][href*=\"&action=details\"]){{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="?p=torrents&pid=10&cid="] - attribute: href - filters: - - name: querystring - args: cid - title: - selector: a[href*="?p=torrents&pid=10&action=details&tid="] - details: - selector: a[href*="?p=torrents&pid=10&action=details&tid="] - attribute: href - download: - selector: a[href*="?p=torrents&pid=10&action=download&tid="] - attribute: href - poster: - selector: a[href*="data/torrents/torrent_images/"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: a[rel="torrent_size"] - grabs: - selector: a[rel="times_completed"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - date_day: - selector: div.torrentOwner:contains("day") - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: fuzzytime - date_year: - selector: div.torrentOwner:contains("-") - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_unix: - selector: div.torrentOwner abbr - optional: true - attribute: data-time - date: - text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}" - downloadvolumefactor: - case: - img[src$="/torrent_free.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.8 -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/hdvbits.yml b/config/prowlarr/Definitions/hdvbits.yml deleted file mode 100644 index 9b8dded5..00000000 --- a/config/prowlarr/Definitions/hdvbits.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -id: hdvbits -name: hdvbits -description: "hdvbits is a CHINESE Private torrent tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://hdvbits.com/ - -caps: - categorymappings: - - {id: 406, cat: Audio, desc: "HQ Audio/音轨"} - - {id: 408, cat: Audio, desc: "music/音乐"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 405, cat: TV/Anime, desc: "Anime/动漫"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 401, cat: Movies, desc: "Movies/电影"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the hdvbits 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 Torrents per page: setting to 100 on your account profile. - -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(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - 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:nth-child(2) - remove: a, b, font, img, span - filters: - - name: prepend - args: "{{ .Result.description_verified }} " -# NexusPHP v1.8.4 2023-06-18 diff --git a/config/prowlarr/Definitions/hdvideo.yml b/config/prowlarr/Definitions/hdvideo.yml deleted file mode 100644 index 0697e256..00000000 --- a/config/prowlarr/Definitions/hdvideo.yml +++ /dev/null @@ -1,181 +0,0 @@ ---- -id: hdvideo -name: HDVIDEO -description: "HDVIDEO is a CHINESE Private torrent tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://hdvideo.one/ - -caps: - # dont forget to update the path categories in the search block - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影", default: true} - - {id: 402, cat: TV, desc: "TV Series/电视剧", default: true} - - {id: 403, cat: TV, desc: "TV Shows/综艺", default: true} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片", default: true} - - {id: 405, cat: TV/Anime, desc: "Anime/动漫", default: true} - - {id: 406, cat: Audio/Video, desc: "Music Videos/演唱会", default: true} - - {id: 407, cat: TV/Sport, desc: "Sports/体育", default: true} - - {id: 408, cat: Audio, desc: "HQ Audio/音乐", default: true} - - {id: 409, cat: PC, desc: "3D模型", default: false} - - 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Accounts inactive (i.e. not logged in for a long time) are automatically deleted." - -login: - # switched from form method to cookie method when it was restored the second time #15071 reason was not recorded - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 402, 403, 404, 405, 406, 407, 408] - - path: special.php - categories: [409] - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% - spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 title, 1 descr, 3 uploader, 4 imdburl - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - 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:nth-child(2) - remove: a, b, font, img, span - filters: - - name: prepend - args: "{{ .Result.description_verified }} " -# NexusPHP v1.8.15 2024-12-23 diff --git a/config/prowlarr/Definitions/heavens-hell.yml b/config/prowlarr/Definitions/heavens-hell.yml deleted file mode 100644 index 7ffd57af..00000000 --- a/config/prowlarr/Definitions/heavens-hell.yml +++ /dev/null @@ -1,214 +0,0 @@ ---- -id: heavens-hell -name: Heavens-Hell -description: "Heavens-Hell is a Private Torrent Tracker for MUSIC / AUDIO SOFTWARE" -language: en-US -type: private -encoding: UTF-8 -links: - - https://heavens-hell.info/ - -caps: - categorymappings: - - {id: 39, cat: Audio, desc: "Albums"} - - {id: 40, cat: Audio, desc: "Alternative"} - - {id: 4, cat: PC, desc: "Apps"} - - {id: 50, cat: PC, desc: "Apps -- Miscellaneous"} - - {id: 11, cat: Audio, desc: "Billboard Top 100"} - - {id: 7, cat: Audio, desc: "Blues"} - - {id: 8, cat: Audio, desc: "Chillout"} - - {id: 41, cat: Audio, desc: "Christmas"} - - {id: 9, cat: Audio, desc: "Classical"} - - {id: 12, cat: Audio, desc: "Country"} - - {id: 10, cat: Audio, desc: "Dance"} - - {id: 13, cat: Audio, desc: "Discography"} - - {id: 42, cat: Audio, desc: "DJ Music"} - - {id: 44, cat: Audio, desc: "DJ Music -- Funkymix"} - - {id: 45, cat: Audio, desc: "DJ Music -- Promo Only"} - - {id: 43, cat: Audio, desc: "DJ Music -- Ultimix"} - - {id: 21, cat: Audio, desc: "DJ Radio Sets"} - - {id: 19, cat: Audio, desc: "DMC"} - - {id: 20, cat: Audio, desc: "Drum&Bass"} - - {id: 22, cat: Audio/Lossless, desc: "Flac Music"} - - {id: 23, cat: Audio/Lossless, desc: "Flac-24 Bit Hi-Res"} - - {id: 14, cat: Audio, desc: "Funk"} - - {id: 15, cat: Audio, desc: "Hardcore"} - - {id: 16, cat: Audio, desc: "Hip hop"} - - {id: 24, cat: Audio, desc: "House"} - - {id: 17, cat: Audio, desc: "Jazz"} - - {id: 25, cat: Audio, desc: "Jungle"} - - {id: 46, cat: Audio, desc: "K3 WAV"} - - {id: 49, cat: Audio/Other, desc: "K3 WAV -- Other WAV"} - - {id: 18, cat: Audio, desc: "Karaoke"} - - {id: 26, cat: Audio, desc: "Mastermix"} - - {id: 28, cat: Audio, desc: "Metal"} - - {id: 27, cat: Audio/MP3, desc: "MP3 NEW RELEASES"} - - {id: 51, cat: Audio/MP3, desc: "MP3 -- Other MP3"} - - {id: 33, cat: Audio, desc: "Music Packs"} - - {id: 32, cat: Audio/Video, desc: "Music Videos"} - - {id: 29, cat: Audio, desc: "Oldies"} - - {id: 47, cat: Audio, desc: "Pop music"} - - {id: 30, cat: Audio, desc: "Punk"} - - {id: 34, cat: Audio, desc: "R&B/Motown"} - - {id: 35, cat: Audio, desc: "Reggae"} - - {id: 36, cat: Audio, desc: "Retro"} - - {id: 31, cat: Audio, desc: "Rock"} - - {id: 37, cat: Audio, desc: "Soul"} - - {id: 48, cat: Audio, desc: "Trance"} - - {id: 38, cat: Audio, desc: "VIPs only"} - - modes: - search: [q] - music-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: added - options: - added: created - seeders: seeders - size: size - name: 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 Torrents per page: setting to 40 on your account profile. The Default is 15. - - name: flaresolverr - type: info - label: FlareSolverr - default: This site may use Cloudflare DDoS Protection, therefore Prowlarr requires FlareSolverr to access it. - - name: info_activity - type: info - label: Account Inactivity - default: "To keep records updated regularly, all inactive accounts will be deleted after 60 days of inactivity." - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: "" - error: - - selector: table:has(a[href*="login.php?error=1"]) - message: - text: "ERROR: Incorrect username!" - - selector: table:has(a[href*="login.php?error=4"]) - message: - text: "ERROR: Incorrect password!" - - selector: table:has(a[href*="login.php?error="]) - message: - text: "ERROR: Something went wrong during login!" - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -download: - before: - path: takethanks.php - method: post - inputs: - torrentid: "{{ .DownloadUri.Query.id }}" - selectors: - - selector: a[href*="download.php?id="] - attribute: href - -search: - paths: - - path: browse.php - method: post - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "%"] - inputs: - do: search - keywords: "{{ .Keywords }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: t_name - # does not support multi category searching so defaulting to all. - category: 0 - # yes, no - include_dead_torrents: yes - sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}" - order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}" - - rows: - selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title_default: - # is usually abbreaviated - selector: a[href*="/details.php?id="] - title: - # while still abbreviated, is usually longer than the default - selector: div.tooltip-content div - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href*="/details.php?id="] - attribute: href - download: - selector: a[href*="/details.php?id="] - attribute: href - poster: - selector: img[src*="/torrents/images/"] - attribute: src - date: - selector: td:nth-child(2) - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - size: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - description: - # Wait: 4 h - selector: div.tooltip-content > div:last-child - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - minimumratio: - text: 0.5 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# TS Special Edition v.8.0 diff --git a/config/prowlarr/Definitions/ianon.yml b/config/prowlarr/Definitions/ianon.yml deleted file mode 100644 index 7a673476..00000000 --- a/config/prowlarr/Definitions/ianon.yml +++ /dev/null @@ -1,140 +0,0 @@ ---- -id: ianon -name: iAnon -description: "MacOS software tracker" -language: en-US -type: private -encoding: UTF-8 -links: - - https://ianon.app/ - -caps: - categorymappings: - - {id: 1, cat: PC/Mac, desc: Applications} - - {id: 2, cat: PC/Games, desc: Games} - - {id: 3, cat: PC/Mobile-iOS, desc: IOS Applications} - - {id: 4, cat: PC/Mobile-iOS, desc: IOS Games} - - {id: 5, cat: Other, desc: Graphics} - - {id: 6, cat: Audio, desc: Audio} - - {id: 7, cat: Other, desc: Tutorials} - - {id: 8, cat: Other, desc: Other} - - modes: - search: [q] - music-search: [q, year, genre] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2fa_code - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the iAnon 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: time - options: - time: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - twofa: "{{ .Config.2fa_code }}" - keeplogged: 1 - error: - - selector: div.main div.warning-login - test: - path: torrents.php - selector: a[href^="logout.php?auth="] - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - searchstr: "{{ .Keywords }}" - # freetorrent: 0 normal, 1 freeleech, 2 neutral leech - freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - group_results: 0 - action: advanced - year: "{{ .Query.Year }}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - searchsubmit: 1 - - rows: - selector: table.torrent_table tr.torrent:has(a[title="Download"]) - - fields: - categorydesc: - selector: a[href*="filter_cat"] - attribute: href - filters: - - name: querystring - args: filter_cat - details: - selector: a[href^="torrents.php?id="] - attribute: href - genre: - selector: div.tags a[href*="taglist"] - download: - selector: span > a[href^="torrents.php?action=download&id="] - attribute: href - date: - selector: span.time.tooltip - attribute: title - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MMM dd yyyy, HH:mm zzz" - size: - selector: td.number_column.nobr - files: - selector: td:nth-last-child(6) - seeders: - selector: td:nth-last-child(2) - leechers: - selector: td:nth-last-child(1) - grabs: - selector: td:nth-last-child(3) - downloadvolumefactor: - case: - strong.torrent_label.tl_free: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.6 - title: - selector: a[href^="torrents.php?id="] - remove: strong.torrent_label - filters: - - name: trim - args: "/" - - name: trim -# Gazelle diff --git a/config/prowlarr/Definitions/icc2022.yml b/config/prowlarr/Definitions/icc2022.yml deleted file mode 100644 index 25e54216..00000000 --- a/config/prowlarr/Definitions/icc2022.yml +++ /dev/null @@ -1,188 +0,0 @@ ---- -id: icc2022 -name: ICC2022 (冰淇淋) -description: "ICC2022 (冰淇淋) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://www.icc2022.com/ - -caps: - categorymappings: - - {id: 408, cat: Audio, desc: "Music/音乐"} - - {id: 409, cat: Other, desc: "Misc/其他"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 406, cat: Audio/Video, desc: "MusicVideo/MV"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 401, cat: Movies, desc: "Movies/电影"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the ICC2022 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Veteran User or above would never be deleted.
  2. Elite User or above would never be deleted if parked (at User CP).
  3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row.
  4. Unparked accounts would be deleted if users have not logged in for more than 150 days in a row.
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
" - -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 (4 does not appear to work) - search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ 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^="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 - 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: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 - description: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.11 2024-03-27 diff --git a/config/prowlarr/Definitions/ilolicon.yml b/config/prowlarr/Definitions/ilolicon.yml deleted file mode 100644 index ed57ee42..00000000 --- a/config/prowlarr/Definitions/ilolicon.yml +++ /dev/null @@ -1,187 +0,0 @@ ---- -id: ilolicon -name: ilolicon PT -description: "ilolicon PT is a CHINESE Private Torrent Tracker for LOLICON / MOVIES / 3X" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://share.ilolicon.com/ - -caps: - # dont forget to update the path categories in the search block - categorymappings: - - {id: 401, cat: Movies, desc: "电影 (Movie)", default: true} - - {id: 402, cat: TV, desc: "电视剧(TV Series)", default: true} - - {id: 430, cat: TV, desc: "综艺(TV Show)", default: true} - - {id: 405, cat: TV/Anime, desc: "动画 (Animation)", default: true} - - {id: 408, cat: Audio, desc: "音乐 (Music)", default: true} - - {id: 410, cat: Audio/Video, desc: "舞台演出 (Stage Performance)", default: true} - - {id: 404, cat: TV/Documentary, desc: "纪录片 (Documentary)", default: true} - - {id: 412, cat: Console, desc: "游戏 (Game)", default: true} - - {id: 413, cat: PC, desc: "软件 (Software)", default: true} - - {id: 411, cat: Other, desc: "漫画/CG杂图/动漫杂志 (Photo)", default: true} - - {id: 418, cat: XXX/ImageSet, desc: "写真 (Photography)", default: false} - - {id: 429, cat: XXX/Other, desc: "音声 (Audio)", default: false} - - {id: 428, cat: XXX/Other, desc: "H-游戏 (H-Games)", default: false} - - {id: 427, cat: XXX/ImageSet, desc: "H-CG杂图 (H-CG Miscellaneous Pictures)", default: false} - - {id: 426, cat: XXX/Other, desc: "H-3D同人动画 (H-3D Doujin Animation)", default: false} - - {id: 425, cat: XXX/Other, desc: "H-2D同人动画 (H-2D Doujin Animation)", default: false} - - {id: 424, cat: XXX/Other, desc: "H-漫画 (H-Manga)", default: false} - - {id: 423, cat: XXX/Other, desc: "里番 (Riban)", default: false} - - {id: 420, cat: XXX, desc: "AV有码 (AV Censored)", default: false} - - {id: 419, cat: XXX, desc: "AV无码 (AV uncensored)", default: false} - - 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 Torrents per page: setting to 100 on your account profile.
Choosing more may cause the web site to fail to deliver complete results. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Veteran User or above would never be deleted.
  2. Elite User or above would never be deleted if parked (at User CP).
  3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row.
  4. Unparked accounts would be deleted if users have not logged in for more than 150 days in a row.
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
" - -login: - # using cookie method because I could not get the form method to work when I first created the indexer, some hidden security check - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 402, 430, 405, 408, 410, 404, 412, 413, 411] - - path: special.php - categories: [418, 429, 428, 427, 426, 425, 424, 423, 422, 420, 419] - 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^="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: - selector: td.rowfollow:nth-child(2) td:nth-child(2) - remove: a, b, font, img -# NexusPHP v1.9.6 2025-06-25 diff --git a/config/prowlarr/Definitions/irishtv.yml b/config/prowlarr/Definitions/irishtv.yml deleted file mode 100644 index 3084a309..00000000 --- a/config/prowlarr/Definitions/irishtv.yml +++ /dev/null @@ -1,181 +0,0 @@ ---- -id: irishtv -name: IrishTV -description: "IrishTV (ITV) is an IRISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://irishtv.xyz/ -legacylinks: - - http://irishtv.xyz/ - -caps: - categorymappings: - - {id: 1, cat: TV, desc: "Comedy"} - - {id: 2, cat: TV, desc: "Drama"} - - {id: 3, cat: TV, desc: "Documentary"} - - {id: 6, cat: TV, desc: "Entertainment"} - - {id: 4, cat: TV, desc: "Lifestyle"} - - {id: 7, cat: TV, desc: "Kids"} - - {id: 8, cat: TV, desc: "Culture"} - - {id: 9, cat: TV, desc: "Science & Nature"} - - {id: 12, cat: TV/Sport, desc: "Sport"} - - {id: 13, cat: TV, desc: "News Current Affairs"} - - {id: 14, cat: TV, desc: "Classics"} - - {id: 17, cat: TV, desc: "Crime"} - - {id: 16, cat: TV, desc: "Boxsets"} - - {id: 18, cat: Audio, desc: "Music"} - - {id: 19, cat: Movies, desc: "Film"} - - {id: 20, cat: Movies, desc: "VIP"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-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: novip - type: checkbox - label: Hide VIP releases - default: true - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # http://irishtv.xyz/index.php?page=torrents&search=&category=0&active=0 - - path: index.php - inputs: - page: torrents - search: "{{ .Keywords }}" - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 filename, 1 file&descr, 2 descr, 3 uploaders - options: 0 - # 0 all, 1 active only, 2 dead only - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # does not support imdbid search and does not return imdb link in results, does not support Genre search or return them in results. - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: "table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.novip }}:not(:has(a[href$=\"category=20\"])){{ else }}{{ end }}{{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}, table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.novip }}:not(:has(a[href$=\"category=20\"])){{ else }}{{ end }}{{ if .Config.freeleech }}:has(img[src$=\"freeleech.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title_torrent: - selector: a[href^="download.php?id="] - attribute: href - filters: - - name: querystring - args: f - - name: htmldecode - - name: re_replace - args: ["(?i)\\.torrent$", ""] - title_text: - selector: a[href^="index.php?page=torrent-details&id="] - title: - text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}" - poster: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - - name: replace - args: ["torrentimg/nocover.jpg", ""] - details: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - size: - selector: td:nth-last-child(3) - date: - selector: td:nth-last-child(7) - # auto adjusted by site account profile - filters: - - name: dateparse - args: dd/MM/yyyy - seeders: - selector: td:nth-last-child(6) - leechers: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - downloadvolumefactor: - case: - img[src="images/freeleech.gif"]: 0 - img[src="images/gold.gif"]: 0 - img[src="images/silver.gif"]: 0.5 - img[src="images/bronze.gif"]: 0.75 - "*": 1 - uploadvolumefactor: - case: - img[src="images/2x.gif"]: 2 - img[src="images/3x.gif"]: 3 - img[src="images/4x.gif"]: 4 - img[src="images/5x.gif"]: 5 - img[src="images/6x.gif"]: 6 - img[src="images/7x.gif"]: 7 - img[src="images/8x.gif"]: 8 - img[src="images/9x.gif"]: 9 - img[src="images/10x.gif"]: 10 - "*": 1 - minimumratio: - text: 1.5 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 259200 -# xbtitFM v4.1.31 diff --git a/config/prowlarr/Definitions/itorrent.yml b/config/prowlarr/Definitions/itorrent.yml deleted file mode 100644 index 0aba3506..00000000 --- a/config/prowlarr/Definitions/itorrent.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -id: itorrent -name: iTorrent -description: "iTorrent is a HUNGARIAN Public site" -language: hu-HU -type: public -encoding: UTF-8 -links: - - https://itorrent.ws/ -legacylinks: - - https://itorrent.hu/ - -caps: - categorymappings: - - {id: app, cat: PC, desc: Apps} - - {id: book, cat: Books, desc: Books} - - {id: game, cat: PC/Games, desc: Games} - - {id: movies, cat: Movies, desc: Movies} - - {id: music, cat: Audio, desc: Music} - - {id: heart, cat: XXX, desc: XXX} - - {id: tv, cat: TV, desc: TV} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: date_added - options: - date_added: created - seeders: seeders - size: size - title: title - - name: type - type: select - label: Order requested from site - default: DESC - options: - DESC: desc - ASC: asc - -download: - selectors: - - selector: a[href^="/torrentfiles/"] - attribute: href - -search: - paths: - - path: "torrentek/title/{{ .Keywords }}/order/{{ .Config.sort }}/by/{{ .Config.type }}/" - - rows: - selector: tr.gradeX - filters: - - name: andmatch - - fields: - category: - selector: td:nth-child(1) i - attribute: class - filters: - - name: replace - args: ["zqf zqf-", ""] - title: - selector: td:nth-child(2) a - details: - selector: td:nth-child(2) a - attribute: href - download: - selector: td:nth-child(2) a - attribute: href - date_time: - selector: td:nth-child(4) span - optional: true - attribute: title - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy.MM.dd HH:mm zzz" - date_year: - selector: td:nth-child(4):not(:has(span)) - optional: true - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy.MM.dd zzz" - date: - text: "{{ if or .Result.date_year .Result.date_time }}{{ or .Result.date_year .Result.date_time }}{{ else }}now{{ end }}" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/jav-torrent.yml b/config/prowlarr/Definitions/jav-torrent.yml deleted file mode 100644 index 8385ed87..00000000 --- a/config/prowlarr/Definitions/jav-torrent.yml +++ /dev/null @@ -1,57 +0,0 @@ ---- -id: jav-torrent -name: JAV-Torrent -description: "JAV-Torrent is a Public tracker for Asian 3X (JAV)" -language: en-US -type: public -encoding: UTF-8 -links: - - https://jav-torrent.net/ -legacylinks: - - https://jav-torrent.org/ - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: [] - -search: - paths: - - path: "{{ if .Keywords }}search?keyword={{ .Keywords }}{{ else }}new{{ end }}" - - rows: - selector: div.card - - fields: - category: - text: XXX - title: - selector: h5 a - details: - selector: h5 a - attribute: href - download: - selector: a[href*="/download/torrent/"] - attribute: href - optional: true - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - optional: true - date: - text: now - size: - selector: span.is-size-6 - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/jptv-api.yml b/config/prowlarr/Definitions/jptv-api.yml deleted file mode 100644 index 0c4b99db..00000000 --- a/config/prowlarr/Definitions/jptv-api.yml +++ /dev/null @@ -1,152 +0,0 @@ ---- -id: jptv-api -name: JPTV (API) -description: "JPTV is a JAPANESE Private Torrent Tracker for JAPANESE TV / MOVIES / GENERAL" -language: ja-JP -type: private -encoding: UTF-8 -links: - - https://jptv.club/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV Shows"} - - {id: 6, cat: TV, desc: "TS Firehose"} - - {id: 7, cat: Movies/Other, desc: "Anime Movies"} - - {id: 9, cat: TV/Anime, desc: "Anime Series"} - - {id: 8, cat: Audio, desc: "Audio"} - - {id: 10, cat: Books, desc: "Book"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your JPTV account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Your membership requires that you stay active at JPTVclub. In order to not be disabled, you are required to login to the site at least once every 90 days. If your account gets disabled, you will recive an email informing you about it, along with instructions on how to get enabled again." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - imdb: "{{ .Query.IMDBIDShort }}" - tmdb: "{{ .Query.TMDBID }}" - tvdb: "{{ .Query.TVDBID }}" - freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sorting: "{{ .Config.sort }}" - direction: "{{ .Config.type }}" - qty: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - categorydesc: - selector: category - title: - selector: name - details: - selector: details_link - download: - selector: download_link - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0=false, 1=true - selector: freeleech - case: - 0: 1 # not free - 1: 0 # freeleech - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double -# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 5.2.0 diff --git a/config/prowlarr/Definitions/jptv.yml b/config/prowlarr/Definitions/jptv.yml deleted file mode 100644 index 89a62e3d..00000000 --- a/config/prowlarr/Definitions/jptv.yml +++ /dev/null @@ -1,207 +0,0 @@ ---- -id: jptv -name: JPTV -description: "JPTV is a JAPANESE Private Torrent Tracker for JAPANESE TV / MOVIES" -language: ja-JP -type: private -encoding: UTF-8 -links: - - https://jptv.club/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV Shows"} - - {id: 6, cat: TV, desc: "TS Firehose"} - - {id: 7, cat: Movies/Other, desc: "Anime Movies"} - - {id: 9, cat: TV/Anime, desc: "Anime Series"} - - {id: 8, cat: Audio, desc: "Audio"} - - {id: 10, cat: Books, desc: "Book"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login - method: form - form: form[action$="/login"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: on - selectorinputs: - _token: - selector: input[name="_token"] - attribute: value - error: - - selector: div#ERROR_COPY -# test: -# path: / -# selector: a[href$="/logout"] - -search: - paths: - - path: torrents/filter - inputs: - $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}" - search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - imdb: "{{ .Query.IMDBIDShort }}" - tvdb: "{{ .Query.TVDBID }}" - tmdb: "{{ .Query.TMDBID }}" - sorting: "{{ .Config.sort }}" - direction: "{{ .Config.type }}" - qty: 100 - page: 0 - view: list - freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - # can search for genre but you need to know the id. &genres[]=10765 for Sci-Fi & Fantasy - - rows: - selector: table > tbody > tr - - fields: - category: - selector: a[href*="/categories/"] - attribute: href - filters: - - name: regexp - args: "/categories/(\\d+)" - title: - selector: a.view-torrent - download: - selector: a[href*="/download/"] - attribute: href - details: - selector: a.view-torrent - attribute: href - poster: - selector: div.torrent-poster img - attribute: src - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - - name: replace - args: ["https://via.placeholder.com/400x600", ""] - genre: - selector: td:nth-last-child(8) - filters: - - name: replace - args: ["\n", ""] - - name: replace - args: [" & ", "_&_"] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: validate - args: "Action, Action_&_Adventure, Adventure, Animation, Comedy, Crime, Documentary, Drama, Family, Fantasy, History, Horror, Kids, Music, Mystery, News, Reality, Romance, Sci-Fi_&_Fantasy, Science_Fiction, Soap, TV_Movie, Talk, Thriller, War, War_&_Politics, Western" - description: - text: "{{ .Result.genre }}" - size: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - grabs: - selector: td:nth-last-child(1) - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - tmdbid: - selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"] - attribute: href - date: - selector: time - filters: - # translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish - - name: re_replace - args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"] - - name: re_replace - args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"] - - name: re_replace - args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"] - - name: re_replace - args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"] - - name: re_replace - args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"] - - name: re_replace - args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"] - - name: re_replace - args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"] - - name: re_replace - args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"] - - name: re_replace - args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"] - - name: re_replace - args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"] - - name: re_replace - args: ["(?i) (ay)", "month"] - - name: re_replace - args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"] - - name: re_replace - args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"] - - name: re_replace - args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"] - - name: re_replace - args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"] - - name: re_replace - args: ["(?i) (an)", "year"] - - name: re_replace - args: ["(?i)(För |und)", ""] # Misc removals - - name: timeago - downloadvolumefactor: - case: - i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From BON Store - i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups - i[class*="fa-star text-bold"]: 0 # Freeleech From Token - i[class*="fa-coins text-bold"]: 0 # Freeleech From Token - i[class*="fa-globe text-blue"]: 0 # Global Freeleech - i[class*="fa-star text-gold"]: 0 # Freeleech - i[class*="fa-certificate text-pink"]: 0 # Featured Torrent - "*": 1 - uploadvolumefactor: - case: - i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload - i[class*="fa-globe text-green"]: 2 # Global Double Upload - i[class*="fa-certificate text-pink"]: 2 # Featured Torrent - "*": 1 - # overall ratio of 0.4 but must seed for 7 days regardless of ratio - # minimumratio: - # text: 0.4 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# UNIT3D 5.1.0 diff --git a/config/prowlarr/Definitions/kimoji.yml b/config/prowlarr/Definitions/kimoji.yml deleted file mode 100644 index fda6293c..00000000 --- a/config/prowlarr/Definitions/kimoji.yml +++ /dev/null @@ -1,152 +0,0 @@ ---- -id: kimoji -name: KIMOJI -description: "KIMOJI is a CHINESE Private Torrent Tracker for MUSIC" -language: en-US -type: private -encoding: UTF-8 -links: - - https://kimoji.club/ - -caps: - categorymappings: - - {id: 3, cat: Audio, desc: "Music"} - - modes: - search: [q] - music-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your KIMOJI account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - _id: - selector: ..id - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - text: "{{ .Config.sitelink }}files/img/torrent-cover_{{ .Result._id }}.jpg" - genre: - selector: distributor - filters: - - name: re_replace - args: ["(?i)(Hard Rock)", "Hard_Rock"] - - name: re_replace - args: ["(?i)(World Music)", "World_Music"] - - name: replace - args: ["/", "_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 1.0 but torrents must be seeded for 3 days regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# json UNIT3D 7.1.3 (custom) diff --git a/config/prowlarr/Definitions/knaben.yml b/config/prowlarr/Definitions/knaben.yml deleted file mode 100644 index 1afa097d..00000000 --- a/config/prowlarr/Definitions/knaben.yml +++ /dev/null @@ -1,160 +0,0 @@ ---- -id: knaben -name: Knaben -description: "Knaben is a Public torrent meta-search engine" -language: en-US -type: public -encoding: UTF-8 -links: - - https://knaben.eu/ - -caps: - categorymappings: - - {id: 1000000, cat: Audio, desc: "Audio"} - - {id: 1001000, cat: Audio/MP3, desc: "MP3"} - - {id: 1002000, cat: Audio/Lossless, desc: "Lossless"} - - {id: 1003000, cat: Audio/Audiobook, desc: "Audiobook"} - - {id: 1004000, cat: Audio/Video, desc: "Audio Video"} - - {id: 1005000, cat: Audio/Other, desc: "Radio"} - - {id: 1006000, cat: Audio/Other, desc: "Audio Other"} - - {id: 2000000, cat: TV, desc: "TV"} - - {id: 2001000, cat: TV/HD, desc: "TV HD"} - - {id: 2002000, cat: TV/SD, desc: "TV SD"} - - {id: 2003000, cat: TV/UHD, desc: "TV UHD"} - - {id: 2004000, cat: TV/Documentary, desc: "Documentary"} - - {id: 2005000, cat: TV/Foreign, desc: "TV Foreign"} - - {id: 2006000, cat: TV/Sport, desc: "Sport"} - - {id: 2007000, cat: TV/Other, desc: "Cartoon"} - - {id: 2008000, cat: TV/Other, desc: "TV Other"} - - {id: 3000000, cat: Movies, desc: "Movies"} - - {id: 3001000, cat: Movies/HD, desc: "Movies HD"} - - {id: 3002000, cat: Movies/SD, desc: "Movies SD"} - - {id: 3003000, cat: Movies/UHD, desc: "Movies UHD"} - - {id: 3004000, cat: Movies/DVD, desc: "Movies DVD"} - - {id: 3005000, cat: Movies/Foreign, desc: "Movies Foreign"} - - {id: 3006000, cat: Movies/Foreign, desc: "Movies Bollywood"} - - {id: 3007000, cat: Movies/3D, desc: "Movies 3D"} - - {id: 3008000, cat: Movies/Other, desc: "Movies Other"} - - {id: 4000000, cat: PC, desc: "PC"} - - {id: 4001000, cat: PC/Games, desc: "Games"} - - {id: 4002000, cat: PC/0day, desc: "Software"} - - {id: 4003000, cat: PC/Mac, desc: "Mac"} - - {id: 4004000, cat: PC/ISO, desc: "Unix"} - - {id: 5000000, cat: XXX, desc: "XXX"} - - {id: 5001000, cat: XXX/x264, desc: "XXX Video"} - - {id: 5002000, cat: XXX/ImageSet, desc: "XXX ImageSet"} - - {id: 5003000, cat: XXX/Other, desc: "XXX Games"} - - {id: 5004000, cat: XXX/Other, desc: "XXX Hentai"} - - {id: 5005000, cat: XXX/Other, desc: "XXX Other"} - - {id: 6000000, cat: TV/Anime, desc: "Anime"} - - {id: 6001000, cat: TV/Anime, desc: "Anime Subbed"} - - {id: 6002000, cat: TV/Anime, desc: "Anime Dubbed"} - - {id: 6003000, cat: TV/Anime, desc: "Anime Dual audio"} - - {id: 6004000, cat: TV/Anime, desc: "Anime Raw"} - - {id: 6005000, cat: Audio/Video, desc: "Music Video"} - - {id: 6006000, cat: Books/Other, desc: "Literature"} - - {id: 6007000, cat: Audio/Other, desc: "Music"} - - {id: 6008000, cat: TV/Anime, desc: "Anime non-english translated"} - - {id: 7000000, cat: Console, desc: "Console"} - - {id: 7001000, cat: Console/PS4, desc: "PS4"} - - {id: 7002000, cat: Console/PS3, desc: "PS3"} - - {id: 7003000, cat: Console/PS3, desc: "PS2"} - - {id: 7004000, cat: Console/PS3, desc: "PS1"} - - {id: 7005000, cat: Console/PS Vita, desc: "PS Vita"} - - {id: 7006000, cat: Console/PSP, desc: "PSP"} - - {id: 7007000, cat: Console/XBox 360, desc: "Xbox 360"} - - {id: 7008000, cat: Console/XBox, desc: "Xbox"} - - {id: 7009000, cat: Console/NDS, desc: "Switch"} - - {id: 7010000, cat: Console/NDS, desc: "NDS"} - - {id: 7011000, cat: Console/Wii, desc: "Wii"} - - {id: 7012000, cat: Console/WiiU, desc: "WiiU"} - - {id: 7013000, cat: Console/3DS, desc: "3DS"} - - {id: 7014000, cat: Console/Wii, desc: "GameCube"} - - {id: 7015000, cat: Console/Other, desc: "Other"} - - {id: 8000000, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 8001000, cat: PC/Mobile-Android, desc: "Android"} - - {id: 8002000, cat: PC/Mobile-iOS, desc: "IOS"} - - {id: 8003000, cat: PC/Mobile-Other, desc: "PC Other"} - - {id: 9000000, cat: Books, desc: "Books"} - - {id: 9001000, cat: Books/EBook, desc: "EBooks"} - - {id: 9002000, cat: Books/Comics, desc: "Comics"} - - {id: 9003000, cat: Books/Mags, desc: "Magazines"} - - {id: 9004000, cat: Books/Technical, desc: "Technical"} - - {id: 9005000, cat: Books/Other, desc: "Books Other"} - - {id: 10000000, cat: Other, desc: "Other"} - - {id: 10001000, cat: Other/Misc, desc: "Other Misc"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: date - options: - date: created - seeders: seeders - bytes: size - title: title - - name: type - type: select - label: Order requested from site - default: "+" - options: - "+": desc - "-": asc - -search: - paths: - - path: "{{ if .Keywords }}search/{{ .Keywords }}{{ else }}browse{{ end }}/0/1/{{ .Config.type }}{{ .Config.sort }}" - - rows: - selector: tr[title^="Cached "], tr[title^="Checked "] - - fields: - category: - selector: a[href^="/browse/"]:last-child - attribute: href - filters: - - name: split - args: ["/", 2] - # replace subcat with cat: 1001069 > 1001000 - - name: re_replace - args: ["(\\d{3})$", "000"] - title: - selector: td:nth-child(2) a - details: - selector: td:last-child a - attribute: href - download: - selector: td:nth-child(2) a - attribute: href - description: - selector: td:last-child a - filters: - - name: prepend - args: "Source: " - date: - selector: td:nth-child(4) - attribute: title - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td:nth-child(3) - seeders: - selector: td:nth-child(5) - leechers: - selector: td:nth-child(6) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/laidbackmanor.yml b/config/prowlarr/Definitions/laidbackmanor.yml deleted file mode 100644 index 18919edd..00000000 --- a/config/prowlarr/Definitions/laidbackmanor.yml +++ /dev/null @@ -1,174 +0,0 @@ ---- -id: laidbackmanor -name: LaidBackManor (API) -description: "LaidBackManor (LBM) is a Private site for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://laidbackmanor.xyz/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movie"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 4, cat: Console, desc: "Game"} - - {id: 5, cat: PC, desc: "Application"} - - {id: 6, cat: Books, desc: "Books"} - - {id: 8, cat: TV/Sport, desc: "Sports"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your LaidBackManor account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Any accounts that are Not Active, Uploading/Downloading will be Pruned Without Warning." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# json UNIT3D 6.4.1 diff --git a/config/prowlarr/Definitions/le-cinephile.yml b/config/prowlarr/Definitions/le-cinephile.yml deleted file mode 100644 index 3871d43b..00000000 --- a/config/prowlarr/Definitions/le-cinephile.yml +++ /dev/null @@ -1,260 +0,0 @@ ---- -id: le-cinephile -name: Le-Cinephile -description: "Le-Cinephile is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: fr-FR -type: private -encoding: UTF-8 -links: - - https://le-cinephile.de/ - -caps: - categorymappings: - # FILM - - {id: 2, cat: Movies/DVD, desc: "FILM DVD"} - - {id: 66, cat: Movies/HD, desc: "FILM HDRip"} - - {id: 63, cat: Movies/WEB-DL, desc: "FILM WEB"} - - {id: 75, cat: Movies/UHD, desc: "FILM 2160 P"} - - {id: 101, cat: TV/Documentary, desc: "FILM Documentaire"} - - {id: 104, cat: Movies, desc: "FILM DVDRip"} - - {id: 107, cat: Movies, desc: "FILM ANIME"} - - {id: 111, cat: Movies, desc: "FILM Nouveautés 2024"} - - {id: 116, cat: Movies, desc: "FILM Nouveautés 2025"} - - {id: 34, cat: Movies/SD, desc: "FILM TVRip"} - - {id: 33, cat: Movies/SD, desc: "FILM HDTV"} - - {id: 4, cat: Movies/HD, desc: "FILM 1080"} - - {id: 25, cat: Movies/BluRay, desc: "FILM ISO"} - - {id: 26, cat: Movies/BluRay, desc: "FILM BluRay"} - - {id: 27, cat: Movies/HD, desc: "FILM BDRip"} - - {id: 28, cat: Movies/HD, desc: "FILM 720"} - - {id: 29, cat: Movies/SD, desc: "FILM VHS"} - - {id: 30, cat: Movies/Foreign, desc: "FILM VOST"} - - {id: 31, cat: Movies/Other, desc: "FILM MUET"} - - {id: 129, cat: Movies, desc: "FILM Nouveautés de cette année"} - # SERIE - - {id: 9, cat: TV/SD, desc: "SERIE DVD"} - - {id: 117, cat: TV, desc: "SERIE Nouveautés 2025"} - - {id: 110, cat: TV, desc: "SERIE Nouveautés 2024"} - - {id: 108, cat: TV/HD, desc: "SERIE BlueRay"} - - {id: 106, cat: TV/Anime, desc: "SERIE ANIME"} - - {id: 105, cat: TV, desc: "SERIE Pack"} - - {id: 102, cat: TV/Documentary, desc: "SERIE Documentaire"} - - {id: 72, cat: TV/UHD, desc: "SERIE 2160 P"} - - {id: 65, cat: TV/SD, desc: "SERIE HDRip"} - - {id: 21, cat: TV/HD, desc: "SERIE HDTV.1080p"} - - {id: 20, cat: TV/HD, desc: "SERIE HDTV.720p"} - - {id: 19, cat: TV/SD, desc: "SERIE HDTV"} - - {id: 17, cat: TV/SD, desc: "SERIE VHS"} - - {id: 16, cat: TV/SD, desc: "SERIE TVRip"} - - {id: 15, cat: TV/WEB-DL, desc: "SERIE WEB.1080p"} - - {id: 14, cat: TV/WEB-DL, desc: "SERIE WEB.720p"} - - {id: 12, cat: TV/WEB-DL, desc: "SERIE WEB"} - - {id: 128, cat: TV, desc: "SERIE Nouveautés de cette année"} - # ANIMEE - - {id: 113, cat: TV/Anime, desc: "ANIMEE Nouveautées 2024"} - - {id: 114, cat: Movies/Other, desc: "ANIMEE Fim"} - - {id: 115, cat: TV/Anime, desc: "ANIMEE Serie"} - - {id: 130, cat: TV/Anime, desc: "ANIMEE Nouveautés de cette année"} - # LOGICIELS - - {id: 56, cat: PC/ISO, desc: "LOGICIELS Linux"} - - {id: 24, cat: PC/Mac, desc: "LOGICIELS Apple"} - - {id: 58, cat: PC/0day, desc: "LOGICIELS Windows"} - - {id: 131, cat: PC, desc: "LOGICIELS Nouveautés de cette année"} - # EBOOK - - {id: 44, cat: Books/Mags, desc: "EBOOK Journaux"} - - {id: 46, cat: Books/Technical, desc: "EBOOK Documents"} - - {id: 48, cat: XXX/Other, desc: "EBOOK XXX"} - - {id: 49, cat: Books/EBook, desc: "EBOOK Livres"} - - {id: 132, cat: Books, desc: "EBOOK Nouveautés de cette année"} - # MUSIC - - {id: 5, cat: Audio/Video, desc: "MUSIC clip video"} - - {id: 109, cat: Audio/Video, desc: "MUSIC Spectacles.Theatre"} - - {id: 112, cat: Audio/Video, desc: "MUSIC Concert filmé"} - - {id: 133, cat: Audio/Video, desc: "MUSIC Nouveautés de cette année"} - # JEUX - - {id: 96, cat: PC/Games, desc: "JEUX Apple"} - - {id: 8, cat: Console/PS3, desc: "JEUX PS3"} - - {id: 45, cat: PC/Games, desc: "JEUX PC"} - - {id: 135, cat: Console, desc: "JEUX Nouveautés de cette année"} - - 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: 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 with ENGLISH - default: false - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeds: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: countdown - type: info - label: Countdown Timer - default: "This site is a Tracker based on Time: to keep your account the time must not be at 0000-00-00-00-00-00. Read Le-Cinephile FAQ on how to keep the timer active." - - name: registration - type: info - label: Registration Confirmation - default: After you register you will receive a confirmation email that contains a link to activate your account. If you have not received it check your Junk mail / Spam mail folder. - -login: - path: login.php - method: form - form: form[action="/login.php"] - cookies: ["JAVA=OK"] # avoid jscheck redirect - captcha: - type: image - selector: img[src^="cap/captcha_math.php?codeCaptcha="] - input: stringCaptcha - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div#login_error - test: - path: index.php - selector: a[href="logout.php"] - -download: - before: - path: ajax_det_poll.php - method: post - inputs: - set_thanks: Merci - det_id: "{{ .DownloadUri.Query.id }}" - ajax: yes - selectors: - - selector: a[href^="download.php?torrent="] - attribute: href - -search: - paths: - - path: selection.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 name, 1 descr, 2 both - blah: 0 - orderby: "{{ .Config.sort }}" - sort: "{{ .Config.type }}" - - rows: - selector: div.selection_wrap - - fields: - category_p1: - selector: div.kat_cat_pic_name - category_p2: - selector: div.kat_cat_pic_name_b - categorydesc: - text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}" - title_phase1: - selector: a.selection_a - title_multilang: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)([\\s|\\.|-]multi[\\s|\\.|-])", ".{{ .Config.multilanguage }}."] - title_phase2: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_vostfr: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)([\\s|\\.|-]vostfr[\\s|\\.|-])", ".ENGLISH."] - - name: re_replace - args: ["(?i)([\\s|\\.|-]subfrench[\\s|\\.|-])", ".ENGLISH."] - title: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details: - selector: a.selection_a - attribute: href - download: - selector: a.selection_a - attribute: href - poster: - selector: div[id^="details"] img - attribute: src - size: - selector: div.selection_unter_ad - grabs: - selector: div.selection_unter_ae - date_day: - # Aujourd'hui à 13:30:04 - # Hier à 09:10:10 - selector: div.selection_unter_ab:not(:contains(".")) - optional: true - filters: - - name: replace - args: ["Aujourd'hui à", "Today"] - - name: replace - args: ["Hier à", "Yesterday"] - - name: append - args: " +01:00" # CET - date_year: - # Le 30.02.2018 à 23:12:50 - selector: div.selection_unter_ab:contains(".") - optional: true - filters: - - name: replace - args: ["Le ", ""] - - name: replace - args: [" à", ""] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyy HH:mm:ss zzz" - date: - text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}" - seeders: - selector: div.selection_unter_aa - leechers: - selector: div.selection_unter_aaa - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 60 hours (as seconds = 60 x 60 x 60) - text: 216000 -# 3xT diff --git a/config/prowlarr/Definitions/learnbits.yml b/config/prowlarr/Definitions/learnbits.yml deleted file mode 100644 index d54ca928..00000000 --- a/config/prowlarr/Definitions/learnbits.yml +++ /dev/null @@ -1,219 +0,0 @@ ---- -id: learnbits -name: LearnBits -description: "LearnBits is a Private Torrent Tracker for E-LEARNING" -language: en-US -type: private -encoding: UTF-8 -links: - - http://www.learnbits.me/ - -caps: - categorymappings: - - {id: 7, cat: TV/Documentary, desc: "Documentary"} - - {id: 83, cat: TV/Documentary, desc: "Documentary - Architecture"} - - {id: 61, cat: TV/Documentary, desc: "Documentary - Biography"} - - {id: 76, cat: TV/Documentary, desc: "Documentary - Culture"} - - {id: 75, cat: TV/Documentary, desc: "Documentary - EarthScience"} - - {id: 67, cat: TV/Documentary, desc: "Documentary - History"} - - {id: 80, cat: TV/Documentary, desc: "Documentary - MilitaryWar"} - - {id: 81, cat: TV/Documentary, desc: "Documentary - Politics"} - - {id: 82, cat: TV/Documentary, desc: "Documentary - Technology"} - - {id: 77, cat: TV/Documentary, desc: "Documentary - Travel"} - - {id: 74, cat: TV/Documentary, desc: "Documentary - Wildlife"} - - {id: 79", cat: TV/Documentary, desc: "Documentary Channels"} - - {id: 65, cat: TV/Documentary, desc: "Documentary Channels - BBC"} - - {id: 69, cat: TV/Documentary, desc: "Documentary Channels - Discovery"} - - {id: 56, cat: TV/Documentary, desc: "Documentary Channels - HistoryChannel"} - - {id: 55, cat: TV/Documentary, desc: "Documentary Channels - NationalGeo"} - - {id: 73, cat: TV/Documentary, desc: "Documentary Channels - PBS"} - - {id: 78, cat: TV/Documentary, desc: "Documentary Series"} - - {id: 58, cat: TV/Documentary, desc: "Documentary Series - AnimalPlanet"} - - {id: 66, cat: TV/Documentary, desc: "Documentary Series - ExtremeWorld"} - - {id: 70, cat: TV/Documentary, desc: "Documentary Series - Frontline"} - - {id: 62, cat: TV/Documentary, desc: "Documentary Series - Horizon"} - - {id: 59, cat: TV/Documentary, desc: "Documentary Series - HowItIsMade"} - - {id: 10, cat: TV/Documentary, desc: "Documentary Series - MegaFactories"} - - {id: 57, cat: TV/Documentary, desc: "Documentary Series - ModernMarvels"} - - {id: 63, cat: TV/Documentary, desc: "Documentary Series - NaturalWorld"} - - {id: 71, cat: TV/Documentary, desc: "Documentary Series - NatureOfThings"} - - {id: 54, cat: TV/Documentary, desc: "Documentary Series - Nova"} - - {id: 72, cat: TV/Documentary, desc: "Documentary Series - PBSNature"} - - {id: 68, cat: TV/Documentary, desc: "Documentary Series - ThroughTheWormhole"} - - {id: 60, cat: Other, desc: "General-Education"} - - {id: 34, cat: Other, desc: "General-Education - 3D-4D"} - - {id: 49, cat: Books/EBook, desc: "General-Education - Biographies"} - - {id: 3, cat: Books/EBook, desc: "General-Education - Business"} - - {id: 6, cat: Other, desc: "General-Education - Digital-Art"} - - {id: 36, cat: Other, desc: "General-Education - Early-Learning"} - - {id: 42, cat: Other, desc: "General-Education - Electronics"} - - {id: 48, cat: Other, desc: "General-Education - Graphic-Arts"} - - {id: 25, cat: Books/EBook, desc: "General-Education - History"} - - {id: 16, cat: Other, desc: "General-Education - Languages"} - - {id: 4, cat: Other, desc: "General-Education - Legal"} - - {id: 20, cat: Other, desc: "General-Education - Math"} - - {id: 21, cat: Other, desc: "General-Education - Medical"} - - {id: 41, cat: Other, desc: "General-Education - Philosophy"} - - {id: 53, cat: Other, desc: "General-Education - Photography"} - - {id: 45, cat: Other, desc: "General-Education - Politics"} - - {id: 39, cat: Other, desc: "General-Education - Psychology"} - - {id: 50, cat: Other, desc: "General-Education - Science"} - - {id: 35, cat: Other, desc: "General-Education - Trade-Skills"} - - {id: 38, cat: Other, desc: "General-Education - Writing"} - - {id: 46, cat: Other, desc: "Computer Science"} - - {id: 5, cat: Other, desc: "General-Education - Database"} - - {id: 9, cat: Other, desc: "General-Education - Exam-Guides"} - - {id: 11, cat: Other, desc: "General-Education - Forensics"} - - {id: 14, cat: Other, desc: "General-Education - IT-Manager"} - - {id: 15, cat: Other, desc: "General-Education - IT-Security"} - - {id: 17, cat: Other, desc: "General-Education - Linux-Unix"} - - {id: 18, cat: Other, desc: "General-Education - Mac-Apple"} - - {id: 31, cat: Other, desc: "General-Education - Microsoft"} - - {id: 22, cat: Other, desc: "General-Education - Network"} - - {id: 26, cat: Other, desc: "General-Education - Programming"} - - {id: 27, cat: Other, desc: "General-Education - Server-Admin"} - - {id: 29, cat: Other, desc: "General-Education - VOIP"} - - {id: 30, cat: Other, desc: "General-Education - Web-Design"} - - {id: 64, cat: Other, desc: "Just-4-Fun"} - - {id: 51, cat: Other, desc: "Just-4-Fun - Culinary"} - - {id: 12, cat: Other, desc: "Just-4-Fun - Fitness"} - - {id: 13, cat: Other, desc: "Just-4-Fun - Hobbies"} - - {id: 47, cat: Other, desc: "Just-4-Fun - Horticulture"} - - {id: 33, cat: Other, desc: "Just-4-Fun - International"} - - {id: 19, cat: Books/Mags, desc: "Just-4-Fun - Magazines"} - - {id: 52, cat: Other, desc: "Just-4-Fun - Magic"} - - {id: 32, cat: Other/Misc, desc: "Just-4-Fun - Miscellaneous"} - - {id: 23, cat: Other, desc: "Just-4-Fun - Music-Dance"} - - {id: 24, cat: Other, desc: "Just-4-Fun - Personal Growth"} - - {id: 28, cat: Other, desc: "Just-4-Fun - Sports-Self-Defence"} - - {id: 37, cat: Other, desc: "Just-4-Fun - VIP"} - - modes: - search: [q] - tv-search: [q, season, ep] - 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: added - options: - added: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: DESC - options: - DESC: desc - ASC: asc - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img#regimage - input: security_code - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logintype: yes - error: - - selector: table:contains("An error has occured!") - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -search: - paths: - - path: browse.php - method: post - keywordsfilters: - - name: re_replace - args: ["[^a-zA-Z0-9]+", "%"] - inputs: - do: search - keywords: "{{ .Keywords }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: t_name - # does not support multi categories so defaulting to ALL - category: 0 - sortby: "{{ .Config.sort }}" - orderby: "{{ .Config.type }}" - - rows: - selector: "div#showcontents > table > tbody > tr:has(a[href]){{ if .Config.freeleech }}:has(img[src$=\"freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?browse_categories"] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href*="/details.php?id="] > b - details: - selector: a[href*="/details.php?id="] - attribute: href - download: - selector: a[href*="/download.php?id="] - attribute: href - files: - selector: td:nth-child(4) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) > b - downloadvolumefactor: - case: - img[src$="/external.gif"]: 0 - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - size: - selector: td:nth-child(8) - remove: b - date_day: - selector: td:nth-child(2):contains("day ") - # auto adjusted by site account profile - optional: true - remove: a, b, img, span - filters: - - name: fuzzytime - date_year: - # 2021-07-16 09:30 PM - selector: td:nth-child(2):not(:contains("day ")) - # auto adjusted by site account profile - optional: true - remove: a, b, img, span - filters: - - name: replace - args: ["|", ""] - - name: dateparse - args: "yyyy-MM-dd hh:mm tt" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - minimumratio: - text: 1.0 -# TS Special Edition diff --git a/config/prowlarr/Definitions/leech24-api.yml b/config/prowlarr/Definitions/leech24-api.yml deleted file mode 100644 index 41bb8734..00000000 --- a/config/prowlarr/Definitions/leech24-api.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -id: leech24-api -name: leech24 (API) -description: "leech24 is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://leech24.net/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movie"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Console, desc: "Game"} - - {id: 4, cat: Audio, desc: "Music"} - - {id: 5, cat: Other, desc: "Misc"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your leech24 account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "You must log in to the leech24 web site with your browser once every 120 days to prevent your account from getting disabled." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" -# global MR is 1.0 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 8.3.6 diff --git a/config/prowlarr/Definitions/lepornoinfo.yml b/config/prowlarr/Definitions/lepornoinfo.yml deleted file mode 100644 index 58084e13..00000000 --- a/config/prowlarr/Definitions/lepornoinfo.yml +++ /dev/null @@ -1,124 +0,0 @@ ---- -id: lepornoinfo -name: LePorno.info -description: "LePorno.info is a Public Tracker for 3X" -language: en-US -type: public -encoding: UTF-8 -links: - - https://leporno.info/ - -caps: - categorymappings: - - {id: 1, cat: XXX/XviD, desc: "Videos SD"} - - {id: 2, cat: XXX/x264, desc: "Videos HD"} - - {id: 3, cat: XXX/WMV, desc: "Movies"} - - {id: 17, cat: XXX/ImageSet, desc: "SiteRip's Picture Packs"} - - {id: 6, cat: XXX/Other, desc: "Porn (Other)"} - - {id: 4, cat: XXX, desc: "AV CENSORED (JAV)"} - - {id: 5, cat: XXX, desc: "AV UNCENSORED (JAV)"} - - {id: 7, cat: XXX, desc: "Hentai"} - - {id: 8, cat: XXX/Other, desc: "Porn (Other) JAV"} - - {id: 10, cat: XXX, desc: "Transsexual"} - - {id: 11, cat: XXX, desc: "Bisexual"} - - {id: 12, cat: XXX, desc: "BDSM"} - - {id: 13, cat: XXX, desc: "Femdom & Strapon"} - - {id: 14, cat: XXX, desc: "Fisting & Dildo"} - - {id: 15, cat: XXX, desc: "Pregnant"} - - {id: 16, cat: XXX, desc: "Fetish"} - - {id: 9, cat: XXX, desc: "Gay Forum"} - - {id: 18, cat: XXX, desc: "Incest & Taboo"} - - {id: 19, cat: XXX, desc: "Femdom & Strapon"} - - modes: - search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: 1 - options: - 1: created - 10: seeders - 7: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info_flaresolverr - type: info_flaresolverr - -search: - paths: - - path: tracker.php - method: post - inputs: - $raw: "{{ if .Categories }}{{ range .Categories }}&f[]={{.}}{{end}}{{ else }}&f[]=-1{{ end }}" - prev_allw: 1 - prev_a: 0 - prev_dla: 0 - prev_dlc: 0 - prev_dld: 0 - prev_dlw: 0 - prev_my: 0 - prev_new: 0 - prev_sd: 0 - prev_da: 1 - prev_dc: 0 - prev_df: 1 - prev_ds: 0 - prev_tor_type: 0 - o: "{{ .Config.sort }}" - s: "{{ .Config.type }}" - tm: -1 - sns: -1 - srg: -1 - df: 1 - da: 1 - pn: "" - nm: "{{ .Keywords }}" - allw: 1 - submit: Search - - rows: - selector: table#tor-tbl tr[id^="tor_"] - filters: - - name: andmatch - - fields: - category: - selector: a[href^="tracker.php?f="] - attribute: href - filters: - - name: querystring - args: f - title: - selector: a[href^="./viewtopic.php?t="] - details: - selector: a[href^="./viewtopic.php?t="] - attribute: href - download: - selector: a[href^="./dl.php?id="] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - size: - selector: td:nth-child(6) u - date: - # unix - selector: td:nth-child(10) u - seeders: - selector: td.seedmed > b - leechers: - selector: td.leechmed > b - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/les-cinephiles.yml b/config/prowlarr/Definitions/les-cinephiles.yml deleted file mode 100644 index 9d9f0b55..00000000 --- a/config/prowlarr/Definitions/les-cinephiles.yml +++ /dev/null @@ -1,278 +0,0 @@ ---- -id: les-cinephiles -name: Les-Cinephiles -description: "Les-Cinephiles is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: fr-FR -type: private -encoding: UTF-8 -links: - - https://les-cinephiles.nl/ - -caps: - categorymappings: - - {id: 2, cat: TV/Anime, desc: "Animations: 4K"} - - {id: 3, cat: TV/Anime, desc: "Animations: 4K Light"} - - {id: 4, cat: TV/Anime, desc: "Animations: BDRIP"} - - {id: 5, cat: TV/Anime, desc: "Animations: BRRIP"} - - {id: 6, cat: TV/Anime, desc: "Animations: BluRay-R"} - - {id: 8, cat: TV/Anime, desc: "Animations: DVD-R"} - - {id: 9, cat: TV/Anime, desc: "Animations: DVDRIP"} - - {id: 165, cat: TV/Anime, desc: "Animations: JAP"} - - {id: 11, cat: TV/Anime, desc: "Animations: HD 1080P"} - - {id: 12, cat: TV/Anime, desc: "Animations: HD 720p"} - - {id: 13, cat: TV/Anime, desc: "Animations: HDRIP"} - - {id: 14, cat: TV/Anime, desc: "Animations: REMUX"} - - {id: 15, cat: TV/Anime, desc: "Animations: TVRIP"} - - {id: 16, cat: TV/Anime, desc: "Animations: WEBRIP"} - - {id: 17, cat: TV/Anime, desc: "Animations: WEB-DL"} - - {id: 73, cat: Books, desc: "Ebook: BD"} - - {id: 74, cat: Books, desc: "Ebook: ENFANTS"} - - {id: 75, cat: Books/Comics, desc: "Ebook: MANGAS"} - - {id: 76, cat: Books, desc: "Ebook: ROMANS"} - - {id: 167, cat: Audio/Audiobook, desc: "Ebook: AUDIO"} - - {id: 168, cat: Books/Mags, desc: "Ebook: MAGAZINE"} - - {id: 24, cat: Movies, desc: "Film: DOC.UNIVERS"} - - {id: 20, cat: Movies, desc: "Film: DOC.DECOUVERTES"} - - {id: 23, cat: Movies, desc: "Film: DOC.SPORT"} - - {id: 18, cat: Movies, desc: "Film: DOC.ANIMAUX"} - - {id: 19, cat: Movies, desc: "Film: DOC.ANTIQUE"} - - {id: 21, cat: Movies, desc: "Film: DOC.DIVERS"} - - {id: 22, cat: Movies, desc: "Film: DOC.HISTOIRE"} - - {id: 164, cat: Movies, desc: "Film: EMISSION.TV"} - - {id: 198, cat: Movies, desc: "Film: DOC.SPECTACLE"} - - {id: 25, cat: Movies/3D, desc: "Film: 3D"} - - {id: 26, cat: Movies/UHD, desc: "Film: 4K"} - - {id: 27, cat: Movies/UHD, desc: "Film: 4K Light"} - - {id: 169, cat: Movies, desc: "Film: AV1"} - - {id: 28, cat: Movies/BluRay, desc: "Film: BDRIP"} - - {id: 29, cat: Movies/BluRay, desc: "Film: BRRIP"} - - {id: 30, cat: Movies/BluRay, desc: "Film: BluRay-R"} - - {id: 31, cat: Movies, desc: "Film: Coffret"} - - {id: 32, cat: Movies/DVD, desc: "Film: DVD-R"} - - {id: 33, cat: Movies/DVD, desc: "Film: DVDRIP"} - - {id: 36, cat: Movies/HD, desc: "Film: HD 720p"} - - {id: 35, cat: Movies/HD, desc: "Film: HD 1080P"} - - {id: 37, cat: Movies/HD, desc: "Film: HDRIP"} - - {id: 170, cat: Movies/HD, desc: "Film: HDTV"} - - {id: 172, cat: Movies/HD, desc: "Film: M-HD"} - - {id: 38, cat: Movies, desc: "Film: REMUX"} - - {id: 39, cat: Movies, desc: "Film: TVRIP"} - - {id: 41, cat: Movies/WEB-DL, desc: "Film: WEB-DL"} - - {id: 200, cat: Movies/WEB-DL, desc: "Film: WEB-RIP"} - - {id: 184, cat: Movies/BluRay, desc: "Film: VOSTFR bdrip"} - - {id: 185, cat: Movies/DVD, desc: "Film: VOSTFR.DVDrip"} - - {id: 186, cat: Movies/WEB-DL, desc: "Film: VOSTFR.WEBrip"} - - {id: 202, cat: Movies/WEB-DL, desc: "Film: VOSTFR-WebDL"} - - {id: 203, cat: Movies/BluRay, desc: "Film: VOSTFR-bluray"} - - {id: 59, cat: Console/3DS, desc: "Jeux: 3DS-DS"} - - {id: 60, cat: Console/Other, desc: "Jeux: ANDROID"} - - {id: 61, cat: Console/Other, desc: "Jeux: IOS-X"} - - {id: 62, cat: PC/Games, desc: "Jeux: PC"} - - {id: 63, cat: Console/PS4, desc: "Jeux: PS3-4"} - - {id: 64, cat: Console/PSP, desc: "Jeux: PSP-X"} - - {id: 65, cat: Console/WiiU, desc: "Jeux: WII-U"} - - {id: 66, cat: Console/Wii, desc: "Jeux: WII"} - - {id: 67, cat: Console/XBox, desc: "Jeux: XBOX"} - - {id: 68, cat: PC/Mobile-Android, desc: "Logiciel: ANDROID"} - - {id: 69, cat: PC/Mac, desc: "Logiciel: APPLE"} - - {id: 70, cat: PC/Mobile-iOS, desc: "Logiciel: IPHONE"} - - {id: 71, cat: PC/Mobile-Other, desc: "Logiciel: LINUX"} - - {id: 72, cat: PC/0day, desc: "Logiciel: WINDOWS"} - - {id: 7, cat: TV/Anime, desc: "Serie: Coffret-Anime"} - - {id: 197, cat: TV, desc: "Serie: EPISODE"} - - {id: 182, cat: TV/Anime, desc: "Serie: JAP-ANIM"} - - {id: 166, cat: TV/Documentary, desc: "Serie: SERIE Docu"} - - {id: 194, cat: TV/Documentary, desc: "Serie: DOCU.DIVERS"} - - {id: 195, cat: TV/Documentary, desc: "Serie: DOCU.EMISTV"} - - {id: 173, cat: TV/UHD, desc: "Serie: 4K"} - - {id: 174, cat: TV/UHD, desc: "Serie: 4k-lLIGHT"} - - {id: 85, cat: TV, desc: "Serie: Coffret"} - - {id: 86, cat: TV, desc: "Serie: DVD-R"} - - {id: 87, cat: TV, desc: "Serie : DVDRIP"} - - {id: 88, cat: TV/HD, desc: "Serie : HD 1080P"} - - {id: 89, cat: TV/HD, desc: "Serie: HD 720p"} - - {id: 90, cat: TV/HD, desc: "Serie: HDRIP"} - - {id: 175, cat: TV/HD, desc: "Serie: HDTV 720"} - - {id: 176, cat: TV/HD, desc: "Serie: HDTV 1080"} - - {id: 177, cat: TV/HD, desc: "Serie: M-HD"} - - {id: 91, cat: TV, desc: "Serie: REMUX"} - - {id: 92, cat: TV, desc: "Serie: TVRIP"} - - {id: 93, cat: TV/WEB-DL, desc: "Serie: WEBRIP"} - - {id: 178, cat: TV/WEB-DL, desc: "Serie: WEB-DL 720"} - - {id: 179, cat: TV/WEB-DL, desc: "Serie: WEB-DL 1080"} - - {id: 199, cat: TV/WEB-DL, desc: "Serie: WebDL"} - - {id: 188, cat: TV, desc: "Serie: VOSTFR.BDrip"} - - {id: 189, cat: TV, desc: "Serie: VOSTFR.DVDrip"} - - {id: 190, cat: TV/HD, desc: "Serie: VOSTFR.HDRIP"} - - {id: 191, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEBrip"} - - {id: 192, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEB-DL"} - - {id: 180, cat: TV, desc: "Serie: VOSTFR.COFFRET"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi.FRENCH: MULTi.FRENCH - ENGLISH: ENGLISH - MULTi.ENGLISH: MULTi.ENGLISH - VOSTFR: VOSTFR - MULTi.VOSTFR: MULTi.VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - name: title - size: size - seeders: seeders - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: yes - error: - - selector: div.myFrame:contains("ACCESS_DENIED") - test: - path: index.php - selector: a[href="account-logout.php"] - -download: - before: - path: list_thanks.php - inputs: - id: "{{ .DownloadUri.Query.id }}" - to: give - torrent: "{{ .DownloadUri.Query.id }}" - selectors: - - selector: a[href^="download.php?id="] - attribute: href - -search: - paths: - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 multilang - lang: 0 - # 0 all 1 notfree 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 both, 1 local, 2 external - inclexternal: 0 - search: "{{ .Keywords }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # does not support imdbid search or return imdb link - - keywordsfilters: - - name: re_replace - args: ["(\\w+)", " +$1"] # prepend + to each word - - rows: - selector: table[class="ttable_headinner"] tr.rowners - - fields: - category: - selector: td:first-child - attribute: torrents.php?cat - filters: - - name: regexp - args: (\d+) - title_phase1: - selector: a[href^="torrents-details.php?id="] - 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: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="torrents-details.php?id="] - attribute: href - filters: - - name: replace - args: ["&hit=1", ""] # avoid redirect - poster: - selector: a[onMouseover] - attribute: onMouseover - filters: - - name: regexp - args: src=(.+?)> - date: - selector: a[onMouseover] - attribute: onMouseover - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{4})" - - name: dateparse - args: "dd-MM-yyyy" - size: - selector: td:nth-last-child(5) - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - grabs: - selector: td:nth-last-child(2) - downloadvolumefactor: - case: - ":root:has(ul#root > font:contains(\"FreeLeech : ON\"))": 0 # GLobal Freeleech event - img[src="img/freeleech_star.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# TorrentTrader 2.08 diff --git a/config/prowlarr/Definitions/libronube.yml b/config/prowlarr/Definitions/libronube.yml deleted file mode 100644 index 8c3c02c1..00000000 --- a/config/prowlarr/Definitions/libronube.yml +++ /dev/null @@ -1,75 +0,0 @@ ---- -id: libronube -name: Libronube -description: "Libronube is a Spanish Public tracker for EBOOKS" -language: es-ES -type: public -encoding: UTF-8 -links: - - https://www.libronube.com/ - -caps: - categorymappings: - - {id: ebook, cat: Books, desc: "EBook"} - - modes: - search: [q] - book-search: [q] - -settings: - - name: ebook - type: select - label: Ebook Type - default: epub - options: - epub: EPUB - mobi: MOBI - pdf: PDF - -download: - selectors: - - selector: "a[href*=\"magnet\"][href*=\"{{ .Config.ebook }}\"]" - attribute: href - filters: - - name: replace - args: ["http://demagnetize.link/?magnet=", ""] - - name: urldecode - -search: - paths: - - path: dibros/ - allowEmptyInputs: true - inputs: - q1: "{{ .Keywords }}" - sin_filtrar: on - - rows: - selector: div.row[style^="margin-top"][style*="margin-bottom"]:first-of-type > div.ebookitem - - fields: - category: - text: ebook - title: - selector: h1 - details: - selector: a[href^="/descargar-"] - attribute: href - download: - selector: a[href^="/descargar-"] - attribute: href - poster: - selector: img.tapa - attribute: src - date: - text: now - size: - text: 512 MB - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/lilleskyorg.yml b/config/prowlarr/Definitions/lilleskyorg.yml deleted file mode 100644 index 6cf7a77b..00000000 --- a/config/prowlarr/Definitions/lilleskyorg.yml +++ /dev/null @@ -1,179 +0,0 @@ ---- -id: lilleskyorg -name: LilleSky.org -description: "LilleSky.org is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://lillesky.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "MOVIES"} - - {id: 20, cat: Movies/Foreign, desc: "MOVIES-FOREIGN"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 19, cat: TV/Foreign, desc: "TV-FOREIGN"} - - {id: 4, cat: PC, desc: "APPS"} - - {id: 5, cat: Audio, desc: "MUSIC"} - - {id: 6, cat: XXX, desc: "XXX"} - - {id: 7, cat: Console, desc: "GAMES"} - - {id: 8, cat: Books, desc: "EBOOKS"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your LilleSky.org account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 8.1.1 diff --git a/config/prowlarr/Definitions/limetorrentsclone.yml b/config/prowlarr/Definitions/limetorrentsclone.yml deleted file mode 100644 index 6de10668..00000000 --- a/config/prowlarr/Definitions/limetorrentsclone.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -id: limetorrentsclone -name: LimeTorrents clone -description: "LimeTorrents clone is a Public LimeTorrents clone for TV / MOVIES / GENERAL" -language: en-US -type: public -encoding: UTF-8 -# changes to this indexer should also be made to limetorrents -links: - - https://www.limetorrents.to/ - -caps: - categorymappings: - - {id: "TV shows", cat: TV, desc: "TV shows"} - - {id: Movies, cat: Movies, desc: Movies} - - {id: Music, cat: Audio, desc: Music} - - {id: Games, cat: Console, desc: Games} - - {id: Applications, cat: PC/0day, desc: Applications} - - {id: Other, cat: Other, desc: Other} - - {id: Anime, cat: TV/Anime, desc: Anime} - - {id: E-books, cat: Books/EBook, desc: E-books} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - 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: "http://itorrents.org/" - options: - "http://itorrents.org/": iTorrents.org - "magnet:": magnet - - name: info_download - type: info - label: About the Download links - default: As the .torrent download links on this site are known to fail from time to time, you can optionally set as a fallback an automatic alternate link. - - name: sort - type: select - label: Sort requested from site - default: date - options: - date: created - seeds: seeders - size: size - - name: info_8000 - type: info - label: About LimeTorrents Categories - default: LimeTorrents only returns category Other in its Keywordless search results page.
To pass your apps' indexer TEST you will need to include the 8000(Other) category. - -download: - # the .torrent url is on the on the details page - selectors: - - selector: a.csprite_dltorrent[href^="{{ .Config.downloadlink }}"] - attribute: href - - selector: a.csprite_dltorrent[href^="{{ .Config.downloadlink2 }}"] - attribute: href - -search: - paths: - - path: "{{ if .Keywords }}search/all/{{ .Keywords }}/{{ .Config.sort }}/1/{{ else }}/latest100{{ end }}" - keywordsfilters: - - name: re_replace - args: ["S[0-9]{2}([^E]|$)", ""] # remove season tag without episode - - rows: - selector: .table2 > tbody > tr[bgcolor] - - fields: - title: - selector: div.tt-name > a[href^="/"] - attribute: href - filters: - - name: regexp - args: "/(.+?)-torrent-\\d+\\.html" - - name: re_replace - args: ["-", " "] - category_is_tv_show: - text: "{{ .Result.title }}" - filters: - - name: regexp - args: "\\b(S\\d+(?:E\\d+)?)\\b" - category: - selector: td:nth-child(2) - optional: true - default: "{{ if .Result.category_is_tv_show }}TV shows{{ else }}Other{{ end }}" - filters: - - name: regexp - args: " in (.+?)[.]?$" - details: - selector: div.tt-name > a[href^="/"] - attribute: href - download: - selector: div.tt-name > a[href^="/"] - attribute: href - date: - selector: td:nth-child(2) - filters: - - name: split - args: ["-", 0] - - name: replace - args: ["Last Month", "1 month ago"] - - name: replace - args: ["+", " ago"] - size: - selector: td:nth-child(3) - seeders: - selector: .tdseed - leechers: - selector: .tdleech - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/lusthive.yml b/config/prowlarr/Definitions/lusthive.yml deleted file mode 100644 index a22de27d..00000000 --- a/config/prowlarr/Definitions/lusthive.yml +++ /dev/null @@ -1,182 +0,0 @@ ---- -id: lusthive -name: LustHive -description: "LustHive is a Private Torrent Tracker for 3X" -language: en-US -type: private -encoding: UTF-8 -links: - - https://lusthive.org/ - -caps: - categorymappings: - - {id: 1, cat: XXX, desc: "Amateur"} - - {id: 3, cat: XXX, desc: "Anal"} - - {id: 4, cat: XXX, desc: "Asian"} - - {id: 5, cat: XXX, desc: "BBW"} - - {id: 6, cat: XXX, desc: "BDSM"} - - {id: 7, cat: XXX, desc: "Big Ass"} - - {id: 8, cat: XXX, desc: "Big Tits"} - - {id: 9, cat: XXX, desc: "Black"} - - {id: 10, cat: XXX, desc: "Classic"} - - {id: 11, cat: XXX, desc: "Creampie"} - - {id: 12, cat: XXX, desc: "Cumshot"} - - {id: 13, cat: XXX, desc: "Fetish"} - - {id: 14, cat: XXX, desc: "Games"} - - {id: 15, cat: XXX, desc: "Gay / Bi"} - - {id: 16, cat: XXX, desc: "Hairy"} - - {id: 17, cat: XXX, desc: "Hardcore"} - - {id: 18, cat: XXX, desc: "HD"} - - {id: 19, cat: XXX, desc: "Hentai"} - - {id: 20, cat: XXX, desc: "Homemade"} - - {id: 21, cat: XXX, desc: "Interracial"} - - {id: 22, cat: XXX, desc: "Latina"} - - {id: 23, cat: XXX, desc: "Lesbian"} - - {id: 24, cat: XXX, desc: "Lingerie"} - - {id: 25, cat: XXX, desc: "Magazines"} - - {id: 26, cat: XXX, desc: "Manga"} - - {id: 27, cat: XXX, desc: "Masturbation"} - - {id: 28, cat: XXX, desc: "Mature"} - - {id: 29, cat: XXX, desc: "Oral"} - - {id: 30, cat: XXX, desc: "Orgy"} - - {id: 31, cat: XXX, desc: "Other"} - - {id: 32, cat: XXX, desc: "Pack"} - - {id: 33, cat: XXX, desc: "Parody"} - - {id: 34, cat: XXX, desc: "Paysite"} - - {id: 35, cat: XXX, desc: "Pictures"} - - {id: 36, cat: XXX, desc: "Piss"} - - {id: 46, cat: XXX, desc: "POV"} - - {id: 37, cat: XXX, desc: "Pregnant"} - - {id: 38, cat: XXX, desc: "Scat / Puke"} - - {id: 39, cat: XXX, desc: "Siterip"} - - {id: 40, cat: XXX, desc: "Softcore"} - - {id: 41, cat: XXX, desc: "Squirt"} - - {id: 42, cat: XXX, desc: "Straight"} - - {id: 2, cat: XXX, desc: "Teen"} - - {id: 43, cat: XXX, desc: "Transgender"} - - {id: 44, cat: XXX, desc: "Voyeur"} - - {id: 45, cat: XXX, desc: "VR"} - - modes: - search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - 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 - -login: - path: login - method: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - cinfo: "2550|1350|24|-60" - iplocked: 0 - keeploggedin: 1 - error: - - selector: div.error - test: - path: / - selector: "#nav_userinfo" - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - title: "{{ .Keywords }}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - action: advanced - filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - - rows: - selector: table#torrent_table > tbody > tr[class^="torrent row"]:has(a[href*="action=download"]) - - fields: - category: - selector: a[href^="/torrents.php?filter_cat["] - attribute: href - filters: - - name: regexp - args: \[(\d+)\] - title: - selector: a[href^="/torrents.php?id="] - details: - selector: a[href^="/torrents.php?id="] - attribute: href - download: - selector: a[href^="/torrents.php?action=download&id="] - attribute: href - description_tags: - selector: div.tags - description: - case: - i.icon_torrent_okay: "Verified: {{ .Result.description_tags }}" - "*": "Unverified: {{ .Result.description_tags }}" - poster: - selector: td:nth-child(2) > script - filters: - - name: regexp - args: "src=\\\\\"(.*?)\\\\\"" - - name: re_replace - args: ["\\\\(.)", "$1"] - - name: replace - args: ["/static/common/noartwork/noimage.png", ""] - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(5) > span - attribute: title - # auto adjusted by site account profile - filters: - - name: dateparse - args: "MMM dd yyyy, HH:mm" - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - span.icon[title*="Freeleech"]: 0 - "img[alt=\"Freeleech\"]": 0 - "*": 1 - uploadvolumefactor: - case: - span.icon[title*="DoubleSeed"]: 2 - "img[alt=\"DoubleSeed\"]": 2 - "*": 1 - minimumratio: - text: 0.5 -# Luminance diff --git a/config/prowlarr/Definitions/magico.yml b/config/prowlarr/Definitions/magico.yml deleted file mode 100644 index e3928573..00000000 --- a/config/prowlarr/Definitions/magico.yml +++ /dev/null @@ -1,290 +0,0 @@ ---- -id: magico -name: Magico -description: "Magico (Trellas) is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL" -language: el-GR -type: private -encoding: UTF-8 -links: - - https://trellas.net/ -legacylinks: - - https://magico.info/ - - https://magico.one/ - - https://magico.club/ - - https://magico.fun/ - - https://trellas.info/ - - https://trelas.club/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 84, cat: Movies, desc: "Movies New (2017, 2018)"} - - {id: 14, cat: Movies/SD, desc: "Movies DVDRip-BDRip-BRRip (up to 2016) FREE"} - - {id: 16, cat: Movies/SD, desc: "Movies (CAM) FREE"} - - {id: 17, cat: Movies/BluRay, desc: "Movies BLU-RAY"} - - {id: 44, cat: Movies, desc: "Movies Greek"} - - {id: 76, cat: Movies, desc: "Movies Documentaries"} - - {id: 82, cat: Movies, desc: "Movies Theater"} - - - {id: 52, cat: TV, desc: "TV Series"} - - {id: 53, cat: TV/SD, desc: "TV Series Foreign"} - - {id: 70, cat: TV/HD, desc: "TV Series Foreign (720p)"} - - {id: 54, cat: TV, desc: "TV Series Greek"} - - {id: 86, cat: TV, desc: "TV Series Foreign Complete Seasons"} - - {id: 92, cat: TV, desc: "TV Series Foreign Complete Seasons (720p)"} - - {id: 87, cat: TV, desc: "TV Series Greek Complete Seasons"} - - {id: 63, cat: TV, desc: "TV Series Recreational"} - - {id: 83, cat: TV/Sport, desc: "TV Sports"} - - - {id: 55, cat: Movies, desc: "Children"} - - {id: 38, cat: Movies, desc: "Children (Movies)"} - - {id: 39, cat: Movies, desc: "Children Subtitled (Movies)"} - - {id: 93, cat: Movies, desc: "Children (TV Series)"} - - {id: 94, cat: Movies, desc: "Children Subtitled (TV Series)"} - - {id: 45, cat: Movies, desc: "Children Anime"} - - {id: 98, cat: Movies, desc: "Children 3D"} - - {id: 64, cat: Movies, desc: "Children Music"} - - - {id: 7, cat: Audio, desc: "Music Foreign"} - - {id: 21, cat: Audio, desc: "Music Foreign New Releases"} - - {id: 46, cat: Audio, desc: "Music Foreign Old Releases"} - - {id: 32, cat: Audio, desc: "Music Foreign Discographies"} - - {id: 20, cat: Audio, desc: "Music Foreign Collections"} - - {id: 102, cat: Audio, desc: "Music Foreign MAGICO Radio"} - - {id: 81, cat: Audio, desc: "Music Foreign Karaoke"} - - {id: 95, cat: Audio, desc: "Music Foreign Soundtrack"} - - - {id: 47, cat: Audio, desc: "Music Greek"} - - {id: 48, cat: Audio, desc: "Music Greek New Releases"} - - {id: 49, cat: Audio, desc: "Music Greek Old Releases"} - - {id: 51, cat: Audio, desc: "Music Greek Discographies"} - - {id: 50, cat: Audio, desc: "Music Greek Collections"} - - {id: 101, cat: Audio, desc: "Music Greek MAGICO Radio"} - - {id: 97, cat: Audio, desc: "Music Greek Live Cd's"} - - {id: 57, cat: Audio, desc: "Music Greek Rebetika"} - - {id: 58, cat: Audio, desc: "Music Greek Primary"} - - {id: 59, cat: Audio, desc: "Music Greek Cretan"} - - {id: 60, cat: Audio, desc: "Music Greek Island"} - - {id: 62, cat: Audio, desc: "Music Greek Pontian"} - - {id: 80, cat: Audio, desc: "Music Greek Karaoke"} - - {id: 96, cat: Audio, desc: "Music Greek Soundtracks"} - - - {id: 73, cat: Audio, desc: "Music Seasonal"} - - {id: 74, cat: Audio, desc: "Music Seasonal Xmas"} - - {id: 79, cat: Audio, desc: "Music Seasonal Easter"} - - {id: 75, cat: Audio, desc: "Music Seasonal Halloween"} - - {id: 78, cat: Audio, desc: "Music Seasonal Valentines"} - - - {id: 33, cat: Books, desc: "Books"} - - {id: 41, cat: Books, desc: "Books Greek"} - - {id: 65, cat: Books, desc: "Books Comics"} - - {id: 43, cat: Books, desc: "Books Periodicals"} - - {id: 105, cat: Books, desc: "Books Audio"} - - {id: 72, cat: Books, desc: "Books Children"} - - {id: 66, cat: Books, desc: "Books Educational"} - - {id: 42, cat: Books, desc: "Books Foreign"} - - {id: 67, cat: Books, desc: "Books Photos"} - - - {id: 6, cat: PC, desc: "Programs"} - - {id: 18, cat: PC/0day, desc: "Programs PC"} - - {id: 40, cat: PC/Mobile-Android, desc: "Programs Android"} - - {id: 19, cat: PC/Mac, desc: "Programs Mac"} - - - {id: 2, cat: PC/Games, desc: "Games"} - - {id: 27, cat: PC/Games, desc: "Games PC"} - - {id: 68, cat: PC/Mobile-Android, desc: "Games Android"} - - - {id: 88, cat: Other, desc: "Tutorials / Design / Accessories"} - - {id: 89, cat: Other, desc: "Tutorials Photoshop"} - - {id: 91, cat: Other, desc: "Tutorials Illustrator"} - - {id: 90, cat: Other, desc: "Tutorials After Effects"} - - 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 - -login: - path: ?p=home&pid=1 - method: form - form: form#loginbox_form - submitpath: /ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: ":contains(\"-ERROR-\")" - test: - path: ?p=torrents&pid=32 - selector: a#logout - -search: - paths: - - path: / - keywordsfilters: - - name: re_replace # add brackets to year on searchquery if missing - args: ["\\(*((19|20)\\d{2})\\)*", "($1)"] - - name: replace # use this as a workaround till #893 is implemented - args: ["Greys Anatomy", "Grey's Anatomy"] - - name: re_replace - args: ["[^\\w\\d\\(\\)]+", "%"] - inputs: - p: torrents - pid: 32 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - error: - - selector: div#show_error font - - rows: - selector: "div#content > div.torrent-box[id^=\"torrent_\"]{{ if .Config.freeleech }}:has(img[title=\"No Record!\"]){{ else }}{{ end }}, tr:has(a[href*=\"?p=torrents\"][href*=\"&action=details\"]){{ if .Config.freeleech }}:has(img[title=\"No Record!\"]){{ else }}{{ end }}" - filters: - - name: andmatch - - fields: - title: - selector: a[href*="?p=torrents"][href*="&action=details"] - filters: - - name: replace - args: ["Grey's Anatomy", "Greys Anatomy"] - category: - selector: a[href*="?p=torrents"][href*="&cid="] - attribute: href - filters: - - name: querystring - args: cid - details: - selector: a[href*="?p=torrents"][href*="&action=details"] - attribute: href - download: - selector: a[href*="?p=torrents"][href*="&action=download"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: a[rel="torrent_size"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - grabs: - selector: a[rel="times_completed"] - poster: - selector: a[rel="fancybox"] - attribute: href - description: - selector: div.torrentDetails > div:has(span.floatright) - downloadvolumefactor: - case: - "img[title=\"No Record!\"]": 0 - "*": 1 - uploadvolumefactor: - case: - "*": 1 - date_day: - # Uploaded Yesterday at 20:12 by - selector: div.torrentOwner:not(:has(abbr.timeago)):contains("day"), div.torrentOwner:not(:has(abbr.timeago)):contains("σήμερα"), div.torrentOwner:not(:has(abbr.timeago)):contains("εχθές"), div.torrentOwner:not(:has(abbr.timeago)):contains("Δευτέρα"), div.torrentOwner:not(:has(abbr.timeago)):contains("Τρίτη"), div.torrentOwner:not(:has(abbr.timeago)):contains("Τετάρτη"), div.torrentOwner:not(:has(abbr.timeago)):contains("Πέμπτη"), div.torrentOwner:not(:has(abbr.timeago)):contains("Παρασκευή"), div.torrentOwner:not(:has(abbr.timeago)):contains("Σάββατο"), div.torrentOwner:not(:has(abbr.timeago)):contains("Κυριακή") - # auto adjusted by site account profile - optional: true - remove: span - filters: - - name: replace - args: ["Uploaded ", ""] - - name: replace - args: [" by", ""] - - name: replace - args: ["Ανέβηκε ", ""] # Uploaded - - name: replace - args: [" από", ""] # by - - name: replace - args: [" τον/την", ""] # him/her - - name: replace - args: ["στις ", "at "] # at - - name: replace - args: ["σήμερα", "Today"] - - name: replace - args: ["εχθές", "Yesterday"] - - name: replace - args: ["Δευτέρα", "Monday"] - - name: replace - args: ["Τρίτη", "Tuesday"] - - name: replace - args: ["Τετάρτη", "Wednesday"] - - name: replace - args: ["Πέμπτη", "Thursday"] - - name: replace - args: ["Παρασκευή", "Friday"] - - name: replace - args: ["Σάββατο", "Saturday"] - - name: replace - args: ["Κυριακή", "Sunday"] - - name: fuzzytime - date_year: - # 23-10-2021 22:59 - selector: div.torrentOwner:not(:has(abbr.timeago)):contains("-") - # auto adjusted by site account profile - optional: true - remove: span - filters: - - name: replace - args: ["Uploaded ", ""] - - name: replace - args: [" by", ""] - - name: replace - args: ["at ", ""] - - name: replace - args: ["Ανέβηκε ", ""] # Uploaded - - name: replace - args: [" από", ""] # by - - name: replace - args: [" τον/την", ""] # him/her - - name: replace - args: ["στις ", ""] # at - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_other: - selector: td.torrent_name - # auto adjusted by site account profile - optional: true - remove: div, a, span - filters: - - name: replace - args: ["Uploaded ", ""] - - name: replace - args: [" by", ""] - - name: replace - args: ["at ", ""] - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_unix: - selector: div.torrentOwner > abbr.timeago - attribute: data-time - optional: true - date: - text: "{{ if or .Result.date_day .Result.date_year .Result.date_other .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_other .Result.date_unix }}{{ else }}now{{ end }}" -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/mendigosdaweb.yml b/config/prowlarr/Definitions/mendigosdaweb.yml deleted file mode 100644 index 83d2bc0d..00000000 --- a/config/prowlarr/Definitions/mendigosdaweb.yml +++ /dev/null @@ -1,180 +0,0 @@ ---- -id: mendigosdaweb -name: Mendigos da WEB -description: "Mendigos da WEB is a PORTUGUESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: pt-PT -type: private -encoding: UTF-8 -links: - - https://mendigosdaweb.cc/ - -caps: - categorymappings: - - {id: 6, cat: Other, desc: "Cursos"} - - {id: 7, cat: Books/EBook, desc: "Livros"} - - {id: 8, cat: Audio/Audiobook, desc: "AudioBooks"} - - {id: 9, cat: Other, desc: "Material de Apoio"} - - {id: 1, cat: Movies, desc: "Filmes"} - - {id: 2, cat: TV, desc: "TV Séries"} - - {id: 10, cat: Console, desc: "Jogos"} - - {id: 5, cat: PC, desc: "Aplicativos"} - - {id: 12, cat: XXX, desc: "Adulto"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - book-search: [q] - music-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your Mendigos da WEB account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Your account will be considered inactive if it goes more than 90 days without you logging into the website. After 90 days of inactivity (that is, 90 days without logging in) it will be deleted from the tracker. Attention: The groups that suffer due to inactivity are: Homeless and Leech." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Ficção científica)", "Ficção_científica"] - - name: re_replace - args: ["(?i)(Cinema TV)", "Cinema_TV"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 1.0 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 7.1.0 diff --git a/config/prowlarr/Definitions/metalwrks.yml b/config/prowlarr/Definitions/metalwrks.yml deleted file mode 100644 index 57559dc3..00000000 --- a/config/prowlarr/Definitions/metalwrks.yml +++ /dev/null @@ -1,178 +0,0 @@ ---- -id: metalwrks -name: METALWRKS -description: "METALWRKS is an AUSTRALIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-AU -type: private -encoding: UTF-8 -links: - - https://metalworks.lol/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 4, cat: Audio, desc: "Music"} - - {id: 3, cat: Console, desc: "Games"} - - {id: 5, cat: PC, desc: "Software"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your METALWRKS account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Accounts that are inactive for more than 60 days may be disabled." - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# json UNIT3D 8.1.3 diff --git a/config/prowlarr/Definitions/movietorrentz.yml b/config/prowlarr/Definitions/movietorrentz.yml deleted file mode 100644 index 13638c31..00000000 --- a/config/prowlarr/Definitions/movietorrentz.yml +++ /dev/null @@ -1,134 +0,0 @@ ---- -id: movietorrentz -name: Movie-Torrentz -description: "Movie-Torrentz is a Private Torrent Tracker for MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://m2g.link/ - -caps: - categorymappings: - - {id: 106, cat: Movies, desc: "m2g: m2g"} - - {id: 102, cat: PC, desc: "Misc: Programs"} - - {id: 107, cat: Movies/SD, desc: "Movies: Xvid"} - - {id: 108, cat: Movies/DVD, desc: "Movies: DVDR"} - - {id: 109, cat: Movies, desc: "Movies: Packs"} - - {id: 110, cat: Movies/HD, desc: "Movies: MP4"} - - {id: 112, cat: Movies/SD, desc: "Movies: 480p"} - - {id: 113, cat: Movies/BluRay, desc: "Movies: BluRay / x264"} - - {id: 126, cat: Movies/HD, desc: "Movies: x265"} - - {id: 127, cat: Movies/UHD, desc: "Movies: 4K"} - - {id: 114, cat: TV/SD, desc: "TV: XviD"} - - {id: 115, cat: TV/HD, desc: "TV: X264"} - - {id: 116, cat: TV, desc: "TV: Packs"} - - {id: 128, cat: TV/HD, desc: "TV: x265"} - - {id: 103, cat: Movies, desc: "ViP3R: ViP3R"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: yes - error: - - selector: div.myBlock:contains("Access Denied") - test: - path: index.php - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 dead, 2 onlydead - incldead: 1 - # 0 any, 1 english, etc - lang: 0 - # 0 any, 1 notfree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # does not support imdbid searching - - rows: - selector: tr.t-row - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="torrents-details.php?id="]:not(a[onmouseover*="images/nocover.jpg"]) - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - date: - text: now - size: - selector: td:nth-last-child(5) - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - downloadvolumefactor: - case: - img[src="images/free.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.5 -# TorrentTrader diff --git a/config/prowlarr/Definitions/movieworld.yml b/config/prowlarr/Definitions/movieworld.yml deleted file mode 100644 index 34465fca..00000000 --- a/config/prowlarr/Definitions/movieworld.yml +++ /dev/null @@ -1,169 +0,0 @@ ---- -id: movieworld -name: MovieWorld -description: "MovieWorld (Flicker) is a Semi-Private Torrent Tracker for MOVIES / TV / 3X" -language: en-US -type: semi-private -encoding: UTF-8 -links: - - https://movieworld.pics/ - -caps: - categorymappings: - - {id: 37, cat: Movies, desc: "Freeleech"} - - {id: 14, cat: Movies/WEB-DL, desc: "Movie/WeBRip"} - - {id: 5, cat: Movies/UHD, desc: "Movie/4K Rip"} - - {id: 7, cat: Movies/BluRay, desc: "Movie/BluRay Rip"} - - {id: 34, cat: Movies, desc: "Movie/Other"} - - {id: 15, cat: Movies, desc: "Movie/Packs"} - - {id: 20, cat: Movies/SD, desc: "Movie/CAM/HDRip"} - - {id: 21, cat: XXX, desc: "Movie/XXX"} - - {id: 28, cat: TV, desc: "Tv Packs"} - - {id: 31, cat: TV, desc: "Tv Mini Series"} - - {id: 30, cat: TV/HD, desc: "Tv Episodes"} - - {id: 26, cat: TV/Sport, desc: "Tv Sport"} - - {id: 41, cat: Movies, desc: "Freeleech"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-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: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # https://movieworld.pics/index.php?page=torrents&search=&category=0&active=0 - - path: index.php - inputs: - page: torrents - search: "{{ .Keywords }}" - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 filename, 1 file&descr, 2 descr, 3 uploaders, 18 genre, 4 imdb, 5 gold, 6 silver, 7 bronze, 8-17 upload multiplier 1x-10x - # note the options are exclusive, so searching for gold means the search keywords are ignored - options: 0 - # 0 all, 1 active only, 2 dead only - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # does not support imdbid search and does not return imdb link in results, does not support Genre search or return them in results. - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: "table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]):not(:has(a[href^=\"index.php?page=userdetails\"])){{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title_torrent: - selector: a[href^="download.php?id="] - attribute: href - filters: - - name: querystring - args: f - - name: htmldecode - - name: re_replace - args: ["(?i)\\.torrent$", ""] - title_text: - selector: a[href^="index.php?page=torrent-details&id="] - title: - text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}" - poster: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - - name: replace - args: ["torrentimg/nocover.jpg", ""] - details: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - date: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd/MM/yyyy" - seeders: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td - leechers: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td - grabs: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td ~ td - size: - selector: "td:has(a[href^=\"download.php?id=\"]) ~ td ~ td ~ td ~ td ~ td ~ td" - downloadvolumefactor: - case: - img[src="images/gold.gif"]: 0 - img[src="images/silver.gif"]: 0.5 - img[src="images/bronze.gif"]: 0.75 - "*": 1 - uploadvolumefactor: - case: - img[src="images/2x.gif"]: 2 - img[src="images/3x.gif"]: 3 - img[src="images/4x.gif"]: 4 - img[src="images/5x.gif"]: 5 - img[src="images/6x.gif"]: 6 - img[src="images/7x.gif"]: 7 - img[src="images/8x.gif"]: 8 - img[src="images/9x.gif"]: 9 - img[src="images/10x.gif"]: 10 - "*": 1 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# xbtitFM v4.1.28 diff --git a/config/prowlarr/Definitions/mteamtp.yml b/config/prowlarr/Definitions/mteamtp.yml deleted file mode 100644 index 7960aa2d..00000000 --- a/config/prowlarr/Definitions/mteamtp.yml +++ /dev/null @@ -1,222 +0,0 @@ ---- -id: mteamtp -name: M-Team - TP -description: "M-Team TP (MTTP) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / 3X" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 5 -links: - - https://kp.m-team.cc/ - - https://tp.m-team.cc/ - - https://pt.m-team.cc/ - -caps: - categorymappings: - - {id: 401, cat: Movies/SD, desc: "Movie(電影)/SD", default: true} - - {id: 419, cat: Movies/HD, desc: "Movie(電影)/HD", default: true} - - {id: 420, cat: Movies/DVD, desc: "Movie(電影)/DVDiSo", default: true} - - {id: 421, cat: Movies/BluRay, desc: "Movie(電影)/Blu-Ray", default: true} - - {id: 439, cat: Movies/Other, desc: "Movie(電影)/Remux", default: true} - - {id: 403, cat: TV/SD, desc: "TV Series(影劇/綜藝)/SD", default: true} - - {id: 402, cat: TV/HD, desc: "TV Series(影劇/綜藝)/HD", default: true} - - {id: 435, cat: TV/SD, desc: "TV Series(影劇/綜藝)/DVDiSo", default: true} - - {id: 438, cat: TV/HD, desc: "TV Series(影劇/綜藝)/BD", default: true} - - {id: 404, cat: TV/Documentary, desc: "紀錄教育", default: true} - - {id: 405, cat: TV/Anime, desc: "Anime(動畫)", default: true} - - {id: 407, cat: TV/Sport, desc: "Sports(運動)", default: true} - - {id: 422, cat: PC/0day, desc: "Software(軟體)", default: true} - - {id: 423, cat: PC/Games, desc: "PCGame(PC遊戲)", default: true} - - {id: 427, cat: Books, desc: "eBook(電子書)", default: true} - - {id: 409, cat: Other, desc: "Misc(其他)", default: true} - # music - - {id: 406, cat: Audio/Video, desc: "MV(演唱)", default: true} - - {id: 408, cat: Audio/Other, desc: "Music(AAC/ALAC)", default: true} - - {id: 434, cat: Audio, desc: "Music(無損)", default: true} - # adult - - {id: 410, cat: XXX, desc: "AV(有碼)/HD Censored", default: false} - - {id: 429, cat: XXX, desc: "AV(無碼)/HD Uncensored", default: false} - - {id: 424, cat: XXX, desc: "AV(有碼)/SD Censored", default: false} - - {id: 430, cat: XXX, desc: "AV(無碼)/SD Uncensored", default: false} - - {id: 426, cat: XXX, desc: "AV(無碼)/DVDiSo Uncensored", default: false} - - {id: 437, cat: XXX, desc: "AV(有碼)/DVDiSo Censored", default: false} - - {id: 431, cat: XXX, desc: "AV(有碼)/Blu-Ray Censored", default: false} - - {id: 432, cat: XXX, desc: "AV(無碼)/Blu-Ray Uncensored", default: false} - - {id: 436, cat: XXX, desc: "AV(網站)/0Day", default: false} - - {id: 425, cat: XXX, desc: "IV(寫真影集)/Video Collection", default: false} - - {id: 433, cat: XXX, desc: "IV(寫真圖集)/Picture Collection", default: false} - - {id: 411, cat: XXX, desc: "H-Game(遊戲)", default: false} - - {id: 412, cat: XXX, desc: "H-Anime(動畫)", default: false} - - {id: 413, cat: XXX, desc: "H-Comic(漫畫)", default: false} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_title - type: info - label: About Titles - default: For best results, disable the torrent name tooltip in User CP/Tracker Settings/Torrents Page. Otherwise long release names will be cut off. - - name: info_download_link - type: info - label: About Download Links - default: For best results, you must enable the Download icon in User CP/Tracker Settings/Torrents Page. - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: td.embedded:has(h2:contains("登录失败")) - - selector: td.embedded:has(h2:contains("failed")) - - selector: td.toolbox:contains("錯誤") - - selector: td.toolbox:contains("Error") - - selector: td.toolbox:contains("限制登") - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 419, 420, 421, 439, 403, 402, 435, 438, 404, 405, 407, 422, 423, 427, 409] - - path: adult.php - categories: [410, 429, 424, 430, 426, 437, 431, 432, 436, 425, 433, 411, 412, 413] - - path: music.php - categories: [406, 408, 434] - allowEmptyInputs: true - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ 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, 3 uploader, 4 imdb url - search_area: "{{ if .Query.IMDBID }}4{{ 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(table.torrentname) - - fields: - title_default: - # shortened for long release names - selector: a[href^="details.php?id="] > b - title: - # not available if IMDB tooltips are turned on - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[alt="torrent thumbnail"][src] - attribute: src - filters: - - name: replace - args: ["pic/nopic.jpg", ""] - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: td.rowfollow:nth-last-child(6) - grabs: - selector: td.rowfollow:nth-last-child(3) - seeders: - selector: td.rowfollow:nth-last-child(5) - leechers: - selector: td.rowfollow:nth-last-child(4) - date_added: - selector: td.rowfollow:nth-last-child(7) > span[title] - optional: true - attribute: title - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_elapsed: - selector: td.rowfollow:nth-last-child(7):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 }}" - 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 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP Standard v1.5 Beta 4 diff --git a/config/prowlarr/Definitions/mteamtp2fa.yml b/config/prowlarr/Definitions/mteamtp2fa.yml deleted file mode 100644 index 10605468..00000000 --- a/config/prowlarr/Definitions/mteamtp2fa.yml +++ /dev/null @@ -1,225 +0,0 @@ ---- -id: mteamtp2fa -name: M-Team - TP (2FA) -description: "This indexer uses a cookie login for M-Team TP (MTTP) for those that want to use 2FA" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 5 -links: - - https://kp.m-team.cc/ - - https://tp.m-team.cc/ - - https://pt.m-team.cc/ - -caps: - categorymappings: - - {id: 401, cat: Movies/SD, desc: "Movie(電影)/SD", default: true} - - {id: 419, cat: Movies/HD, desc: "Movie(電影)/HD", default: true} - - {id: 420, cat: Movies/DVD, desc: "Movie(電影)/DVDiSo", default: true} - - {id: 421, cat: Movies/BluRay, desc: "Movie(電影)/Blu-Ray", default: true} - - {id: 439, cat: Movies/Other, desc: "Movie(電影)/Remux", default: true} - - {id: 403, cat: TV/SD, desc: "TV Series(影劇/綜藝)/SD", default: true} - - {id: 402, cat: TV/HD, desc: "TV Series(影劇/綜藝)/HD", default: true} - - {id: 435, cat: TV/SD, desc: "TV Series(影劇/綜藝)/DVDiSo", default: true} - - {id: 438, cat: TV/HD, desc: "TV Series(影劇/綜藝)/BD", default: true} - - {id: 404, cat: TV/Documentary, desc: "紀錄教育", default: true} - - {id: 405, cat: TV/Anime, desc: "Anime(動畫)", default: true} - - {id: 407, cat: TV/Sport, desc: "Sports(運動)", default: true} - - {id: 422, cat: PC/0day, desc: "Software(軟體)", default: true} - - {id: 423, cat: PC/Games, desc: "PCGame(PC遊戲)", default: true} - - {id: 427, cat: Books, desc: "eBook(電子書)", default: true} - - {id: 409, cat: Other, desc: "Misc(其他)", default: true} - # music - - {id: 406, cat: Audio/Video, desc: "MV(演唱)", default: true} - - {id: 408, cat: Audio/Other, desc: "Music(AAC/ALAC)", default: true} - - {id: 434, cat: Audio, desc: "Music(無損)", default: true} - # adult - - {id: 410, cat: XXX, desc: "AV(有碼)/HD Censored", default: false} - - {id: 429, cat: XXX, desc: "AV(無碼)/HD Uncensored", default: false} - - {id: 424, cat: XXX, desc: "AV(有碼)/SD Censored", default: false} - - {id: 430, cat: XXX, desc: "AV(無碼)/SD Uncensored", default: false} - - {id: 426, cat: XXX, desc: "AV(無碼)/DVDiSo Uncensored", default: false} - - {id: 437, cat: XXX, desc: "AV(有碼)/DVDiSo Censored", default: false} - - {id: 431, cat: XXX, desc: "AV(有碼)/Blu-Ray Censored", default: false} - - {id: 432, cat: XXX, desc: "AV(無碼)/Blu-Ray Uncensored", default: false} - - {id: 436, cat: XXX, desc: "AV(網站)/0Day", default: false} - - {id: 425, cat: XXX, desc: "IV(寫真影集)/Video Collection", default: false} - - {id: 433, cat: XXX, desc: "IV(寫真圖集)/Picture Collection", default: false} - - {id: 411, cat: XXX, desc: "H-Game(遊戲)", default: false} - - {id: 412, cat: XXX, desc: "H-Anime(動畫)", default: false} - - {id: 413, cat: XXX, desc: "H-Comic(漫畫)", default: false} - - 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: infocookie - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: useragent - type: text - label: User-Agent - - name: info_useragent - type: info - label: How to get the User-Agent - default: "
  1. From the same place you fetched the cookie,
  2. Find 'user-agent:' in the Request Headers section
  3. Select and Copy the whole user-agent string (everything after 'user-agent: ') and Paste here.
" - - 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 Torrents per page: setting to 100 on your account profile. - - name: info_title - type: info - label: About Titles - default: For best results, disable the torrent name tooltip in User CP/Tracker Settings/Torrents Page. Otherwise long release names will be cut off. - - name: info_download_link - type: info - label: About Download Links - default: For best results, you must enable the Download icon in User CP/Tracker Settings/Torrents Page. - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - categories: [401, 419, 420, 421, 439, 403, 402, 435, 438, 404, 405, 407, 422, 423, 427, 409] - - path: adult.php - categories: [410, 429, 424, 430, 426, 437, 431, 432, 436, 425, 433, 411, 412, 413] - - path: music.php - categories: [406, 408, 434] - allowEmptyInputs: true - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ 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, 3 uploader, 4 imdb url - search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}" - # 0 AND, 1 OR, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - headers: - User-Agent: ["{{ .Config.useragent }}"] - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - title_default: - # shortened for long release names - selector: a[href^="details.php?id="] > b - title: - # not available if IMDB tooltips are turned on - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[alt="torrent thumbnail"][src] - attribute: src - filters: - - name: replace - args: ["pic/nopic.jpg", ""] - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: td.rowfollow:nth-last-child(6) - grabs: - selector: td.rowfollow:nth-last-child(3) - seeders: - selector: td.rowfollow:nth-last-child(5) - leechers: - selector: td.rowfollow:nth-last-child(4) - date_added: - selector: td.rowfollow:nth-last-child(7) > span[title] - optional: true - attribute: title - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_elapsed: - selector: td.rowfollow:nth-last-child(7):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 }}" - 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 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP Standard v1.5 Beta 4 diff --git a/config/prowlarr/Definitions/myporno.yml b/config/prowlarr/Definitions/myporno.yml deleted file mode 100644 index b4816766..00000000 --- a/config/prowlarr/Definitions/myporno.yml +++ /dev/null @@ -1,70 +0,0 @@ ---- -id: myporno -name: Myporno -description: "Myporno is a RUSSIAN Public tracker for 3X" -language: ru-RU -type: public -encoding: UTF-8 -links: - - https://myporno.top/ - -caps: - categorymappings: - - {id: XXX, cat: XXX, desc: XXX} - - modes: - search: [q] - -settings: [] - -download: - selectors: - - selector: div#download > a[href^="magnet:"] - attribute: href - - selector: div#download > a[href$=".torrent"] - attribute: href - -search: - paths: - # https://myporno.top//index.php?do=search&subaction=search&story=blonde&submit=search+by+name - - path: index.php - inputs: - do: search - subaction: search - story: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - submit: "search by name" - - rows: - selector: tr.gai - - fields: - category: - text: XXX - title: - selector: td:nth-child(2) > a:last-of-type - details: - selector: td:nth-child(2) > a:last-of-type - attribute: href - download: - selector: td:nth-child(2) > a:last-of-type - attribute: href - date: - selector: td:first-child - filters: - - name: regexp - args: "(\\d{1,2}-\\d{2}-\\d{4})" - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "d-MM-yyyy zzz" - size: - selector: td:nth-child(3) - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/nextjav.yml b/config/prowlarr/Definitions/nextjav.yml deleted file mode 100644 index 3fdf2724..00000000 --- a/config/prowlarr/Definitions/nextjav.yml +++ /dev/null @@ -1,66 +0,0 @@ ---- -id: nextjav -name: NextJAV -description: "NextJAV is a Public tracker for Asian 3X (JAV)" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://nextjav.com/ - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: [] - -download: - selectors: - - selector: a.btn-download - attribute: href - -search: - paths: - - path: "{{ if .Keywords }}search/torrent?torrentsearch={{ .Keywords }}{{ else }}{{ end }}" - - rows: - selector: div.status-publish - - fields: - category: - text: XXX - title: - selector: a[href^="/torrent/detail/"] - attribute: href - filters: - - name: split - args: ["/", 3] - details: - selector: a[href^="/torrent/detail/"] - attribute: href - download: - selector: a[href^="/torrent/detail/"] - attribute: href - poster: - selector: img - attribute: src - date: - text: now - size: - selector: h2 - filters: - - name: regexp - args: (\d+\.\d+ GB)$ - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/nntt.yml b/config/prowlarr/Definitions/nntt.yml deleted file mode 100644 index 0ef0cca2..00000000 --- a/config/prowlarr/Definitions/nntt.yml +++ /dev/null @@ -1,842 +0,0 @@ ---- -id: nntt -name: NNTT -description: "NNTT is a RUSSIAN Public Torrent Tracker for MOVIES / TV / GENERAL" -language: ru-RU -type: public -encoding: UTF-8 -links: - - http://www.nntt.org/ # site does not support https ERR_CONNECTION_REFUSED -legacylinks: - - https://nntt.black-mirror.xyz/ - - https://nntt.unblocked.casa/ - - https://nntt.proxyportal.fun/ - - https://nntt.uk-unblock.xyz/ - - https://nntt.ind-unblock.xyz/ - - https://nntt.unblocked.bar/ # .torrent downloads fail in Prowlarr but work in browser - - https://nntt.proxyportal.pw/ # .torrent downloads fail in Prowlarr but work in browser - - https://nntt.uk-unblock.pro/ # .torrent downloads fail in Prowlarr but work in browser - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Кино, Видео и ТВ"} - - {id: 154, cat: Movies/HD, desc: "Зарубежное кино (HD Video)"} - - {id: 153, cat: Movies/DVD, desc: "Зарубежное кино (DVD Video)"} - - {id: 157, cat: Movies/3D, desc: "Кино в 3D"} - - {id: 5, cat: Movies/SD, desc: "Зарубежное кино (DVDRip, HQRip)"} - - {id: 6, cat: Movies/Foreign, desc: "Наше кино (DVDRip, HQRip)"} - - {id: 235, cat: Movies/Other, desc: "Мультфильмы и мультсериалы"} - - {id: 270, cat: TV, desc: "Сериалы"} - - {id: 12, cat: TV/Documentary, desc: "Документальные фильмы и телепередачи"} - - {id: 350, cat: TV/Anime, desc: "Аниме"} - - {id: 824, cat: TV/Sport, desc: "Спорт"} - - {id: 9, cat: TV/Other, desc: "TV, развлекательные шоу, приколы и юмор"} - - {id: 758, cat: Audio, desc: "Музыка"} - - {id: 943, cat: Audio/Lossless, desc: "Lossless"} - - {id: 1046, cat: Audio/Video, desc: "Музыкальное видео"} - - {id: 616, cat: Audio/Audiobook, desc: "Аудиокниги"} - - {id: 614, cat: Books, desc: "Книги"} - - {id: 617, cat: Books/Mags, desc: "Журналы"} - - {id: 488, cat: PC, desc: "Программы"} - - {id: 492, cat: PC/Mac, desc: "ОС и ПО для Apple Macintosh"} - - {id: 799, cat: PC/Mobile-iOS, desc: "iPhone, iPod Touch, iPad"} - - {id: 800, cat: PC/Mobile-Android, desc: "Android"} - - {id: 400, cat: PC/Games, desc: "Игры"} - - {id: 748, cat: Console, desc: "Консольные игры"} - - {id: 686, cat: XXX, desc: "Эротика и Pron"} - - - {id: 4, cat: Other, desc: "HD, DVD, 3D фильмы"} - - {id: 152, cat: Other, desc: "Архив (HD, DVD, 3D Video)"} - - {id: 156, cat: Other, desc: "Наше кино (HD Video)"} - - {id: 155, cat: Other, desc: "Наше кино (DVD Video)"} - - {id: 159, cat: Other, desc: "Классика зарубежного кино"} - - {id: 160, cat: Other, desc: "Азиатское кино"} - - {id: 161, cat: Other, desc: "Индийское кино"} - - {id: 162, cat: Other, desc: "Фильмы без перевода (Зарубежное кино)"} - - {id: 164, cat: Other, desc: "Зарубежное кино, экранки (CamRip, TS, Screener)"} - - {id: 165, cat: Other, desc: "Архив (Наше кино)"} - - {id: 166, cat: Other, desc: "Кино СССР"} - - {id: 167, cat: Other, desc: "Многосерийные фильмы СССР"} - - {id: 168, cat: Other, desc: "Нелицензионные сборники на DVD (Наше)"} - - {id: 169, cat: Other, desc: "Наше кино, экранки (CamRip, TS, Screener)"} - - {id: 215, cat: Other, desc: "Архив (Документальные фильмы)"} - - {id: 216, cat: Other, desc: "Вера, религия и мифология"} - - {id: 217, cat: Other, desc: "Вокруг света"} - - {id: 218, cat: Other, desc: "Документальные фильмы (HD & HQ Video)"} - - {id: 219, cat: Other, desc: "Другое научно-популярное видео"} - - {id: 220, cat: Other, desc: "История до XX века"} - - {id: 221, cat: Other, desc: "Ищу (Документальные фильмы)"} - - {id: 222, cat: Other, desc: "Криминал и преступления"} - - {id: 223, cat: Other, desc: "Мировое искусство и культура"} - - {id: 224, cat: Other, desc: "Новейшая история"} - - {id: 225, cat: Other, desc: "О войнах, армии и оружии"} - - {id: 226, cat: Other, desc: "О кинематографе"} - - {id: 227, cat: Other, desc: "О музыке"} - - {id: 228, cat: Other, desc: "Сверхъестественное"} - - {id: 229, cat: Other, desc: "Флора и Фауна"} - - {id: 230, cat: Other, desc: "Фильмы BBC"} - - {id: 231, cat: Other, desc: "Фильмы Discovery"} - - {id: 232, cat: Other, desc: "Фильмы National Geographic"} - - {id: 233, cat: Other, desc: "IT тематика"} - - {id: 899, cat: Other, desc: "Биографии. Личности"} - - {id: 900, cat: Other, desc: "Космос"} - - {id: 901, cat: Other, desc: "Концепция Общественной Безопасности"} - - {id: 902, cat: Other, desc: "Мир вокруг нас"} - - {id: 903, cat: Other, desc: "Научно-познавательные"} - - {id: 905, cat: Other, desc: "Политика"} - - {id: 906, cat: Other, desc: "Релакс"} - - {id: 907, cat: Other, desc: "Рыбалка и охота"} - - {id: 908, cat: Other, desc: "Тайны и загадки"} - - {id: 909, cat: Other, desc: "Философия"} - - {id: 910, cat: Other, desc: "Техника и вооружение"} - - {id: 911, cat: Other, desc: "Вторая мировая война"} - - {id: 962, cat: Other, desc: "Обучающее видео"} - - {id: 963, cat: Other, desc: "Кулинария"} - - {id: 964, cat: Other, desc: "Охота"} - - {id: 965, cat: Other, desc: "Фитнес - Разум и Тело"} - - {id: 966, cat: Other, desc: "Здоровье"} - - {id: 967, cat: Other, desc: "Уроки музыки"} - - {id: 968, cat: Other, desc: "Бизнес, экономика и финансы"} - - {id: 969, cat: Other, desc: "Учебные видео для детей и родителей"} - - {id: 970, cat: Other, desc: "Пикап и психология"} - - {id: 994, cat: Other, desc: "Сделай сам!"} - - {id: 995, cat: Other, desc: "Политика"} - - {id: 997, cat: Other, desc: "Иностранные языки"} - - {id: 998, cat: Other, desc: "Компьютерные видеоуроки"} - - {id: 996, cat: Other, desc: "Компьютерная графика"} - - {id: 1028, cat: Other, desc: "Компьютерные сети и безопасность"} - - {id: 1029, cat: Other, desc: "ОС и серверные программы Microsoft"} - - {id: 1030, cat: Other, desc: "Офисные программы Microsoft"} - - {id: 1031, cat: Other, desc: "ОС и программы семейства UNIX"} - - {id: 1032, cat: Other, desc: "Adobe Photoshop"} - - {id: 1033, cat: Other, desc: "Autodesk Maya"} - - {id: 1034, cat: Other, desc: "Autodesk 3ds Max"} - - {id: 1035, cat: Other, desc: "Autodesk Softimage (XSI)"} - - {id: 1036, cat: Other, desc: "ZBrush"} - - {id: 1037, cat: Other, desc: "Flash, Flex и ActionScript"} - - {id: 1038, cat: Other, desc: "Инженерные и научные программы"} - - {id: 1039, cat: Other, desc: "Web-дизайн"} - - {id: 1040, cat: Other, desc: "Программирование"} - - {id: 1041, cat: Other, desc: "Программы для Mac OS"} - - {id: 1042, cat: Other, desc: "Работа с видео"} - - {id: 1043, cat: Other, desc: "Работа со звуком"} - - {id: 1045, cat: Other, desc: "Разное"} - - {id: 1000, cat: Other, desc: "Салон красоты"} - - {id: 1003, cat: Other, desc: "Спортивные уроки"} - - {id: 1004, cat: Other, desc: "Стройка и ремонт"} - - {id: 1005, cat: Other, desc: "Учимся танцевать"} - - {id: 1009, cat: Other, desc: "Детский раздел"} - - {id: 1010, cat: Other, desc: "Детский"} - - {id: 1011, cat: Other, desc: "Сериалы для детей"} - - {id: 1012, cat: Other, desc: "Сказки (DVD)"} - - {id: 1013, cat: Other, desc: "Детские фильмы (DVD)"} - - {id: 1014, cat: Other, desc: "Музыка для детей"} - - {id: 1015, cat: Other, desc: "Детские телепередачи"} - - {id: 1016, cat: Other, desc: "Детские журналы"} - - {id: 1017, cat: Other, desc: "Отечественные сказки"} - - {id: 1018, cat: Other, desc: "Зарубежные сказки"} - - {id: 1019, cat: Other, desc: "Детские фильмы (отечественные)"} - - {id: 1020, cat: Other, desc: "Детские фильмы (зарубежные)"} - - {id: 1021, cat: Other, desc: "Детская литература"} - - {id: 1022, cat: Other, desc: "Детская литература (аудиокникги)"} - - {id: 352, cat: Other, desc: "Ongoing"} - - {id: 366, cat: Other, desc: "Архив (Ongoing)"} - - {id: 367, cat: Other, desc: "Русская озвучка"} - - {id: 368, cat: Other, desc: "Оригинальная озвучка + cубтитры"} - - {id: 353, cat: Other, desc: "Аниме с русской озвучкой"} - - {id: 369, cat: Other, desc: "Архив (Аниме с русской озвучкой)"} - - {id: 370, cat: Other, desc: "TV"} - - {id: 371, cat: Other, desc: "TV (HD Video)"} - - {id: 372, cat: Other, desc: "TV (DVD Video)"} - - {id: 373, cat: Other, desc: "OVA"} - - {id: 374, cat: Other, desc: "OVA (HD Video)"} - - {id: 354, cat: Other, desc: "Аниме c оригинальной озвучкой / субтитрами"} - - {id: 375, cat: Other, desc: "Архив (Аниме c оригинальной озвучкой / субтитрами)"} - - {id: 376, cat: Other, desc: "TV"} - - {id: 377, cat: Other, desc: "TV (HD Video)"} - - {id: 378, cat: Other, desc: "OVA"} - - {id: 379, cat: Other, desc: "OVA (HD Video)"} - - {id: 355, cat: Other, desc: "Полнометражное аниме"} - - {id: 380, cat: Other, desc: "Архив (Полнометражное аниме)"} - - {id: 381, cat: Other, desc: "Полнометражное аниме (DVDRip, HQRip) c русской озвучкой"} - - {id: 382, cat: Other, desc: "Полнометражное аниме (HD Video) c оригинальной озвучкой"} - - {id: 383, cat: Other, desc: "Полнометражное аниме (HD Video) c русской озвучкой"} - - {id: 384, cat: Other, desc: "Полнометражное аниме (DVDRip, HQRip) c оригинальной озвучкой"} - - {id: 385, cat: Other, desc: "Короткометражное аниме"} - - {id: 356, cat: Other, desc: "Манга"} - - {id: 386, cat: Other, desc: "Архив (Манга)"} - - {id: 387, cat: Other, desc: "Хентай манга"} - - {id: 388, cat: Other, desc: "Манга на русском"} - - {id: 389, cat: Other, desc: "Манга на прочих языках"} - - {id: 357, cat: Other, desc: "Музыка и Клипы"} - - {id: 390, cat: Other, desc: "Архив (Музыка и Клипы)"} - - {id: 391, cat: Other, desc: "OST"} - - {id: 392, cat: Other, desc: "J-music"} - - {id: 393, cat: Other, desc: "AMV и др. ролики"} - - {id: 358, cat: Other, desc: "Арт"} - - {id: 394, cat: Other, desc: "Архив (Арт)"} - - {id: 395, cat: Other, desc: "Обои"} - - {id: 396, cat: Other, desc: "Артбуки"} - - {id: 359, cat: Other, desc: "Hentai"} - - {id: 397, cat: Other, desc: "Архив (Hentai)"} - - {id: 398, cat: Other, desc: "Hentai с русской озвучкой"} - - {id: 399, cat: Other, desc: "Hentai с оригинальной озвучкой / субтитрами"} - - {id: 766, cat: Other, desc: "Электронная музыка"} - - {id: 767, cat: Other, desc: "Синглы и EP"} - - {id: 768, cat: Other, desc: "Сборники"} - - {id: 769, cat: Other, desc: "Dj-миксы и радиошоу"} - - {id: 770, cat: Other, desc: "Psy/Goa trance"} - - {id: 771, cat: Other, desc: "Chillou t / Lounge / Downtempo / Trip-Hop"} - - {id: 772, cat: Other, desc: "Electro"} - - {id: 773, cat: Other, desc: "Dance / Club"} - - {id: 774, cat: Other, desc: "Techno/Minimal"} - - {id: 775, cat: Other, desc: "Electro-House"} - - {id: 776, cat: Other, desc: "Hardstyle"} - - {id: 777, cat: Other, desc: "House"} - - {id: 778, cat: Other, desc: "Trance"} - - {id: 779, cat: Other, desc: "Drum & Bass / Jungle / Breakbeat / Dubstep / IDM"} - - {id: 898, cat: Other, desc: "Дискографии"} - - {id: 886, cat: Other, desc: "Поп музыка"} - - {id: 895, cat: Other, desc: "Смешанные сборники"} - - {id: 887, cat: Other, desc: "Отечественная поп музыка"} - - {id: 889, cat: Other, desc: "Отечественные дискографии"} - - {id: 890, cat: Other, desc: "Отечественные альбомы"} - - {id: 894, cat: Other, desc: "Отечественные сборники"} - - {id: 896, cat: Other, desc: "Отечественные cинглы и EP"} - - {id: 888, cat: Other, desc: "Зарубежная поп музыка"} - - {id: 891, cat: Other, desc: "Зарубежные дискографии"} - - {id: 892, cat: Other, desc: "Зарубежные альбомы"} - - {id: 893, cat: Other, desc: "Зарубежные сборники"} - - {id: 897, cat: Other, desc: "Зарубежные синглы и EP"} - - {id: 913, cat: Other, desc: "Классическая и Инструментальная музыка"} - - {id: 914, cat: Other, desc: "Инструментальная музыка"} - - {id: 915, cat: Other, desc: "Классическая и академическая музыка"} - - {id: 916, cat: Other, desc: "Классика в современной обработке"} - - {id: 917, cat: Other, desc: "Сборники"} - - {id: 918, cat: Other, desc: "Саундтреки"} - - {id: 919, cat: Other, desc: "из Фильмов"} - - {id: 920, cat: Other, desc: "из Мультфильмов"} - - {id: 921, cat: Other, desc: "из Игр"} - - {id: 922, cat: Other, desc: "из Сериалов"} - - {id: 923, cat: Other, desc: "Джаз, Блюз, Соул"} - - {id: 924, cat: Other, desc: "Сборники"} - - {id: 925, cat: Other, desc: "Соул"} - - {id: 926, cat: Other, desc: "Блюз"} - - {id: 927, cat: Other, desc: "Джаз"} - - {id: 928, cat: Other, desc: "Рок музыка"} - - {id: 929, cat: Other, desc: "Русский рок"} - - {id: 930, cat: Other, desc: "Зарубежный рок"} - - {id: 931, cat: Other, desc: "Смешанные сборники"} - - {id: 934, cat: Other, desc: "Шансон, Авторская песня"} - - {id: 939, cat: Other, desc: "Сборники"} - - {id: 935, cat: Other, desc: "Rap, Hip-hop, R'n'B"} - - {id: 936, cat: Other, desc: "Отечественный Rap, Hip-hop, R'n'B"} - - {id: 937, cat: Other, desc: "Зарубежный Rap, Hip-hop, R'n'B"} - - {id: 940, cat: Other, desc: "Сборники"} - - {id: 938, cat: Other, desc: "Минусовки"} - - {id: 1023, cat: Other, desc: "Reggae, Ska"} - - {id: 955, cat: Other, desc: "Рок, Панк, Метал, Альтернатива"} - - {id: 949, cat: Other, desc: "Дискографии (Рок, Панк, Метал, Альтернатива)"} - - {id: 959, cat: Other, desc: "Электронная музыка"} - - {id: 948, cat: Other, desc: "Дискографии (Электронная музыка)"} - - {id: 952, cat: Other, desc: "Классическая музыка"} - - {id: 953, cat: Other, desc: "Поп музыка"} - - {id: 947, cat: Other, desc: "Дискографии (Поп музыка)"} - - {id: 954, cat: Other, desc: "Rap, Hip-hop, R'n'B"} - - {id: 945, cat: Other, desc: "Дискографии (Rap, Hip-hop, R'n'B)"} - - {id: 950, cat: Other, desc: "Джаз, Блюз, Соул"} - - {id: 944, cat: Other, desc: "Дискографии (Джаз, Блюз, Соул)"} - - {id: 958, cat: Other, desc: "Шансон"} - - {id: 946, cat: Other, desc: "Дискографии (Шансон)"} - - {id: 957, cat: Other, desc: "Саундтреки"} - - {id: 956, cat: Other, desc: "Сборники"} - - {id: 951, cat: Other, desc: "Другие жанры"} - - {id: 402, cat: Other, desc: "Общение на тему игр"} - - {id: 1054, cat: Other, desc: "Горячие новинки"} - - {id: 403, cat: Other, desc: "Action"} - - {id: 427, cat: Other, desc: "Counter-Strike"} - - {id: 600, cat: Other, desc: "Архив (Counter-Strike)"} - - {id: 601, cat: Other, desc: "Карты"} - - {id: 602, cat: Other, desc: "Серверы"} - - {id: 603, cat: Other, desc: "Моды"} - - {id: 404, cat: Other, desc: "Strategy (Стратегии)"} - - {id: 405, cat: Other, desc: "RPG (Ролевые игры)"} - - {id: 406, cat: Other, desc: "Симуляторы"} - - {id: 435, cat: Other, desc: "Архив (Симуляторы)"} - - {id: 436, cat: Other, desc: "Авто и мотосимуляторы"} - - {id: 437, cat: Other, desc: "Спортивные"} - - {id: 438, cat: Other, desc: "Авиасимуляторы"} - - {id: 407, cat: Other, desc: "Многопользовательские игры"} - - {id: 439, cat: Other, desc: "Архив (Многопользовательские игры)"} - - {id: 440, cat: Other, desc: "Бета-тестирование"} - - {id: 441, cat: Other, desc: "Обновления для Многопользовательских игр"} - - {id: 442, cat: Other, desc: "World of Warcraft"} - - {id: 443, cat: Other, desc: "LineAge"} - - {id: 444, cat: Other, desc: "Ragnarok"} - - {id: 445, cat: Other, desc: "Браузерные и маленькие игры"} - - {id: 446, cat: Other, desc: "Social Type"} - - {id: 447, cat: Other, desc: "Прочие бесплатные"} - - {id: 448, cat: Other, desc: "Прочие платные"} - - {id: 408, cat: Other, desc: "Приключения и квесты"} - - {id: 409, cat: Other, desc: "Аркада"} - - {id: 450, cat: Other, desc: "Архив (Аркада)"} - - {id: 410, cat: Other, desc: "Казуальные и мини-игры"} - - {id: 451, cat: Other, desc: "Архив (Казуальные и мини-игры)"} - - {id: 452, cat: Other, desc: "Я ищу (Hidden Objects) / Квесты (Quests)"} - - {id: 453, cat: Other, desc: "Тайм-Менеджмент (Time-Management)"} - - {id: 454, cat: Other, desc: "Три в Ряд (Match-3)"} - - {id: 455, cat: Other, desc: "Аркада"} - - {id: 456, cat: Other, desc: "Зума-игры (Zuma)"} - - {id: 457, cat: Other, desc: "Логические (Puzzle)"} - - {id: 458, cat: Other, desc: "Стратегии / Симуляторы"} - - {id: 411, cat: Other, desc: "Другие игры"} - - {id: 459, cat: Other, desc: "Архив (Другие игры)"} - - {id: 460, cat: Other, desc: "Детские игры"} - - {id: 461, cat: Other, desc: "Азартные игры"} - - {id: 462, cat: Other, desc: "Эротические игры"} - - {id: 463, cat: Other, desc: "Прочие"} - - {id: 1007, cat: Other, desc: "Демо версии"} - - {id: 414, cat: Other, desc: "Игры для других ОС"} - - {id: 471, cat: Other, desc: "Архив (Игры для других ОС)"} - - {id: 912, cat: Other, desc: "Игры для Linux"} - - {id: 413, cat: Other, desc: "Модификации и Дополнения"} - - {id: 415, cat: Other, desc: "Сопутствующий играм контент"} - - {id: 472, cat: Other, desc: "Архив (Сопутствующий играм контент)"} - - {id: 473, cat: Other, desc: "Патчи"} - - {id: 474, cat: Other, desc: "Демо и Бета-версии игр"} - - {id: 475, cat: Other, desc: "Таблетки к играм"} - - {id: 476, cat: Other, desc: "Русификаторы"} - - {id: 477, cat: Other, desc: "Программы для игр"} - - {id: 416, cat: Other, desc: "Игрострой"} - - {id: 478, cat: Other, desc: "Архив (Игрострой)"} - - {id: 417, cat: Other, desc: "Игровое видео"} - - {id: 479, cat: Other, desc: "Архив (Игровое видео)"} - - {id: 480, cat: Other, desc: "Трейлеры к играм для PC"} - - {id: 481, cat: Other, desc: "GamePlay Video"} - - {id: 482, cat: Other, desc: "Видеообзоры и телепередачи"} - - {id: 483, cat: Other, desc: "Counter-Strike Video"} - - {id: 484, cat: Other, desc: "Online Game Video"} - - {id: 485, cat: Other, desc: "Игровые приколы и юмор"} - - {id: 486, cat: Other, desc: "Обучающее видео и воды"} - - {id: 487, cat: Other, desc: "Видео консольных игр"} - - {id: 754, cat: Other, desc: "Xbox360"} - - {id: 752, cat: Other, desc: "PS3"} - - {id: 753, cat: Other, desc: "Xbox"} - - {id: 751, cat: Other, desc: "PS2"} - - {id: 750, cat: Other, desc: "PlayStation"} - - {id: 756, cat: Other, desc: "Nintendo WII"} - - {id: 757, cat: Other, desc: "PSP"} - - {id: 755, cat: Other, desc: "Другие консоли"} - - {id: 749, cat: Other, desc: "Софт для консолей"} - - {id: 615, cat: Other, desc: "Книги"} - - {id: 618, cat: Other, desc: "Библиотеки"} - - {id: 619, cat: Other, desc: "Детективы, триллер, боевик"} - - {id: 620, cat: Other, desc: "Изучение иностранных языков"} - - {id: 621, cat: Other, desc: "Историческая литература"} - - {id: 622, cat: Other, desc: "Научно-популярная литература"} - - {id: 623, cat: Other, desc: "Классика мировой литературы"} - - {id: 624, cat: Other, desc: "Компьютерная литература, программирование"} - - {id: 625, cat: Other, desc: "Кулинария"} - - {id: 626, cat: Other, desc: "Литература без перевода"} - - {id: 627, cat: Other, desc: "Любовные романы"} - - {id: 628, cat: Other, desc: "Медицина и здоровье"} - - {id: 629, cat: Other, desc: "Обучение и развитие детей"} - - {id: 630, cat: Other, desc: "Поэзия"} - - {id: 631, cat: Other, desc: "Многоавторские сборники, серии книг"} - - {id: 632, cat: Other, desc: "Психология, философия"} - - {id: 633, cat: Other, desc: "Публицистика"} - - {id: 634, cat: Other, desc: "Путешествия, приключения"} - - {id: 635, cat: Other, desc: "Разное"} - - {id: 636, cat: Other, desc: "Современная проза"} - - {id: 637, cat: Other, desc: "Техническая литература"} - - {id: 639, cat: Other, desc: "Учебники, справочники, энциклопедии"} - - {id: 640, cat: Other, desc: "Хобби"} - - {id: 641, cat: Other, desc: "Собрания сочинений"} - - {id: 642, cat: Other, desc: "Фантастика, фентези, мистика"} - - {id: 643, cat: Other, desc: "Экономика и бизнес-литература"} - - {id: 1026, cat: Other, desc: "Эзотерика, гадания, магия, фен-шуй"} - - {id: 1027, cat: Other, desc: "Спорт"} - - {id: 644, cat: Other, desc: "Историческая литература, биографии и мемуары"} - - {id: 645, cat: Other, desc: "Отечественная Классика"} - - {id: 646, cat: Other, desc: "Мировая Классика"} - - {id: 647, cat: Other, desc: "Аудио учебники"} - - {id: 648, cat: Other, desc: "Бизнес-литература"} - - {id: 649, cat: Other, desc: "Детективы и боевики"} - - {id: 651, cat: Other, desc: "Изучение иностранных языков"} - - {id: 652, cat: Other, desc: "Любовные романы"} - - {id: 653, cat: Other, desc: "Мировая проза ХХ века"} - - {id: 654, cat: Other, desc: "Научно-популярная аудиокнига"} - - {id: 655, cat: Other, desc: "Отечественная проза ХХ века"} - - {id: 656, cat: Other, desc: "Поэзия"} - - {id: 657, cat: Other, desc: "Проза III тысячелетия"} - - {id: 658, cat: Other, desc: "Аудиокниги на иностранных языках"} - - {id: 659, cat: Other, desc: "Психология и философия"} - - {id: 660, cat: Other, desc: "Путешествия и приключения"} - - {id: 661, cat: Other, desc: "Радиоспектакли и аудиофильмы"} - - {id: 662, cat: Other, desc: "Ужасы и Мистика"} - - {id: 663, cat: Other, desc: "Фантастика и фэнтези"} - - {id: 664, cat: Other, desc: "Юмор"} - - {id: 665, cat: Other, desc: "Аудиокниги для Apple"} - - {id: 666, cat: Other, desc: "Разное"} - - {id: 667, cat: Other, desc: "Авто и мото"} - - {id: 668, cat: Other, desc: "Наука, техника"} - - {id: 669, cat: Other, desc: "Игровые журналы"} - - {id: 670, cat: Other, desc: "Digital Photo"} - - {id: 671, cat: Other, desc: "Мужские журналы"} - - {id: 672, cat: Other, desc: "Компьютерные журналы"} - - {id: 673, cat: Other, desc: "CD / DVD к журналам"} - - {id: 674, cat: Other, desc: "Строительство, дизайн и ремонт"} - - {id: 675, cat: Other, desc: "Спорт"} - - {id: 676, cat: Other, desc: "Женские журналы (мода, остальные женские журналы)"} - - {id: 677, cat: Other, desc: "Мир кулинарии (кулинария)"} - - {id: 678, cat: Other, desc: "Мир рукоделия (вязание, рукоделие, шитье)"} - - {id: 679, cat: Other, desc: "Комиксы"} - - {id: 680, cat: Other, desc: "Кино / Музыка"} - - {id: 681, cat: Other, desc: "Разное (путешествия, хобби, прочее)"} - - {id: 838, cat: Other, desc: "Легенды спорта"} - - {id: 825, cat: Other, desc: "Футбол"} - - {id: 826, cat: Other, desc: "Россия"} - - {id: 827, cat: Other, desc: "Германия"} - - {id: 828, cat: Other, desc: "Италия"} - - {id: 829, cat: Other, desc: "Испания"} - - {id: 830, cat: Other, desc: "Англия"} - - {id: 831, cat: Other, desc: "Мини-футбол, пляжный футбол, футзал"} - - {id: 832, cat: Other, desc: "Обзорные и аналитические передачи"} - - {id: 833, cat: Other, desc: "Товарищеские турниры и матчи"} - - {id: 834, cat: Other, desc: "Чемпионат Мира и Европы"} - - {id: 835, cat: Other, desc: "Еврокубки"} - - {id: 836, cat: Other, desc: "Другие национальные чемпионаты и кубки"} - - {id: 837, cat: Other, desc: "Футбольное видео"} - - {id: 839, cat: Other, desc: "Авто / мотоспорт"} - - {id: 862, cat: Other, desc: "Дакар"} - - {id: 863, cat: Other, desc: "Велоспорт / Мотоспорт"} - - {id: 864, cat: Other, desc: "Остальной автоспорт"} - - {id: 865, cat: Other, desc: "Обзорные и аналитические передачи, видеоклипы и т.д."} - - {id: 840, cat: Other, desc: "Баскетбол"} - - {id: 866, cat: Other, desc: "NBA"} - - {id: 867, cat: Other, desc: "Чемпионат России по баскетболу"} - - {id: 868, cat: Other, desc: "Европейский клубный баскетбол"} - - {id: 869, cat: Other, desc: "Женский баскетбол"} - - {id: 870, cat: Other, desc: "Обзорные и аналитические передачи, видиоклипы и т.д."} - - {id: 841, cat: Other, desc: "Хоккей"} - - {id: 871, cat: Other, desc: "NHL"} - - {id: 872, cat: Other, desc: "KХЛ"} - - {id: 873, cat: Other, desc: "Европейские клубные чемпионаты"} - - {id: 874, cat: Other, desc: "Чемпионаты мира"} - - {id: 875, cat: Other, desc: "Хоккей с мячом"} - - {id: 876, cat: Other, desc: "Международные турниры"} - - {id: 877, cat: Other, desc: "Обзорные и аналитические передачи"} - - {id: 842, cat: Other, desc: "Боевые искусства"} - - {id: 878, cat: Other, desc: "Бокс"} - - {id: 879, cat: Other, desc: "Ножевой бой"} - - {id: 880, cat: Other, desc: "Каратэ"} - - {id: 881, cat: Other, desc: "Дзюдо и самбо"} - - {id: 882, cat: Other, desc: "Вин чунь"} - - {id: 883, cat: Other, desc: "Айкидо"} - - {id: 884, cat: Other, desc: "Рукопашный бой"} - - {id: 843, cat: Other, desc: "Остальные виды спорта"} - - {id: 844, cat: Other, desc: "Биатлон"} - - {id: 845, cat: Other, desc: "Бодибилдинг"} - - {id: 846, cat: Other, desc: "Бокс / Смешанные единоборства"} - - {id: 847, cat: Other, desc: "Зимние виды спорта"} - - {id: 848, cat: Other, desc: "Олимпиады"} - - {id: 849, cat: Other, desc: "Рестлинг"} - - {id: 850, cat: Other, desc: "Теннис"} - - {id: 851, cat: Other, desc: "Формула-1"} - - {id: 852, cat: Other, desc: "Экстрим"} - - {id: 853, cat: Other, desc: "Американский футбол"} - - {id: 854, cat: Other, desc: "Гандбол"} - - {id: 855, cat: Other, desc: "Покер"} - - {id: 856, cat: Other, desc: "Легкая атлетика"} - - {id: 857, cat: Other, desc: "Бильярд"} - - {id: 858, cat: Other, desc: "Бейсбол"} - - {id: 859, cat: Other, desc: "Тяжёлая атлетика"} - - {id: 860, cat: Other, desc: "Гимнастика"} - - {id: 861, cat: Other, desc: "Не вошедшие остальные виды спорта"} - - {id: 490, cat: Other, desc: "Операционные системы от Microsoft"} - - {id: 501, cat: Other, desc: "Архив (Операционные системы от Microsoft)"} - - {id: 502, cat: Other, desc: "Windows 8"} - - {id: 503, cat: Other, desc: "Windows 7"} - - {id: 504, cat: Other, desc: "Windows Vista"} - - {id: 505, cat: Other, desc: "Windows XP"} - - {id: 506, cat: Other, desc: "Серверные ОС от Microsoft"} - - {id: 507, cat: Other, desc: "Патчи, дополнения для ОС от Microsoft"} - - {id: 508, cat: Other, desc: "Изменение интерфейса"} - - {id: 509, cat: Other, desc: "Активаторы (Windows)"} - - {id: 510, cat: Other, desc: "Разное (Windows)"} - - {id: 491, cat: Other, desc: "Операционные системы и ПО для Apple Macintosh"} - - {id: 511, cat: Other, desc: "Архив (Apple Macintosh)"} - - {id: 512, cat: Other, desc: "Mac OS (для Macintosh)"} - - {id: 513, cat: Other, desc: "Mac OS (для РС-Хакинтош)"} - - {id: 514, cat: Other, desc: "Программы для просмотра и обработки видео Mac OS"} - - {id: 515, cat: Other, desc: "Программы для создания и обработки графики Mac OS"} - - {id: 516, cat: Other, desc: "Аудио редакторы и конверторы для Mac OS"} - - {id: 517, cat: Other, desc: "Системные программы для Mac OS"} - - {id: 518, cat: Other, desc: "Другие программы для Mac OS"} - - {id: 519, cat: Other, desc: "Архив (Linux, Unix и другие ОС)"} - - {id: 520, cat: Other, desc: "Операционные системы"} - - {id: 521, cat: Other, desc: "Программное обеспечение"} - - {id: 522, cat: Other, desc: "Другие ОС и ПО под них"} - - {id: 493, cat: Other, desc: "Веб-разработка и Программирование"} - - {id: 523, cat: Other, desc: "Архив (Веб-разработка и Программирование)"} - - {id: 524, cat: Other, desc: "Среды программирования, компиляторы и вспомогательные программы"} - - {id: 525, cat: Other, desc: "Компоненты для сред программирования"} - - {id: 526, cat: Other, desc: "Системы управления базами данных"} - - {id: 527, cat: Other, desc: "Текстовые редакторы"} - - {id: 528, cat: Other, desc: "Скрипты и шаблоны"} - - {id: 529, cat: Other, desc: "Веб-разработка"} - - {id: 746, cat: Other, desc: "Скрипты и движки сайтов, CMS а также расширения к ним"} - - {id: 530, cat: Other, desc: "Разное (Веб-разработка и программирование)"} - - {id: 494, cat: Other, desc: "Системные программы"} - - {id: 531, cat: Other, desc: "Архив (Системные программы)"} - - {id: 532, cat: Other, desc: "Ключи и обновления для антивирусов и других системных программ"} - - {id: 533, cat: Other, desc: "Настройка и оптимизация ОС"} - - {id: 534, cat: Other, desc: "Резервное копирование"} - - {id: 535, cat: Other, desc: "Архиваторы и файловые менеджеры"} - - {id: 536, cat: Other, desc: "Сервисное обслуживание компьютера"} - - {id: 537, cat: Other, desc: "Сборники программ"} - - {id: 538, cat: Other, desc: "Работа с носителями информации"} - - {id: 539, cat: Other, desc: "Программы для интернет и сетей"} - - {id: 540, cat: Other, desc: "Информация и диагностика"} - - {id: 541, cat: Other, desc: "Антивирусы"} - - {id: 542, cat: Other, desc: "Файерволы"} - - {id: 543, cat: Other, desc: "Анти-шпионы и анти-трояны"} - - {id: 544, cat: Other, desc: "Программы для защиты информации"} - - {id: 545, cat: Other, desc: "Серверное ПО"} - - {id: 546, cat: Other, desc: "Разное (Системные программы под Windows)"} - - {id: 495, cat: Other, desc: "Системы для бизнеса, офиса, научной и проектной работы"} - - {id: 547, cat: Other, desc: "Архив (Системы)"} - - {id: 548, cat: Other, desc: "Офисные системы"} - - {id: 549, cat: Other, desc: "Системы для бизнеса"} - - {id: 550, cat: Other, desc: "Медицинский софт"} - - {id: 551, cat: Other, desc: "Системы для научной работы"} - - {id: 552, cat: Other, desc: "Словари, переводчики"} - - {id: 553, cat: Other, desc: "Прочие справочные системы"} - - {id: 554, cat: Other, desc: "Разное"} - - {id: 555, cat: Other, desc: "САПР"} - - {id: 496, cat: Other, desc: "Программы для работы с мультимедиа и 3D"} - - {id: 556, cat: Other, desc: "Архив (Программы для работы с мультимедиа и 3D)"} - - {id: 557, cat: Other, desc: "3D моделирование, рендеринг и плагины для них"} - - {id: 558, cat: Other, desc: "Анимация"} - - {id: 559, cat: Other, desc: "Видео- Аудио- конверторы"} - - {id: 560, cat: Other, desc: "Графические редакторы"} - - {id: 561, cat: Other, desc: "Программы для архитекторов и дизайнеров интерьеров"} - - {id: 562, cat: Other, desc: "Работа со звуком"} - - {id: 563, cat: Other, desc: "Редакторы видео"} - - {id: 564, cat: Other, desc: "Работа с PDF и DjVu"} - - {id: 565, cat: Other, desc: "Программы для верстки, печати и работы со шрифтами"} - - {id: 566, cat: Other, desc: "Аудио- и видео-, CD- проигрыватели и каталогизаторы"} - - {id: 567, cat: Other, desc: "Каталогизаторы и просмотрщики графики"} - - {id: 568, cat: Other, desc: "Разное (Программы для работы с мультимедиа и 3D)"} - - {id: 497, cat: Other, desc: "Материалы для мультимедиа и дизайна"} - - {id: 569, cat: Other, desc: "Архив (Материалы для мультимедиа и дизайна)"} - - {id: 570, cat: Other, desc: "Текстуры и материалы"} - - {id: 571, cat: Other, desc: "3D модели и сцены"} - - {id: 572, cat: Other, desc: "Photostoсks"} - - {id: 573, cat: Other, desc: "Заготовки, виньетки, рамки, костюмы"} - - {id: 574, cat: Other, desc: "Стили, кисти, формы и узоры"} - - {id: 575, cat: Other, desc: "Футажи"} - - {id: 576, cat: Other, desc: "Шрифты"} - - {id: 577, cat: Other, desc: "Библиотеки сэмплов и Звуковые эффекты"} - - {id: 578, cat: Other, desc: "Векторные клипарты"} - - {id: 579, cat: Other, desc: "Растровые клипарты"} - - {id: 580, cat: Other, desc: "Разное (Материалы для мультимедиа и дизайна)"} - - {id: 498, cat: Other, desc: "Географические информационные системы (ГИС)"} - - {id: 581, cat: Other, desc: "Географические информационные системы (ГИС)(Архив)"} - - {id: 499, cat: Other, desc: "Драйверы"} - - {id: 582, cat: Other, desc: "Архив (Драйверы)"} - - {id: 583, cat: Other, desc: "Ноутбуки (Драйверы)"} - - {id: 584, cat: Other, desc: "Сетевое оборудование (Драйверы)"} - - {id: 585, cat: Other, desc: "Клавиатуры, мыши, джойстики (Драйверы)"} - - {id: 586, cat: Other, desc: "Звуковые карты (Драйверы)"} - - {id: 587, cat: Other, desc: "Видеокарты (Драйверы)"} - - {id: 588, cat: Other, desc: "Материнские платы (Драйверы)"} - - {id: 589, cat: Other, desc: "DirectX"} - - {id: 590, cat: Other, desc: "Принтеры и МФУ, Сканеры (Драйверы)"} - - {id: 591, cat: Other, desc: "Drivers MegaPack"} - - {id: 592, cat: Other, desc: "Другие (Драйверы)"} - - {id: 500, cat: Other, desc: "Разное"} - - {id: 593, cat: Other, desc: "Архив (Программы>>Разное)"} - - {id: 594, cat: Other, desc: "Скринсейверы"} - - {id: 595, cat: Other, desc: "Картины, Фотографии, Искусство"} - - {id: 596, cat: Other, desc: "Обои"} - - {id: 597, cat: Other, desc: "Фото знаменитостей"} - - {id: 598, cat: Other, desc: "Картинки"} - - {id: 599, cat: Other, desc: "Аватары, Иконки, Смайлы"} - - {id: 797, cat: Other, desc: "Всё для мобильных платформ"} - - {id: 808, cat: Other, desc: "Игры"} - - {id: 809, cat: Other, desc: "Приложения"} - - {id: 810, cat: Other, desc: "Мультимедиа"} - - {id: 811, cat: Other, desc: "Разное"} - - {id: 812, cat: Other, desc: "Игры"} - - {id: 813, cat: Other, desc: "Приложения"} - - {id: 801, cat: Other, desc: "Windows Mobile"} - - {id: 814, cat: Other, desc: "Игры"} - - {id: 815, cat: Other, desc: "Приложения"} - - {id: 802, cat: Other, desc: "Symbian"} - - {id: 816, cat: Other, desc: "Игры"} - - {id: 817, cat: Other, desc: "Приложения"} - - {id: 803, cat: Other, desc: "Java"} - - {id: 818, cat: Other, desc: "Игры"} - - {id: 819, cat: Other, desc: "Приложения"} - - {id: 805, cat: Other, desc: "Системы навигации и карты"} - - {id: 807, cat: Other, desc: "Разное"} - - {id: 820, cat: Other, desc: "Темы"} - - {id: 821, cat: Other, desc: "Видео"} - - {id: 822, cat: Other, desc: "Звуки"} - - {id: 823, cat: Other, desc: "Картинки"} - - {id: 1008, cat: Other, desc: "Pron"} - - {id: 687, cat: Other, desc: "Общение и Обсуждение порноиндустрии"} - - {id: 694, cat: Other, desc: "Правила, Инструкции, FAQ-и / Rules & FAQ's"} - - {id: 695, cat: Other, desc: "Общение"} - - {id: 696, cat: Other, desc: "Актеры"} - - {id: 697, cat: Other, desc: "Ищу"} - - {id: 688, cat: Other, desc: "Зарубежные порнофильмы / Full Length Movies"} - - {id: 698, cat: Other, desc: "Паки полных фильмов / Full Length Movies Packs"} - - {id: 699, cat: Other, desc: "101 Величайший Порно Фильм 20 Века"} - - {id: 700, cat: Other, desc: "Самые популярные / Bestseller"} - - {id: 701, cat: Other, desc: "Классические фильмы / Classic"} - - {id: 702, cat: Other, desc: "Фильмы с сюжетом / Feature & Vignettes"} - - {id: 703, cat: Other, desc: "Гонзо-фильмы / Gonzo"} - - {id: 704, cat: Other, desc: "Зарубежный Pron (DVD, HD Video)"} - - {id: 705, cat: Other, desc: "Фильмы без сюжета / All Sex & Amateur"} - - {id: 706, cat: Other, desc: "Лесбо-фильмы / All Girl & Solo"} - - {id: 707, cat: Other, desc: "Этнические фильмы / Ethnic-Themed"} - - {id: 708, cat: Other, desc: "Японские фильмы / Japan"} - - {id: 709, cat: Other, desc: "Архив (Зарубежные порнофильмы)"} - - {id: 689, cat: Other, desc: "Зарубежные порноролики / Clips"} - - {id: 710, cat: Other, desc: "Паки сайтрипов / SiteRip's Packs"} - - {id: 711, cat: Other, desc: "Паки порнороликов по актрисам / Actresses Clips Packs"} - - {id: 713, cat: Other, desc: "Сайтрипы / SiteRip's"} - - {id: 714, cat: Other, desc: "Сцены из фильмов / Movie Scenes"} - - {id: 715, cat: Other, desc: "Порноролики Разное / Clips (various)"} - - {id: 716, cat: Other, desc: "Архив (Зарубежные порноролики)"} - - {id: 690, cat: Other, desc: "Русское порно / Russian Video"} - - {id: 712, cat: Other, desc: "HD Video ролики / HD Clips"} - - {id: 721, cat: Other, desc: "Русские Порноролики Разное / Russian Clips (various)"} - - {id: 722, cat: Other, desc: "Русское Любительское Видео / Russian Amateur Video"} - - {id: 717, cat: Other, desc: "Русские Порнофильмы / Russian Full Length Movies"} - - {id: 718, cat: Other, desc: "Паки русских порнороликов / Russian Clips Packs"} - - {id: 719, cat: Other, desc: "HD Фильмы и ролики"} - - {id: 720, cat: Other, desc: "Сцены из фильмов и Сайтрипы с русскими актрисами / Russian Movie Scenes & SiteRip's"} - - {id: 691, cat: Other, desc: "Эротические студии и фото, журналы и комиксы"} - - {id: 725, cat: Other, desc: "Фотографии в высоком качестве / Foto High Quality"} - - {id: 726, cat: Other, desc: "Любительское фото / Amateur Picture Gallery"} - - {id: 727, cat: Other, desc: "Подборки по актрисам / Actresses Picture Packs"} - - {id: 728, cat: Other, desc: "Подборки сайтрипов / SiteRip's Picture Packs"} - - {id: 729, cat: Other, desc: "Фото Разное / Picture Gallery (various)"} - - {id: 730, cat: Other, desc: "Журналы, комиксы, манга и рисунки / Magazines, Comics, Manga and Artwork"} - - {id: 731, cat: Other, desc: "Тематическое и нетрадиционное фото / Misc & Special Interest Picture Packs"} - - {id: 732, cat: Other, desc: "Архив (Эротические студии и фото, журналы и комиксы)"} - - {id: 692, cat: Other, desc: "Обучающие материалы"} - - {id: 733, cat: Other, desc: "Обучающие материалы (Pron)"} - - {id: 734, cat: Other, desc: "Нудизм-Натуризм / Nudity"} - - {id: 735, cat: Other, desc: "Мультфильмы / Cartoons"} - - {id: 736, cat: Other, desc: "Архив (Обучающие материалы)"} - - {id: 693, cat: Other, desc: "Нетрадиционное порно"} - - {id: 737, cat: Other, desc: "Транссексуалы / Transsexual"} - - {id: 738, cat: Other, desc: "БДСМ / BDSM"} - - {id: 739, cat: Other, desc: "Бисексуалы / Bisexual"} - - {id: 740, cat: Other, desc: "Женское доминирование и страпон / Femdom & Strapon"} - - {id: 741, cat: Other, desc: "Подглядывание / Voyeur"} - - {id: 742, cat: Other, desc: "Архив (Нетрадиционное порно)"} - - {id: 743, cat: Other, desc: "Разное"} - - {id: 744, cat: Other, desc: "Bukkake, Peeing"} - - {id: 1055, cat: Other, desc: "Эротика"} - - {id: 762, cat: Other, desc: "Разное"} - - {id: 763, cat: Other, desc: "Тестовый раздел (для новичков)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: sort - type: select - label: Sort requested from site - default: t - options: - t: created - ts: seeders - sz: size - i: title - - name: type - type: select - label: Order requested from site - default: d - options: - d: desc - a: asc - -download: - selectors: - - selector: a[href^="./download/file.php?id="] - attribute: href - -search: - # http://www.nntt.org/search.php?sr=topics&sf=titleonly&fp=1&tracker_search=torrent&keywords=2020&fid[]=154 - paths: - - path: search.php - inputs: - sr: topics - sf: titleonly - fp: 1 - tracker_search: torrent - sk: "{{ .Config.sort }}" - sd: "{{ .Config.type }}" - keywords: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - $raw: "{{ range .Categories }}&fid[]={{.}}{{end}}" - - keywordsfilters: - # strip season and/or ep - - name: re_replace - args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""] - - rows: - selector: table.tablebg tr.col_line - - fields: - category: - selector: a[href^="./viewtopic.php?f="] - attribute: href - filters: - - name: querystring - args: f - title: - selector: a.topictitle - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(?i)\\bКураж-Бамбей\\b", "kurazh"] - - name: re_replace - args: ["(?i)\\bКубик в Кубе\\b", "Kubik"] - - name: re_replace - args: ["(?i)\\bКравец\\b", "Kravec"] - - name: re_replace - args: ["(?i)\\bПифагор\\b", "Pifagor"] - - name: re_replace - args: ["(?i)\\bНевафильм\\b", "Nevafilm"] - - name: re_replace - args: ["(?i)\\bЛицензия\\b", "Lic"] - - name: re_replace - args: ["(?i)\\bселезень\\b", "selezen"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a.topictitle - attribute: href - download: - selector: a.topictitle - attribute: href - size: - selector: td:nth-of-type(5) p - filters: - - name: replace - args: ["ТБ", "TB"] - - name: replace - args: ["ГБ", "GB"] - - name: replace - args: ["МБ", "MB"] - - name: replace - args: ["КБ", "KB"] - seeders: - selector: span.seed - leechers: - selector: span.leech - date: - # 12 янв 2019 - selector: td:nth-of-type(6) p - filters: - # replace month abbreviations - - name: replace - args: ["янв", "Jan"] - - name: replace - args: ["фев", "Feb"] - - name: replace - args: ["мар", "Mar"] - - name: replace - args: ["апр", "Apr"] - - name: replace - args: ["май", "May"] - - name: replace - args: ["июн", "Jun"] - - name: replace - args: ["июл", "Jul"] - - name: replace - args: ["авг", "Aug"] - - name: replace - args: ["сен", "Sep"] - - name: replace - args: ["окт", "Oct"] - - name: replace - args: ["ноя", "Nov"] - - name: replace - args: ["дек", "Dec"] - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "dd MMM yyyy zzz" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - description: - selector: a.topictitle -# phpBB diff --git a/config/prowlarr/Definitions/nordichd.yml b/config/prowlarr/Definitions/nordichd.yml deleted file mode 100644 index a17cad69..00000000 --- a/config/prowlarr/Definitions/nordichd.yml +++ /dev/null @@ -1,181 +0,0 @@ ---- -id: nordichd -name: NORDiCHD -description: "NORDiCHD is a Mixed NORDIC Private Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://nordichd.org/ -legacylinks: - - http://nordichd.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 14, cat: Movies/SD, desc: "Movies SD"} - - {id: 16, cat: Movies/SD, desc: "Movies Retro"} - - {id: 17, cat: Movies/HD, desc: "Movies HD"} - - {id: 31, cat: Movies/BluRay, desc: "Movies BDRip"} - - {id: 32, cat: Movies/BluRay, desc: "Movies BluRay"} - - {id: 33, cat: Movies, desc: "Movies Pack"} - - {id: 6, cat: Movies, desc: "iNTERNAL"} - - {id: 18, cat: Movies/SD, desc: "iNTERNAL SD"} - - {id: 19, cat: Movies/SD, desc: "iNTERNAL Retro"} - - {id: 34, cat: Movies/HD, desc: "iNTERNAL HD"} - - {id: 35, cat: Movies/BluRay, desc: "iNTERNAL BDRip"} - - {id: 36, cat: Movies/BluRay, desc: "iNTERNAL BluRay"} - - {id: 37, cat: Movies, desc: "iNTERNAL Pack"} - - {id: 2, cat: TV, desc: "TV Episodes"} - - {id: 3, cat: TV/SD, desc: "TV Episodes SD"} - - {id: 4, cat: TV, desc: "TV Episodes Series"} - - {id: 26, cat: TV/HD, desc: "TV Episodes HDTV Episodes"} - - {id: 27, cat: TV/HD, desc: "TV Episodes HDTV Series"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-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: added - options: - added: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Search results - default: "If you are getting the error Found no results while trying to browse this tracker then first access the site with your browser and check that you are not being forced to change your password because it has expired after 180 days." - -login: - path: ?p=home&pid=1 - method: form - form: form#sls_form - submitpath: ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: div.error - - selector: :contains("-ERROR-") - test: - path: ?p=home&pid=1 - selector: div#member_info_bar - -search: - paths: - # 7 results per page, but fetching more pages when results < 7 returns duplicates from each additional page. - - path: / - inputs: - p: torrents - pid: 32 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - "sortOptions[sortBy]": "{{ .Config.sort }}" - "sortOptions[sortOrder]": "{{ .Config.type }}" - # does not support imdbid search or have imdbid links in results. - error: - - selector: div.error:not(:contains("There are no results found.")) - - rows: - selector: "div.torrent-box[id^=\"torrent_\"]{{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="?p=torrents&pid=10&cid="] - attribute: href - filters: - - name: querystring - args: cid - title: - selector: a[href*="?p=torrents&pid=10&action=details&tid="] - details: - selector: a[href*="?p=torrents&pid=10&action=details&tid="] - attribute: href - download: - selector: a[href*="?p=torrents&pid=10&action=download&tid="] - attribute: href - poster: - selector: a[href*="data/torrents/torrent_images/"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - genre: - selector: div.torrentDetails > div:has(a[href*="&genre="]) - filters: - - name: replace - args: ["Genre:", ""] - description: - text: "{{ .Result.genre }}" - size: - selector: a[rel="torrent_size"] - grabs: - selector: a[rel="times_completed"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - date_day: - selector: div.torrentOwner:contains("day") - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: fuzzytime - date_year: - selector: div.torrentOwner:contains("-") - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_unix: - selector: div.torrentOwner abbr - optional: true - attribute: data-time - date: - text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}" - downloadvolumefactor: - case: - img[src$="/torrent_free.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/ntelogo.yml b/config/prowlarr/Definitions/ntelogo.yml deleted file mode 100644 index 8072ce2c..00000000 --- a/config/prowlarr/Definitions/ntelogo.yml +++ /dev/null @@ -1,191 +0,0 @@ ---- -id: ntelogo -name: Ntelogo (API) -description: "Ntelogo is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL" -language: el-GR -type: private -encoding: UTF-8 -links: - - https://ntelogo.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 6, cat: PC/0day, desc: "Windows"} - - {id: 4, cat: Console, desc: "Games"} - - {id: 5, cat: PC, desc: "Software"} - - {id: 7, cat: PC/Mobile-Android, desc: "Android"} - - {id: 8, cat: XXX, desc: "Adult Only"} - - {id: 9, cat: Books/EBook, desc: "Book"} - - {id: 10, cat: Audio/Audiobook, desc: "AudioBook"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your Ntelogo account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 8.3.6 diff --git a/config/prowlarr/Definitions/nyaapantsu.yml b/config/prowlarr/Definitions/nyaapantsu.yml deleted file mode 100644 index 223a35b0..00000000 --- a/config/prowlarr/Definitions/nyaapantsu.yml +++ /dev/null @@ -1,160 +0,0 @@ ---- -id: nyaapantsu -name: NyaaPantsu -description: "NyaaPantsu is a Public site for dedicated to ASIAN ANIME" -language: en-US -type: public -encoding: UTF-8 -links: - - https://ouo.si/ - -caps: - categorymappings: - - {id: 3_, cat: TV/Anime, desc: "Anime"} - - {id: 3_12, cat: TV/Anime, desc: "Anime - Anime Music Video"} - - {id: 3_5, cat: TV/Anime, desc: "Anime - English-translated"} - - {id: 3_13, cat: TV/Anime, desc: "Anime - Non-English-translated"} - - {id: 3_6, cat: TV/Anime, desc: "Anime - Raw"} - # Anime as Movies (Radarr uses t=movie): - - {id: 3_, cat: Movies/Other, desc: "Anime"} - - {id: 3_12, cat: Movies/Other, desc: "Anime - Anime Music Video"} - - {id: 3_5, cat: Movies/Other, desc: "Anime - English-translated"} - - {id: 3_13, cat: Movies/Other, desc: "Anime - Non-English-translated"} - - {id: 3_6, cat: Movies/Other, desc: "Anime - Raw"} - - {id: 2_, cat: Audio, desc: "Audio"} - - {id: 2_3, cat: Audio, desc: "Audio - Lossless"} - - {id: 2_4, cat: Audio, desc: "Audio - Lossy"} - - {id: 4_, cat: Books, desc: "Literature"} - - {id: 4_7, cat: Books, desc: "Literature - English-translated"} - - {id: 4_14, cat: Books, desc: "Literature - Non-English-translated"} - - {id: 4_8, cat: Books, desc: "Literature - Raw"} - - {id: 5_, cat: TV, desc: "Live Action"} - - {id: 5_9, cat: TV, desc: "Live Action - English-translated"} - - {id: 5_10, cat: TV, desc: "Live Action - Idol/Promotional Video"} - - {id: 5_18, cat: TV, desc: "Live Action - Non-English-translated"} - - {id: 5_11, cat: TV, desc: "Live Action - Raw"} - - {id: 6_, cat: Other, desc: "Pictures"} - - {id: 6_15, cat: Other, desc: "Pictures - Graphics"} - - {id: 6_16, cat: Other, desc: "Pictures - Photos"} - - {id: 1_, cat: PC, desc: "Software"} - - {id: 1_1, cat: PC/ISO, desc: "Software - Applications"} - - {id: 1_2, cat: PC/Games, desc: "Software - Games"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: prefer_magnet_links - type: checkbox - label: Prefer Magnet Links - default: true - - name: cat-id - type: select - label: Category - default: _ - options: - _: "All categories" - 3_: "Anime" - 3_12: "Anime - Anime Music Video" - 3_5: "Anime - English-translated" - 3_13: "Anime - Non-English-translated" - 3_6: "Anime - Raw" - 2_: "Audio" - 2_3: "Audio - Lossless" - 2_4: "Audio - Lossy" - 4_: "Literature" - 4_7: "Literature - English-translated" - 4_14: "Literature - Non-English-translated" - 4_8: "Literature - Raw" - 1_: "Software" - 1_1: "Software - Applications" - 1_2: "Software - Games" - 5_: "Live Action" - 5_10: "Live Action - Trailers" - 5_9: "Live Action - English subtitled" - 5_18: "Live Action - Non-English subtitled" - 5_11: "Live Action - Raw" - 6_: "Pictures" - 6_15: "Pictures - Graphics" - 6_16: "Pictures - Photos" - - name: sort - type: select - label: Sort requested from site - default: 2 - options: - 2: created - 5: seeders - 4: size - 1: title - - name: type - type: select - label: Order requested from site - default: false - options: - false: desc - true: asc - - name: info_flaresolverr - type: info_flaresolverr - -search: - paths: - - path: search - inputs: - q: "{{ .Keywords }}" - c: "{{ .Config.cat-id }}" - # 0 All, 2 Remakes, 3 uploaded by trusted users, 4 A+ - s: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - limit: 99 - - rows: - selector: tr.torrent-info - - fields: - category: - selector: a[href^="/search?c="] - attribute: href - filters: - - name: querystring - args: c - title: - selector: a[href^="/view/"] - details: - selector: a[href^="/view/"] - attribute: href - download_optional: - selector: a[href^="/download/"] - attribute: href - optional: true - download: - text: "{{ if .Config.prefer_magnet_links }}{{ else }}{{ .Result.download_optional }}{{ end }}" - optional: true - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - size: - selector: td.tr-size - date: - # Nov 15, 2020 - selector: td.date-full - filters: - - name: replace - args: ["UTC+0", "+00:00"] - - name: dateparse - args: "MM/d/yyyy, h:mm:ss tt zzz" - seeders: - selector: td.tr-se - leechers: - selector: td.tr-le - grabs: - selector: td.tr-dl - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/okfunpt.yml b/config/prowlarr/Definitions/okfunpt.yml deleted file mode 100644 index 0d4337ad..00000000 --- a/config/prowlarr/Definitions/okfunpt.yml +++ /dev/null @@ -1,183 +0,0 @@ ---- -id: okfunpt -name: OKFUN PT -description: "OKFUN PT is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 5 -certificates: - - d44084e0ce0c6251dcc5c3d7eca8ed204bfd407d # Expired 19 May 2017 -links: - - https://pt.okfun.org/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies(電影)", default: true} - - {id: 404, cat: TV/Documentary, desc: "Documentaries(紀錄片)", default: true} - - {id: 405, cat: TV/Anime, desc: "Anime(動畫)", default: true} - - {id: 402, cat: TV, desc: "TV Series(電視劇)", default: true} - - {id: 403, cat: TV, desc: "TV Shows(綜藝)", default: true} - - {id: 406, cat: Audio/Video, desc: "MV", default: true} - - {id: 407, cat: TV/Sport, desc: "Sport(體育)", default: true} - - {id: 409, cat: Other, desc: "Misc", default: true} - - {id: 408, cat: Audio, desc: "Music(音軌)", default: true} - - {id: 410, cat: XXX, desc: "AV (無碼)", default: false} - - {id: 411, cat: XXX, desc: "AV (有碼)", default: false} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
  1. Veteran User and above will be retained forever
  2. Elite User and above will not have their account deleted after parking (in the control panel).
  3. Users with a parked account will be deleted if they do not log in for 400 consecutive days
  4. Users with a non-parked account will be deleted if they do not log in for 150 consecutive days
  5. 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.
" - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img[alt="CAPTCHA"] - input: imagestring - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - 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 - categories: [401, 402, 403, 404, 405, 406, 407, 408, 409] - - path: special.php - categories: [410, 411] - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - # currently supports only one query id at one time. - 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, 1 OR, 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: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - font.promotion.free: 0 - font.promotion.twoupfree: 0 - font.promotion.halfdown: 0.5 - font.promotion.twouphalfdown: 0.5 - font.promotion.thirtypercent: 0.3 - "*": 1 - uploadvolumefactor: - case: - font.promotion.twoup: 2 - font.promotion.twoupfree: 2 - font.promotion.twouphalfdown: 2 - "*": 1 - description: - selector: td:nth-child(2) > font:last-child -# NexusPHP Standard v1.5 Beta 4 diff --git a/config/prowlarr/Definitions/ostwiki.yml b/config/prowlarr/Definitions/ostwiki.yml deleted file mode 100644 index 279e64f1..00000000 --- a/config/prowlarr/Definitions/ostwiki.yml +++ /dev/null @@ -1,167 +0,0 @@ ---- -id: ostwiki -name: Ostwiki -description: "Ostwiki is a Private Torrent Tracker for Soundtracks releases." -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.ostwiki.com/ - -caps: - categorymappings: - - {id: 12, cat: Audio, desc: "Anime Soundtracks"} - - {id: 19, cat: Audio, desc: "Discography"} - - {id: 13, cat: Audio, desc: "Game Soundtracks"} - - {id: 14, cat: Audio, desc: "Movie Soundtracks"} - - {id: 18, cat: Audio/MP3, desc: "MP3 Musical"} - - {id: 15, cat: Audio, desc: "Musical Soundtracks"} - - {id: 17, cat: Audio, desc: "Other Music"} - - {id: 20, cat: Audio/Lossless, desc: "Soundtrack .FLAC"} - - {id: 16, cat: Audio, desc: "Television Soundtracks"} - - modes: - search: [q] - music-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: added - options: - added: created - seeders: seeders - size: size - name: 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 Torrents per page: setting to 40 on your account profile. The Default is 15. - - name: info_activity - type: info - label: Account Inactivity - default: "To keep records updated regularly, all inactive accounts will be deleted after 60 days of inactivity." - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img#regimage - input: imagestring - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: "" - error: - - selector: table:contains("error has occured") - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -download: - before: - path: takethanks.php - method: post - inputs: - torrentid: "{{ .DownloadUri.Query.id }}" - selectors: - - selector: a[href*="download.php?id="] - attribute: href - -search: - paths: - - path: browse.php - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "%"] - inputs: - do: search - keywords: "{{ .Keywords }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: t_name - # does not support multi category searching so defaulting to all. - category: 0 - # yes, no - include_dead_torrents: yes - sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}" - order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}" - - rows: - selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title_default: - # is usually abbreaviated - selector: a[href*="/details.php?id="] - title: - # while still abbreviated, is usually longer than the default - selector: div.tooltip-content div - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href*="/details.php?id="] - attribute: href - download: - selector: a[href*="/details.php?id="] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - poster: - selector: img[src*="/torrents/images/"] - attribute: src - date: - selector: td:nth-child(2) - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - size: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - description: - # Wait: 4 h - selector: div.tooltip-content > div:last-child - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 -# TS Special Edition v.8.0 diff --git a/config/prowlarr/Definitions/oxtorrent-vip.yml b/config/prowlarr/Definitions/oxtorrent-vip.yml deleted file mode 100644 index 93e3cefb..00000000 --- a/config/prowlarr/Definitions/oxtorrent-vip.yml +++ /dev/null @@ -1,178 +0,0 @@ ---- -id: oxtorrent-vip -replaces: - - oxtorrent - - torrent911 -name: OxTorrent-vip -description: "OxTorrent-vip is a FRENCH Public site for MOVIES / TV / GENERAL" -language: fr-FR -type: public -encoding: UTF-8 -# to fetch current domain use https://www.rantop.my/ -links: - - https://www.oxtorrent.town/ - - https://www.zone-torrent.town/ - - https://www.mega-torrent.town/ -legacylinks: - # latest domains list - - https://www.rantop.my/ - - https://www.site-torrent.cc/ - - https://www.torrent-site.com/ - # domain lists no longer working - - https://www.protege-torrent.com/ - - https://www.torrent.ws/ - - https://www.protege-liens.com/ - - https://www.protege-liens.net/ - - https://www.torrent.onl/ - - https://www.rantop.org/ - - https://oxtorrent.blog/ - - https://www.site-torrent.com/ - # actual legacylinks - - https://www.zone-torrent.com/ - - https://www.mega-torrent3.com/ - - https://www.mega-torrent4.com/ - - https://www.oxtorrent3.com/ - - https://www.oxtorrent4.com/ - - https://www.mega-torrent5.com/ - - https://www.zone-torrent1.com/ - - https://www.oxtorrent5.com/ - - hhttps://www.zone-torrent2.com/ - - https://www.zone-torrent2.com/ - - https://www.oxtorrent7.com/ - - https://www.mega-torrent6.com/ - - https://www.zone-torrent3.com/ - - https://www.oxtorrent8.com/ - - https://www.oxtorrent.diy/ - - https://www.zone-torrent.me/ - - https://www.mega-torrent.net/ - - https://www.oxtorrent.fyi/ - - https://www.zone-torrent4.com/ - - https://www.mega-torrent7.com/ - - https://www.oxtorrent10.com/ - -caps: - categorymappings: - - {id: Films, cat: Movies, desc: "Movies"} - - {id: Animes, cat: TV/Anime, desc: "Anime"} - - {id: Documentaires, cat: TV/Documentary, desc: "Documentaires"} - - {id: Séries, cat: TV, desc: "TV"} - - {id: Musiques, cat: Audio, desc: "Music"} - - {id: Ebooks, cat: Books, desc: "Books"} - - {id: Livres, cat: Books, desc: "Livres"} - - {id: Logiciels, cat: PC, desc: "Software"} - - {id: Applications, cat: PC, desc: "Applications"} - - {id: Jeux-PC, cat: PC/Games, desc: "PC Games"} - - {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"} - - {id: Porno, cat: XXX, desc: "Porno"} - - {id: Spectacles, cat: TV/Other, desc: "Spectacles"} - - {id: Sports, cat: TV/Sport, desc: "Sports"} - - {id: Formations, cat: Other, desc: "Formations"} - - {id: Vidéos, cat: TV, desc: "Vidéos"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - -download: - selectors: - - selector: a[href^="magnet:?"] - attribute: href - - selector: script:contains("magnet:?") - filters: - - name: regexp - args: "\\s'(magnet:\\?.+?)';" - -search: - paths: - - path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}" - keywordsfilters: - # if searching for season packs swith S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "saison $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "saison $2"] - - rows: - selector: table.table-hover > tbody > tr:has(td a[href]) - filters: - - name: andmatch - - fields: - category: - selector: td:nth-child(1) i - attribute: class - title_phase1: - selector: td:nth-child(1) a - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b((19|20)\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details_href: - selector: td:nth-child(1) a[href] - attribute: href - optional: true - filters: - - name: regexp - args: (/?detail/\d+) - details_onclick: - selector: td:nth-child(1) a[onclick] - attribute: onclick - optional: true - filters: - - name: regexp - args: (/?detail/\d+) - details: - text: "{{ or .Result.details_href .Result.details_onclick }}" - download: - text: "{{ .Result.details }}" - size: - selector: td:nth-child(2) - date: - text: now - seeders: - selector: td:nth-child(3) - leechers: - selector: td:nth-child(4) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/pandahd.yml b/config/prowlarr/Definitions/pandahd.yml deleted file mode 100644 index ffa7db92..00000000 --- a/config/prowlarr/Definitions/pandahd.yml +++ /dev/null @@ -1,151 +0,0 @@ ---- -id: pandahd-api -name: PandaHD (API) -description: "PandaHD is a Private Torrent Tracker for ASIAN content" -language: en-US -type: private -encoding: UTF-8 -links: - - https://pandahd.cc/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 4, cat: Console, desc: "Game"} - - {id: 5, cat: Movies/Other, desc: "Anime Movies"} - - {id: 6, cat: TV, desc: "Anime Series"} - - {id: 7, cat: Books, desc: "Book"} - - {id: 8, cat: TV, desc: "TS Firehose (TV)"} - - {id: 9, cat: Movies, desc: "TS Firehose (Movies)"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your PandaHD account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - - path: api/torrents/filter - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - categorydesc: - selector: category - title: - selector: name - details: - selector: details_link - download: - selector: download_link - poster: - selector: poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0=false, 1=true - selector: freeleech - case: - 0: 1 # not free - 1: 0 # freeleech - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumratio: - text: 0.4 -# minimumseedtime: -# # 7 days (as seconds = 7 x 24 x 60 x 60) -# text: 604800 -# json UNIT3D 5.3.0 diff --git a/config/prowlarr/Definitions/parabellumhd.yml b/config/prowlarr/Definitions/parabellumhd.yml deleted file mode 100644 index 154085a3..00000000 --- a/config/prowlarr/Definitions/parabellumhd.yml +++ /dev/null @@ -1,160 +0,0 @@ ---- -id: parabellumhd -name: ParabellumHD -description: "ParabellumHD is a SPANISH Private Torrent Tracker for MOVIES / TV" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://parabellumhd.cx/ - -caps: - categorymappings: - - {id: "Películas", cat: Movies, desc: "Películas"} - - {id: "Series", cat: TV, desc: "Series"} - - {id: "Películas de dibujos", cat: Movies/Other, desc: "Películas de dibujos"} - - {id: "Series de dibujos", cat: TV/Other, desc: "Series de dibujos"} - - {id: "Películas anime", cat: Movies/Other, desc: "Películas anime"} - - {id: "Series anime", cat: TV/Anime, desc: "Series anime"} - - {id: "Varios", cat: Other, desc: "Varios"} - - modes: - search: [q] - tv-search: [q, season, ep, year] - movie-search: [q, year] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: sort - type: select - label: Sort requested from site - default: date - options: - date: created - name: title - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.error-message - test: - path: tracker_home.php - selector: a[href="logout.php"] - -search: - paths: - # https://parabellumhd.cx/search.php?page=1&view=list&order=date&search=last&year= - # https://parabellumhd.cx/search.php?page=1&view=list&order=date&search=&year=2025 - - path: search.php - allowEmptyInputs: true - inputs: - page: 1 - view: list - order: "{{ .Config.sort }}" - search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ end }}" - year: "{{ if .Keywords }}{{ .Query.Year }}{{ else }}{{ .Today.Year }}{{ end }}" - keywordsfilters: - - name: re_replace # remove year - args: ["\\b((19|20)\\d{2})\\b", ""] - # strip season and/or ep - - name: re_replace - args: ["\\b(?:[SE]\\d{1,4}){1,2}\\b", ""] - - name: re_replace # strip El - args: ["(?i)\\b(el)\\b", ""] - - name: tolower - - rows: - selector: div.search-results > ul > li - - fields: - category: - selector: p - filters: - - name: regexp - args: "(?i)Categoría: (.+?)," - _format: - selector: div.file-info - optional: true - filters: - - name: regexp - args: "(?i)Formato: (.+?)," - _resolution: - selector: div.file-info - optional: true - filters: - - name: regexp - args: "(?i)Resolución: (.+?)," - _seasons: - selector: div.file-info - optional: true - filters: - - name: regexp - args: "(?i)(\\d+ temporadas?)" - - name: re_replace - args: ["(?i)(temporadas?)", "Seasons"] - _season: - selector: div.file-info - optional: true - filters: - - name: regexp - args: "(?i)Temporada: (\\d+)" - _episode: - selector: div.file-info - optional: true - filters: - - name: regexp - args: "(?i)Episodio: (\\d+)" - title: - selector: a[href^="torrent_details.php?id="] - filters: - - name: append - args: " {{ if .Result._seasons }}{{ .Result._seasons }}{{ else }}{{ end }}{{ if .Result._season }}S{{ .Result._season }}{{ else }}{{ end }}{{ if .Result._episode }}E{{ .Result._episode }}{{ else }}{{ end }} {{ if .Result._format }}{{ .Result._format }}{{ else }}{{ end }} {{ if .Result._resolution }}{{ .Result._resolution }}{{ else }}{{ end }} Spanish" - details: - selector: a[href^="torrent_details.php?id="] - attribute: href - download: - selector: a[href$="&action=download"] - attribute: href - size: - selector: div.file-info - filters: - - name: regexp - args: "Tamaño: (.+?)," - seeders: - selector: span.seeders - leechers: - selector: span.leechers - grabs: - selector: span.snatched - date: - selector: p - filters: - - name: regexp - args: (\d{2}/\d{2}/\d{4}) - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd/MM/yyyy zzz" - description: - selector: p - filters: - - name: regexp - args: "Categoría: (.+?)," - downloadvolumefactor: - case: - ":root:has(span.freeleech-text:contains(\"FREELEECH ACTIVADO\"))": 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.5 -# engine n/a diff --git a/config/prowlarr/Definitions/parnuxi.yml b/config/prowlarr/Definitions/parnuxi.yml deleted file mode 100644 index aec7b41f..00000000 --- a/config/prowlarr/Definitions/parnuxi.yml +++ /dev/null @@ -1,247 +0,0 @@ ---- -id: parnuxi -name: ParnuXi -description: "ParnuXi is a RUSSIAN Public Torrent Tracker for 3X" -language: ru-RU -type: public -encoding: UTF-8 -links: - - http://parnuxi.com/ # site does not support https ERR_CONNECTION_REFUSED - -caps: - categorymappings: - - {id: 144, cat: XXX, desc: "Форум"} - - {id: 145, cat: XXX, desc: " Свободное общение"} - - {id: 147, cat: XXX, desc: " Помощь в поиске порно"} - - {id: 148, cat: XXX, desc: " Правила, помощь, вопросы, предложения по улучшению трекера"} - - {id: 1, cat: XXX, desc: "Порно торрент"} - - {id: 9, cat: XXX, desc: " Любительское порно"} - - {id: 48, cat: XXX, desc: " HD Любительское порно"} - - {id: 49, cat: XXX, desc: " Гонзо"} - - {id: 50, cat: XXX, desc: " HD Гонзо"} - - {id: 51, cat: XXX, desc: " Любительское. Паки и сборники"} - - {id: 11, cat: XXX, desc: " Русское порно"} - - {id: 150, cat: XXX, desc: " Порно с русскими актрисами"} - - {id: 52, cat: XXX, desc: " Русские порнофильмы"} - - {id: 53, cat: XXX, desc: " HD Порно с Русскими актрисами"} - - {id: 54, cat: XXX, desc: " Русское порно. Паки и сборники"} - - {id: 2, cat: XXX, desc: " Анал"} - - {id: 29, cat: XXX, desc: " HD Анал"} - - {id: 30, cat: XXX, desc: " Анал. Паки и сборники"} - - {id: 10, cat: XXX, desc: " Молоденькие"} - - {id: 36, cat: XXX, desc: " HD Молоденькие"} - - {id: 37, cat: XXX, desc: " Молоденькие. Паки и сборники"} - - {id: 6, cat: XXX, desc: " Групповой секс"} - - {id: 42, cat: XXX, desc: " HD Групповой секс"} - - {id: 3, cat: XXX, desc: " Взрослые"} - - {id: 31, cat: XXX, desc: " HD Взрослые"} - - {id: 32, cat: XXX, desc: " Взрослые. Паки и сборники"} - - {id: 33, cat: XXX, desc: " Бабушки"} - - {id: 7, cat: XXX, desc: " Порнозвезды"} - - {id: 43, cat: XXX, desc: " HD Порнозвезды"} - - {id: 44, cat: XXX, desc: " Порнозвезды. Паки и сборники по актрисам"} - - {id: 18, cat: XXX, desc: " Лесбиянки"} - - {id: 34, cat: XXX, desc: " HD Лесбиянки"} - - {id: 35, cat: XXX, desc: " Лесбиянки. Паки и сборники"} - - {id: 4, cat: XXX, desc: " Оральный секс и сперма"} - - {id: 38, cat: XXX, desc: " HD Оральный секс и сперма"} - - {id: 39, cat: XXX, desc: " Bukkake"} - - {id: 40, cat: XXX, desc: " Glory Hole"} - - {id: 5, cat: XXX, desc: " Толстушки"} - - {id: 41, cat: XXX, desc: " HD Толстушки"} - - {id: 13, cat: XXX, desc: " Фетиш"} - - {id: 56, cat: XXX, desc: " Фистинг, фаллоимитаторы, игрушки"} - - {id: 57, cat: XXX, desc: " Гинекологические осмотры"} - - {id: 58, cat: XXX, desc: " Переодевание, униформа"} - - {id: 59, cat: XXX, desc: " Трусики, чулки, колготки"} - - {id: 60, cat: XXX, desc: " Большие сиськи"} - - {id: 62, cat: XXX, desc: " Фут фетиш"} - - {id: 63, cat: XXX, desc: " Спящие, Пьяные"} - - {id: 64, cat: XXX, desc: " Голый спорт"} - - {id: 65, cat: XXX, desc: " Волосатые"} - - {id: 14, cat: XXX, desc: " Порно со всего мира"} - - {id: 67, cat: XXX, desc: " Азиатки"} - - {id: 68, cat: XXX, desc: " Арабки, мусульманки"} - - {id: 69, cat: XXX, desc: " Индианки"} - - {id: 70, cat: XXX, desc: " Латинки"} - - {id: 71, cat: XXX, desc: " Негритянки"} - - {id: 153, cat: XXX, desc: " Межрасовый секс"} - - {id: 15, cat: XXX, desc: " Японское порно"} - - {id: 72, cat: XXX, desc: " Японское порно с цензурой"} - - {id: 73, cat: XXX, desc: " Японское порно без цензуры"} - - {id: 74, cat: XXX, desc: " HD Японское порно без цензуры"} - - {id: 97, cat: XXX, desc: " Полнометражные фильмы"} - - {id: 98, cat: XXX, desc: " Порно с сюжетом"} - - {id: 99, cat: XXX, desc: " Порно пародии"} - - {id: 100, cat: XXX, desc: " HD Полнометражные с сюжетом"} - - {id: 101, cat: XXX, desc: " Порно без сюжета"} - - {id: 102, cat: XXX, desc: " HD Полнометражные без сюжета"} - - {id: 103, cat: XXX, desc: " Эротические и документальные"} - - {id: 152, cat: XXX, desc: " Фильмы с Русским переводом"} - - {id: 155, cat: XXX, desc: " Этнические фильмы"} - - {id: 156, cat: XXX, desc: " Лесбо-фильмы"} - - {id: 8, cat: XXX, desc: " Ретро"} - - {id: 45, cat: XXX, desc: " 90-е"} - - {id: 46, cat: XXX, desc: " 80-е"} - - {id: 47, cat: XXX, desc: " 70-е"} - - {id: 12, cat: XXX, desc: " Вуайеризм и эксгибиционизм, нудизм"} - - {id: 55, cat: XXX, desc: " HD Вуайеризм и эксгибиционизм, нудизм"} - - {id: 154, cat: XXX, desc: " Casting"} - - {id: 157, cat: XXX, desc: " Public & Reality"} - - {id: 75, cat: XXX, desc: "Нетрадиционное порно"} - - {id: 76, cat: XXX, desc: " Извращения"} - - {id: 77, cat: XXX, desc: " Изнасилования"} - - {id: 78, cat: XXX, desc: " Измена"} - - {id: 79, cat: XXX, desc: " Инцест"} - - {id: 80, cat: XXX, desc: " Писающие"} - - {id: 81, cat: XXX, desc: " Копро"} - - {id: 82, cat: XXX, desc: " Беременные"} - - {id: 89, cat: XXX, desc: " Транссексуалы"} - - {id: 90, cat: XXX, desc: " HD Транссексуалы"} - - {id: 91, cat: XXX, desc: " BDSM"} - - {id: 92, cat: XXX, desc: " HD BDSM"} - - {id: 86, cat: XXX, desc: " Геи"} - - {id: 87, cat: XXX, desc: " HD Геи"} - - {id: 88, cat: XXX, desc: " Бисексуалы"} - - {id: 93, cat: XXX, desc: " Femdom и страпон"} - - {id: 94, cat: XXX, desc: " HD Femdom и страпон"} - - {id: 95, cat: XXX, desc: " Лесби страпон"} - - {id: 83, cat: XXX, desc: " Зоо порно"} - - {id: 84, cat: XXX, desc: " Собаки"} - - {id: 85, cat: XXX, desc: " Лошади"} - - {id: 158, cat: XXX, desc: " LegalPorno"} - - {id: 96, cat: XXX, desc: "Разное"} - - {id: 119, cat: XXX, desc: " Фото, журналы, комиксы"} - - {id: 120, cat: XXX, desc: " Любительские фото"} - - {id: 121, cat: XXX, desc: " Профессиональное, студийное фото"} - - {id: 122, cat: XXX, desc: " Фото эро и порноактрис"} - - {id: 123, cat: XXX, desc: " Журналы"} - - {id: 124, cat: XXX, desc: " Комиксы, картинки"} - - {id: 104, cat: XXX, desc: " Эротика"} - - {id: 105, cat: XXX, desc: " HD Эротика"} - - {id: 106, cat: XXX, desc: " Соло, Мастурбация"} - - {id: 107, cat: XXX, desc: " Стриптиз"} - - {id: 108, cat: XXX, desc: " Web камеры, видео чаты"} - - {id: 125, cat: XXX, desc: " Хентай и мультфильмы"} - - {id: 126, cat: XXX, desc: " Лоликон"} - - {id: 127, cat: XXX, desc: " Тентакли"} - - {id: 128, cat: XXX, desc: " Шотакон"} - - {id: 129, cat: XXX, desc: " Юри"} - - {id: 130, cat: XXX, desc: " Яой"} - - {id: 109, cat: XXX, desc: " Порно для мобильных устройств"} - - {id: 110, cat: XXX, desc: " Порно для смартфонов и КПК"} - - {id: 111, cat: XXX, desc: " Порно на телефон (3GP)"} - - {id: 112, cat: XXX, desc: " Порно для iPhone, iPad"} - - {id: 113, cat: XXX, desc: " 3D Порно"} - - {id: 114, cat: XXX, desc: " Анаглиф"} - - {id: 115, cat: XXX, desc: " Анаморфная стереопара"} - - {id: 116, cat: XXX, desc: " Стереопара"} - - {id: 117, cat: XXX, desc: " Blu-Ray 3D"} - - {id: 118, cat: XXX, desc: " 3D порно фото"} - - {id: 142, cat: XXX, desc: " Порно игры"} - - {id: 131, cat: XXX, desc: " Furry & Yiff"} - - {id: 132, cat: XXX, desc: " Furry Art"} - - {id: 133, cat: XXX, desc: " Yiff Art"} - - {id: 134, cat: XXX, desc: " Yiff Video"} - - {id: 135, cat: XXX, desc: " Furpile"} - - {id: 136, cat: XXX, desc: " Comics Rus"} - - {id: 137, cat: XXX, desc: " Comics Eng"} - - {id: 138, cat: XXX, desc: " Flash"} - - {id: 139, cat: XXX, desc: " Artist"} - - {id: 140, cat: XXX, desc: " Sex in fursuit"} - - {id: 141, cat: XXX, desc: " Furry and Yiff Рассказы"} - - {id: 151, cat: XXX, desc: " Мусор"} - - modes: - search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: t - options: - t: created - ts: seeders - sz: size - i: title - - name: type - type: select - label: Order requested from site - default: d - options: - d: desc - a: asc - -search: - paths: - # http://parnuxi.com/search.php?tracker_search=torrent&keywords=2020&terms=all&fp=1&author=&sc=1&sf=titleonly&sk=t&sd=d&sr=topics&st=0&ch=300&t=0&submit=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA - - path: search.php - inputs: - tracker_search: torrent - keywords: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - terms: all - fp: 1 - author: "" - sc: 1 - sf: titleonly - sr: topics - sk: "{{ .Config.sort }}" - sd: "{{ .Config.type }}" - st: 0 - ch: 300 - t: 0 - submit: Перейти - $raw: "{{ range .Categories }}&fid[]={{.}}{{end}}" - - rows: - selector: table.tablebg > tbody > tr:has(a[href^="./download/file.php?id="]) - - fields: - title: - selector: a.topictitle - details: - selector: a.topictitle - attribute: href - category: - selector: a[href^="./viewtopic.php?f="] - attribute: href - filters: - - name: querystring - args: f - download: - selector: a[href^="./download/file.php?id="] - attribute: href - size: - selector: span[title="Размер"] > b - filters: - - name: replace - args: ["ТБ", "TB"] - - name: replace - args: ["ГБ", "GB"] - - name: replace - args: ["МБ", "MB"] - - name: replace - args: ["КБ", "KB"] - seeders: - selector: span.seed - leechers: - selector: span.leech - grabs: - selector: span.complet - date: - # (09.03.2020) - selector: a.topictitle - optional: true - default: now - # do not append TZ else text {{if}} will not work if date not found - filters: - - name: regexp - args: (\d{2}\.\d{2}\.\d{4}) - - name: dateparse - args: "dd.MM.yyyy" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# phpBB diff --git a/config/prowlarr/Definitions/plusteca.yml b/config/prowlarr/Definitions/plusteca.yml deleted file mode 100644 index 84df6789..00000000 --- a/config/prowlarr/Definitions/plusteca.yml +++ /dev/null @@ -1,189 +0,0 @@ ---- -id: plusteca -name: Plusteca -description: "Plusteca is a BRAZILIAN Private Torrent Tracker for MOVIES / TV" -language: pt-BR -type: private -encoding: UTF-8 -links: - - https://plusteca.com/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Filme"} - - {id: 2, cat: TV, desc: "Seriado"} - - {id: 4, cat: PC/Games, desc: "Jogo"} - - {id: 5, cat: PC/0day, desc: "Aplicativo"} - - {id: 6, cat: Other, desc: "Cursos"} - - {id: 7, cat: XXX, desc: "XXX"} - - {id: 8, cat: Books/EBook, desc: "Livros"} - - {id: 9, cat: Books/Mags, desc: "História em Quadrinhos"} - - {id: 10, cat: TV, desc: "Shows"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your Plusteca account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Cinema TV)", "Cinema_TV"] - - name: re_replace - args: ["(?i)(Ficção científica)", "Ficção_científica"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 -# json UNIT3D 8.2.0 diff --git a/config/prowlarr/Definitions/polishsource.yml b/config/prowlarr/Definitions/polishsource.yml deleted file mode 100644 index 9b7792f2..00000000 --- a/config/prowlarr/Definitions/polishsource.yml +++ /dev/null @@ -1,182 +0,0 @@ ---- -id: polishsource -name: PolishSource -description: "PolishSource (PS) is a POLISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: pl-PL -type: private -encoding: ISO-8859-2 -requestDelay: 3 -links: - - https://polishsource.cz/ - - https://plsrc.cz/ - -caps: - categorymappings: - - {id: 12, cat: Movies/SD, desc: "Movies/SD"} - - {id: 11, cat: Movies/HD, desc: "Movies/HD"} - - {id: 46, cat: Movies/UHD, desc: "Movies/UHD"} - - {id: 10, cat: TV/SD, desc: "TV/SD"} - - {id: 39, cat: TV/HD, desc: "TV/HD"} - - {id: 47, cat: TV/UHD, desc: "TV/UHD"} - - {id: 8, cat: PC/Games, desc: "Games/PC"} - - {id: 3, cat: Console, desc: "Games/Consoles"} - - {id: 5, cat: Books, desc: "E-Books"} - - {id: 42, cat: Audio, desc: "Music"} - - {id: 18, cat: PC/0day, desc: "Apps"} - - {id: 13, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, genre] - movie-search: [q, imdbid, genre] - music-search: [q, genre] - book-search: [q, genre] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - 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: POLISH - options: - POLISH: POLISH - MULTI.POLISH: MULTI.POLISH - - 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_activity - type: info - label: Account Inactivity - default: "PolishSource account is not meant for 'collectors' or those who log in once a week. Using the account = downloading + seeding. Unused account = banned account.
Inactive accounts will be deleted:
User to Extreme User - 30 days | Legend User - 60 days | Veteran User+ - N/A" - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img[src="img.php"] - input: vImageCodP - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: td.embedded:has(h2:contains("nieudane")) - - selector: td.embedded:has(h2:contains("failed")) - - selector: td.embedded:has(h2:contains("Error")) - test: - path: browse.php - selector: a[href^="logout.php"] - -search: - paths: - # https://polishsource.cz/browse.php?search=tt1598778&incldead=1&scene=0&pl=0&sub=&search_in=nfo - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - # 0 onlyactive, 1 all, 2 onlydead - incldead: 1 - # 0 all, 1 scene, 2 notscene, 3 internal - scene: 0 - # 0 all, 1 Polish, 2 non-Polish, 4 subtitled - pl: 0 - # genre blank=all - sub: "{{ .Query.Genre }}" - # title, both, nfo - search_in: "{{ if .Query.IMDBID }}nfo{{ else }}title{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - rows: - selector: table#restable > tbody > tr:has(a[href^="details.php?id="]) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_phase1: - selector: a[href^="details.php?id="] - title_multilang: - selector: a[href^="details.php?id="] - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:POLISH|ENGLISH|\\bPL\\b)))\\b", "{{ .Config.multilanguage }}"] - - name: re_replace - args: ["(?i)\\b(pl)\\b", "POLISH"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="downloadssl.php?id="] - attribute: href - genre: - selector: td:nth-child(2) > small - filters: - - name: replace - args: [" ", ", "] - _language: - optional: true - selector: img[src="pic/pl.png"] - filters: - - name: append - args: "Language: Polish\n
" - _subbed: - optional: true - selector: img[src="pic/napisy.png"] - filters: - - name: append - args: "Subbed\n
" - description: - text: "Genre: {{ .Result.genre }}\n
{{ .Result._language }}{{ .Result._subbed }}" - imdbid: - selector: a[href*="imdb.com/title/tt"] - date: - selector: td:nth-child(4) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# engine n/a diff --git a/config/prowlarr/Definitions/pornxlab.yml b/config/prowlarr/Definitions/pornxlab.yml deleted file mode 100644 index 129912f1..00000000 --- a/config/prowlarr/Definitions/pornxlab.yml +++ /dev/null @@ -1,72 +0,0 @@ ---- -id: pornxlab -replaces: - - ptorrents -name: PornXLab -description: "PornXLab is a Public tracker for 3X" -language: en-US -type: public -encoding: UTF-8 -links: - - https://www.pornxlab.com/ -legacylinks: - - https://www.ptorrents.com/ - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: [] - -download: - selectors: - - selector: a.download-button - attribute: href - -search: - paths: - - path: "s.php?search={{ if .Keywords }}{{ .Keywords }}{{ else }}%20{{ end }}" - - rows: - selector: div.image-wrapper - - fields: - category: - text: XXX - title: - selector: a.overlay - filters: - - name: re_replace - args: ["^.+?\\] ", ""] - details: - selector: a.overlay - attribute: href - download: - selector: a.overlay - attribute: href - filters: - - name: regexp - args: "-(\\d+).html" - - name: prepend - args: "/dl.php?t=" - poster: - selector: img - attribute: src - date: - text: now - size: - selector: span.size - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - description: - selector: div.catalog a -# engine n/a diff --git a/config/prowlarr/Definitions/potuk.yml b/config/prowlarr/Definitions/potuk.yml deleted file mode 100644 index 3573432b..00000000 --- a/config/prowlarr/Definitions/potuk.yml +++ /dev/null @@ -1,170 +0,0 @@ ---- -id: potuk -name: PotUK -description: "PotUK - Private site for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.potuk.net/ - -caps: - categorymappings: - - {id: 8, cat: Movies, desc: "Movies"} - - {id: 9, cat: Movies/HD, desc: "DVDRip/BRRip/BDRip"} - - {id: 10, cat: Movies/SD, desc: "Screeners/R3/R5/R6/HDRip/Webrip/WEB-DL/Recodes"} - - {id: 11, cat: Movies/DVD, desc: "DVDR"} - - {id: 15, cat: Movies/UHD, desc: "High Definition MKV/MP4"} - - {id: 16, cat: Movies/SD, desc: "Cams TS & TC/PPV/VOD/HDTV *Ratio Free*"} - - {id: 17, cat: Movies/UHD, desc: "4k Ultra High Definition *Ratio Free*"} - - {id: 18, cat: Audio, desc: "Music"} - - {id: 19, cat: Audio/Video, desc: "Music DVD & Videos"} - - {id: 20, cat: Audio, desc: "Hip-Hop/RnB/Soul"} - - {id: 22, cat: Audio, desc: "Rock/Heavy Metal/Alternative"} - - {id: 23, cat: Audio, desc: "Amateur Creations/Live DJ Sets etc/Karaoke"} - - {id: 24, cat: Audio, desc: "Golden Oldies/Easy Listening"} - - {id: 25, cat: Audio, desc: "Pop albums"} - - {id: 26, cat: Audio, desc: "Drum & Bass/Breakbeat/Garage/Hardcore"} - - {id: 27, cat: Audio, desc: "Trance/Dance/House"} - - {id: 28, cat: Audio, desc: "Misc/compilation albums"} - - {id: 29, cat: Audio, desc: "Soundtracks"} - - {id: 32, cat: Audio, desc: "Country/Folk"} - - {id: 33, cat: Audio, desc: "Classical"} - - {id: 34, cat: Audio, desc: "Reggae/dub/ska/2 tone"} - - {id: 35, cat: Audio, desc: "Jazz 'n' Blues"} - - {id: 36, cat: Audio, desc: "Singles"} - - {id: 37, cat: Audio, desc: "Album & Singles Packs"} - - {id: 38, cat: Audio/Lossless, desc: "Lossless Format Albums"} - - {id: 39, cat: PC/Games, desc: "Games"} - - {id: 40, cat: PC/Games, desc: "PC Games"} - - {id: 41, cat: Console/XBox, desc: "X BOX"} - - {id: 42, cat: Console/PS3, desc: "Playstation"} - - {id: 43, cat: Console/Other, desc: "All Other Console Roms & Emulators"} - - {id: 47, cat: PC/Mac, desc: "Mac & Other OS Games"} - - {id: 49, cat: PC/Games, desc: "DVDR Interactive Games & Quizzes"} - - {id: 50, cat: Console/PSP, desc: "SONY PSP"} - - {id: 51, cat: Console/Other, desc: "Nintendo Switch"} - - {id: 52, cat: Console/NDS, desc: "Nintendo DS"} - - {id: 53, cat: PC, desc: "Applications"} - - {id: 55, cat: PC, desc: "Windows Operating Systems & MS Apps"} - - {id: 56, cat: PC, desc: "Artistry"} - - {id: 57, cat: PC, desc: "Internet & Web"} - - {id: 58, cat: PC, desc: "Utilities"} - - {id: 59, cat: PC, desc: "Misc Applications"} - - {id: 60, cat: PC, desc: "Sound & Vision"} - - {id: 63, cat: PC/Mac, desc: "Macintosh Applications"} - - {id: 64, cat: TV, desc: "TV Shows"} - - {id: 66, cat: TV/Sport, desc: "Sport TV"} - - {id: 68, cat: TV, desc: "Sci-Fi / Supernatural / Horror"} - - {id: 69, cat: TV, desc: "Comedy"} - - {id: 70, cat: TV, desc: "Cartoons/Animation"} - - {id: 71, cat: TV, desc: "Drama"} - - {id: 72, cat: TV, desc: "Action/Adventure"} - - {id: 73, cat: TV/Other, desc: "Misc TV"} - - {id: 75, cat: TV/Documentary, desc: "Documentaries"} - - {id: 76, cat: TV/Anime, desc: "Animation"} - - {id: 80, cat: Books, desc: "Comics/Books/eBooks"} - - {id: 83, cat: Audio/Audiobook, desc: "Audio Books"} - - {id: 84, cat: Books/EBook, desc: "E Books"} - - {id: 85, cat: Books/Comics, desc: "Comics/Magazines"} - - {id: 86, cat: Other/Misc, desc: "Misc Torrents"} - - {id: 89, cat: PC/Mobile-Other, desc: "Mobile Phone Stuff"} - - {id: 91, cat: Movies/3D, desc: "Movies 3D"} - - {id: 132, cat: Other, desc: "Practice your uploading skills in here"} - - {id: 140, cat: XXX, desc: "Adult Clips & Amateur"} - - {id: 141, cat: XXX, desc: "Adult Picture Links & Mags"} - - {id: 143, cat: XXX, desc: "Adult Games"} - - {id: 144, cat: XXX, desc: "Adult Retail Movies"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - -login: - path: index.php - method: form - form: form - inputs: - login: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: 1 - _xfRedirect: "" - selectorinputs: - _xfToken: - selector: input[name="_xfToken"] - attribute: value - error: - - selector: div.blockMessage--error:contains(" not be found") - - selector: div.blockMessage--error:contains("Incorrect password") - test: - path: index.php - selector: a[href="/index.php?account/preferences"] - -search: - paths: - # supports only single cat search, so defaulting to all - - path: "index.php?torrents/&freeleech={{ if .Config.freeleech }}1{{ else }}{{ end }}&filename={{ .Keywords }}" - # imdb and tmdb not supported - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: table.dataList-table > tbody.normal-torrents > tr - - fields: - category: - selector: a[href^="/index.php?forums/"] - attribute: href - filters: - - name: regexp - args: (\d+)/$ - title: - selector: div.structItem-title a - details: - selector: li.structItem-startDate a - attribute: href - download: - selector: a[href^="/index.php?attachments/"] - attribute: href - magnet: - selector: a[href^="magnet:?x"] - attribute: href - description: - selector: a[href^="/index.php?forums/"] - date: - selector: time - attribute: datetime - size: - selector: td:nth-last-child(4) - grabs: - selector: td:nth-last-child(3) - seeders: - selector: td:nth-last-child(2) - leechers: - selector: td:nth-last-child(1) - downloadvolumefactor: - case: - span.label--accent: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# XenForo diff --git a/config/prowlarr/Definitions/privatesilverscreen-api.yml b/config/prowlarr/Definitions/privatesilverscreen-api.yml deleted file mode 100644 index 4be38220..00000000 --- a/config/prowlarr/Definitions/privatesilverscreen-api.yml +++ /dev/null @@ -1,190 +0,0 @@ ---- -id: privatesilverscreen-api -name: PrivateSilverScreen (API) -description: "PrivateSilverScreen (PSS) is a Private Torrent Tracker for MOVIES / TV / MUSIC" -language: en-US -type: private -encoding: UTF-8 -links: - - https://privatesilverscreen.cc/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 6, cat: TV/Sport, desc: "Sports"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your PrivateSilverScreen account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "All members must be active within the community. Members must log into the site at minimum every 90 days or their account will be disabled for inactivity. (The only exceptions are if you're an active donor or if you are actively seeding)." - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://hdinnovations.github.io/UNIT3D/torrent_api.html - # https://github.com/HDInnovations/UNIT3D/blob/master/app/Http/Controllers/API/TorrentController.php#L657 - - path: api/torrents/filter - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - _featured: - selector: featured - case: - False: "{{ .False }}" - True: "{{ .True }}" - downloadvolumefactor_freeleech: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - downloadvolumefactor: - text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" - uploadvolumefactor_double_upload: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - uploadvolumefactor: - text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" -# global MR is 0.25 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.25 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 9.0.5 diff --git a/config/prowlarr/Definitions/ptlsp.yml b/config/prowlarr/Definitions/ptlsp.yml deleted file mode 100644 index 270624b8..00000000 --- a/config/prowlarr/Definitions/ptlsp.yml +++ /dev/null @@ -1,211 +0,0 @@ ---- -id: ptlsp -name: PTLSP -description: "PTLSP is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://www.ptlsp.com/ - -caps: - categorymappings: - - {id: 414, cat: Other, desc: "Ai(人工智能)"} - - {id: 401, cat: Movies, desc: "Movie(电影)"} - - {id: 402, cat: TV, desc: "TV Series(电视剧)"} - - {id: 405, cat: TV/Anime, desc: "Anime(动画)"} - - {id: 411, cat: Audio, desc: "Music(音乐)"} - - {id: 416, cat: Books/Comics, desc: "Comic(漫画)"} - - {id: 406, cat: Audio/Video, desc: "MV(演唱)"} - - {id: 412, cat: PC/0day, desc: "Software(软件)"} - - {id: 413, cat: PC/Games, desc: "Game(游戏)"} - - {id: 403, cat: TV, desc: "TV Shows(综艺)"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries(纪录片)"} - - {id: 407, cat: TV/Sport, desc: "Sports(体育)"} - - {id: 408, cat: Audio, desc: "Audio(音频)"} - - {id: 415, cat: Books/EBook, desc: "E-Booko(电子书/有声书)"} - - {id: 417, cat: Other, desc: "学习资料(Education)"} - - {id: 409, cat: Other, desc: "Misc(其他)"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the PTLSP 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
  1. Veteran User or above would never be deleted.
  2. Elite User or above would never be deleted if parked (at User CP).
  3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row.
  4. Unparked accounts would be deleted if users have not logged in for more than 150 days in a row.
  5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 7 days in a row.
" - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img[alt="CAPTCHA"] - input: imagestring - inputs: - secret: "" - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - two_step_code: "{{ .Config.2facode }}" - logout: "" - securelogin: "" - ssl: yes - trackerssl: yes - error: - - selector: td.embedded:has(h2:contains("失败")) - message: - selector: td.text - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% - spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 title, 1 descr, 3 uploader, 4 imdburl - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[data-src] - attribute: data-src - imdbid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td: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:nth-child(2) - remove: a, b, font, img, span - filters: - - name: prepend - args: "{{ .Result.description_verified }} " -# NexusPHP v1.8.8 2023-09-25 diff --git a/config/prowlarr/Definitions/ptorrents.yml b/config/prowlarr/Definitions/ptorrents.yml deleted file mode 100644 index daf6b81f..00000000 --- a/config/prowlarr/Definitions/ptorrents.yml +++ /dev/null @@ -1,92 +0,0 @@ ---- -id: ptorrents -name: ptorrents -description: "ptorrents is a Public tracker for 3X" -language: en-US -type: public -encoding: UTF-8 -links: - - https://www.ptorrents.com/ - -caps: - categories: - "3D and VR Movies": XXX - "Adult Anime and Game": XXX - Anime: XXX - BDSM: XXX - Bisexual: XXX - Bukkake: XXX - "Chinese Movie": XXX - "Erotic Picture Gallery": XXX/ImageSet - "Erotic Softcore Movies": XXX - "Femdom and Strapon": XXX - Fetish: XXX - "Fisting and Dildo": XXX - Game: PC/Games - Gangbang: XXX - Hentai: XXX - "Japanese Movie": XXX - Peeing: XXX - "Porn Movies": XXX - Pregnant: XXX - "Special Porn Movies": XXX - Transsexual: XXX - Voyeur: XXX - - modes: - search: [q] - -settings: [] - -download: - selectors: - - selector: a.download-button - attribute: href - -search: - paths: - - path: "s.php?search={{ if .Keywords }}{{ .Keywords }}{{ else }}%20{{ end }}" - - rows: - selector: div.image-wrapper - - fields: - category: - selector: div.catalog a - title: - selector: a.overlay - filters: - - name: re_replace - args: ["^.+?\\] ", ""] - details: - selector: a.overlay - attribute: href - download: - selector: a.overlay - attribute: href - filters: - - name: regexp - args: "-(\\d+).html" - - name: prepend - args: "/dl.php?t=" - poster: - selector: img - attribute: src - date: - text: now - size: - selector: a.overlay:contains(" MB"), a.overlay:contains(" GB") - optional: true - default: 512MB - filters: - - name: regexp - args: "^\\[(.+?)\\]" - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/rapidzona.yml b/config/prowlarr/Definitions/rapidzona.yml deleted file mode 100644 index 1028185c..00000000 --- a/config/prowlarr/Definitions/rapidzona.yml +++ /dev/null @@ -1,188 +0,0 @@ ---- -id: rapidzona -name: Rapidzona -description: "Rapidzona is a RUSSIAN Public Torrent Tracker for 3X" -language: ru-RU -type: public -encoding: windows-1251 -links: - - https://rapidzona.tv/ - -caps: - categorymappings: - - {id: 71, cat: XXX, desc: "Релизы"} - - {id: 73, cat: XXX, desc: " Ролики и сцены"} - - {id: 106, cat: XXX, desc: " Любительское порно"} - - {id: 107, cat: XXX, desc: " Сцены из фильмов"} - - {id: 133, cat: XXX, desc: " Anal & DP"} - - {id: 146, cat: XXX, desc: " Секс втроем"} - - {id: 127, cat: XXX, desc: " Сисястые"} - - {id: 134, cat: XXX, desc: " Группавуха"} - - {id: 114, cat: XXX, desc: " Русские девочки"} - - {id: 130, cat: XXX, desc: " Latin & Ebony"} - - {id: 128, cat: XXX, desc: " Азиатки"} - - {id: 124, cat: XXX, desc: " Межрасовый секс"} - - {id: 131, cat: XXX, desc: " Молоденькие"} - - {id: 132, cat: XXX, desc: " Мамочки"} - - {id: 112, cat: XXX, desc: " Кастинг / Casting"} - - {id: 115, cat: XXX, desc: " Public & Reality"} - - {id: 142, cat: XXX, desc: " Taboo / Incest"} - - {id: 141, cat: XXX, desc: " Лесбийский страпон"} - - {id: 111, cat: XXX, desc: " Лесбо-Ролики"} - - {id: 144, cat: XXX, desc: " Фистинг и Дилдо"} - - {id: 109, cat: XXX, desc: " BDSM-Ролики"} - - {id: 110, cat: XXX, desc: " Fetish-Ролики"} - - {id: 145, cat: XXX, desc: " Femdom-Ролики"} - - {id: 143, cat: XXX, desc: " Skinny & Petite"} - - {id: 138, cat: XXX, desc: " BBW / Толстушки"} - - {id: 136, cat: XXX, desc: " Оральный секс"} - - {id: 113, cat: XXX, desc: " Соло и мастурбация"} - - {id: 140, cat: XXX, desc: " Ролики от LegalPorno"} - - {id: 126, cat: XXX, desc: " Паки порнороликов"} - - {id: 72, cat: XXX, desc: " Полнометражные фильмы"} - - {id: 120, cat: XXX, desc: " Без сюжета"} - - {id: 118, cat: XXX, desc: " Классика"} - - {id: 116, cat: XXX, desc: " Порно с сюжетом"} - - {id: 119, cat: XXX, desc: " Порно-пародия"} - - {id: 117, cat: XXX, desc: " С Русским переводом"} - - {id: 137, cat: XXX, desc: " Отечественное порно"} - - {id: 121, cat: XXX, desc: " Этнические фильмы"} - - {id: 123, cat: XXX, desc: " Лесбо-фильмы"} - - {id: 139, cat: XXX, desc: " Fetish - фильмы"} - - {id: 122, cat: XXX, desc: " BDSM - фильмы"} - - {id: 125, cat: XXX, desc: " Эротика 18+"} - - {id: 129, cat: XXX, desc: " Документальное 18+"} - - {id: 93, cat: XXX, desc: " Анимация и Хентай"} - - {id: 87, cat: XXX, desc: " Images & Wallpaper"} - - {id: 105, cat: XXX, desc: " Порно игры"} - - modes: - search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: date - options: - date: created - title: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -download: - selectors: - - selector: a[href*="/download.php?id="] - attribute: href - -search: - paths: - - path: index.php - inputs: - $raw: "{{ range .Categories }}catlist[]={{.}}&{{end}}" - do: search - subaction: search - showposts: 1 - # 0 in article 1 in comments 2 in static pages 3 in article titles - titleonly: 3 - story: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - sortby: "{{ .Config.sort }}" - resorder: "{{ .Config.type }}" - error: - - selector: div:contains("MySQL Error!") - - rows: - selector: div.post - - fields: - category: - selector: p a:nth-child(3), p:has(a:nth-child(3):empty) a:nth-child(2) - optional: true - default: 71 - case: - a[href$="/porno-xxx-adult-torrent/"]: 71 - a[href$="/porno-video-movies-torrent/"]: 73 - a[href$="/amateur/"]: 106 - a[href$="/scenes-from-movies/"]: 107 - a[href$="/anal/"]: 133 - a[href$="/threesomes/"]: 146 - a[href$="/big-boobs/"]: 127 - a[href$="/group/"]: 134 - a[href$="/russian/"]: 114 - a[href$="/latin/"]: 130 - a[href$="/asian/"]: 128 - a[href$="/interracial-xxx/"]: 124 - a[href$="/teens/"]: 131 - a[href$="/milf/"]: 132 - a[href$="/casting/"]: 112 - a[href$="/public-reality/"]: 115 - a[href$="/taboo/"]: 142 - a[href$="/lesbi-strapon/"]: 141 - a[href$="/lesbian/"]: 111 - a[href$="/fisting-and-dildo/"]: 144 - a[href$="/bdsm/"]: 109 - a[href$="/fetish/"]: 110 - a[href$="/femdom/"]: 145 - a[href$="/skinny-petite/"]: 143 - a[href$="/bbw/"]: 138 - a[href$="/blowjob/"]: 136 - a[href$="/solo/"]: 113 - a[href$="/legalporno/"]: 140 - a[href$="/packs/"]: 126 - a[href$="/porno-films-torrent/"]: 72 - a[href$="/gonzo/"]: 120 - a[href$="/classic/"]: 118 - a[href$="/feature/"]: 116 - a[href$="/parody/"]: 119 - a[href$="/russian-lang/"]: 117 - a[href$="/russian-porn/"]: 137 - a[href$="/interracial/"]: 121 - a[href$="/all-girl-lesbian/"]: 123 - a[href$="/fetish-movies/"]: 139 - a[href$="/bdsm-and-bondage/"]: 122 - a[href$="/erotic-movies/"]: 125 - a[href$="/documentary/"]: 129 - a[href$="/porno-hentai-anime-torrent/"]: 93 - a[href$="/porno-foto-torrent/"]: 87 - a[href$="/porno-games-torrent/"]: 105 - "*": 71 - title: - selector: h1 > a - details: - selector: h1 > a - attribute: href - download: - # - selector: h1 > a - attribute: href - size: - text: "512 MB" - seeders: - text: 1 - leechers: - text: 1 - description: - selector: div.news - filters: - - name: re_replace - args: ["^...$", ""] - date: - selector: p.title-footer - filters: - # 20/02/2020 18:34 - - name: regexp - args: "(\\d{1,2}\\/\\d{2}\\/\\d{4} \\d{1,2}\\:\\d{2})" - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "dd/MM/yyyy HH:mm zzz" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# DataLife diff --git a/config/prowlarr/Definitions/rareshare2.yml b/config/prowlarr/Definitions/rareshare2.yml deleted file mode 100644 index aebecb48..00000000 --- a/config/prowlarr/Definitions/rareshare2.yml +++ /dev/null @@ -1,175 +0,0 @@ ---- -id: rareshare2 -name: RareShare2 (API) -description: "RareShare2 is a Private Torrent Tracker for TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://rareshare2.me/ - -caps: - categorymappings: - - {id: 3, cat: TV, desc: "Music"} - - {id: 4, cat: Console, desc: "Game"} - - {id: 5, cat: PC, desc: "Application"} - - {id: 6, cat: TV, desc: "Comedy"} - - {id: 24, cat: TV/Documentary, desc: "Documentary"} - - {id: 7, cat: TV, desc: "Drama"} - - {id: 9, cat: TV, desc: "Entertaiment"} - - {id: 10, cat: TV, desc: "Factual"} - - {id: 11, cat: TV, desc: "Kids/Family"} - - {id: 12, cat: TV, desc: "News"} - - {id: 13, cat: TV, desc: "Soaps"} - - {id: 14, cat: TV, desc: "SciFi"} - - {id: 15, cat: TV/Sport, desc: "Sport"} - - {id: 16, cat: TV, desc: "True Crime"} - - {id: 17, cat: Audio, desc: "Radio"} - - {id: 18, cat: TV, desc: "Reality"} - - {id: 19, cat: TV, desc: "TV Movie"} - - {id: 21, cat: TV, desc: "Action-Adventure"} - - {id: 22, cat: TV, desc: "Music"} - - {id: 23, cat: TV, desc: "Comedy-Drama"} - - {id: 20, cat: TV, desc: "0"} - - {id: 8, cat: TV, desc: "0"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your RareShare2 account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double -# global MR is 0.4 but torrents must be seeded for 3 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 1 day (as seconds = 1 x 24 x 60 x 60) for Single episodes - # 3 days (as seconds = 3 x 24 x 60 x 60) for Packs - text: 259200 -# json UNIT3D 6.0.6 diff --git a/config/prowlarr/Definitions/redbits-api.yml b/config/prowlarr/Definitions/redbits-api.yml deleted file mode 100644 index 3f03c368..00000000 --- a/config/prowlarr/Definitions/redbits-api.yml +++ /dev/null @@ -1,199 +0,0 @@ ---- -id: redbits-api -name: RedBits (API) -description: "RedBits is a SPANISH site for classic content" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://redbits.xyz/ -legacylinks: - - https://red-bits.com/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Películas"} - - {id: 2, cat: TV, desc: "Series"} - - {id: 10, cat: TV, desc: "Series Completas"} - - {id: 6, cat: TV/Documentary, desc: "Documentales"} - - {id: 7, cat: TV/Sport, desc: "Deportes"} - - {id: 8, cat: Movies, desc: "Hagbard"} - - {id: 9, cat: Movies, desc: "Studio Ghibli"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your RedBits account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Not entering in a month leads to the account being deactivated or banned. If the account does not register downloads in a month, it will be banned with the User rank, the other ranks will be given a time determined by the staff." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_vose: - selector: name:contains(VOSE) - optional: true - filters: - - name: append - args: " English" # Add english to fix Sonarr/Radarr language - title_notvose: - selector: name:not(:contains(VOSE)) - optional: true - filters: - - name: append - args: " Spanish" # Add spanish to fix Sonarr/Radarr language - title: - text: "{{ if .Result.title_vose }}{{ .Result.title_vose }}{{ else }}{{ .Result.title_notvose }}{{ end }}" - filters: - - name: re_replace - args: ["(?i)bdfull", "BluRay"] # BDfull -> BluRay - - name: re_replace - args: ["(?i)RedBits", ""] # Delete RedBits - - name: re_replace - args: ["\\[|\\]", " "] - - name: re_replace - args: [" ", " "] - - name: re_replace - args: ["(?i)T(\\d{1,2})\\b", "S$1"] - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Película de TV)", "Película_de_TV"] - - name: re_replace - args: ["(?i)(Ciencia ficción)", "Ciencia_ficción"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# json UNIT3D 6.4.1 diff --git a/config/prowlarr/Definitions/redleaves.yml b/config/prowlarr/Definitions/redleaves.yml deleted file mode 100644 index b4ed35b3..00000000 --- a/config/prowlarr/Definitions/redleaves.yml +++ /dev/null @@ -1,191 +0,0 @@ ---- -id: redleaves -name: Red Leaves (红叶) -description: "Red Leaves (红叶) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://leaves.red/ - -caps: - categorymappings: - - {id: 408, cat: Audio, desc: "HQ Audio (高清音频/音乐)"} - - {id: 409, cat: Other, desc: "Misc (杂项/软件/其他)"} - - {id: 407, cat: TV/Sport, desc: "Sports (竞技体育)"} - - {id: 406, cat: Audio/Video, desc: "Music Videos (音乐录影带)"} - - {id: 403, cat: TV, desc: "TV Shows (电视节目)"} - - {id: 402, cat: TV, desc: "TV Series (剧集)"} - - {id: 405, cat: TV/Anime, desc: "Animations (动画)"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries (纪实)"} - - {id: 401, cat: Movies, desc: "Movies (电影)"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the Red Leaves 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 Torrents per page: setting to 100 on your account profile. - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - captcha: - type: image - selector: img[alt="CAPTCHA"] - input: imagestring - inputs: - secret: "" - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - two_step_code: "{{ .Config.2facode }}" - logout: "" - securelogin: "" - ssl: yes - trackerssl: yes - error: - - selector: td.embedded:has(h2:contains("失败")) - message: - selector: td.text - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% - spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 title, 1 descr, 3 uploader, 4 imdburl - search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[data-src] - attribute: data-src - imdbid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td.rowfollow:nth-child(4) > span[title] - attribute: title - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_added: - # time added - selector: td.rowfollow:nth-child(4):not(:has(span)) - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss zzz" - date: - text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" - size: - selector: td.rowfollow:nth-child(5) - seeders: - selector: td.rowfollow: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: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.13 2024-09-13 diff --git a/config/prowlarr/Definitions/resurrectthenet.yml b/config/prowlarr/Definitions/resurrectthenet.yml deleted file mode 100644 index f37e0441..00000000 --- a/config/prowlarr/Definitions/resurrectthenet.yml +++ /dev/null @@ -1,175 +0,0 @@ ---- -id: resurrectthenet -name: Resurrect The Net -description: "Resurrect The Net (RTN) is a Private site for TV / MOVIES / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - http://resurrectthe.net/ - -caps: - categorymappings: - - {id: 7, cat: TV/Anime, desc: "Anime"} - - {id: 1, cat: PC, desc: "Appz/Misc"} - - {id: 2, cat: PC/ISO, desc: "Appz PC ISO"} - - {id: 3, cat: Movies, desc: "Boxset/Packs"} - - {id: 4, cat: Audio/Audiobook, desc: "Books/Audio Books"} - - {id: 23, cat: TV/HD, desc: "Episodes X264"} - - {id: 24, cat: TV/SD, desc: "Episodes XviD"} - - {id: 5, cat: PC/Games, desc: "Games PC ISO"} - - {id: 6, cat: PC/Games, desc: "Games PC Rips"} - - {id: 32, cat: Console, desc: "Games Console"} - - {id: 9, cat: PC/Mac, desc: "Mac"} - - {id: 10, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 11, cat: Movies/HD, desc: "Movies X264"} - - {id: 33, cat: Movies, desc: "Movies Classic"} - - {id: 12, cat: Movies/BluRay, desc: "Movies Blu-Ray"} - - {id: 13, cat: Movies/DVD, desc: "Movies DVDR"} - - {id: 14, cat: Movies/HD, desc: "MP4"} - - {id: 15, cat: Movies/SD, desc: "Movies XviD"} - - {id: 16, cat: Audio, desc: "Music"} - - {id: 17, cat: Audio/Video, desc: "Music Video"} - - {id: 19, cat: TV/Sport, desc: "Sport"} - - {id: 22, cat: XXX, desc: "XXX"} - - 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: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: body[onLoad^="makeAlert('"] - message: - selector: body[onLoad^="makeAlert('"] - attribute: onLoad - filters: - - name: replace - args: ["makeAlert('Error' , '", ""] - - name: replace - args: ["');", ""] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: index.php - inputs: - search: "{{ .Keywords }}" - page: torrents - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 filename, 1 file & descr, 2 descr, 3 uploaders, 5 gold, 6 silver, 7 bronze - # note the options are exclusive, so searching for gold means the search keywords are ignored - options: 0 - # 0 all, 1 active, 2 dead - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # while the site does have imdbid in some descriptions, we cannot support both searching with imdbid and freeleech at the same time. - - rows: - selector: "table > tbody > tr > td > table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details&id=\"]){{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}" - filters: - # searching freeleech and keywords returns unrelated hits - - name: andmatch - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - details: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[onmouseover][href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - date: - selector: td:nth-last-child(5) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "HH:mm:ss dd/MM/yyyy" - seeders: - selector: td:nth-last-child(4) - leechers: - selector: td:nth-last-child(3) - grabs: - selector: td:nth-last-child(2) - size: - selector: td:nth-last-child(1) - downloadvolumefactor: - case: - img[src="images/gold.gif"]: 0 - img[src="images/silver.gif"]: 0.5 - img[src="images/bronze.gif"]: 0.75 - "*": 1 - uploadvolumefactor: - case: - img[alt="2x Upload Multiplier"]: 2 - img[alt="3x Upload Multiplier"]: 3 - img[alt="4x Upload Multiplier"]: 4 - img[alt="5x Upload Multiplier"]: 5 - img[alt="6x Upload Multiplier"]: 6 - img[alt="7x Upload Multiplier"]: 7 - img[alt="8x Upload Multiplier"]: 8 - img[alt="9x Upload Multiplier"]: 9 - img[alt="10x Upload Multiplier"]: 10 - "*": 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# xbtitFM v1.17 diff --git a/config/prowlarr/Definitions/rmhd.yml b/config/prowlarr/Definitions/rmhd.yml deleted file mode 100644 index c78b54bb..00000000 --- a/config/prowlarr/Definitions/rmhd.yml +++ /dev/null @@ -1,180 +0,0 @@ ---- -id: rmhd -name: RM-HD -description: "RM-HD (remastered-hd) is a UKRAINIAN Private tracker for remastered MOVIES / TV / MUSIC" -language: uk-UA -type: private -encoding: UTF-8 -links: - - https://remastered-hd.org/ - -caps: - categorymappings: - - {id: 1, cat: Audio, desc: "HD Audio"} - - {id: 2, cat: Audio/Video, desc: "Music Video"} - - {id: 3, cat: TV/Anime, desc: "Animation"} - - {id: 4, cat: Movies, desc: "Movie"} - - {id: 5, cat: TV, desc: "TV Show"} - - {id: 6, cat: TV/Documentary, desc: "Documentary"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 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_activity - type: info - label: Account Inactivity - default: "Inactive users are deleted on a regular basis. If you haven't downloaded or given anything away during your 90-day stay on RM-HD, then you are an accidental guest on our resource. The resource needs active users who know exactly what they came here for. Therefore, automatic inactivity clean-ups are carried out on a regular basis. Users with a 1080p class are not deleted by the system." - -login: - path: / - method: form - form: form#login - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - do_login: "" - error: - - selector: table:contains("Login failed") - - selector: table:contains("Error") - test: - path: / - selector: a[href="logout"] - -search: - paths: - - path: browse - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - # search in title - search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - # search in description - dsearch: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}" - # 0 all, 1 simple, 2 silver, 3 gold, 4 diamond, 5 without seeders - incldead: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - rows: - selector: table#pager > tbody[style="background:none;"] > tr:has(a[href^="details_"]) - - fields: - category: - selector: img - case: - img.audio: 1 - img.musvid: 2 - img.anime: 3 - img.movie: 4 - img.tvshow: 5 - img.docum: 6 - _ru: - selector: a[href="RU"] - optional: true - _ua: - selector: a[href="UA"] - optional: true - title: - selector: a[href^="details_"] - filters: - - name: append - args: "{{ if .Result._ru}} {{ .Result._ru }}{{ else }}{{ end }}" - - name: append - args: "{{ if .Result._ua}} {{ .Result._ua }}{{ else }}{{ end }}" - details: - selector: a[href^="details_"] - attribute: href - download: - selector: a[href^="details_"] - attribute: href - filters: - - name: replace - args: ["details_", "download_"] - date: - # Релиз залит: 1 января 2024 в 20:16:09 - selector: span:contains("Релиз залит") - filters: - - name: replace - args: ["Релиз залит:\xA0", ""] - - name: replace - args: [" в ", " "] - - name: replace - args: ["января", "January"] - - name: replace - args: ["февраля", "February"] - - name: replace - args: ["марта", "March"] - - name: replace - args: ["апреля", "April"] - - name: replace - args: ["мая", "May"] - - name: replace - args: ["июня", "June"] - - name: replace - args: ["июля", "July"] - - name: replace - args: ["августа", "August"] - - name: replace - args: ["сентября", "September"] - - name: replace - args: ["октября", "October"] - - name: replace - args: ["ноября", "November"] - - name: replace - args: ["декабря", "December"] - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "d MMMM yyyy HH:mm:ss zzz" - grabs: - selector: span[title="Релиз скачен"] - size: - selector: div[valign="bottom"] > b - seeders: - selector: b[title^="Сидируют:"] - leechers: - selector: b[title^="Качают:"] - genre: - selector: table:last-of-type > tbody > tr:nth-child(2) > td - description: - text: "{{ .Result.genre }}" - downloadvolumefactor: - case: - b[style="color:#d08700"]: 0 # gold - b[style="color:#778899"]: 0.5 # silver - b[style="color:blue"]: 0 # diamond - "*": 1 - uploadvolumefactor: - case: - b[style="color:blue"]: 2 # diamond - "*": 1 -# TBDev diff --git a/config/prowlarr/Definitions/rotorrent.yml b/config/prowlarr/Definitions/rotorrent.yml deleted file mode 100644 index 4d6a9edf..00000000 --- a/config/prowlarr/Definitions/rotorrent.yml +++ /dev/null @@ -1,171 +0,0 @@ ---- -id: rotorrent -name: RoTorrent -description: "RoTorrent is a ROMANIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: ro-RO -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://rotorrent.ro/ - -caps: - # dont forget to update the path categories in the search block - categorymappings: - - {id: 18, cat: PC/0day, desc: "Apps: PC", default: true} - - {id: 55, cat: TV/Documentary, desc: "Docs: Docs", default: true} - - {id: 10, cat: PC/Games, desc: "Games: PC", default: true} - - {id: 53, cat: Other, desc: "Miscellaneous: Miscellaneous", default: true} - - {id: 58, cat: Movies/BluRay, desc: "Movies: 4K Blu-Ray", default: true} - - {id: 2, cat: Movies/SD, desc: "Movies: Divx/Xvid", default: true} - - {id: 52, cat: Movies/SD, desc: "Movies: Cam/TS/TC", default: true} - - {id: 54, cat: Movies/UHD, desc: "Movies: 4K", default: true} - - {id: 59, cat: Movies/BluRay, desc: "Movies: Blu-Ray", default: true} - - {id: 60, cat: Movies/HD, desc: "Movies: HD", default: true} - - {id: 62, cat: Movies/WEB-DL, desc: "Movies: WebDL/RIP", default: true} - - {id: 64, cat: Movies/DVD, desc: "Movies: DVD", default: true} - - {id: 65, cat: XXX, desc: "Movies: XXX", default: false} - - {id: 66, cat: TV/Anime, desc: "Movies: Anime", default: true} - - {id: 22, cat: Audio/MP3, desc: "Music: MP3", default: true} - - {id: 63, cat: Audio/Lossless, desc: "Music: FLAC", default: true} - - {id: 6, cat: TV, desc: "TV: TV Shows", default: true} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tmdbid, genre] - movie-search: [q, imdbid, tmdbid, genre] - music-search: [q, genre] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: "div[style^=\"color: red;\"]" - test: - path: index.php - selector: a[href="account-logout.php"] - -search: - paths: - - path: torrents-search.php - categories: [18, 55, 10, 53, 58, 2, 52, 54, 59, 60, 62, 64, 66, 22, 63, 6] - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 all, 1 nofree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 both, 1 local, 2 external - inclexternal: 0 - # 0 all, 1 romanian, 2 english, 3 english and romanian - inclrosub: 0 - - path: torrents-search1.php - categories: [65] - inputs: - search: "{{ if or .Query.IMDBID .Query.TMDBID }}{{ or .Query.IMDBID .Query.TMDBID }} {{ else }}{{ end }}{{ if .Query.Genre }}{{ .Query.Genre }} {{ else }}{{ end }}{{ .Keywords }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table.ttable_headinner > tbody > tr - - fields: - category: - selector: a[href*="cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] b - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - filters: - - name: replace - args: ["&hit=1", ""] # avoid redirect - download: - text: "{{ .Result.details }}" - filters: - - name: replace - args: ["torrents-details", "download"] - poster: - selector: a[href^="torrents-details.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: src=(.+?)> - date: - selector: td:nth-child(8) - filters: - - name: timeago - size: - selector: td:nth-child(3) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(5) - leechers: - selector: td:nth-child(6) - genre: - selector: a[href^="torrents-details.php?id="] font div.newt - filters: - - name: re_replace - args: ["(?i)(Cult Classic)", "Cult_Classic"] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - description_subs: - optional: true - case: - img[src$="languages/unitestates.gif"]: Eng - img[src$="languages/romania.gif"]: Ro - img[src$="languages/roeng.gif"]: "Ro & Eng" - description: - text: "{{ if .Result.description_subs }}Subtitles: {{ .Result.description_subs }}
{{ else }}{{ end }}Genres: {{ .Result.genre }}" - downloadvolumefactor: - case: - img[src="images/free.png"]: 0 - "*": 1 - uploadvolumefactor: - case: - img[src="images/doubleupload.gif"]: 2 - "*": 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# TorrentTrader 3.0 Micro Edition diff --git a/config/prowlarr/Definitions/rptorrents-api.yml b/config/prowlarr/Definitions/rptorrents-api.yml deleted file mode 100644 index 2032cbca..00000000 --- a/config/prowlarr/Definitions/rptorrents-api.yml +++ /dev/null @@ -1,187 +0,0 @@ ---- -id: rptorrents-api -name: RPTorrents (RPT) -description: "RPTorrents (RPT) is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://rptscene.xyz/ - -caps: - categorymappings: - - {id: 1, cat: Movies/HD, desc: "Movies HD"} - - {id: 2, cat: Movies/HD, desc: "Movies HD-RO"} - - {id: 3, cat: Movies/HD, desc: "Movie Pack HD-RO"} - - {id: 5, cat: Movies/BluRay, desc: "Movies Bluray"} - - {id: 6, cat: Movies/BluRay, desc: "Movies Bluray-RO"} - - {id: 7, cat: Movies/UHD, desc: "Movies 4K"} - - {id: 8, cat: Movies/UHD, desc: "Movies 4K-RO"} - - {id: 9, cat: TV, desc: "TV"} - - {id: 10, cat: TV, desc: "TV RO"} - - {id: 11, cat: TV, desc: "TV Pack-RO"} - - {id: 12, cat: Audio/MP3, desc: "Music Mp3"} - - {id: 13, cat: Audio/Lossless, desc: "Music Flac"} - - {id: 14, cat: Audio/Video, desc: "Music Video"} - - {id: 15, cat: Movies, desc: "Movies Cartoons"} - - {id: 16, cat: Movies, desc: "Movies Cartoons-RO"} - - {id: 17, cat: Console, desc: "Game"} - - {id: 18, cat: PC/0day, desc: "Application Win"} - - {id: 19, cat: PC/Mac, desc: "Application Mac"} - - {id: 20, cat: XXX, desc: "Movies XXX"} - - {id: 21, cat: Books, desc: "E-Book"} - - {id: 22, cat: TV/Anime, desc: "Anime"} - - {id: 23, cat: PC, desc: "Linux"} - - {id: 24, cat: PC/Mobile-Other, desc: "Mobile"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your RPTorrents account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 7 day (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 7.1.3 diff --git a/config/prowlarr/Definitions/rptscene-api.yml b/config/prowlarr/Definitions/rptscene-api.yml deleted file mode 100644 index 53f9f7f3..00000000 --- a/config/prowlarr/Definitions/rptscene-api.yml +++ /dev/null @@ -1,189 +0,0 @@ ---- -id: rptscene-api -name: RPTScene -description: "RPTScene (RPTorrents) is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://rptscene.xyz/ - -caps: - categorymappings: - - {id: 1, cat: Movies/HD, desc: "Movies HD"} - - {id: 2, cat: Movies/HD, desc: "Movies HD-RO"} - - {id: 3, cat: Movies/HD, desc: "Movie Pack HD-RO"} - - {id: 5, cat: Movies/BluRay, desc: "Movies Bluray"} - - {id: 6, cat: Movies/BluRay, desc: "Movies Bluray-RO"} - - {id: 7, cat: Movies/UHD, desc: "Movies 4K"} - - {id: 8, cat: Movies/UHD, desc: "Movies 4K-RO"} - - {id: 9, cat: TV, desc: "TV"} - - {id: 10, cat: TV, desc: "TV RO"} - - {id: 11, cat: TV, desc: "TV Pack-RO"} - - {id: 12, cat: Audio/MP3, desc: "Music Mp3"} - - {id: 13, cat: Audio/Lossless, desc: "Music Flac"} - - {id: 14, cat: Audio/Video, desc: "Music Video"} - - {id: 15, cat: Movies, desc: "Movies Cartoons"} - - {id: 16, cat: Movies, desc: "Movies Cartoons-RO"} - - {id: 17, cat: Console, desc: "Game"} - - {id: 18, cat: PC/0day, desc: "Application Win"} - - {id: 19, cat: PC/Mac, desc: "Application Mac"} - - {id: 20, cat: XXX, desc: "Movies XXX"} - - {id: 21, cat: Books, desc: "E-Book"} - - {id: 22, cat: TV/Anime, desc: "Anime"} - - {id: 23, cat: PC, desc: "Linux"} - - {id: 24, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 51, cat: TV/Documentary, desc: "Documentary"} - - {id: 52, cat: TV, desc: "TV Cartoons-Ro"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your RPTorrents account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 7 day (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 7.1.3 diff --git a/config/prowlarr/Definitions/rptscene.yml b/config/prowlarr/Definitions/rptscene.yml deleted file mode 100644 index 77c96fea..00000000 --- a/config/prowlarr/Definitions/rptscene.yml +++ /dev/null @@ -1,177 +0,0 @@ ---- -id: rptscene -name: RPTScene -description: "RPTScene is a Private tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://rptscene.xyz/ -legacylinks: - - https://rpthd.com/ - -caps: - categorymappings: - - {id: 6, cat: PC/0day, desc: "Apps: Windows"} - - {id: 7, cat: PC/Mac, desc: "Apps: Mac"} - - {id: 8, cat: PC, desc: "Apps: Linux"} - - {id: 75, cat: Movies/DVD, desc: "Movies: DVD"} - - {id: 26, cat: Movies/BluRay, desc: "Movies: Blu-Ray"} - - {id: 42, cat: Movies/HD, desc: "Movies: FHD-HD"} - - {id: 50, cat: Movies/WEB-DL, desc: "Movies: Web-Dl"} - - {id: 74, cat: Movies/SD, desc: "Movies: SD"} - - {id: 49, cat: Movies/UHD, desc: "Movies: 4k"} - - {id: 46, cat: Movies/3D, desc: "Movies: 3D"} - - {id: 24, cat: Movies, desc: "Movies: Packs"} - - {id: 28, cat: Movies/Other, desc: "Movies: Cartoons"} - - {id: 47, cat: XXX, desc: "Movies: XXX"} - - {id: 41, cat: TV/HD, desc: "TV: HD"} - - {id: 52, cat: TV/WEB-DL, desc: "TV: WEB-DL"} - - {id: 48, cat: TV, desc: "TV: Packs"} - - {id: 9, cat: TV/Documentary, desc: "TV: Documentaries"} - - {id: 22, cat: Audio/MP3, desc: "Music: MP3"} - - {id: 23, cat: Audio/Lossless, desc: "Music: FLAC"} - - {id: 25, cat: Audio/Video, desc: "Music: Video"} - - {id: 27, cat: Audio, desc: "Music: Pack"} - - {id: 53, cat: PC/Games, desc: "Games: Pc"} - - {id: 54, cat: Console, desc: "Games: PsP"} - - {id: 76, cat: Audio/Audiobook, desc: "Books: Audio"} - - {id: 77, cat: Books/EBook, desc: "Books: eBooks"} - - {id: 78, cat: TV/UHD, desc: "TV: 4k"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Search results - default: "If you are not getting results, then access the site with your browser and mark as read all PMs." - - name: info_activity - type: info - label: Account Inactivity - default: "Be active here, you must login at least once a month. Also, not downloading anything is considered being inactive (except if you're an uploader or VIP). The accounts inactive for 3 months are deleted." - -login: - path: account-login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.myFrame:contains("Access Denied") - test: - path: index.php - selector: a[href^="account-logout.php"] - -search: - paths: - # https://rptscene.xyz/torrents-search.php?c22=1&c23=1&c76=1&c77=1&search=&incldead=0&freeleech=0&inclrosub=0 - - path: torrents-search.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - # 0 only active 1 incl dead 2 only dead - incldead: 1 - # 0 all 1 not freeleech 2 only freeleech - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: table.ttable_headinner > tbody > tr - - fields: - category: - selector: a[href^="torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="torrents-details.php?id="] - attribute: title - details: - selector: a[href^="torrents-details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="torrents-details.php?id="]:not(a[onmouseover*="images/nocover.png"]) - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - size: - selector: td:nth-child(4) - date: - # 15.11.21
07:47 - selector: td:nth-child(5) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "d.MM.yyHH:mm" - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - genre: - selector: a:contains("Genre:") - filters: - - name: replace - args: ["Genre: ", ""] - _source: - case: - img[src="images/t_extern.png"]: External - "*": Local - description: - text: "{{ .Result._source }} - {{ .Result.genre }}" - downloadvolumefactor: - case: - img[src="images/t_extern.png"]: 0 - img[src="images/free.png"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# engine n/a diff --git a/config/prowlarr/Definitions/satclubbing.yml b/config/prowlarr/Definitions/satclubbing.yml deleted file mode 100644 index 92460e62..00000000 --- a/config/prowlarr/Definitions/satclubbing.yml +++ /dev/null @@ -1,159 +0,0 @@ ---- -id: satclubbing -name: SATClubbing -description: "SATClubbing is a RUSSIAN/ENGLISH Private Torrent Tracker for ELECTRONIC MUSIC" -language: en-US -type: private -encoding: UTF-8 -links: - - https://satclubbing.club/ - -caps: - categorymappings: - - {id: 23, cat: Audio, desc: "Albums - Trance"} - - {id: 34, cat: Audio, desc: "Singles - Trance"} - - {id: 24, cat: Audio, desc: "Livesets - Trance"} - - {id: 30, cat: Audio, desc: "Albums - House"} - - {id: 25, cat: Audio, desc: "Singles - House"} - - {id: 32, cat: Audio, desc: "Livesets - House"} - - {id: 18, cat: Audio, desc: "Albums - Techno"} - - {id: 29, cat: Audio, desc: "Singles - Techno"} - - {id: 21, cat: Audio, desc: "Livesets - Techno"} - - {id: 35, cat: Audio, desc: "Albums - Hardstyle"} - - {id: 20, cat: Audio, desc: "Singles - Hardstyle"} - - {id: 28, cat: Audio, desc: "Livesets - Hardstyle"} - - {id: 22, cat: Audio, desc: "Albums - Goa/Psy"} - - {id: 33, cat: Audio, desc: "Singles - Goa/Psy"} - - {id: 26, cat: Audio, desc: "Livesets - Goa/Psy"} - - {id: 31, cat: Audio, desc: "Beat/Breaks"} - - {id: 40, cat: Audio, desc: "Electronic"} - - {id: 42, cat: Audio, desc: "Albums - Drum and Bass"} - - {id: 43, cat: Audio, desc: "Singles - Drum and Bass"} - - {id: 44, cat: Audio, desc: "Livesets - Drum and Bass"} - - {id: 45, cat: Audio, desc: "Albums - Dance"} - - {id: 46, cat: Audio, desc: "Singles - Dance"} - - {id: 36, cat: Audio, desc: "Unreleased Tracks"} - - {id: 41, cat: Audio, desc: "Bass"} - - {id: 39, cat: Audio, desc: "Ambient / Chill"} - - {id: 27, cat: Other, desc: "Music Plugins/Apps/Misc"} - - {id: 19, cat: Audio/Video, desc: "DVD/Video/Clips"} - - {id: 38, cat: Audio, desc: "SCMT Pack"} - - {id: 47, cat: Audio, desc: "Albums - Hardcore"} - - {id: 48, cat: Audio, desc: "Singles - Hardcore"} - - {id: 49, cat: Audio, desc: "Livesets - Hardcore"} - - {id: 50, cat: Audio, desc: "Rave"} - - {id: 51, cat: Audio, desc: "Acid"} - - {id: 52, cat: Audio, desc: "Dubstep"} - - modes: - search: [q] - music-search: [q, artist] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account options. - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.error - test: - path: / - selector: a[href="logout.php"] - -search: - paths: - # https://satclubbing.club/browse.php?search=&cat=0&incldead=1&age=0&quality=0&c23=1&c34=1 - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.Artist }}{{ .Query.Artist }}{{ else }}{{ .Keywords }}{{ end }}" - # 0 active, 1 incldead, 2 onlydead, 3 freeleech, 4 seedless - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - # 0 any, 1 fresh, 2 classic, 3 not classic - age: 0 - # 0 any, 320 mp3 cbr, 1000 mp3 vbr, 2000 lossless - quality: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - rows: - selector: table > tbody > tr > td.index > table.embedded[cellspacing="0"][cellpadding="5"][width="100%"] > tbody > tr:has(a[href^="details.php?id="]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - date: - selector: td:last-child - filters: - - name: replace - args: ["added ", ""] - - name: timeago - files: - selector: a[href$="filelist=1"] - size: - selector: td:has(a[href$="filelist=1"]) + td + td - seeders: - selector: a[href$="toseeders=1"] - optional: true - default: 0 - leechers: - selector: td:has(a[href$="toseeders=1"]) - optional: true - default: 0 - filters: - - name: split - args: ["|", 1] - downloadvolumefactor: - case: - img[src$="pic/free_icon.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.60 -# engine n/a diff --git a/config/prowlarr/Definitions/scenelinks.yml b/config/prowlarr/Definitions/scenelinks.yml deleted file mode 100644 index b1a7ca1d..00000000 --- a/config/prowlarr/Definitions/scenelinks.yml +++ /dev/null @@ -1,195 +0,0 @@ ---- -id: scenelinks -name: SceneLinks -description: "SceneLinks (SL) is a ROMANIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: ro-RO -type: private -encoding: UTF-8 -links: - - https://scenelinks.me/ -legacylinks: - - https://scenelinks.io/ - - https://www.scenelinks.io/ - -caps: - categorymappings: - - {id: 1, cat: Movies/HD, desc: "Movies: HD"} - - {id: 2, cat: TV, desc: "TV Episodes"} - - {id: 6, cat: TV, desc: "RO TV"} - - {id: 7, cat: Movies, desc: "Ro Movies"} - - {id: 8, cat: TV, desc: "TV Episodes-RO"} - - {id: 9, cat: Movies/HD, desc: "Movies: HD-Ro"} - - {id: 11, cat: Movies/BluRay, desc: "Movies: BluRay"} - - {id: 12, cat: Movies/BluRay, desc: "Movies: BluRay-RO"} - - {id: 13, cat: Movies/UHD, desc: "Movies: 4K"} - - {id: 14, cat: Movies/UHD, desc: "Movies: 4K-RO"} - - {id: 15, cat: TV, desc: "TV Packs RO"} - - {id: 20, cat: Movies/DVD, desc: "Movies: DVD"} - - {id: 21, cat: Movies/DVD, desc: "Movies: DVD-Ro"} - - {id: 19, cat: TV/Documentary, desc: "Docs"} - - {id: 18, cat: Other, desc: "Images"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 16, cat: Console, desc: "Games: Console"} - - {id: 4, cat: PC/Games, desc: "Games PC"} - - {id: 5, cat: PC, desc: "Application"} - - {id: 22, cat: TV/Sport, desc: "Sport"} - - {id: 10, cat: XXX, desc: "XXX"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your SceneLinks account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Account will be disabled due to inactivity for more than 90 days." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 1 day regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# json UNIT3D 7.0.3 diff --git a/config/prowlarr/Definitions/seedoff.yml b/config/prowlarr/Definitions/seedoff.yml deleted file mode 100644 index 54690c8f..00000000 --- a/config/prowlarr/Definitions/seedoff.yml +++ /dev/null @@ -1,341 +0,0 @@ ---- -id: seedoff -name: Seedoff -description: "Seedoff is a RUSSIAN Public tracker for MOVIES / TV / GENERAL" -language: ru-RU -type: public -encoding: UTF-8 -links: - - https://seedoff.zannn.top/ -legacylinks: - - https://forum.zannn.top/ - -caps: - categorymappings: - # Video - - {id: 1, cat: Movies, desc: "Видео"} - - {id: 14, cat: Movies/Foreign, desc: "Зарубежное кино"} - - {id: 15, cat: Movies, desc: "Отечественное кино"} - - {id: 17, cat: TV/Foreign, desc: "Зарубежные сериалы"} - - {id: 128, cat: TV, desc: "Отечественные сериалы"} - - {id: 18, cat: TV/Documentary, desc: "Документальные фильмы"} - - {id: 19, cat: TV, desc: "ТВ-передачи"} - - {id: 20, cat: TV/Sport, desc: "Спорт"} - - {id: 21, cat: Movies/Other, desc: "Трейлеры"} - - {id: 22, cat: Audio/Video, desc: "Театр и музыка"} - - {id: 112, cat: TV/Other, desc: "Юмор"} - - {id: 139, cat: TV/Foreign, desc: "Видео без русского перевода"} - - {id: 145, cat: TV/Other, desc: "Видеокурсы"} - - {id: 118, cat: Movies, desc: "Другое"} - - {id: 149, cat: Movies, desc: "Ретро отечественного/зарубежного видео"} - # Video (DVD/HD/BD) - - {id: 13, cat: Movies, desc: "Видео (DVD/HD/BD)"} - - {id: 64, cat: Movies/Foreign, desc: "Зарубежное кино"} - - {id: 65, cat: Movies, desc: "Отечественное кино"} - - {id: 66, cat: TV/Foreign, desc: "Зарубежные сериалы"} - - {id: 129, cat: TV, desc: "Отечественные сериалы"} - - {id: 67, cat: TV/Documentary, desc: "Документальные фильмы"} - - {id: 68, cat: TV, desc: "ТВ-передачи"} - - {id: 69, cat: TV/Sport, desc: "Спорт"} - - {id: 70, cat: Movies/Other, desc: "Трейлеры"} - - {id: 71, cat: Audio/Video, desc: "Театр и музыка"} - - {id: 113, cat: TV/Other, desc: "Юмор"} - - {id: 140, cat: TV/Foreign, desc: "Видео без русского перевода"} - - {id: 119, cat: Movies, desc: "Другое"} - # Music - - {id: 2, cat: Audio/MP3, desc: "Музыка"} - - {id: 73, cat: Audio/MP3, desc: "Поп музыка"} - - {id: 74, cat: Audio/MP3, desc: "Джаз и Блюз"} - - {id: 75, cat: Audio/MP3, desc: "Классическая музыка"} - - {id: 76, cat: Audio/MP3, desc: "Рок-музыка"} - - {id: 83, cat: Audio/MP3, desc: "Электронная музыка"} - - {id: 86, cat: Audio/MP3, desc: "Этническая музыка (Фольклор)"} - - {id: 87, cat: Audio/MP3, desc: "Рэп, Хип-Хоп, R'n'B"} - - {id: 88, cat: Audio/MP3, desc: "NewAge, Relax"} - - {id: 89, cat: Audio/MP3, desc: "Шансон, Авторская и Военная песня"} - - {id: 90, cat: Audio/MP3, desc: "Музыка других жанров"} - - {id: 91, cat: Audio/MP3, desc: "Саундтреки, Караоке и Минусовки"} - - {id: 122, cat: Audio/MP3, desc: "Мюзиклы и рок-оперы"} - # Music (lossless) - - {id: 8, cat: Audio/Lossless, desc: "Музыка (lossless)"} - - {id: 93, cat: Audio/Lossless, desc: "Поп музыка"} - - {id: 94, cat: Audio/Lossless, desc: "Джаз и Блюз"} - - {id: 95, cat: Audio/Lossless, desc: "Классическая музыка"} - - {id: 96, cat: Audio/Lossless, desc: "Рок-музыка"} - - {id: 103, cat: Audio/Lossless, desc: "Электронная музыка"} - - {id: 106, cat: Audio/Lossless, desc: "Этническая музыка (Фольклор)"} - - {id: 107, cat: Audio/Lossless, desc: "Рэп, Хип-Хоп, R'n'B"} - - {id: 108, cat: Audio/Lossless, desc: "NewAge, Relax"} - - {id: 109, cat: Audio/Lossless, desc: "Шансон, Авторская и Военная песня"} - - {id: 110, cat: Audio/Lossless, desc: "Музыка других жанров"} - - {id: 111, cat: Audio/Lossless, desc: "Саундтреки, Караоке и Минусовки"} - - {id: 123, cat: Audio/Lossless, desc: "Мюзиклы и рок-оперы"} - # Games - - {id: 3, cat: PC/Games, desc: "Игры"} - - {id: 23, cat: PC/Games, desc: "PC"} - - {id: 24, cat: Console/XBox, desc: "XBox"} - - {id: 25, cat: Console/XBox 360, desc: "XBox360"} - - {id: 26, cat: Console/PS3, desc: "PS2"} - - {id: 27, cat: Console/PS3, desc: "PS3"} - - {id: 28, cat: Console/PS Vita, desc: "PSP, PSVita"} - - {id: 29, cat: Console/PS4, desc: "PS4"} - - {id: 32, cat: PC/Games, desc: "Другие"} - # Software - - {id: 7, cat: PC/0day, desc: "Софт"} - - {id: 33, cat: PC/ISO, desc: "ОС"} - - {id: 34, cat: PC/0day, desc: "Офисные приложения"} - - {id: 35, cat: PC/0day, desc: "Мультимедиа"} - - {id: 36, cat: PC/0day, desc: "Web & программирование"} - - {id: 37, cat: PC/0day, desc: "Системы проектирования и моделирования"} - - {id: 38, cat: PC/0day, desc: "Бизнес-системы"} - - {id: 39, cat: PC/0day, desc: "Графика и 3D"} - - {id: 41, cat: PC/0day, desc: "Интернет и Безопасность"} - - {id: 42, cat: PC/0day, desc: "Утилиты"} - - {id: 43, cat: PC/0day, desc: "Драйвера"} - - {id: 124, cat: PC, desc: "Обучающие курсы"} - - {id: 117, cat: PC, desc: "Другое"} - # Cartoons - - {id: 5, cat: Movies/Other, desc: "Мультфильмы"} - - {id: 53, cat: Movies/Other, desc: "Полнометражные"} - - {id: 54, cat: Movies/Other, desc: "Короткометражные"} - - {id: 130, cat: TV/Other, desc: "Сериалы"} - - {id: 56, cat: Movies/Other, desc: "Другие"} - # Anime - - {id: 131, cat: TV/Anime, desc: "Аниме"} - - {id: 4, cat: Movies/Other, desc: "Основной"} - - {id: 132, cat: TV/Anime, desc: "Основной (DVD/HD/BD)"} - - {id: 133, cat: TV/Anime, desc: "Сериалы (OAV/OVA/ONA)"} - - {id: 134, cat: TV/Anime, desc: "Сериалы (OAV/OVA/ONA)(DVD/HD/BD)"} - - {id: 147, cat: TV/Anime, desc: "Аниме без русской озвучки"} - - {id: 135, cat: TV/Anime, desc: "Клипы (AMV)"} - - {id: 61, cat: Books/Comics, desc: "Манга, картинки и прочее"} - - {id: 136, cat: Audio, desc: "OST"} - # Books - - {id: 6, cat: Books, desc: "Книги"} - - {id: 44, cat: Books/EBook, desc: "Художественные"} - - {id: 45, cat: Books/Technical, desc: "Научно-популярные"} - - {id: 46, cat: Books/Technical, desc: "Обучающие"} - - {id: 47, cat: Books/Mags, desc: "Журналы"} - - {id: 48, cat: Books/Other, desc: "Другие"} - - {id: 126, cat: Books/Other, desc: "На иностранных языках"} - - {id: 92, cat: Books/Other, desc: "Ноты и музыкальная литература"} - # Audiobooks - - {id: 9, cat: Audio/Audiobook, desc: "Аудиокниги"} - - {id: 49, cat: Audio/Audiobook, desc: "Художественные"} - - {id: 50, cat: Audio/Audiobook, desc: "Научно-популярные"} - - {id: 51, cat: Audio/Audiobook, desc: "Обучающие"} - - {id: 148, cat: Audio/Audiobook, desc: "Для мобильных устройств"} - - {id: 52, cat: Audio/Audiobook, desc: "Другие"} - # Imagery - - {id: 11, cat: Other, desc: "Изображения"} - - {id: 57, cat: Other, desc: "Клипарты"} - - {id: 58, cat: Other, desc: "Обложки"} - - {id: 59, cat: Other, desc: "Обои рабочего стола"} - - {id: 60, cat: Other, desc: "Комиксы"} - - {id: 127, cat: Other, desc: "Фотографии"} - - {id: 62, cat: Other, desc: "Другие"} - # Everything for mobile - - {id: 141, cat: PC/Mobile-Other, desc: "Всё для мобильных"} - - {id: 142, cat: Movies/Other, desc: "Видео"} - - {id: 138, cat: PC/Mobile-Android, desc: "Игры Android"} - - {id: 137, cat: PC/Mobile-iOS, desc: "Игры iPhone/iPod/iPad"} - - {id: 30, cat: PC/Mobile-Other, desc: "Игры для других платформ"} - - {id: 143, cat: PC/Mobile-Android, desc: "Софт Android"} - - {id: 144, cat: PC/Mobile-iOS, desc: "Софт iPhone/iPod/iPad"} - - {id: 114, cat: PC/Mobile-Other, desc: "Софт для других платформ"} - - {id: 146, cat: PC/Mobile-Other, desc: "Рингтоны"} - # 3D видео (3D video) categories are repeats of Видео (Video) categories - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q, album, artist] - book-search: [q] - -settings: - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: name - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - -download: - infohash: - hash: - selector: tr.rknblock > td.lista - title: - selector: a[href^="/torrent/"] - attribute: title - filters: - - name: validfilename - -search: - headers: - cookie: ["gophp=gop; trololofm=test; bookcontent=0"] - paths: - # https://seedoff.zannn.top/index.php?page=ajax&active=0&options=0&recommend=0&sticky=0&period=0&options=0&order=3&by=2&pages=1 - - path: index.php - inputs: - page: ajax - search: "{{ .Keywords }}" - # 0 all, 1 active, 2 dead - active: 0 - # 0 name, 1 name & desc - options: 0 - recommend: 0 - sticky: 0 - period: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - pages: 1 - - keywordsfilters: - - name: re_replace # S01 to сезон 1 - args: ["(?i)\\bS0*(\\d+)\\b", "сезон $1"] - - name: re_replace # E02 to сери 1 - args: ["(?i)\\bE0*(\\d+)\\b", "сери $1"] - - name: re_replace # S01E02 to сезон 1 сери 2 - args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "сезон $1 сери $2"] - - error: - - selector: td.lista:contains("Поиск временно не работает") - - rows: - selector: table.lista tbody tr:has(a[href^="/torrent/"]) - - fields: - category: - selector: a[href^="/index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href^="/torrent/"] - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*(?:из|\\()\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:из|\\()\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+(?:из|\\()\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:из|\\()\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+(?:из|\\()\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*(?:из|\\()\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*(?:из|\\()\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+(?:из|\\()\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(?i)\\bКураж-Бамбей\\b", "kurazh"] - - name: re_replace - args: ["(?i)\\bКубик в Кубе\\b", "Kubik"] - - name: re_replace - args: ["(?i)\\bКравец\\b", "Kravec"] - - name: re_replace - args: ["(?i)\\bПифагор\\b", "Pifagor"] - - name: re_replace - args: ["(?i)\\bНевафильм\\b", "Nevafilm"] - - name: re_replace - args: ["(?i)\\bЛицензия\\b", "Lic"] - - name: re_replace - args: ["(?i)\\bселезень\\b", "selezen"] - - name: re_replace - args: ["(?i)\\sот\\s([\\w\\p{P}\\p{S}]+)$", "-$1"] - - name: re_replace - args: ["\\s\\|\\s(\\w{4,})$", "-$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["(.*)(Blu-Ray\\s*(?:Disc|EUR|CEE)?)\\s*(\\d+[pi])", "$1 BR-DISK $3"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: re_replace - args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a[href^="/torrent/"] - attribute: href - download: - selector: a[href^="/torrent/"] - attribute: href - poster: - selector: a[href^="/torrent/"] - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - date: - selector: td:nth-last-child(4) - filters: - # 26.04.2022 - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "dd.MM.yyyy zzz" - size: - selector: td:nth-last-child(5) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - grabs: - selector: td:nth-last-child(1) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - description: - selector: a[href^="/torrent/"] -# engine n/a diff --git a/config/prowlarr/Definitions/sextorrent.yml b/config/prowlarr/Definitions/sextorrent.yml deleted file mode 100644 index 6ae27785..00000000 --- a/config/prowlarr/Definitions/sextorrent.yml +++ /dev/null @@ -1,195 +0,0 @@ -# SexTorrent uses the Luminance code, which is based on gazelle -# ajax.php API additionally needs the auth=$authkey argument -# Because the API is e.g. missing poster images we use screen scraping instead of the generic gazelle based approach ---- -id: sextorrent -name: SexTorrent -description: "SexTorrent is a Private Torrent Tracker for 3X" -language: en-US -type: private -encoding: UTF-8 -links: - - https://sextorrent.eu/ - -caps: - categorymappings: - - {id: 63, cat: XXX, desc: "Hairy"} - - {id: 64, cat: XXX, desc: "Voyeur"} - - {id: 30, cat: XXX, desc: "Amateur"} - - {id: 29, cat: XXX, desc: "Anal"} - - {id: 27, cat: XXX, desc: "Asian"} - - {id: 26, cat: XXX, desc: "BBW"} - - {id: 44, cat: XXX, desc: "BDSM"} - - {id: 25, cat: XXX, desc: "Big Ass"} - - {id: 24, cat: XXX, desc: "Big Tits"} - - {id: 34, cat: XXX, desc: "Black"} - - {id: 66, cat: XXX, desc: "Busty"} - - {id: 23, cat: XXX, desc: "Classic"} - - {id: 33, cat: XXX, desc: "Creampie"} - - {id: 22, cat: XXX, desc: "Cumshot"} - - {id: 62, cat: XXX/DVD, desc: "DVD-R"} - - {id: 21, cat: XXX, desc: "Fetish"} - - {id: 19, cat: XXX, desc: "Gay / Bi"} - - {id: 18, cat: XXX, desc: "Hardcore"} - - {id: 32, cat: XXX, desc: "HD porn"} - - {id: 28, cat: XXX, desc: "Hentai / 3D"} - - {id: 17, cat: XXX, desc: "Homemade"} - - {id: 38, cat: XXX, desc: "Interracial"} - - {id: 48, cat: XXX, desc: "Latina"} - - {id: 16, cat: XXX, desc: "Lesbian"} - - {id: 61, cat: XXX, desc: "Lingerie"} - - {id: 56, cat: XXX/Other, desc: "Magazines"} - - {id: 60, cat: XXX/Other, desc: "Manga / Comic"} - - {id: 15, cat: XXX, desc: "Masturbation"} - - {id: 14, cat: XXX, desc: "Mature"} - - {id: 13, cat: XXX/Pack, desc: "Megapack"} - - {id: 55, cat: XXX, desc: "Milf"} - - {id: 49, cat: XXX, desc: "Natural Tits"} - - {id: 12, cat: XXX, desc: "Oral"} - - {id: 20, cat: XXX, desc: "Orgia / Gang Bang"} - - {id: 42, cat: XXX/Other, desc: "Other"} - - {id: 50, cat: XXX, desc: "Parody"} - - {id: 41, cat: XXX/WEB-DL, desc: "Paysite"} - - {id: 11, cat: XXX/ImageSet, desc: "Picture set"} - - {id: 40, cat: XXX, desc: "Piss"} - - {id: 43, cat: XXX/Other, desc: "Porn Music Videos"} - - {id: 67, cat: XXX, desc: "POV"} - - {id: 45, cat: XXX, desc: "Pregnant / Preggo"} - - {id: 57, cat: XXX, desc: "Scat/Puke"} - - {id: 10, cat: XXX, desc: "Shemale / TS"} - - {id: 51, cat: XXX/WEB-DL, desc: "Siterip"} - - {id: 52, cat: XXX, desc: "Softcore"} - - {id: 53, cat: XXX, desc: "Squirt"} - - {id: 9, cat: XXX, desc: "Straight"} - - {id: 8, cat: XXX, desc: "Tini"} - - {id: 65, cat: XXX, desc: "Virtual Reality"} - - {id: 7, cat: XXX/Other, desc: "XXX Games / Program"} - - modes: - search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: time - options: - time: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "After 4 months of no activity (no login) your account will be disabled." - -login: - path: login - method: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - cinfo: "2550|1350|24|-60" - keeplogged: 1 - selectorinputs: - token: - selector: input[name="token"] - attribute: value - error: - # invalid credentials error is added by JS, this is the IP ban error - - selector: div.thin > div > h2 - test: - path: index.php - selector: "#nav_userinfo" - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - title: "{{ .Keywords }}" - order_by: "{{ .Config.sort }}" - order_way: "{{ .Config.type }}" - action: advanced - filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - - rows: - selector: table#torrent_table > tbody > tr[class^="torrent row"]:has(a[href*="action=download"]) - - fields: - download: - selector: a[href^="/torrents.php?action=download&id="] - attribute: href - description_tags: - selector: div.tags - description: - case: - span.icon[title*="okay"]: "Verified: {{ .Result.description_tags }}" - "*": "Unverified: {{ .Result.description_tags }}" - title: - selector: a[href^="/torrents.php?id="] - category: - selector: a[href*="filter_cat"] - attribute: href - filters: - - name: regexp - args: "(\\d+)]=1" - details: - selector: a[href^="/torrents.php?id="] - attribute: href - poster: - selector: td:nth-child(2) > script - filters: - - name: regexp - args: "src=(.*?)>" - - name: re_replace - args: ["[\\\\\"]", ""] - - name: replace - args: ["/static/common/noartwork/noimage.png", ""] - files: - selector: td:nth-child(3) - date: - selector: td:nth-child(5) > span - attribute: title - # auto adjusted by site account profile - filters: - - name: dateparse - args: "MMM dd yyyy, HH:mm" - size: - selector: td:nth-child(6) - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - case: - i.unlimited_leech: 0 - i.sitewide_leech: 0 - img[alt="Freeleech"]: 0 - "*": 1 - uploadvolumefactor: - case: - span.icon[title*="DoubleSeed"]: 2 - img[alt="DoubleSeed"]: 2 - "*": 1 - minimumratio: - text: 0.5 -# luminance diff --git a/config/prowlarr/Definitions/shadowflow.yml b/config/prowlarr/Definitions/shadowflow.yml deleted file mode 100644 index 9e54ee1d..00000000 --- a/config/prowlarr/Definitions/shadowflow.yml +++ /dev/null @@ -1,168 +0,0 @@ ---- -id: shadowflow -name: Shadowflow (影) -description: "Shadowflow (影) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://shadowflow.org/ - -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: 409, cat: Other, desc: "Others/音乐"} - - {id: 406, cat: Audio/Video, desc: "Music Videos/MV"} - - {id: 408, cat: Audio, desc: "Music/音频文件"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 405, cat: TV/Anime, desc: "Animations/动画"} - - 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 Torrents per page: setting to 100 on your account profile. - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href*="usercp.php"] - -search: - paths: - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}" - # 0 incldead, 1 active, 2 dead - incldead: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30% - spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 title, 1 descr, 3 uploader, 4 imdburl - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND, 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href^="?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: img[data-src] - attribute: data-src - imdbid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="imdb.com/title/tt"] - attribute: href - doubanid: - # site currently only has a badge and rating, the id is not present. just in case a future update. - selector: a[href*="movie.douban.com/subject/"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td.rowfollow:nth-child(4) > span[title] - attribute: title - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - date_added: - # time added - selector: td.rowfollow:nth-child(4):not(:has(span)) - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss zzz" - date: - text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" - size: - selector: td.rowfollow:nth-child(5) - seeders: - selector: td.rowfollow:nth-child(6) - leechers: - selector: td.rowfollow:nth-child(7) - grabs: - selector: td.rowfollow:nth-child(8) - downloadvolumefactor: - case: - img.pro_free: 0 - img.pro_free2up: 0 - img.pro_50pctdown: 0.5 - img.pro_50pctdown2up: 0.5 - img.pro_30pctdown: 0.3 - "*": 1 - uploadvolumefactor: - case: - img.pro_50pctdown2up: 2 - img.pro_free2up: 2 - img.pro_2up: 2 - "*": 1 - minimumratio: - text: 1.0 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP diff --git a/config/prowlarr/Definitions/sharewood.yml b/config/prowlarr/Definitions/sharewood.yml deleted file mode 100644 index a5de0be4..00000000 --- a/config/prowlarr/Definitions/sharewood.yml +++ /dev/null @@ -1,218 +0,0 @@ ---- -id: sharewood -name: Sharewood -description: "sharewood is a Semi-Private FRENCH Torrent Tracker for GENERAL" -language: fr-FR -type: semi-private -encoding: UTF-8 -requestDelay: 4.1 -certificates: - - 023A091295E81813D040DFA0FA842DF9892BF0F5 # expired 10-March-2024 note: despite a new CA issued this one still pops up occasionally -links: - - https://www.sharewood.tv/ - -caps: - categorymappings: - - {id: "Films", cat: Movies, desc: "Films"} - - {id: "Films_Animations", cat: Movies, desc: "Films Animation"} - - {id: "Animes", cat: TV/Anime, desc: " Séries Animations"} - - {id: "Series", cat: TV, desc: "TV Series"} - - {id: "Documentaires", cat: TV/Documentary, desc: "TV Documentaires"} - - {id: "Emissions", cat: TV, desc: "TV Emissions"} - - {id: "Sports", cat: TV/Sport, desc: "TV Sports"} - - {id: "Spectacles", cat: TV, desc: "TV Spectacles/Concerts"} - - {id: "Karaoke_Video", cat: Audio/Video, desc: "Karaoké Vidéo"} - - {id: "Videos_Clips", cat: Audio/Video, desc: "TV Videos Clips"} - - {id: "Musiques", cat: Audio, desc: "Audio Musiques"} - - {id: "Karaoke", cat: Audio, desc: "Audio Karaoké"} - - {id: "Samples", cat: Audio, desc: "Audio Samples"} - - {id: "Podcasts", cat: Audio, desc: "Audio Podcasts"} - - {id: "AudioBooks", cat: Audio/Audiobook, desc: "Audio Books"} - - {id: "Windows", cat: PC/0day, desc: " Applications Windows"} - - {id: "APK", cat: PC/Mobile-Android, desc: " Applications Android"} - - {id: "GPS", cat: PC/Mobile-Other, desc: " Applications GPS"} - - {id: "Ebooks", cat: Books/EBook, desc: "Books Ebooks"} - - {id: "BDs", cat: Books/EBook, desc: "Books BDs"} - - {id: "Presse", cat: Books/Mags, desc: "Books Presse"} - - {id: "Mangas", cat: Books/Comics, desc: "Books Mangas"} - - {id: "Comics", cat: Books/Comics, desc: "Books Comics"} - - {id: "Nintendo", cat: Console/NDS, desc: "Jeux Nintendo"} - - {id: "Microsoft", cat: Console/XBox, desc: "Jeux Microsoft"} - - {id: "Linux", cat: PC/Games, desc: "Jeux Linux"} - - {id: "Mac", cat: PC/Games, desc: "Jeux Mac"} - - {id: "Retro", cat: PC/Games, desc: "Jeux Vidéos"} - - {id: "Sony", cat: Console/PSP, desc: "Jeux Sony"} - - {id: "Smartphone_Tablette", cat: Console, desc: "Jeux Smartphone/Tablette"} - - {id: "Retrogaming_Emulation", cat: Console, desc: "Jeux Rétrogaming & Emulation"} - - {id: "Formations", cat: Other, desc: "Formations"} - - {id: "Formations_Video", cat: Other, desc: "Formations Video"} - - {id: "Formations_Logiciels", cat: Other, desc: "Formations Logiciels"} - - {id: "Films_X", cat: XXX, desc: "XXX"} - - {id: "Ebooks_X", cat: XXX, desc: "XXX"} - - {id: "Hentai", cat: XXX, desc: "Hentai"} - - {id: "ImagesX", cat: XXX, desc: "ImagesX"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - 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 - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: login - method: form - form: form[action$="/login"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: on - selectorinputs: - _token: - selector: input[name="_token"] - attribute: value - error: - - selector: form[action$="/login"] .text-red - - selector: h1:contains("503 Service Temporarily Unavailable") -# test: -# path: / -# selector: a[href$="/logout"] - -search: - paths: - - path: filterTorrents - inputs: - search: "{{ .Keywords }}" - sorting: "{{ .Config.sort }}" - direction: "{{ .Config.type }}" - qty: 100 - freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - - keywordsfilters: - - name: re_replace - args: ["[\\:\\-\\/\\|\\(\\)]+", " "] - - rows: - selector: div.table-responsive-line - - fields: - category: - selector: img.torrent-icon - attribute: src - filters: - - name: regexp - args: "/img/NewIcones/(.+?).png" - title_phase1: - selector: a.view-torrent - 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 }}" - download: - selector: a.view-torrent - attribute: href - filters: - - name: replace - args: ["/torrents/", "/download/"] - details: - selector: a.view-torrent - attribute: href - size: - selector: div.col-detail div.row div:nth-child(2) - seeders: - selector: div.bouton-s - leechers: - selector: div.bouton-l - grabs: - selector: div.bouton-c - date: - selector: div.col-detail div.row div span - filters: - - name: replace - args: ["il y a ", ""] - - name: replace - args: ["seconde", "second"] - - name: replace - args: ["heure", "hour"] - - name: replace - args: ["jour", "day"] - - name: replace - args: ["semaine", "week"] - - name: replace - args: ["mois", "month"] - - name: replace - args: ["an", "year"] - - name: append - args: " ago" - downloadvolumefactor: - case: - "span.badge-extra:contains('Freeleech')": 0 - "*": 1 - uploadvolumefactor: - case: - "span.badge-extra:contains('Double Upload')": 2 - "*": 1 - minimumratio: - text: 0.75 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# UNIT3D diff --git a/config/prowlarr/Definitions/sharkpt.yml b/config/prowlarr/Definitions/sharkpt.yml deleted file mode 100644 index d18af8bd..00000000 --- a/config/prowlarr/Definitions/sharkpt.yml +++ /dev/null @@ -1,179 +0,0 @@ ---- -id: sharkpt -name: SharkPT -description: "SharkPT is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://sharkpt.net/ - -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/Video, desc: "MusicVideo/音乐视频"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 408, cat: Audio, desc: "Music/HQ Audio"} - - {id: 409, cat: Other, desc: "Misc/其他"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the 1ptbar 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
  1. Extreme User and above will be retained forever
  2. Users with a parked account will be banned if they do not log in for 365 consecutive days
  3. Users with a non-parked account will be banned if they do not log in for 180 consecutive days
  4. Users with no traffic (that is, upload/download data are both 0) will be banned if they do not log in for 10 consecutive days.
" - -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: shark-icon-button[onclick*="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 (4 does not appear to work) - 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: div.torrent-item - - fields: - category: - selector: div.torrent-category - case: - img[src$="movies64.png"]: 401 - img[src$="tvseries64.png"]: 402 - img[src$="tvshows64.png"]: 403 - img[src$="doc64.png"]: 404 - img[src$="anime64.png"]: 405 - img[src$="mv64.png"]: 406 - img[src$="sports64.png"]: 407 - img[src$="hqaudio64.png"]: 408 - img[src$="misc64.png"]: 409 - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - _id: - selector: a[href^="details.php?id="] - attribute: href - filters: - - name: querystring - args: id - download: - text: "download.php?id={{ .Result._id }}" - imdbid: - selector: shark-tag-group[onClick*="imdb.com/title/tt"] - attribute: onClick - doubanid: - selector: shark-tag-group[onClick*="movie.douban.com/subject/"] - attribute: onClick - description: - selector: div.torrent-subtitle - date: - selector: div.torrent-when > span - attribute: title - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: div.torrent-size - seeders: - selector: div.torrent-seeders - leechers: - selector: div.torrent-leechers - grabs: - selector: div.torrent-snatches - downloadvolumefactor: - case: - "span.s-tag:contains(\"FREE\")": 0 - "span.s-tag:contains(\"50%\")": 0.5 - "span.s-tag:contains(\"30%\")": 0.3 - "*": 1 - uploadvolumefactor: - case: - "span.s-tag:contains(\"2X\")": 2 - "*": 1 - minimumseedtime: - # 7 day (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# NexusPHP Standard v1.5 Beta 4 2010-09-19 diff --git a/config/prowlarr/Definitions/simpleanime.yml b/config/prowlarr/Definitions/simpleanime.yml deleted file mode 100644 index 30586545..00000000 --- a/config/prowlarr/Definitions/simpleanime.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- -id: simpleanime -name: SimpleAnime -description: "SimpleAnime is a CHINESE Public torrent tracker for ANIME" -language: zh-CN -type: public -encoding: UTF-8 -links: - - https://www.36dm.org/ - -caps: - categories: - Anime: TV/Anime - - modes: - search: [q] - tv-search: [q, season, ep] - music-search: [q] - book-search: [q] - -settings: [] - -download: - # cant use magnet directly, generates Invalid non-ASCII or control character in header: 0x79BB - infohash: - hash: - selector: a[href^="magnet:?xt="] - attribute: href - filters: - - name: regexp - args: ([A-F|a-f|0-9]{40}) - title: - selector: h4 - filters: - - name: trim - - name: validfilename - -search: - paths: - # https://www.36dm.org/ - # https://www.36dm.org/search-gene_20ai.htm - - path: "{{ if .Keywords }}search-{{ .Keywords }}-1.htm{{ else }}/{{ end }}" - keywordsfilters: - - name: replace - args: [" ", "_20"] - - rows: - selector: ul.threadlist > li:not(:has(a[href="thread-338792.htm"])):not(:has(a[href="thread-342865.htm"])):not(:has(a[href="thread-290995.htm"])) - - fields: - category: - text: Anime - title: - selector: a[href^="thread-"] - details: - selector: a[href^="thread-"] - attribute: href - download: - selector: a[href^="thread-"] - attribute: href - date_elapsed: - selector: span.date:contains("前") - optional: true - filters: - - name: replace - args: ["秒前", " seconds ago"] - - name: replace - args: ["分钟前", " minutes ago"] - - name: replace - args: ["小时前", " hours ago"] - - name: replace - args: ["天前", " days ago"] - - name: replace - args: ["月前", " months ago"] - - name: replace - args: ["年前", " years ago"] - - name: timeago - date_added: - selector: span.date:not(:contains("前")) - optional: true - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-M-d zzz" - date: - text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}" - size: - text: 512MB - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# BBS 4.0.4 diff --git a/config/prowlarr/Definitions/skipthetrailers.yml b/config/prowlarr/Definitions/skipthetrailers.yml deleted file mode 100644 index 002f5bca..00000000 --- a/config/prowlarr/Definitions/skipthetrailers.yml +++ /dev/null @@ -1,174 +0,0 @@ ---- -id: skipthetrailers -name: SkipTheTrailers -description: "SkipTheTrailers (STT) is a Private Torrent Tracker for MOVIES" -language: en-US -type: private -encoding: UTF-8 -links: - - https://skipthetrailers.xyz/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your SkipTheTrailers account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Inactivity on the SkipTheTrailers web site for more than 90 days will lead to account being disabled." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# json UNIT3D 8.0.2 diff --git a/config/prowlarr/Definitions/slosoul.yml b/config/prowlarr/Definitions/slosoul.yml deleted file mode 100644 index 3980d111..00000000 --- a/config/prowlarr/Definitions/slosoul.yml +++ /dev/null @@ -1,181 +0,0 @@ ---- -id: slosoul -name: slosoul -description: "slosoul is a Slovanian Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -testlinktorrent: false -certificates: - - 1a44f7aa5a4fb9bb32a980f8e1394a6c3cf4285f # Expired 9th March 2024 -links: - - https://slosoul.net/ -legacylinks: - - http://slosoul.net/ - -caps: - categorymappings: - - {id: 5, cat: PC, desc: "Apps"} - - {id: 7, cat: Books/EBook, desc: "Ebooks"} - - {id: 6, cat: PC/Games, desc: "Games PC"} - - {id: 19, cat: Console/XBox 360, desc: "GAMES xbox360"} - - {id: 8, cat: Movies, desc: "Movies Packs"} - - {id: 1, cat: Movies/SD, desc: "Movies Divx/Xvid"} - - {id: 9, cat: Movies/DVD, desc: "Movies DVD-r"} - - {id: 17, cat: Movies/HD, desc: "Movies x.264"} - - {id: 11, cat: Movies/BluRay, desc: "Movies BluRay"} - - {id: 15, cat: Movies/HD, desc: "Movies HEVC"} - - {id: 14, cat: Audio/Lossless, desc: "Music FLAC"} - - {id: 3, cat: Audio/MP3, desc: "Music MP3"} - - {id: 13, cat: TV/Sport, desc: "TV Sport"} - - {id: 18, cat: TV, desc: "TV Packs"} - - {id: 10, cat: TV, desc: "TV Shows"} - - {id: 16, cat: TV/HD, desc: "TV Shows HEVC"} - - {id: 12, cat: Other, desc: "VIP"} - - {id: 4, cat: XXX, desc: "Porn"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "To keep records updated regularly, all inactive accounts will be deleted after 60 days of inactivity" - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: "" - error: - - selector: table:has(td.thead:contains("An error has occured!")) - test: - path: / - selector: a[href*="user-profile-"] - -download: - before: - path: takethanks.php - method: post - inputs: - torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*torrent-details-(\\d+).*\" \"$1\"}}" - selectors: - - selector: a[href*="download-torrent-"] - attribute: href - -search: - paths: - - path: browse.php - inputs: - do: search - # does not support multi categories so defaulting to ALL - category: 0 - # yes incldead, no activeonly - include_dead_torrents: yes - keywords: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: "{{ if .Query.IMDBID }}t_genre{{ else }}t_name{{ end }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # does not return imdb link in results - keywordsfilters: - - name: re_replace # replace special characters with "%" (wildcard) - args: ["[^a-zA-Z0-9]+", "%"] - - rows: - selector: "table#sortabletable tbody tr:has(a[href*=\"download-torrent-\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="torrent-category-"] - attribute: href - filters: - - name: regexp - args: (\d+) - title_default: - # is often abbreviated - selector: a[href*="torrent-details-"] - title: - # usually longer than details title - selector: div[id^="port-content-"] div - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href*="torrent-details-"] - attribute: href - download: - selector: a[href*="torrent-details-"] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - poster: - selector: div[id^="port-content-"] img - attribute: src - date: - selector: td:nth-child(2) > div:last-child - filters: - - name: regexp - args: (\d{2}-\d{2}-\d{4} \d{2}:\d{2}) - - name: append - args: " +00:00" # auto adjusted by site account profile - - name: dateparse - args: "dd-MM-yyyy HH:mm zzz" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(6) - seeders: - selector: td:nth-child(7) - leechers: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img[src$="/external.gif"]: 0 - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 -# TBD, Rules and FAQ do not cover this yet -# minimumratio: -# text: 1.0 -# minimumseedtime: -# # 2 days (as seconds = 2 x 24 x 60 x 60) -# text: 172800 -# TS Special Edition v.8.0 diff --git a/config/prowlarr/Definitions/solidtorrents.yml b/config/prowlarr/Definitions/solidtorrents.yml deleted file mode 100644 index 0488c106..00000000 --- a/config/prowlarr/Definitions/solidtorrents.yml +++ /dev/null @@ -1,186 +0,0 @@ ---- -id: solidtorrents -name: Solid Torrents -description: "Solid Torrents is a Public torrent meta-search engine" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://solidtorrents.to/ -legacylinks: - - https://solidtorrents.net/ - - https://solidtorrents.nocensor.cloud/ - - https://solidtorrents.eu/ - -caps: - categories: - AudioBook: Audio/Audiobook - eBook: Books/EBook - "Ebook/Course": Books/EBook - Games: PC/Games - "Games/PC": PC/Games - Movies: Movies - Music: Audio - "Music/Album": Audio - "Music/mp3": Audio/MP3 - "Music/Lossless": Audio/Lossless - "Music/Video": Audio/Video - Other: Other - "Other/Android": PC/Mobile-Android - "Other/Archive": Other - "Other/Audio": Audio - "Other/Database": PC - "Other/DiskImage": PC/ISO - "Other/Document": Books/Comics - "Other/Image": Other/Misc - "Other/Program": PC/0day - "Other/Sourcecode": PC - "Other/Source Code": PC - "Other/Video": TV - Softwares: PC/0day - "Softwares/Mac": PC/Mac - "Softwares/Windows": PC/0day - TV: TV - Unknown: Other - XXX: XXX - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: prefer_magnet_links - type: checkbox - label: Prefer Magnet Links - default: false - - name: sort - type: select - label: Sort requested from site - default: date - options: - date: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -search: - paths: - # https://solidtorrents.net/search?q=&sort=date&order=desc - - path: search - inputs: - q: "{{ .Keywords }}" - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - limit: 100 - page: 1 - allowEmptyInputs: true - - rows: - selector: li.search-result:has(a[class="dl-torrent"]) - - fields: - category: - selector: a.category - title: - selector: h5 a - details: - selector: h5 a - attribute: href - download_optional: - selector: a[class="dl-torrent"] - attribute: href - optional: true - download: - text: "{{ if .Config.prefer_magnet_links }}{{ else }}{{ .Result.download_optional }}{{ end }}" - optional: true - magnet: - selector: a[href^="magnet:?xt"] - attribute: href - infohash: - selector: a[href^="magnet:?xt"] - attribute: href - filters: - - name: regexp - args: ([A-F|a-f|0-9]{40}) - grabs_dot: - selector: div.stats div:has(img[alt="Download"]):contains(".") - optional: true - filters: - - name: replace - args: [".", ""] - - name: replace - args: ["K", "00"] - - name: replace - args: ["M", "00000"] - grabs_nodot: - selector: div.stats div:has(img[alt="Download"]):not(:contains(".")) - optional: true - filters: - - name: replace - args: ["K", "000"] - - name: replace - args: ["M", "000000"] - grabs: - text: "{{ if or .Result.grabs_dot .Result.grabs_nodot }}{{ or .Result.grabs_dot .Result.grabs_nodot }}{{ else }}0{{ end }}" - size: - selector: div.stats div:has(img[alt="Size"]) - seeders_dot: - selector: div.stats div:has(img[alt="Seeder"]):contains(".") - optional: true - filters: - - name: replace - args: [".", ""] - - name: replace - args: ["K", "00"] - - name: replace - args: ["M", "00000"] - seeders_nodot: - selector: div.stats div:has(img[alt="Seeder"]):not(:contains(".")) - optional: true - filters: - - name: replace - args: ["K", "000"] - - name: replace - args: ["M", "000000"] - seeders: - text: "{{ if or .Result.seeders_dot .Result.seeders_nodot }}{{ or .Result.seeders_dot .Result.seeders_nodot }}{{ else }}0{{ end }}" - leechers_dot: - selector: div.stats div:has(img[alt="Leecher"]):contains(".") - optional: true - filters: - - name: replace - args: [".", ""] - - name: replace - args: ["K", "00"] - - name: replace - args: ["M", "00000"] - leechers_nodot: - selector: div.stats div:has(img[alt="Leecher"]):not(:contains(".")) - optional: true - filters: - - name: replace - args: ["K", "000"] - - name: replace - args: ["M", "000000"] - leechers: - text: "{{ if or .Result.leechers_dot .Result.leechers_nodot }}{{ or .Result.leechers_dot .Result.leechers_nodot }}{{ else }}0{{ end }}" - date: - selector: div.stats div:has(img[alt="Date"]) - filters: - - name: dateparse - args: "MMM d, yyyy" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/speedtorrentreloaded.yml b/config/prowlarr/Definitions/speedtorrentreloaded.yml deleted file mode 100644 index b5473bc7..00000000 --- a/config/prowlarr/Definitions/speedtorrentreloaded.yml +++ /dev/null @@ -1,187 +0,0 @@ ---- -id: speedtorrentreloaded -name: SpeedTorrent Reloaded -description: "SpeedTorrent Reloaded (ST-Tracker) is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -followredirect: true -links: - - https://st-tracker.eu/ -legacylinks: - - https://speedtorrent-tracker.mine.nu/ - -caps: - categorymappings: - - {id: 47, cat: Movies/BluRay, desc: "Movies-Bluray"} - - {id: 48, cat: Movies/HD, desc: "Movies-720p"} - - {id: 49, cat: Movies/HD, desc: "Movies-1080p"} - - {id: 11, cat: Movies/DVD, desc: "Movies DVD / HD2DVD"} - - {id: 60, cat: Movies/HD, desc: "Movies-HDTV"} - - {id: 62, cat: Movies/SD, desc: "Movies-SD"} - - {id: 89, cat: Movies/UHD, desc: "Movies-4K"} - - {id: 90, cat: Movies/3D, desc: "Movies-3-D"} - - {id: 91, cat: Movies, desc: "Movies-Packs"} - - {id: 108, cat: Movies, desc: "Movies Remux"} - - {id: 32, cat: Movies, desc: "Movies"} - - {id: 14, cat: Audio/Other, desc: "Alben / Sampler / Singles"} - - {id: 36, cat: Audio/Audiobook, desc: "Hörbuch"} - - {id: 71, cat: Audio/Other, desc: "Soundtracks"} - - {id: 70, cat: Audio/Lossless, desc: "Flac"} - - {id: 72, cat: Audio, desc: "Musik-Packs"} - - {id: 93, cat: Audio/Video, desc: "Musik-Videos"} - - {id: 98, cat: Audio, desc: "Discografie"} - - {id: 18, cat: PC/0day, desc: "Appz-Sonstige"} - - {id: 28, cat: PC/0day, desc: "Windows-Programme"} - - {id: 105, cat: PC, desc: "Linux-Programme"} - - {id: 107, cat: PC, desc: "WebScripts"} - - {id: 23, cat: TV/Sport, desc: "Wrestling"} - - {id: 74, cat: TV/Sport, desc: "Fussball"} - - {id: 75, cat: TV/Sport, desc: "Formel 1"} - - {id: 16, cat: TV, desc: "Serien-Packs"} - - {id: 77, cat: TV/SD, desc: "Serien-SD"} - - {id: 78, cat: TV/HD, desc: "Serien-720p"} - - {id: 79, cat: TV/HD, desc: "Serien-1080p"} - - {id: 95, cat: TV/UHD, desc: "Serien-4K"} - - {id: 99, cat: TV/SD, desc: "Staffel-SD"} - - {id: 100, cat: TV/HD, desc: "Staffel-HD"} - - {id: 109, cat: TV/UHD, desc: "Staffel-UHD"} - - {id: 4, cat: PC/Games, desc: "PC-Games"} - - {id: 84, cat: Console/PS3, desc: "PS3/PS4"} - - {id: 84, cat: Console/PS4, desc: "PS3/PS4"} - - {id: 85, cat: Console/XBox 360, desc: "Xbox-360"} - - {id: 101, cat: PC/Games, desc: "Mac-Games"} - - {id: 104, cat: Console/NDS, desc: "Nintendo"} - - {id: 106, cat: PC/Games, desc: "Linux-Games"} - - {id: 88, cat: XXX, desc: "XXX"} - - {id: 19, cat: Books/EBook, desc: "EBooks"} - - {id: 87, cat: TV/Anime, desc: "Anime"} - - {id: 96, cat: Other, desc: "Sonstiges"} - - {id: 102, cat: Books/Mags, desc: "Zeitung/Zeitschrift"} - - {id: 113, cat: XXX/Other, desc: "Hentai"} - - {id: 111, cat: TV/Documentary, desc: "Doku-HD"} - - {id: 112, cat: TV/Documentary, desc: "Doku-SD"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: secure_code - type: password - label: "Secure Code (4 digits)" - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeds: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "All accounts up to the ultimate user that have been inactive for more than 8 weeks will be deleted!" - -login: - path: sessioncheck.php?session=1 - method: form - form: form - inputs: - take: yes - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - secure_code: "{{ .Config.secure_code }}" - error: - - selector: .main .card:contains("Login fehlgeschlagen") - message: - selector: .main .card .card-block - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: tfiles.php - inputs: - showsearch: 1 - $raw: "{{ if .Categories }}{{ range .Categories }}c{{.}}=1&{{end}}{{ else }}{{ end }}" - search: "{{ .Keywords }}" - orderby: "{{ .Config.sort }}" - sort: "{{ .Config.type }}" - # 0 active, 1 all, 2 dead - incldead: 1 - - rows: - selector: tr:has(a[href^="details.php?id="]) - - fields: - category: - selector: a[href^="tfiles.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?torrent="] - attribute: href - poster: - selector: a[href^="details.php?id="][onmouseover] - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - grabs: - selector: tr > th > span:nth-child(5) - size: - selector: tr > th > span:nth-child(2) - filters: - - name: replace - args: ["Größe: ", ""] - seeders: - selector: tr > th > span:nth-child(3) - leechers: - selector: tr > th > span:nth-child(4) - date: - selector: tr > td:nth-child(3) - filters: - - name: regexp - args: "(\\d{2}\\.\\d{2}\\.\\d{4}\\s\\d{2}:\\d{2}:\\d{2})" - - name: append - args: " +01:00" # CET - - name: replace - args: ["\xA0", " "] - - name: dateparse - args: "dd.MM.yyyy HH:mm:ss zzz" - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.7 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# D€ Source 2017 Version 1.0 diff --git a/config/prowlarr/Definitions/sporthd.yml b/config/prowlarr/Definitions/sporthd.yml deleted file mode 100644 index 36c41e8c..00000000 --- a/config/prowlarr/Definitions/sporthd.yml +++ /dev/null @@ -1,243 +0,0 @@ ---- -id: sporthd -name: SportHD -description: "SportHD is a Private Torrent Tracker for HD SPORTS" -language: en-US -type: private -encoding: UTF-8 -links: - - http://satsporthd.org/ # site does not support https ERR_CONNECTION_REFUSED -legacylinks: - - http://sporthd.org/ - -caps: - categorymappings: - - {id: 97, cat: TV/Sport, desc: "J.League"} - - {id: 83, cat: TV/Sport, desc: "AFC Champions League"} - - {id: 50, cat: TV/Sport, desc: "Australian Open"} - - {id: 32, cat: TV/Sport, desc: "Basketball"} - - {id: 85, cat: TV/Sport, desc: "Basketball Champions League"} - - {id: 87, cat: TV/Sport, desc: "Basketball Eurocup"} - - {id: 88, cat: TV/Sport, desc: "Basketball Pro A"} - - {id: 80, cat: TV/Sport, desc: "Belgian ProLeague"} - - {id: 22, cat: TV/Sport, desc: "Boxing"} - - {id: 23, cat: TV/Sport, desc: "Brasilareo Seria A"} - - {id: 54, cat: TV/Sport, desc: "Brazil League"} - - {id: 11, cat: TV/Sport, desc: "BundesLiga"} - - {id: 90, cat: TV/Sport, desc: "Bundesliga 2"} - - {id: 45, cat: TV/Sport, desc: "CAF"} - - {id: 78, cat: TV/Sport, desc: "Canadian Football League"} - - {id: 37, cat: TV/Sport, desc: "Champions Hockey League"} - - {id: 77, cat: TV/Sport, desc: "Chinese Super League"} - - {id: 74, cat: TV/Sport, desc: "CONCACAF"} - - {id: 70, cat: TV/Sport, desc: "Confederation CUP"} - - {id: 76, cat: TV/Sport, desc: "CONMEBOL"} - - {id: 46, cat: TV/Sport, desc: "Copa Americana"} - - {id: 41, cat: TV/Sport, desc: "Copa Del Rey"} - - {id: 42, cat: TV/Sport, desc: "Copa do Brasil"} - - {id: 43, cat: TV/Sport, desc: "Copa Libertadores"} - - {id: 73, cat: TV/Sport, desc: "Copa MX"} - - {id: 40, cat: TV/Sport, desc: "Coppa Italia"} - - {id: 51, cat: TV/Sport, desc: "Coupe de France"} - - {id: 79, cat: TV/Sport, desc: "cyclisme"} - - {id: 94, cat: TV/Sport, desc: "Danish Superliga"} - - {id: 39, cat: TV/Sport, desc: "DFB Pokal"} - - {id: 72, cat: TV/Sport, desc: "EFL"} - - {id: 96, cat: TV/Sport, desc: "Ekstraklasa"} - - {id: 49, cat: TV/Sport, desc: "English League Cup"} - - {id: 8, cat: TV/Sport, desc: "EPL"} - - {id: 13, cat: TV/Sport, desc: "Eredivisie"} - - {id: 2, cat: TV/Sport, desc: "EURO Cup"} - - {id: 6, cat: TV/Sport, desc: "EURO Cup Qualification"} - - {id: 66, cat: TV/Sport, desc: "Eurobasket"} - - {id: 53, cat: TV/Sport, desc: "Euroleague ULEB"} - - {id: 86, cat: TV/Sport, desc: "Europe Cup FIBA"} - - {id: 38, cat: TV/Sport, desc: "FA Cup"} - - {id: 103, cat: TV/Sport, desc: "FIBA Euro Basket"} - - {id: 59, cat: TV/Sport, desc: "FIFA U-20 World Cup"} - - {id: 69, cat: TV/Sport, desc: "FIFA World Clup Cup"} - - {id: 19, cat: TV/Sport, desc: "Football League Championship"} - - {id: 18, cat: TV/Sport, desc: "Formula 1"} - - {id: 81, cat: TV/Sport, desc: "France Ligue 2"} - - {id: 7, cat: TV/Sport, desc: "Friendly matches"} - - {id: 91, cat: TV/Sport, desc: "Greece Basket"} - - {id: 100, cat: TV/Sport, desc: "Greece Super League"} - - {id: 30, cat: TV/Sport, desc: "Handball"} - - {id: 31, cat: TV/Sport, desc: "IIHF"} - - {id: 15, cat: TV/Sport, desc: "IndyCar"} - - {id: 95, cat: TV/Sport, desc: "J Liga Japan"} - - {id: 20, cat: TV/Sport, desc: "KHL"} - - {id: 10, cat: TV/Sport, desc: "La Liga"} - - {id: 12, cat: TV/Sport, desc: "League 1"} - - {id: 89, cat: TV/Sport, desc: "liga Endesa"} - - {id: 98, cat: TV/Sport, desc: "Liga MX"} - - {id: 84, cat: TV/Sport, desc: "Liga Sudamericana"} - - {id: 21, cat: TV/Sport, desc: "Major League Soccer"} - - {id: 67, cat: TV/Sport, desc: "MLB"} - - {id: 63, cat: TV/Sport, desc: "MMA"} - - {id: 58, cat: TV/Sport, desc: "MotoGP"} - - {id: 92, cat: TV/Sport, desc: "Motorsport"} - - {id: 16, cat: TV/Sport, desc: "NBA"} - - {id: 57, cat: TV/Sport, desc: "NBA Playoffs"} - - {id: 14, cat: TV/Sport, desc: "NCAA"} - - {id: 34, cat: TV/Sport, desc: "NFL"} - - {id: 17, cat: TV/Sport, desc: "NHL"} - - {id: 99, cat: TV/Sport, desc: "NordicBet 1st division Danish"} - - {id: 36, cat: TV/Sport, desc: "Old classic games"} - - {id: 68, cat: TV/Sport, desc: "Olympic Games 2016"} - - {id: 106, cat: TV/Sport, desc: "Olympic games in tokyo 2021"} - - {id: 28, cat: TV/Sport, desc: "Other domestic leagues"} - - {id: 55, cat: TV/Sport, desc: "Paulista A1"} - - {id: 26, cat: TV/Sport, desc: "Portuguese League"} - - {id: 104, cat: TV/Sport, desc: "Qatar Stars League"} - - {id: 65, cat: TV/Sport, desc: "ROH"} - - {id: 61, cat: TV/Sport, desc: "Rollan Garros"} - - {id: 105, cat: TV/Sport, desc: "RPFL"} - - {id: 29, cat: TV/Sport, desc: "Rugby"} - - {id: 108, cat: TV/Sport, desc: "Saudi Pro League"} - - {id: 82, cat: TV/Sport, desc: "Scotland Premiership"} - - {id: 9, cat: TV/Sport, desc: "Serie A"} - - {id: 33, cat: TV/Sport, desc: "SHL"} - - {id: 47, cat: TV/Sport, desc: "Ski Jumping"} - - {id: 71, cat: TV/Sport, desc: "Snooker"} - - {id: 25, cat: TV/Sport, desc: "Sport video"} - - {id: 44, cat: TV/Sport, desc: "Sudamericana"} - - {id: 52, cat: TV/Sport, desc: "Taca Da Liga"} - - {id: 24, cat: TV/Sport, desc: "Tennis"} - - {id: 64, cat: TV/Sport, desc: "TNA"} - - {id: 56, cat: TV/Sport, desc: "Torneo Premiera A"} - - {id: 102, cat: TV/Sport, desc: "Turkish Basketball Super Leagu"} - - {id: 75, cat: TV/Sport, desc: "Turkish Super Lig"} - - {id: 3, cat: TV/Sport, desc: "UCL"} - - {id: 107, cat: TV/Sport, desc: "UEFA Conference League"} - - {id: 4, cat: TV/Sport, desc: "UEL"} - - {id: 60, cat: TV/Sport, desc: "UFC"} - - {id: 93, cat: TV/Sport, desc: "UFS"} - - {id: 35, cat: TV/Sport, desc: "Volleyball"} - - {id: 101, cat: TV/Sport, desc: "VTB United League"} - - {id: 5, cat: TV/Sport, desc: "WC Qualification"} - - {id: 1, cat: TV/Sport, desc: "World Cup"} - - {id: 27, cat: TV/Sport, desc: "World Cup 2014"} - - {id: 48, cat: TV/Sport, desc: "WWE"} - - modes: - search: [q] - tv-search: [q, season, ep] - -settings: - - name: cookie - type: text - label: Cookie - - name: info_cookie - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 2 - options: - 2: created - 4: seeders - 3: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href="logout.php"] - -download: - selectors: - - selector: a[href^="download.php?id="] - attribute: href - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" - search: "{{ .Keywords }}" - # 1 active, 2 dead, 3 free - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - # 0 match again, 1 match like - s: 0 - # 0 name, 1 description - stype: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - rows: - selector: table.embedded > tbody > tr:has(a[href^="browse.php?cat="]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - _vip: - selector: img[src="/pic/vipbig.gif"] - attribute: alt - optional: true - title: - selector: a[href^="details.php?id="] - filters: - - name: append - args: "{{ if .Result._vip }} VIP ONLY{{ else }}{{ end }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="details.php?id="] - attribute: href - filters: - - name: replace - args: ["details.php?id=", "download.php?id="] - size: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - filters: - - name: split - args: ["|", 0] - leechers: - selector: td:nth-last-child(3) - filters: - - name: split - args: ["|", 0] - date: - selector: td:nth-last-child(1) - filters: - - name: regexp - args: "^(.+?)\\d{4}" - - name: timeago - description: - selector: img[src="/pic/vipbig.gif"] - attribute: title - downloadvolumefactor: - case: - img[src="/pic/freedownload.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/sportscraze.yml b/config/prowlarr/Definitions/sportscraze.yml deleted file mode 100644 index 8a337be2..00000000 --- a/config/prowlarr/Definitions/sportscraze.yml +++ /dev/null @@ -1,215 +0,0 @@ ---- -id: sportscraze -name: SportsCraze -description: "SportsCraze (SPCRZ) is a Private Torrent Tracker for SPORT" -language: en-US -type: private -encoding: UTF-8 -links: - - https://sportscraze.xyz/ - -caps: - categorymappings: - - {id: 1, cat: TV/Sport, desc: "EPL/Cup Matches"} - - {id: 2, cat: TV/Sport, desc: "American Football"} - - {id: 3, cat: TV/Sport, desc: "AutoMotoRacing"} - - {id: 77, cat: TV/Sport, desc: "Racing"} - - {id: 6, cat: TV/Sport, desc: "Athletics"} - - {id: 4, cat: TV/Sport, desc: "Baseball"} - - {id: 7, cat: TV/Sport, desc: "Bodybuilding/Fitness"} - - {id: 8, cat: TV/Sport, desc: "Golf"} - - {id: 9, cat: TV/Sport, desc: "Boxing"} - - {id: 12, cat: TV/Sport, desc: "Gaa"} - - {id: 13, cat: TV/Sport, desc: "Cycling"} - - {id: 14, cat: TV/Sport, desc: "Documentary"} - - {id: 17, cat: TV/Sport, desc: "Basketball"} - - {id: 16, cat: TV/Sport, desc: "Extreme Sports"} - - {id: 18, cat: TV/Sport, desc: "F1/FE"} - - {id: 19, cat: TV/Sport, desc: "Gymnastics"} - - {id: 21, cat: TV/Sport, desc: "UEFA Nations League"} - - {id: 22, cat: TV/Sport, desc: "UFL"} - - {id: 23, cat: TV/Sport, desc: "Handball"} - - {id: 24, cat: TV/Sport, desc: "IceHockey"} - - {id: 25, cat: TV/Sport, desc: "International Soccer"} - - {id: 26, cat: TV/Sport, desc: "Moto GP"} - - {id: 27, cat: TV/Sport, desc: "Kick Boxing"} - - {id: 28, cat: TV/Sport, desc: "La Liga/Cups"} - - {id: 29, cat: TV/Sport, desc: "Motor Sport"} - - {id: 30, cat: TV/Sport, desc: "MMA"} - - {id: 31, cat: TV/Sport, desc: "Rugby"} - - {id: 32, cat: TV/Sport, desc: "Irish Soccer"} - - {id: 33, cat: TV/Sport, desc: "NBA"} - - {id: 34, cat: TV/Sport, desc: "MLB"} - - {id: 35, cat: TV/Sport, desc: "NCAA"} - - {id: 36, cat: TV/Sport, desc: "NFL"} - - {id: 37, cat: TV/Sport, desc: "NHL"} - - {id: 38, cat: TV/Sport, desc: "Olympic Games"} - - {id: 39, cat: TV/Sport, desc: "Seria A/Cups"} - - {id: 40, cat: TV/Sport, desc: "Snooker/Pool"} - - {id: 41, cat: TV/Sport, desc: "Swimming"} - - {id: 42, cat: TV/Sport, desc: "French Ligue 1/Cups"} - - {id: 43, cat: TV/Sport, desc: "AFL"} - - {id: 44, cat: TV/Sport, desc: "Tennis"} - - {id: 45, cat: TV/Sport, desc: "Volleyball"} - - {id: 46, cat: TV/Sport, desc: "Weightlifting"} - - {id: 47, cat: TV/Sport, desc: "Wintersport"} - - {id: 48, cat: TV/Sport, desc: "Wrestling/WWE"} - - {id: 49, cat: TV/Sport, desc: "Champions League"} - - {id: 50, cat: TV/Sport, desc: "Europa League"} - - {id: 51, cat: TV/Sport, desc: "WNBA"} - - {id: 52, cat: TV/Sport, desc: "NASCAR"} - - {id: 53, cat: TV/Sport, desc: "Bundesliga"} - - {id: 54, cat: TV/Sport, desc: "UFC"} - - {id: 55, cat: TV/Sport, desc: "Darts"} - - {id: 56, cat: TV/Sport, desc: "Cricket"} - - {id: 57, cat: TV/Sport, desc: "Hocky"} - - {id: 58, cat: TV/Sport, desc: "Uefa Con League"} - - {id: 61, cat: TV/Sport, desc: "UEFA Euros "} - - {id: 62, cat: TV/Sport, desc: "Tour De France"} - - {id: 63, cat: TV/Sport, desc: "Table Tennis"} - - {id: 64, cat: TV/Sport, desc: "Surfing"} - - {id: 65, cat: TV/Sport, desc: "Sailing"} - - {id: 66, cat: TV/Sport, desc: "Indy Car"} - - {id: 67, cat: TV/Sport, desc: "EFL"} - - {id: 68, cat: TV/Sport, desc: "Scottish Premiership"} - - {id: 74, cat: TV/Sport, desc: "Hunting"} - - {id: 69, cat: TV/Sport, desc: "Worldcup Football"} - - {id: 70, cat: TV/Sport, desc: "Dutch Eredivisie"} - - {id: 71, cat: TV/Sport, desc: "African Nations Cup"} - - {id: 72, cat: TV/Sport, desc: "Saudi Pro League"} - - {id: 73, cat: TV/Sport, desc: "Womens Soccer"} - - {id: 75, cat: Other, desc: "Music Games Books"} - - {id: 76, cat: TV/Sport, desc: "Greek Sl/Cups"} - - modes: - search: [q] - tv-search: [q, season, ep] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # https://sportscraze.xyz/index.php?page=torrents&search=&category=0&active=0 - - path: index.php - inputs: - page: torrents - search: "{{ .Keywords }}" - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 filename, 1 file&descr, 2 descr, 3 uploaders, 5 gold, 6 silver, 7 bronze, 8 1x upload multiplier, 9 2x, 10 3x, 11 4x, 12 5x, 13 6x, 14 7x, 15 8x, 16 9x, 17 10x - options: "{{ if .Config.freeleech }}5{{ else }}0{{ end }}" - # 0 all, 1 active only, 2 dead only - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: table.lista > tbody > tr:has(a[href^="download.php?id="]) - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href^="index.php?page=torrent-details&id="] - details: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - poster: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - - name: replace - args: ["torrentimg/nocover.jpg", ""] - size: - selector: td:nth-last-child(3) - date: - selector: td:nth-last-child(7) - # auto adjusted by site account profile - filters: - - name: dateparse - args: dd/MM/yyyy - seeders: - selector: td:nth-last-child(6) - leechers: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - downloadvolumefactor: - case: - img[src="images/freeleech.gif"]: 0 - img[src="images/gold.gif"]: 0 - img[src="images/silver.gif"]: 0.5 - img[src="images/bronze.gif"]: 0.75 - "*": 1 - uploadvolumefactor: - case: - img[src="images/2x.gif"]: 2 - img[src="images/3x.gif"]: 3 - img[src="images/4x.gif"]: 4 - img[src="images/5x.gif"]: 5 - img[src="images/6x.gif"]: 6 - img[src="images/7x.gif"]: 7 - img[src="images/8x.gif"]: 8 - img[src="images/9x.gif"]: 9 - img[src="images/10x.gif"]: 10 - "*": 1 - minimumseedtime: - # 14 days (as seconds = 14 x 24 x 60 x 60) - text: 1209600 -# xbtitFM v4.1.31 diff --git a/config/prowlarr/Definitions/teracod.yml b/config/prowlarr/Definitions/teracod.yml deleted file mode 100644 index e0a9ffd0..00000000 --- a/config/prowlarr/Definitions/teracod.yml +++ /dev/null @@ -1,192 +0,0 @@ ---- -id: teracod -name: teracod -description: "teracod (Movie Zone) is a HUNGARIAN Private Torrent Tracker for 0DAY / GENERAL" -language: hu-HU -type: private -encoding: UTF-8 -links: - - https://teracod.net/ -legacylinks: - - https://moviezone.ws/ - -caps: - categorymappings: - - {id: 42, cat: Movies/3D, desc: "Film/3D/Hun"} - - {id: 19, cat: Movies/SD, desc: "Film/CAM/Eng"} - - {id: 16, cat: Movies/SD, desc: "Film/CAM/Hun"} - - {id: 36, cat: Movies/DVD, desc: "Film/DVD/Eng"} - - {id: 35, cat: Movies/DVD, desc: "Film/DVD/Hun"} - - {id: 34, cat: Movies/HD, desc: "Film/HD/Eng"} - - {id: 33, cat: Movies/HD, desc: "Film/HD/Hun"} - - {id: 32, cat: Movies/SD, desc: "Film/SD/Eng"} - - {id: 31, cat: Movies/SD, desc: "Film/SD/Hun"} - - {id: 41, cat: Movies/UHD, desc: "Film/UHD/Hun"} - - {id: 28, cat: PC/Games, desc: "Játék/ISO"} - - {id: 27, cat: Console, desc: "Játék/Konzol"} - - {id: 26, cat: PC/Games, desc: "Játék/RIP"} - - {id: 25, cat: Audio/Video, desc: "Klipp"} - - {id: 24, cat: Books/EBook, desc: "Könyvek/Eng"} - - {id: 23, cat: Books/EBook, desc: "Könyvek/Hun"} - - {id: 17, cat: PC/Mobile-Other, desc: "Mobile"} - - {id: 20, cat: PC, desc: "Program/Egyéb"} - - {id: 14, cat: PC/ISO, desc: "Program/ISO"} - - {id: 13, cat: TV/SD, desc: "Sorozat/DVDR/Eng"} - - {id: 12, cat: TV/SD, desc: "Sorozat/DVDR/Hun"} - - {id: 40, cat: TV/HD, desc: "Sorozat/HD/Eng"} - - {id: 39, cat: TV/HD, desc: "Sorozat/HD/Hun"} - - {id: 38, cat: TV/SD, desc: "Sorozat/SD/Eng"} - - {id: 37, cat: TV/SD, desc: "Sorozat/SD/Hun"} - - {id: 30, cat: XXX, desc: "XXX"} - - {id: 18, cat: XXX/x264, desc: "XXX/HD"} - - {id: 15, cat: XXX/ImageSet, desc: "XXX/Képsorozatok"} - - {id: 11, cat: Audio/Lossless, desc: "Zene/EN/Lossless"} - - {id: 29, cat: Audio/Lossless, desc: "Zene/HU/Lossless"} - - {id: 22, cat: Audio/MP3, desc: "Zene/Mp3/Eng"} - - {id: 21, cat: Audio/MP3, desc: "Zene/Mp3/Hun"} - - modes: - search: [q] - tv-search: [q, season, ep, genre] - movie-search: [q, genre] - music-search: [q, genre] - book-search: [q, genre] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Inactive users registered more than 6 weeks ago with a low ratio (below 0.4) will be deleted after a while. The conditions for the actual cancellation are always decided by the Staff." - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - returnto: / - error: - - selector: table.browse:contains("hiba") - test: - path: / - selector: a[href$="../logout.php"] - -search: - paths: - # https://teracod.net/browse.php?search=&cat=0&genre=0&incldead=1&blah=0 - - path: browse.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 all, 2 dead, 3 recomended, 4 double, 5 free, 6 MZ releases, 7 Race torrents - # note: option 4 and 5 do not actually filter. everything is returned. - incldead: "{{ if .Config.freeleech }}5{{ else }}1{{ end }}" - genre: "{{ .Query.Genre }}" - # 0 name, 1 descr, 2 both - blah: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - # does not support imdbid search - - rows: - selector: table > tbody > tr.sh1:has(a[href*="/download.php/"]), table > tbody > tr.sor:has(a[href*="/download.php/"]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - attribute: title - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href*="/download.php/"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - poster: - selector: a[onmouseover] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.+?)>" - files: - selector: td:nth-last-child(8) - date: - selector: td:nth-last-child(6) - filters: - - name: regexp - args: (\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2}) - - name: replace - args: ["\xA0", " "] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td:nth-last-child(5) > u - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - downloadvolumefactor: - case: - "font[color=\"#AF0000\"]:contains(\"x0\")": 0 - "*": 1 - uploadvolumefactor: - case: - "font[color=\"#2A821E\"]:contains(\"x2\")": 2 - "*": 1 - genre: - selector: td.torrent:nth-child(2) - filters: - - name: regexp - args: "\\((.+?)\\)" - description: - case: - img[src="pic/yes.gif"]: "Verified: {{ .Result.genre }}" - "*": "Unverified: {{ .Result.genre }}" - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# engine n/a diff --git a/config/prowlarr/Definitions/tgay.yml b/config/prowlarr/Definitions/tgay.yml deleted file mode 100644 index 1c1238ef..00000000 --- a/config/prowlarr/Definitions/tgay.yml +++ /dev/null @@ -1,269 +0,0 @@ ---- -id: tgay -name: TGay -description: "TGay is a RUSSIAN Private Torrent Tracker for LGBTQ MOVIES / TV / GENERAL" -language: ru-RU -type: private -encoding: UTF-8 -links: - - https://tgay.pro/ - -caps: - categorymappings: - # Кино и ТВ - - {id: 38, cat: Movies, desc: "Полнометражные гей-фильмы"} - - {id: 39, cat: Movies, desc: "Короткий метр"} - - {id: 41, cat: Movies/HD, desc: "Гей-фильмы в высоком качестве"} - - {id: 40, cat: Movies, desc: "Гей-мюзиклы и театральные постановки"} - - {id: 16, cat: Movies, desc: "Арт-хаус и авторское кино"} - - {id: 45, cat: Movies, desc: "Арт-хаус полнометражные гей-фильмы"} - - {id: 44, cat: Movies, desc: "Арт-хаус короткий метр"} - - {id: 43, cat: Movies/HD, desc: "Арт-хаус в высоком качестве"} - - {id: 17, cat: TV/Documentary, desc: "Документальные фильмы и телепередачи"} - - {id: 47, cat: TV/Documentary, desc: "Отечественные документальные фильмы и телепередачи"} - - {id: 46, cat: TV/Documentary, desc: "Зарубежные документальные фильмы и передачи"} - - {id: 18, cat: TV, desc: "Сериалы"} - - {id: 51, cat: TV, desc: "ЛГБТ-сериалы"} - - {id: 50, cat: TV, desc: "ЛГБТ-минисериалы"} - - {id: 49, cat: TV/HD, desc: "ЛГБТ-сериалы в высоком качестве"} - - {id: 48, cat: TV, desc: "Не тематические сериалы"} - - {id: 19, cat: Movies, desc: "Разное интересное кино"} - - {id: 56, cat: Movies, desc: "Лесби- и транс-фильмы"} - - {id: 55, cat: Movies, desc: "Не тематические художественные фильмы"} - - {id: 75, cat: Movies, desc: "Мюзиклы и театральные постановки"} - - {id: 54, cat: TV/Documentary, desc: "Не тематические документальные фильмы"} - - {id: 53, cat: Movies, desc: "Разное интересное кино короткий метр"} - - {id: 52, cat: Movies/HD, desc: "Разное интересное кино в высоком качестве"} - - {id: 20, cat: Movies/Foreign, desc: "Фильмы без русского перевода"} - - {id: 62, cat: Movies/Foreign, desc: "Художественные гей-фильмы без перевода"} - - {id: 61, cat: TV/Foreign, desc: "Документальные гей-фильмы и передачи без перевода"} - - {id: 60, cat: Movies/Foreign, desc: "Фильмы без перевода в высоком качестве"} - - {id: 59, cat: Movies/Foreign, desc: "Короткий метр без перевода"} - - {id: 58, cat: TV/Foreign, desc: "Гей-сериалы без перевода"} - - {id: 57, cat: Movies/Foreign, desc: "Дополнительные материалы без перевода"} - - {id: 22, cat: Movies/Other, desc: "Мультфильмы"} - - {id: 21, cat: Movies/Other, desc: "Дополнительные материалы к фильмам"} - # Музыка - - {id: 23, cat: Audio, desc: "Аудио"} - - {id: 24, cat: Audio/Video, desc: "Музыкальное видео"} - # Книги - - {id: 25, cat: Books, desc: "Печатные книги и журналы"} - - {id: 26, cat: Audio/Audiobook, desc: "Аудиокниги"} - # Игры - - {id: 27, cat: PC/Games, desc: "Гей-игры"} - - {id: 28, cat: PC/Games, desc: "Не тематические игры"} - # Знакомства - - {id: 65, cat: Other, desc: "Анкеты для знакомств"} - # Служебный форум - # - {id: 37, cat: Other, desc: "Песочница"} - # - {id: 63, cat: Other, desc: "test Гей-фильмы"} - # - {id: 76, cat: Other, desc: "test Мюзиклы и театральные постановки"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: freeleech_50 - type: checkbox - label: Search freeleech and 50% freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 1 - options: - 1: created - 10: seeders - 7: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - -login: - path: login.php - method: post - inputs: - redirect: index.php - login_username: "{{ .Config.username }}" - login_password: "{{ .Config.password }}" - autologin: on - login: "Log in" - error: - - selector: div.msg - test: - path: index.php - selector: a[href="./login.php?logout=1"] - -search: - paths: - - path: tracker.php - inputs: - $raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}" - prev_allw: 1 - prev_a: 0 - prev_dla: 0 - prev_dlc: 0 - prev_dld: 0 - prev_dlw: 0 - prev_my: 0 - prev_new: 0 - prev_sd: 0 - prev_da: 1 - prev_dc: 0 - prev_df: 1 - prev_ds: 0 - prev_tor_type: 0 - # sort by 1=registered 2=topicTitle 4=completed 10=seed 11=leech 12=up 13=down 5=replies 6=views 7=size 8=lastPost 9=seedLastSeen - o: "{{ .Config.sort }}" - # 1=asc 2=desc - s: "{{ .Config.type }}" - # show category - dc: 0 - # show forum - df: 1 - # show author - da: 1 - # show speed - ds: 0 - # -1=all time - tm: -1 - # seed not seen -1=disregard - sns: -1 - # group releases -1=not selected - srg: -1 - nm: "{{ .Keywords }}" - # search by partial word - allw: 0 - tor_type: "{{ if .Config.freeleech_50 }}1{{ else }}{{ end }}" - - keywordsfilters: - - name: diacritics - args: replace - - name: re_replace # S01 to сезон 1 - args: ["(?i)\\bS0*(\\d+)\\b", "сезон $1"] - - name: re_replace # E02 to сери 1 - args: ["(?i)\\bE0*(\\d+)\\b", "сери $1"] - - name: re_replace # S01E02 to сезон 1 сери 2 - args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "сезон $1 сери $2"] - - rows: - selector: tr[id^="tor_"]:has(a[href^="magnet:?xt="]) - - fields: - category: - selector: a[href^="tracker.php?f="] - attribute: href - filters: - - name: querystring - args: f - title: - selector: a[href^="./viewtopic.php?t="] - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: re_replace - args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a[href^="./viewtopic.php?t="] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - size: - selector: td:nth-child(6) > u - seeders: - selector: td.seedmed > b - leechers: - selector: td.leechmed > b - grabs: - selector: td:nth-child(9) - date: - selector: td:last-child > u - downloadvolumefactor: - case: - img[src="styles/images/tor_gold.gif"]: 0 - img[src="styles/images/tor_silver.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - text: 1 - description_verified: - case: - span.tor-approved: "Verified:" - span.tor-not-approved: "Unverified:" - description: - selector: a[href^="./viewtopic.php?t="] - filters: - - name: prepend - args: "{{ .Result.description_verified }} " -# TorrentPier II diff --git a/config/prowlarr/Definitions/theleachzone.yml b/config/prowlarr/Definitions/theleachzone.yml deleted file mode 100644 index 4fb3064d..00000000 --- a/config/prowlarr/Definitions/theleachzone.yml +++ /dev/null @@ -1,188 +0,0 @@ ---- -id: theleachzone -name: TheLeachZone -description: "The Leach Zone (TLZ) is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://tlz.digital/ - -caps: - categorymappings: - - {id: 21, cat: PC, desc: "Appz"} - - {id: 35, cat: Books/Comics, desc: "Comics/Mags"} - - {id: 27, cat: Books/EBook, desc: "E-Books"} - - {id: 28, cat: Console, desc: "Games/Console"} - - {id: 22, cat: PC/Games, desc: "Games"} - - {id: 33, cat: PC/Games, desc: "Games/PC"} - - {id: 23, cat: Other, desc: "Misc"} - - {id: 26, cat: Movies/SD, desc: "Movies/Cam"} - - {id: 36, cat: Movies/Foreign, desc: "Movies/Foreign"} - - {id: 11, cat: Movies/HD, desc: "Movies/HD"} - - {id: 3, cat: Movies, desc: "Movies/Packs"} - - {id: 24, cat: Movies/SD, desc: "Movies/SD"} - - {id: 30, cat: Movies/UHD, desc: "Movies/UHD"} - - {id: 37, cat: Movies/WEB-DL, desc: "Movies/Web-DL"} - - {id: 20, cat: Audio/Lossless, desc: "Music/FLAC"} - - {id: 4, cat: Audio/MP3, desc: "Music/MP3"} - - {id: 17, cat: Audio, desc: "Music/Packs"} - - {id: 34, cat: Audio/Video, desc: "Music/Video"} - - {id: 31, cat: TV/Anime, desc: "TV/Anime"} - - {id: 18, cat: TV/HD, desc: "TV/HD"} - - {id: 16, cat: TV, desc: "TV/Packs"} - - {id: 19, cat: TV/SD, desc: "TV/SD"} - - {id: 29, cat: TV/UHD, desc: "TV/UHD"} - - modes: - search: [q] - tv-search: [q, season, ep, genre] - movie-search: [q, genre] - music-search: [q, genre] - book-search: [q, genre] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 4 - options: - 4: created - 7: seeders - 5: size - 1: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Accounts inactive for more than 42 days are automatically deleted." - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - use_ssl: 1 - perm_ssl: "" - returnto: / - error: - - selector: table.main:contains("Login failed!") - message: - selector: table tr td.colhead2 - test: - path: / - selector: a[href*="logout.php?hash_please="] - -search: - paths: - # https://tlz.digital/browse.php?c21=1&c22=1&c23=1&search=&searchin=title&incldead=0&sort=4&type=desc - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.Genre }}{{ .Query.Genre }} {{ else }}{{ end }}{{ .Keywords }}" - # title, descr, genre, all - searchin: "{{ if .Query.Genre }}all{{ else }}title{{ end }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - - keywordsfilters: - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: table.table-bordered tr:has(a[href^="download.php?torrent="]) - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: "Tip\\('(.+?)" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?torrent="] - attribute: href - poster: - selector: a[href^="details.php?id="] - attribute: onmouseover - filters: - - name: regexp - args: src=\\'(.+?)\\' - - name: replace - args: ["./pic/noposter.png", ""] - genre: - selector: i - description: - text: "{{ .Result.genre }}" - files: - selector: td:nth-child(5) - date_day: - selector: td:nth-child(7):contains("day") - # auto adjusted by site account profile - optional: true - filters: - - name: fuzzytime - date_year: - selector: td:nth-child(7):not(:contains("day")) - # auto adjusted by site account profile - optional: true - filters: - - name: dateparse - args: "MMM d yyyy hh:mm tt" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - size: - selector: td:nth-child(8) - grabs: - selector: td:nth-child(9) - seeders: - selector: td:nth-child(10) - leechers: - selector: td:nth-child(11) - downloadvolumefactor: - case: - "a.info:contains(\"[FREE]\")": 0 - "a.info:contains(\"[SILVER]\")": 0.5 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# U-232 V5 diff --git a/config/prowlarr/Definitions/thepiratedship.yml b/config/prowlarr/Definitions/thepiratedship.yml deleted file mode 100644 index 45f99c30..00000000 --- a/config/prowlarr/Definitions/thepiratedship.yml +++ /dev/null @@ -1,175 +0,0 @@ ---- -id: thepiratedship -name: ThePiratedShip -description: "ThePiratedShip is a Private Torrent Tracker for MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://thepiratedship.co.uk/ - -caps: - categorymappings: -# - {id: 8, cat: Movies/Other, desc: "Torrent Releases"} -# - {id: 32, cat: Movies, desc: "Movies"} - - {id: 10, cat: Movies/SD, desc: "Cams TS & TC/PPV/VOD/HDTV *Ratio Free*"} - - {id: 11, cat: Movies/SD, desc: "Screeners/R3/R5/R6/HDRip/Webrip/WEB-DL/Recodes"} - - {id: 13, cat: Movies/HD, desc: "DVDRip/BRRip/BDRip"} - - {id: 14, cat: Movies/DVD, desc: "DVDR"} - - {id: 15, cat: Movies/UHD, desc: "High Definition MKV/MP4"} - - {id: 16, cat: Movies/UHD, desc: "4k Ultra High Definition *Ratio Free*"} - - {id: 107, cat: Movies, desc: "Boxsets"} - - {id: 17, cat: Movies/Other, desc: "Movies Requests"} -# - {id: 20, cat: TV, desc: "TV Shows"} - - {id: 21, cat: TV, desc: "Sci-Fi / Supernatural / Horror"} - - {id: 22, cat: TV, desc: "Comedy"} - - {id: 23, cat: TV, desc: "Action/Adventure"} - - {id: 24, cat: TV, desc: "Drama"} - - {id: 25, cat: TV/Documentary, desc: "Documentaries"} - - {id: 26, cat: TV, desc: "Cartoons/Animation"} - - {id: 27, cat: TV/Sport, desc: "Sport TV"} - - {id: 28, cat: TV/Other, desc: "Misc TV"} - - {id: 29, cat: TV/Other, desc: "TV Shows Requests"} -# - {id: 33, cat: Audio, desc: "Music"} - - {id: 34, cat: Audio, desc: "Rock/Heavy Metal/Alternative"} - - {id: 38, cat: Audio, desc: "Album & Singles Packs"} - - {id: 35, cat: Audio, desc: "Singles"} - - {id: 36, cat: Audio, desc: "Pop albums"} - - {id: 37, cat: Audio, desc: "Trance/Dance/House"} - - {id: 39, cat: Audio, desc: "Drum & Bass/Breakbeat/Garage/Hardcore"} - - {id: 40, cat: Audio, desc: "Golden Oldies/Easy Listening"} - - {id: 41, cat: Audio, desc: "Reggae/DUB/SKA/2 Tone"} - - {id: 42, cat: Audio, desc: "Hip-Hop/RnB/Soul"} - - {id: 43, cat: Audio, desc: "Country/Folk"} - - {id: 44, cat: Audio, desc: "Jazz 'n' Blues"} - - {id: 45, cat: Audio, desc: "Classical"} - - {id: 46, cat: Audio, desc: "Soundtracks"} - - {id: 47, cat: Audio, desc: "Amateur Creations/Live DJ Sets etc/Karaoke"} - - {id: 48, cat: Audio/Video, desc: "Music DVD & Videos"} - - {id: 49, cat: Audio, desc: "Misc/Compilation albums"} - - {id: 50, cat: Audio/Lossless, desc: "Lossless Format Albums"} -# - {id: 54, cat: PC/Games, desc: "Games"} - - {id: 55, cat: PC/Games, desc: "PC Games"} - - {id: 56, cat: Console/XBox, desc: "X BOX"} - - {id: 57, cat: Console/Other, desc: "Nintendo Switch"} - - {id: 58, cat: Console/PS3, desc: "Playstation"} - - {id: 59, cat: Console/PSP, desc: "SONY PSP"} - - {id: 60, cat: Console/NDS, desc: "Nintendo DS"} - - {id: 61, cat: PC/Games, desc: "DVDR Interactive Games & Quizzes"} - - {id: 62, cat: PC/Mac, desc: "Mac & Other OS Games"} - - {id: 63, cat: Console/Other, desc: "All Other Console Roms & Emulators"} -# - {id: 67, cat: PC, desc: "Applications"} - - {id: 68, cat: PC, desc: "Artistry"} - - {id: 69, cat: PC, desc: "Internet & Web"} - - {id: 70, cat: PC, desc: "Utilities"} - - {id: 71, cat: PC, desc: "Sound & Vision"} - - {id: 72, cat: PC, desc: "Misc Applications"} - - {id: 73, cat: PC, desc: "Windows Operating Systems & MS Apps"} - - {id: 74, cat: PC, desc: "Applications Requests"} -# - {id: 97, cat: Other, desc: "Comics/Books/eBooks"} - - {id: 100, cat: Books/Comics, desc: "Comics/Magazines"} - - {id: 99, cat: Books/EBook, desc: "E Books"} - - {id: 98, cat: Audio/Audiobook, desc: "Audio Books"} - - {id: 109, cat: PC/Mobile-Other, desc: "Phone Applications"} - - {id: 103, cat: Other, desc: "Inactive Torrents"} -# - {id: 78, cat: Other, desc: "Practice Area"} - - {id: 89, cat: Other, desc: "Test"} - # undocumented - - {id: 96, cat: Movies, desc: "Animation Releases"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: info_activity - type: info - label: Account Inactivity - default: "You must login at least once a month. Also, not downloading anything is considered being inactive (except if you're an uploader or VIP). Accounts that are inactive for 30 days are deleted unless you have told staff in advance." - -login: - path: index.php - method: form - form: form - inputs: - login: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: 1 - _xfRedirect: "" - selectorinputs: - _xfToken: - selector: input[name="_xfToken"] - attribute: value - error: - - selector: div.blockMessage--error:contains(" not be found") - - selector: div.blockMessage--error:contains("Incorrect password") - test: - path: index.php - selector: a[href="/index.php?account/preferences"] - -search: - paths: - # supports only single cat search, so defaulting to all - - path: "index.php?torrents/&freeleech={{ if .Config.freeleech }}1{{ else }}{{ end }}&filename={{ .Keywords }}" - # imdb and tmdb not supported - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: table.dataList-table > tbody.normal-torrents > tr - - fields: - category: - selector: a[href^="/index.php?forums/"] - attribute: href - filters: - - name: regexp - args: (\d+)/$ - title: - selector: div.structItem-title a - details: - selector: li.structItem-startDate a - attribute: href - download: - selector: a[href^="/index.php?attachments/"] - attribute: href - description: - selector: a[href^="/index.php?forums/"] - date: - selector: time - attribute: datetime - size: - selector: td:nth-last-child(4) - grabs: - selector: td:nth-last-child(3) - seeders: - selector: td:nth-last-child(2) - leechers: - selector: td:nth-last-child(1) - downloadvolumefactor: - case: - span.label--accent: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 day (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# XenForo diff --git a/config/prowlarr/Definitions/therarbg.yml b/config/prowlarr/Definitions/therarbg.yml deleted file mode 100644 index 6aa56822..00000000 --- a/config/prowlarr/Definitions/therarbg.yml +++ /dev/null @@ -1,111 +0,0 @@ ---- -id: therarbg -name: TheRARBG -description: "TheRARBG is a Public site inspired by RARBG.to for MOVIES / TV / GENERAL" -language: en-US -type: public -encoding: UTF-8 -links: - - https://therarbg.to/ - - https://therarbg.com/ - - https://therar.site/ - - https://rarbg.unblockninja.com/ - - https://rarbg.ninjaproxy1.com/ - - https://rarbg.proxyninja.org/ - - https://rarbg.proxyninja.net/ - - https://rarbg.torrentbay.st/ - - https://rarbg.torrentsbay.org/ -legacylinks: - - https://t-rb.org/ - - https://the.rarbg.club/ - - https://trb.archivebay.online/ - - https://trb.t-pb.org/ - - https://trb.themirror.wiki/ - - https://torrentlite.org/ # fork, dead - -caps: - categorymappings: - - {id: Movies, cat: Movies, desc: "Movies"} - - {id: TV, cat: TV, desc: "TV"} - - {id: Games, cat: PC/Games, desc: "Games"} - - {id: Music, cat: Audio, desc: "Music"} - - {id: Anime, cat: TV/Anime, desc: "Anime"} - - {id: Documentaries, cat: TV/Documentary, desc: "Documentaries"} - - {id: Apps, cat: PC/0day, desc: "Apps"} - - {id: Other, cat: Other, desc: "Other"} - - {id: Books, cat: Books, desc: "Books"} - - {id: XXX, cat: XXX, desc: "XXX"} - - {id: TV shows, cat: TV, desc: "TV shows"} - - {id: E-books, cat: Books/EBook, desc: "E-books"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site - default: -a - options: - -a: created desc - a: created asc - -se: seeders desc - se: seeders asc - -s: size desc - s: size asc - -search: - paths: - - path: "get-posts/order:{{ .Config.sort }}{{ range .Categories }}:category:{{.}}{{end}}{{ if or .Query.IMDBID .Keywords }}:keywords:{{ or .Query.IMDBID .Keywords }}{{ else }}:time:10D{{ end }}:paginate_by:100:format:json/" - response: - type: json - - keywordsfilters: - - name: re_replace - args: ["\\W+", " "] - - name: trim - - rows: - selector: results - - fields: - category: - selector: c - title: - selector: n - _id: - selector: pk - details_url: - selector: n - filters: - - name: tolower - - name: re_replace - args: [" ", "-"] - details: - text: "/post-detail/{{ .Result._id }}/{{ .Result.details_url }}/" - infohash: - selector: h - poster: - selector: t - imdbid: - selector: i - filters: - - name: replace - args: ["B", ""] - date: - selector: a - size: - selector: s - seeders: - selector: se - leechers: - selector: le - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# json diff --git a/config/prowlarr/Definitions/therebels-api.yml b/config/prowlarr/Definitions/therebels-api.yml deleted file mode 100644 index f383a6fe..00000000 --- a/config/prowlarr/Definitions/therebels-api.yml +++ /dev/null @@ -1,183 +0,0 @@ ---- -id: therebels-api -name: TheRebels (API) -description: "TheRebels is a BRAZILIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: pt-BR -type: private -encoding: UTF-8 -links: - - https://therebels.tv/ - -caps: - categorymappings: - - {id: 10, cat: TV/Anime, desc: "Animes"} - - {id: 5, cat: PC, desc: "Aplicativos"} - - {id: 12, cat: Audio/Audiobook, desc: "Audiobooks"} - - {id: 7, cat: XXX, desc: "Conteúdo Adulto"} - - {id: 9, cat: Other, desc: "Cursos"} - - {id: 8, cat: Books/EBook, desc: "E-Books"} - - {id: 1, cat: Movies, desc: "Filmes"} - - {id: 4, cat: Console, desc: "Jogos"} - - {id: 11, cat: Books/Mags, desc: "Revistas"} - - {id: 2, cat: TV, desc: "Series"} - - {id: 14, cat: TV/Anime, desc: "Animes"} - - {id: 15, cat: PC, desc: "Emulador"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your TheRebels account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "Your account will be considered inactive if it goes more than 90 days without you logging into the website. After 90 days of inactivity (i.e. 180 days without logging in) it will be deleted from the tracker. Attention: The groups that suffer from inactivity are: User and Leech." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Ficção científica)", "Ficção_científica"] - - name: re_replace - args: ["(?i)(Cinema TV)", "Cinema_TV"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double -# global MR is 1.0 but torrents must be seeded for 2 days regardless of ratio -# minimumratio: -# text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# json UNIT3D 6.5.0 diff --git a/config/prowlarr/Definitions/thesceneplace.yml b/config/prowlarr/Definitions/thesceneplace.yml deleted file mode 100644 index 6eda1a89..00000000 --- a/config/prowlarr/Definitions/thesceneplace.yml +++ /dev/null @@ -1,187 +0,0 @@ ---- -id: thesceneplace -name: TheScenePlace -description: "TheScenePlace (TSP) is a Private site for TV / MOVIES / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - https://www.thesceneplace.com/ -legacylinks: - - http://www.thesceneplace.com/ # site is no longer forcing http - -caps: - categorymappings: - - {id: 13, cat: PC, desc: "Apps"} - - {id: 15, cat: TV/HD, desc: "TV x264"} - - {id: 16, cat: TV/HD, desc: "TV x265"} - - {id: 17, cat: TV/SD, desc: "TV XVID"} - - {id: 18, cat: TV, desc: "TV PACKS"} - - {id: 25, cat: TV, desc: "TV KIDS"} - - {id: 38, cat: TV/SD, desc: "TV 480p"} - - {id: 20, cat: Movies/HD, desc: "Movies x264"} - - {id: 21, cat: Movies/HD, desc: "Movies x265"} - - {id: 22, cat: Movies/SD, desc: "Movies XVID"} - - {id: 23, cat: Movies, desc: "Movies PACKS"} - - {id: 24, cat: Movies, desc: "Movies KIDS"} - - {id: 35, cat: Movies/UHD, desc: "Movies 4K/UHD"} - - {id: 36, cat: Movies/BluRay, desc: "Movies BluRay"} - - {id: 37, cat: Movies/SD, desc: "Movies 480p"} - - {id: 27, cat: Audio/MP3, desc: "Music MP3"} - - {id: 28, cat: Audio/Lossless, desc: "Music FLAC"} - - {id: 29, cat: Audio, desc: "Music PACKS"} - - {id: 34, cat: Audio, desc: "Music Karaoke "} - - {id: 30, cat: Books/EBook, desc: "eBooks"} - - {id: 32, cat: PC/Games, desc: "Games PC"} - - {id: 33, cat: Console, desc: "Games ROMS"} - - {id: 39, cat: Other, desc: "Misc"} - - 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: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: index.php - inputs: - page: torrents - search: "{{ .Keywords }}" - category: "{{ range .Categories }}{{.}};{{end}}" - # 0 filename, 1 file&descr, 2 descr, 3 uploaders, 5 gold, 6 silver, 7 bronze - options: 0 - # 0 all, 1 active only, 2 dead only - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - # does not support imdbid search and does not return imdb link in results - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: "table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details&id=\"]):has(td[width=\"30\"]){{ if .Config.freeleech }}:has(img[src=\"images/freeleech.gif\"]){{ else }}{{ end }}{{ if .Config.freeleech }}, table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details&id=\"]):has(td[width=\"30\"]):has(img[src=\"images/gold.gif\"]){{ else }}{{ end }}" - - fields: - title_torrent: - selector: a[href^="download.php?id="] - attribute: href - filters: - - name: querystring - args: f - - name: htmldecode - - name: re_replace - args: ["(?i)\\.torrent$", ""] - title_text: - selector: a[href^="index.php?page=torrent-details&id="] - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}" - poster: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.*?) " - - name: replace - args: ["torrentimg/nocover.jpg", ""] - details: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - _uploader: - selector: a[href^="index.php?page=userdetails"] - optional: true - date: - selector: td:has(a[href^="download.php?id="]) ~ td - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd/MM/yyyy" - seeders: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td - leechers: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td - grabs: - selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td - size: - selector: "td:has(a[href^=\"download.php?id=\"]) ~ td ~ td ~ td ~ td ~ td{{ if .Result._uploader }} ~ td{{ else }}{{ end }}" - downloadvolumefactor: - case: - img[src="images/freeleech.gif"]: 0 - img[src="images/gold.gif"]: 0 - img[src="images/silver.gif"]: 0.5 - img[src="images/bronze.gif"]: 0.75 - "*": 1 - uploadvolumefactor: - case: - img[src="images/2x.gif"]: 2 - img[src="images/3x.gif"]: 3 - img[src="images/4x.gif"]: 4 - img[src="images/5x.gif"]: 5 - img[src="images/6x.gif"]: 6 - img[src="images/7x.gif"]: 7 - img[src="images/8x.gif"]: 8 - img[src="images/9x.gif"]: 9 - img[src="images/10x.gif"]: 10 - "*": 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# xbtitFM v3.1.00 diff --git a/config/prowlarr/Definitions/theshinning-api.yml b/config/prowlarr/Definitions/theshinning-api.yml deleted file mode 100644 index df6ad075..00000000 --- a/config/prowlarr/Definitions/theshinning-api.yml +++ /dev/null @@ -1,178 +0,0 @@ ---- -id: theshinning-api -name: The Shinning (API) -description: "The Shinning (TsH) is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://theshinning.me/ -legacylinks: - - https://theshinning.org - - https://theshinning.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Audio, desc: "Music"} - - {id: 4, cat: Console, desc: "Game"} - - {id: 5, cat: PC, desc: "Application"} - - {id: 7, cat: TV/Sport, desc: "Wrestling"} - - {id: 8, cat: Books, desc: "Ebooks"} - - {id: 11, cat: Movies, desc: "TSH-Movie"} - - {id: 12, cat: TV, desc: "TSH-Serien"} - - {id: 13, cat: XXX, desc: "XxX"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your The Shinning account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumseedtime: - # 2.5 days (as seconds = 2.5 x 24 x 60 x 60) - text: 216000 -# json UNIT3D 6.5.0 diff --git a/config/prowlarr/Definitions/thorsland.yml b/config/prowlarr/Definitions/thorsland.yml deleted file mode 100644 index e1b2aaf7..00000000 --- a/config/prowlarr/Definitions/thorsland.yml +++ /dev/null @@ -1,316 +0,0 @@ ---- -id: thorsland -name: Thor's Land -description: "Thor's Land is a FRENCH Private site for TV / MOVIES / GENERAL" -language: fr-FR -type: private -encoding: UTF-8 -links: - - https://ethor.tk/ - -caps: - categorymappings: - # APPLICATIONS - - {id: 66, cat: PC/Mobile-Android, desc: "ANDROID"} - - {id: 68, cat: PC/Mobile-Other, desc: "HarmonyOS"} - - {id: 67, cat: PC/Mac, desc: "iOS"} - # AUTRES - - {id: 104, cat: Other, desc: "AUTRES"} - # DOCUMENTAIRES FILM - - {id: 72, cat: TV/Documentary, desc: "4K UHD"} - - {id: 70, cat: TV/Documentary, desc: "HD 1080p"} - - {id: 71, cat: TV/Documentary, desc: "HD 720p"} - - {id: 119, cat: TV/Documentary, desc: "Québec HD"} - - {id: 118, cat: TV/Documentary, desc: "Québec SD"} - - {id: 69, cat: TV/Documentary, desc: "SD"} - - {id: 78, cat: TV/Documentary, desc: "V.O.S.T. 4K"} - - {id: 77, cat: TV/Documentary, desc: "V.O.S.T. HD"} - - {id: 76, cat: TV/Documentary, desc: "V.O.S.T. SD"} - # DOCUMENTAIRES SERIES - - {id: 81, cat: TV/Documentary, desc: "PACK 4K"} - - {id: 80, cat: TV/Documentary, desc: "PACK HD"} - - {id: 121, cat: TV/Documentary, desc: "PACK HD QC"} - - {id: 79, cat: TV/Documentary, desc: "PACK SD"} - - {id: 121, cat: TV/Documentary, desc: "PACK SD QC"} - - {id: 117, cat: TV/Documentary, desc: "Québec HD"} - - {id: 116, cat: TV/Documentary, desc: "Québec SD"} - - {id: 75, cat: TV/Documentary, desc: "SÉRIES 4K"} - - {id: 74, cat: TV/Documentary, desc: "SÉRIES HD"} - - {id: 73, cat: TV/Documentary, desc: "SÉRIES SD"} - - {id: 115, cat: TV/Documentary, desc: "V.O.S.T. 4K"} - - {id: 114, cat: TV/Documentary, desc: "V.O.S.T. HD"} - - {id: 113, cat: TV/Documentary, desc: "V.O.S.T. SD"} - # FILMS - - {id: 11, cat: Movies/3D, desc: "3D"} - - {id: 12, cat: Movies/UHD, desc: "4K UHD"} - - {id: 2, cat: Movies/BluRay, desc: "BD-Rip"} - - {id: 10, cat: Movies/BluRay, desc: "Blu-Ray"} - - {id: 16, cat: Movies/DVD, desc: "DVD-R"} - - {id: 3, cat: Movies/DVD, desc: "DVD-Rip"} - - {id: 5, cat: Movies/HD, desc: "HD 1080p"} - - {id: 4, cat: Movies/HD, desc: "HD 720p"} - - {id: 7, cat: Movies/HD, desc: "mHD 1080p"} - - {id: 6, cat: Movies/HD, desc: "mHD 720p"} - - {id: 15, cat: Movies/UHD, desc: "Québec 4K"} - - {id: 14, cat: Movies/HD, desc: "Québec HD"} - - {id: 13, cat: Movies/SD, desc: "Québec SD"} - - {id: 9, cat: Movies, desc: "Remux"} - - {id: 22, cat: Movies/UHD, desc: "V.O. 4K"} - - {id: 21, cat: Movies/HD, desc: "V.O. HD"} - - {id: 20, cat: Movies/SD, desc: "V.O. SD"} - - {id: 19, cat: Movies/UHD, desc: "V.O.S.T. 4K"} - - {id: 18, cat: Movies/HD, desc: "V.O.S.T. HD"} - - {id: 17, cat: Movies/SD, desc: "V.O.S.T. SD"} - - {id: 1, cat: Movies/WEB-DL, desc: "WEB-DL"} - - {id: 8, cat: Movies/HD, desc: "x265"} - # JEUX VIDÉO - - {id: 55, cat: PC/Games, desc: "ÉMULATEURS"} - - {id: 40, cat: PC/Games, desc: "LINUX"} - - {id: 39, cat: PC/Mac, desc: "MAC"} - - {id: 45, cat: Console/3DS, desc: "3DS"} - - {id: 44, cat: Console/NDS, desc: "NDS"} - - {id: 42, cat: Console/Other, desc: "NES"} - - {id: 41, cat: Movies/Other, desc: "SWITCH"} - - {id: 38, cat: PC/Games, desc: "PC"} - - {id: 46, cat: Console/PS3, desc: "PSX"} - - {id: 47, cat: Console/PS3, desc: "PS2"} - - {id: 48, cat: Console/PS3, desc: "PS3"} - - {id: 49, cat: Console/PS4, desc: "PS4"} - - {id: 50, cat: Console/PS4, desc: "PS5"} - - {id: 56, cat: Console/Other, desc: "ROMS"} - - {id: 43, cat: Console/Other, desc: "SNES"} - - {id: 51, cat: Console/XBox, desc: "XBOX"} - - {id: 52, cat: Console/XBox 360, desc: "XBOX 360"} - - {id: 53, cat: Console/XBox One, desc: "XBOX ONE"} - - {id: 54, cat: Console/XBox, desc: "XBOX SERIES"} - # LIVRES - - {id: 96, cat: Audio/Audiobook, desc: "AUDIO"} - - {id: 98, cat: Books, desc: "B.D."} - - {id: 100, cat: Books/Comics, desc: "COMICS"} - - {id: 97, cat: Books/Mags, desc: "MAGAZINES"} - - {id: 101, cat: Books, desc: "MANGAS"} - - {id: 95, cat: Books, desc: "ROMANS"} - - {id: 99, cat: Books, desc: "JEUNESSE"} - # LOGICIELS - - {id: 65, cat: PC, desc: "LINUX"} - - {id: 64, cat: PC/Mac, desc: "MAC"} - - {id: 63, cat: PC/0day, desc: "WINDOWS"} - # MUSIQUE - - {id: 59, cat: Audio, desc: "AAC"} - - {id: 61, cat: Audio, desc: "DSD"} - - {id: 58, cat: Audio/Lossless, desc: "FLAC"} - - {id: 57, cat: Audio/MP3, desc: "MP3"} - - {id: 60, cat: Audio, desc: "OGG"} - - {id: 62, cat: Audio, desc: "WAV"} - # SÉRIES ANIMÉES - - {id: 89, cat: TV/Anime, desc: "HD 1080p"} - - {id: 90, cat: TV/Anime, desc: "HD 720p"} - - {id: 94, cat: TV/Anime, desc: "PACK HD"} - - {id: 93, cat: TV/Anime, desc: "PACK SD"} - - {id: 88, cat: TV/Anime, desc: "Québec HD"} - - {id: 87, cat: TV/Anime, desc: "Québec SD"} - - {id: 92, cat: TV/Anime, desc: "V.O.S.T. HD"} - - {id: 91, cat: TV/Anime, desc: "V.O.S.T. SD"} - # SÉRIES TV - - {id: 112, cat: TV/UHD, desc: "4K UHD"} - - {id: 32, cat: TV/HD, desc: "Blu-Ray"} - - {id: 35, cat: TV, desc: "DVD-R"} - - {id: 31, cat: TV/HD, desc: "Émissions HD"} - - {id: 30, cat: TV/SD, desc: "Émissions SD"} - - {id: 25, cat: TV/HD, desc: "HD 1080p"} - - {id: 24, cat: TV/HD, desc: "HD 720p"} - - {id: 27, cat: TV/HD, desc: "PACK HD"} - - {id: 34, cat: TV/HD, desc: "PACK HD QC"} - - {id: 26, cat: TV/SD, desc: "PACK SD"} - - {id: 33, cat: TV/SD, desc: "PACK SD QC"} - - {id: 29, cat: TV/HD, desc: "Québec HD"} - - {id: 28, cat: TV/SD, desc: "Québec SD"} - - {id: 23, cat: TV/SD, desc: "SD"} - - {id: 37, cat: TV/HD, desc: "V.O.S.T. HD"} - - {id: 36, cat: TV/SD, desc: "V.O.S.T. SD"} - # SPECTACLES - - {id: 85, cat: Audio/Video, desc: "ART/MAGIE"} - - {id: 83, cat: Audio/Video, desc: "HUMOUR"} - - {id: 86, cat: Audio/Video, desc: "LIVE"} - - {id: 82, cat: Audio/Video, desc: "MUSIQUE"} - - {id: 84, cat: Audio/Video, desc: "THÉATRE"} - # SPORTS - - {id: 103, cat: TV/Sport, desc: "ANGLAIS"} - - {id: 102, cat: TV/Sport, desc: "FRANÇAIS"} - # XXX - - {id: 105, cat: XXX, desc: "FILMS"} - - {id: 108, cat: XXX, desc: "GAYS"} - - {id: 110, cat: XXX, desc: "HENTAI"} - - {id: 109, cat: XXX, desc: "LESBIENNES"} - - {id: 111, cat: XXX, desc: "MAGAZINES"} - - {id: 106, cat: XXX, desc: "SÉRIES"} - - {id: 107, cat: XXX, desc: "VR"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: cookie - type: text - label: Cookie - - name: info - type: info - label: How to get the Cookie - default: "
  1. Login to this tracker with your browser
  2. Open the DevTools panel by pressing F12
  3. Select the Network tab
  4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
  5. Refresh the page by pressing F5
  6. Click on the first row entry
  7. Select the Headers tab on the Right panel
  8. Find 'cookie:' in the Request Headers section
  9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
" - - 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 - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: order - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: / - selector: a[href="account-logout"] - -download: - before: - path: thanks - inputs: - id: "{{ .DownloadUri.Query.id }}" - to: give - torrent: "{{ .DownloadUri.Query.id }}" - selectors: - - selector: a[href^="download?id="], a[href^="magnet:?xt="] - attribute: href - -search: - paths: - - path: torrents-search - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 incldead, 2 onlydead - incldead: 1 - # 0 all, 1 notfree, 2 onlyfree - freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" - # 0 any etc - lang: 0 - sort: "{{ .Config.sort}}" - order: "{{ .Config.order}}" - - rows: - selector: table.ttable_headinner > tbody > tr[class^="t-row"] - - fields: - category: - selector: a[href^="/torrents?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_phase1: - selector: a[href^="/download?id="] - attribute: href - filters: - - name: regexp - args: name=(.+?)\.torrent - - name: urldecode - 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: - selector: a[href^="/torrents-details?id="] - attribute: href - download: - selector: a[href^="/torrents-details?id="] - attribute: href - poster: - selector: img[src^="uploads/images/"] - attribute: src - size: - selector: td:nth-child(10) - remove: div.bottom - grabs: - selector: td:nth-child(9) - remove: div.bottom - seeders: - selector: td:nth-child(11) - remove: div.bottom - leechers: - selector: td:nth-child(12) - remove: div.bottom - date: - selector: td.tor_name_outline > font - filters: - - name: replace - args: ["il y a ", ""] - - name: replace - args: ["seconde", "second"] - - name: replace - args: ["heure", "hour"] - - name: replace - args: ["jour", "day"] - - name: replace - args: ["mois", "month"] - - name: replace - args: ["an", "year"] - - name: append - args: " ago" - downloadvolumefactor: - case: - "button:contains(\"FREELEECH\")": 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# engine n/a diff --git a/config/prowlarr/Definitions/toonsforme.yml b/config/prowlarr/Definitions/toonsforme.yml deleted file mode 100644 index 8dbe19cd..00000000 --- a/config/prowlarr/Definitions/toonsforme.yml +++ /dev/null @@ -1,164 +0,0 @@ ---- -id: toonsforme -name: ToonsForMe -description: "ToonsForMe is a Private Tracker for Cartoons/Kids MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://toonsfor.me/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your ToonsForMe account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title: - selector: name - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: re_replace - args: ["(?i)(TV Movie)", "TV_Movie"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 2 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# json UNIT3D 7.2.5 diff --git a/config/prowlarr/Definitions/torlock.yml b/config/prowlarr/Definitions/torlock.yml deleted file mode 100644 index 78c80e11..00000000 --- a/config/prowlarr/Definitions/torlock.yml +++ /dev/null @@ -1,159 +0,0 @@ ---- -id: torlock -name: Torlock -description: "Torlock is a torrent search site that lists verified torrents only for TV series and movies" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://www.torlock.com/ -legacylinks: - - https://torlock.com/ - - https://www.torlock.icu/ - - https://torlock.nocensor.cloud/ - - https://torlock.mrunblock.bond/ - - https://torlock.unblockit.download/ - - https://www.torlock2.com/ # 400 Bad Request No required SSL certificate was sent - -caps: - # dont forget to update the search fields category case block - categorymappings: - - {id: TELEVISION, cat: TV, desc: "TV Shows"} - - {id: MOVIES, cat: Movies, desc: "Movies"} - - {id: MUSIC, cat: Audio, desc: "Music"} - - {id: GAMES, cat: PC/Games, desc: "Games"} - - {id: SOFTWARE, cat: PC, desc: "Software"} - - {id: ANIME, cat: TV/Anime, desc: "Anime"} - - {id: EBOOKS, cat: Books/EBook, desc: "Books"} - - {id: OTHER, cat: Other, desc: "Other"} - - {id: ADULT, cat: XXX, desc: "Adult"} - - {id: AUDIOBOOK, cat: Audio/Audiobook, desc: "Audiobook"} - - {id: IMAGES, cat: Other/Misc, desc: "Images"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: sort - type: select - label: Sort requested from site (only works for search with keywords) - default: added - options: - added: created - seeds: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -search: - paths: - - path: "/all/torrents/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}" - categories: ["!", TELEVISION, MOVIES, MUSIC, GAMES, SOFTWARE, ANIME, EBOOKS, OTHER, ADULT, AUDIOBOOK, IMAGES] - - path: "{{ if .Keywords }}/television/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/television/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [TELEVISION] - - path: "{{ if .Keywords }}/movie/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/movies/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [MOVIES] - - path: "{{ if .Keywords }}/music/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/music/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [MUSIC] - - path: "{{ if .Keywords }}/game/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/games/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [GAMES] - - path: "{{ if .Keywords }}/software/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/software/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [SOFTWARE] - - path: "{{ if .Keywords }}/anime/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/anime/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [ANIME] - - path: "{{ if .Keywords }}/ebook/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/ebooks/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [EBOOKS] - - path: "{{ if .Keywords }}/unknown/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/unknown.html{{end}}" # sorting is broken for unknown - categories: [OTHER] - - path: "{{ if .Keywords }}/adult/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/adult/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [ADULT] - - path: "{{ if .Keywords }}/audiobook/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/audiobook/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [AUDIOBOOK] - - path: "{{ if .Keywords }}/image/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/images/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}" - categories: [IMAGES] - keywordsfilters: - - name: tolower - - name: re_replace - args: ["[^a-zA-Z0-9]+", "-"] - - rows: - selector: table > tbody > tr:has(td:has(div:has(a[href^="/torrent/"]))) - filters: - - name: andmatch - - fields: - category: - selector: span[class^="tv"] - attribute: class - case: - span.tv0: OTHER - span.tv1: MOVIES - span.tv2: MUSIC - span.tv3: TELEVISION - span.tv4: GAMES - span.tv5: SOFTWARE - span.tv6: ANIME - span.tv7: ADULT - span.tv8: EBOOKS - span.tv9: IMAGES - span.tv10: EBOOKS - span.tv12: AUDIOBOOK - "*": OTHER # some torrents have invalid categories - title: - selector: td:nth-child(1) > div > a - details: - selector: td:nth-child(1) > div > a[href^="/torrent/"] - attribute: href - download: - selector: td:nth-child(1) > div > a[href^="/torrent/"] - attribute: href - filters: - - name: replace - args: ["/torrent/", "/tor/"] - - name: regexp - args: (^/tor/\d*) - - name: append - args: ".torrent" - date_year: - selector: td:nth-child(2):contains("/") - optional: true - filters: - - name: append - args: " -07:00" # PDT - - name: dateparse - args: "M/d/yyyy zzz" - date_day: - selector: td:nth-child(2):contains("Today"), td:nth-child(2):contains("Yesterday") - optional: true - filters: - - name: fuzzytime - date_ago: - selector: td:nth-child(2):not(:contains("Today")):not(:contains("Yesterday")):not(:contains("/")) - optional: true - filters: - - name: re_replace - args: ["(min|mins)", "minutes"] - - name: timeago - date: - text: "{{ if or .Result.date_year .Result.date_ago .Result.date_day }}{{ or .Result.date_year .Result.date_ago .Result.date_day }}{{ else }}now{{ end }}" - 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 diff --git a/config/prowlarr/Definitions/torrent-explosiv.yml b/config/prowlarr/Definitions/torrent-explosiv.yml deleted file mode 100644 index e18c7a6f..00000000 --- a/config/prowlarr/Definitions/torrent-explosiv.yml +++ /dev/null @@ -1,163 +0,0 @@ ---- -id: explosiv-world -replaces: - - torrent-explosiv -name: Explosiv-World -description: "Explosiv-World (E-W) is a German Private Torrent Tracker for TV / MOVIES / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://explosiv-world.biz/ -legacylinks: - - https://torrent-explosiv.eu/ - - https://torrent-explosiv.hopto.org/ - - https://torrent-explosiv.me/ - -caps: - categorymappings: - - {id: 114, cat: Movies/UHD, desc: "Filme > UHD"} - - {id: 32, cat: Movies/HD, desc: "Filme > HD"} - - {id: 28, cat: Movies/SD, desc: "Filme > SD"} - - {id: 145, cat: Movies/UHD, desc: "Filme > Pack UHD"} - - {id: 138, cat: Movies/HD, desc: "Filme > Pack HD"} - - {id: 140, cat: Movies/SD, desc: "Filme > Pack SD"} - - {id: 143, cat: Movies/Other, desc: "Filme > Anime"} - - {id: 139, cat: TV/UHD, desc: "Serien > UHD"} - - {id: 57, cat: TV/HD, desc: "Serien > HD"} - - {id: 60, cat: TV/SD, desc: "Serien > SD"} - - {id: 144, cat: TV/Anime, desc: "Serien > Anime"} - - {id: 146, cat: TV/UHD, desc: "Serien > Pack UHD/HD"} - - {id: 59, cat: TV/SD, desc: "Serien > Pack SD"} - - {id: 110, cat: Audio, desc: "Audio > Alben"} - - {id: 148, cat: Audio, desc: "Audio > Mixe"} - - {id: 149, cat: Audio, desc: "Audio > Sampler/OST"} - - {id: 150, cat: Audio, desc: "Audio > Charts/Singles"} - - {id: 48, cat: Audio/Lossless, desc: "Audio > Flac"} - - {id: 52, cat: Audio/MP3, desc: "Audio > Pack mp3"} - - {id: 147, cat: Audio/Lossless, desc: "Audio > Pack Flac"} - - {id: 63, cat: Audio/Audiobook, desc: "Audio > Hörbuch"} - - {id: 120, cat: Audio/Video, desc: "Audio > Videos"} - - {id: 17, cat: PC/Games, desc: "Spiele > PC"} - - {id: 24, cat: Console, desc: "Spiele > Konsole"} - - {id: 126, cat: Console/Other, desc: "Spiele > Mobil"} - - {id: 121, cat: Console, desc: "Spiele > andere"} - - {id: 12, cat: PC/0day, desc: "Software > Windows"} - - {id: 11, cat: PC/Mobile-Other, desc: "Software > Mobil"} - - {id: 141, cat: PC/Mobile-Other, desc: "Software > andere"} - - {id: 61, cat: TV/Sport, desc: "Sport > UHD/HD"} - - {id: 62, cat: TV/Sport, desc: "Sport > SD"} - - {id: 14, cat: TV/Documentary, desc: "Doku > UHD/HD"} - - {id: 15, cat: TV/Documentary, desc: "Doku > SD"} - - {id: 123, cat: TV/Documentary, desc: "Doku > Pack UHD/HD"} - - {id: 151, cat: TV/Documentary, desc: "Doku > Pack SD"} - - {id: 96, cat: Books/Other, desc: "ePaper > Zeitungen"} - - {id: 136, cat: Books/EBook, desc: "ePaper > E-Book"} - - {id: 137, cat: Books/Mags, desc: "ePaper > Magazine"} - - {id: 73, cat: XXX/x264, desc: "XXX > HD"} - - {id: 76, cat: XXX/SD, desc: "XXX > SD"} - - {id: 75, cat: XXX/Pack, desc: "XXX > Pack"} - - {id: 142, cat: XXX/ImageSet, desc: "XXX > andere"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_password - type: info - label: About Password Expiry - default: "E-W has an 8 week Password Expiry regime. So if the Indexer has stopped working then the first thing you should do is check if your password has expired by login in at Explosiv-World, and if necessary use the Passwort anfordern (Request password) button to renew it." - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: onlyupload - type: checkbox - label: Search OnlyUpload - default: false - - name: info_free - type: info - label: About OnlyUpload at E-W - default: "OnlyUpload are torrents where download is not counted but upload is. Good for building your Ratio up. (On the Jackett dashboard search results these are tagged as Freeleech)." - -login: - path: login.php - method: form - form: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div#login_error - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # https://explosiv-world.biz/torrents_search.php?ajax=true&search=&page=1 - - path: torrents_search.php - response: - type: json - - inputs: - ajax: true - search: "{{ .Keywords }}" - page: 1 - # all=active+inactive, yes=active, no=inactive (the default is all, which ajax simply drops the parm) - # visible: all - # all=all+onlyup, yes=onlyup, no=without onlyup (the default is all, which ajax simply drops the parm) - free: "{{ if .Config.onlyupload }}yes{{ else }}{{ end }}" - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - - rows: - selector: $ - - fields: - categorydesc: - selector: category - filters: - - name: htmldecode - title: - selector: name - _id: - selector: id - details: - text: "details.php?id={{ .Result._id }}" - download: - selector: download_link - poster: - selector: cover - size: - selector: size - date: - # 25.12.2024 16:02 - selector: added - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyy HH:mm zzz" - seeders: - selector: seeders - leechers: - selector: leechers - _onlyup: - selector: free_button:contains(Only Upload) - optional: true - downloadvolumefactor: - text: "{{ if .Result._onlyup }}0{{ else }}1{{ end }}" - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# THX JSON (custom) diff --git a/config/prowlarr/Definitions/torrent-heaven.yml b/config/prowlarr/Definitions/torrent-heaven.yml deleted file mode 100644 index b3971ee4..00000000 --- a/config/prowlarr/Definitions/torrent-heaven.yml +++ /dev/null @@ -1,182 +0,0 @@ ---- -id: torrent-heaven -name: Torrent Heaven -description: "Torrent Heaven is a DUTCH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: nl-NL -type: private -encoding: UTF-8 -links: - - https://www.torrentheaven.org/ - -caps: - categorymappings: - - {id: 129, cat: Movies/HD, desc: "Hd DVD"} - - {id: 123, cat: Movies/HD, desc: "MKV/X265"} - - {id: 130, cat: Movies/UHD, desc: "4K Films"} - - {id: 10, cat: Movies/DVD, desc: "Dvd rip"} - - {id: 111, cat: Movies/SD, desc: "HD2DVD / BR2DVD"} - - {id: 125, cat: Movies/SD, desc: "Xvid rip"} - - {id: 143, cat: Movies/HD, desc: "Divx 720P"} - - {id: 132, cat: TV, desc: "complete seizoen serie"} - - {id: 139, cat: TV, desc: "Losse afleveringen"} - - {id: 140, cat: Books/EBook, desc: "E-Book"} - - {id: 114, cat: Audio/MP3, desc: "Muziek MP3"} - - {id: 142, cat: Audio/Lossless, desc: "Muziek Flac"} - - {id: 115, cat: PC, desc: "pc apps"} - - {id: 105, cat: TV/Documentary, desc: "Documentaire"} - - {id: 120, cat: PC/Games, desc: "Pc Games"} - - {id: 106, cat: Other, desc: "Overig"} - - {id: 131, cat: Books/Comics, desc: "Stripboeken"} - - {id: 108, cat: XXX, desc: "18+ Adult"} - - {id: 116, cat: PC/Mac, desc: "Mac"} - - {id: 155, cat: Books/Mags, desc: "Tijdschriften"} - - {id: 128, cat: Audio/Video, desc: "muziek DVD"} - - {id: 156, cat: Other, desc: "Donateur"} - - {id: 118, cat: Movies, desc: "Kids Film"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: thankyou - type: text - label: Thank You Comment - - name: info - type: info - label: Thank you comment - default: This site requires you to leave a Thank You comment before you can download. Enter your personalised comment above. - - name: info_activity - type: info - label: Account Inactivity - default: "Your account will be deleted after 90 days of not logging in to the site." - -login: - path: login.php - method: form - form: form[action="takelogin.php"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - returnto: "/" - error: - - selector: td.embedded:contains("fout") - test: - path: / - selector: a[href="logout.php"] - -download: - before: - path: comment.php - method: post - inputs: - action: add - tid: "{{ .DownloadUri.Query.id }}" - text: "{{ .Config.thankyou }}" - submit: Opslaan - selectors: - - selector: a[href^="download.php?id="] - attribute: href - - selector: a[href^="downloadv1.php?id="] - attribute: href - -search: - paths: - # https://www.torrentheaven.org/browse.php?search=&cat=0&incldead=1 - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - incldead: 1 - - rows: - selector: table.mainouter - filters: - - name: andmatch - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="details.php?id="] - attribute: href - poster: - selector: div[id^="Style"] img - attribute: src - size: - selector: a[href^="details_bestanden.php?"] - filters: - - name: regexp - args: "(.+?) in" - files: - selector: a[href^="details_bestanden.php?"] - filters: - - name: regexp - args: "in (\\d+) bestan" - grabs: - selector: td:nth-child(5) table tbody tr:nth-child(2) td:first-child - date: - selector: td:nth-child(5) table tbody tr:nth-child(2) td:last-child - filters: - - name: replace - args: ["januari", "January"] - - name: replace - args: ["februari", "February"] - - name: replace - args: ["maart", "March"] - - name: replace - args: ["april", "April"] - - name: replace - args: ["mei", "May"] - - name: replace - args: ["juni", "June"] - - name: replace - args: ["juli", "July"] - - name: replace - args: ["augustus", "August"] - - name: replace - args: ["september", "September"] - - name: replace - args: ["oktober", "October"] - - name: replace - args: ["november", "November"] - - name: replace - args: ["december", "December"] - - name: re_replace - args: ["\\s*om\\s*", " "] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "d MMMM yyyy HH:mm:ss zzz" - seeders: - selector: td:nth-child(5) table tbody tr:last-child td:nth-last-child(3) font b:first-child - optional: true - default: 0 - leechers: - selector: td:nth-child(5) table tbody tr:last-child td:nth-last-child(3) font b:nth-child(2) - optional: true - default: 0 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# engine n/a diff --git a/config/prowlarr/Definitions/torrent9-tel.yml b/config/prowlarr/Definitions/torrent9-tel.yml deleted file mode 100644 index eb1b32c6..00000000 --- a/config/prowlarr/Definitions/torrent9-tel.yml +++ /dev/null @@ -1,171 +0,0 @@ ---- -id: torrent9-tel -replaces: - - torrent9clone -name: Torrent9-tel -description: "Torrent9-tel is a FRENCH Public tracker for TV / MOVIES / GENERAL" -language: fr-FR -type: public -encoding: UTF-8 -# to fetch current domain use https://www.rantop.org/ -links: - - https://www-torrent9.com/ -legacylinks: - # latest domains list - - https://www.rantop.org/ - - https://www.torrent.onl/ - - https://torrent9.news/ - - https://www.site-torrent.com/ - # domain lists no longer working - - https://www.protege-torrent.com/ - - https://www.torrent.ws/ - - https://www.protege-liens.com/ - - https://www.protege-liens.net/ - # actual legacylinks - - https://www.torrent9.tel/ - - https://torrent9.unblockninja.com/ - - https://www.torrent9.plus/ - - https://www.torrent9.lc/ - - https://www.torrent9-p2p.com/ - - https://www.torrent9.pe/ - - https://www.torrent9.gl/ - - https://www.torrent9.cyou/ - - https://www.torrent9.gd/ - - https://www.torrent9.ing/ - - https://www.torrent9.run/ - - https://www.torrent9.cv/ - - https://www.torrent9.ke/ - - https://www.torrent9.gdn/ - - https://www.torrent9.men/ - - https://www.torrent9.icu/ - -caps: - categorymappings: - - {id: Films, cat: Movies, desc: "Movies"} - - {id: Animes, cat: TV/Anime, desc: "Anime"} - - {id: Documentaires, cat: TV/Documentary, desc: "Documentaires"} - - {id: Séries, cat: TV, desc: "TV"} - - {id: Musiques, cat: Audio, desc: "Music"} - - {id: Ebooks, cat: Books, desc: "Books"} - - {id: Livres, cat: Books, desc: "Livres"} - - {id: Logiciels, cat: PC, desc: "Software"} - - {id: Applications, cat: PC, desc: "Applications"} - - {id: Jeux-PC, cat: PC/Games, desc: "PC Games"} - - {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"} - - {id: Porno, cat: XXX, desc: "Porno"} - - {id: Spectacles, cat: TV/Other, desc: "Spectacles"} - - {id: Sports, cat: TV/Sport, desc: "Sports"} - - {id: Formations, cat: Other, desc: "Formations"} - - {id: Vidéos, cat: TV, desc: "Vidéos"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: info_flaresolverr - type: info_flaresolverr - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - -download: - selectors: - - selector: a[href^="magnet:?"] - attribute: href - - selector: script:contains("magnet:?") - filters: - - name: regexp - args: "\\s'(magnet:\\?.+?)';" - -search: - paths: - - path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}" - keywordsfilters: - # if searching for season packs swith S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "saison $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "saison $2"] - - rows: - selector: table.table-striped > tbody > tr - - fields: - category: - selector: td:nth-child(1) i - attribute: class - title_phase1: - selector: td:nth-child(1) a - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b(19|20\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details_href: - selector: td:nth-child(1) a[href] - attribute: href - optional: true - filters: - - name: regexp - args: (/?detail/\d+) - details_onclick: - selector: td:nth-child(1) a[onclick] - attribute: onclick - optional: true - filters: - - name: regexp - args: (/?detail/\d+) - details: - text: "{{ or .Result.details_href .Result.details_onclick }}" - download: - text: "{{ .Result.details }}" - date: - text: now - size: - selector: td:nth-child(2) - seeders: - selector: td:nth-child(3) - optional: true - default: 0 - leechers: - selector: td:nth-child(4) - optional: true - default: 0 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrent911.yml b/config/prowlarr/Definitions/torrent911.yml deleted file mode 100644 index 0e322464..00000000 --- a/config/prowlarr/Definitions/torrent911.yml +++ /dev/null @@ -1,184 +0,0 @@ ---- -id: torrent911 -name: Torrent911 -description: "Torrent911 is a French Semi-Private site for TV / MOVIES / GENERAL" -language: fr-FR -type: semi-private -encoding: UTF-8 -# to fetch current domain use https://www.protege-torrent.com/Oxtorrent -links: - - https://www.oxtorrent.vip/ -legacylinks: - - https://www.protege-liens.com/ - - https://www.rantop.org/ - - https://www.torrent.ws/ - - https://t911.org/ - - https://www.torrent911.io/ - - https://www.torrent911.biz/ - - https://www.torrent911.pw/ - - https://www.torrent911.cx/ - - https://www.torrent911.vc/ - - https://www.torrent911.bz/ - - https://www.torrent911.ac/ - - https://www.oxtorrent.pm/ - - https://www.torrent911.pe/ # now on poster layout - - https://oxtorrent.unblockninja.com/ # proxy for torrent911 - - https://torrent911.ninjaproxy1.com/ # proxy for torrent911 - - https://torrent9.torrentbay.st/ # proxy for torrent911 - - https://www.t911.ws/ - - https://www.t911.pw/ # now on poster layout - - https://www.oxtorrent.nl/ - - https://www.oxtorrent.sbs/ - - https://www.oxtorrent.wtf/ - - https://www.oxtorrent.tf/ - - https://www.oxtorrent.day/ - - https://oxtorrent.proxyninja.org/ # currently proxies protege-torrent page - - https://www.oxtorrent.zip/ - -caps: - categorymappings: - - {id: Films, cat: Movies, desc: "Movies"} - - {id: Animes, cat: TV/Anime, desc: "Anime"} - - {id: Documentaires, cat: TV/Documentary, desc: "Documentaires"} - - {id: Séries, cat: TV, desc: "TV"} - - {id: Musiques, cat: Audio, desc: "Music"} - - {id: Ebooks, cat: Books, desc: "Books"} - - {id: Livres, cat: Books, desc: "Livres"} - - {id: Logiciels, cat: PC, desc: "Software"} - - {id: Jeux-PC, cat: PC/Games, desc: "PC Games"} - - {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"} - - {id: Porno, cat: XXX, desc: "Porno"} - - {id: Spectacles, cat: TV/Other, desc: "Spectacles"} - - {id: Sports, cat: TV/Sport, desc: "Sports"} - - {id: Formations, cat: Other, desc: "Formations"} - - {id: Vidéos, cat: TV, desc: "Vidéos"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - 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: login - method: form - form: form#formLogin - inputs: - user: "{{ .Config.username }}" - pass: "{{ .Config.password }}" - submit: submit - error: - - selector: :root:contains("Pseudo ou Mot de passe erron") - message: - text: "Pseudo ou Mot de passe erroné" - test: - path: / - selector: a[href="/index.php?page=logout"] - -download: - selectors: - - selector: a[href^="magnet:?"] - attribute: href - - selector: script:contains("magnet:?") - filters: - - name: regexp - args: "\\s'(magnet:\\?.+?)';" - -search: - paths: - - path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}" - keywordsfilters: - # if searching for season packs swith S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "saison $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "saison $2"] - - rows: - selector: table.table-hover > tbody > tr:has(td a[href]) - filters: - - name: andmatch - - fields: - category: - selector: td:nth-child(1) i - attribute: class - title_phase1: - selector: td:nth-child(1) a - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b(19|20\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details_href: - selector: td:nth-child(1) a[href] - attribute: href - optional: true - filters: - - name: regexp - args: (/?torrent/\d+) - details_onclick: - selector: td:nth-child(1) a[onclick] - attribute: onclick - optional: true - filters: - - name: regexp - args: (/?torrent/\d+) - details: - text: "{{ or .Result.details_href .Result.details_onclick }}" - download: - text: "{{ .Result.details }}" - size: - selector: td:nth-child(2) - date: - text: now - seeders: - selector: td:nth-child(3) - leechers: - selector: td:nth-child(4) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrent9clone.yml b/config/prowlarr/Definitions/torrent9clone.yml deleted file mode 100644 index 1a4fafb0..00000000 --- a/config/prowlarr/Definitions/torrent9clone.yml +++ /dev/null @@ -1,164 +0,0 @@ ---- -id: torrent9clone -name: Torrent9 clone -description: "Torrent9 clone is a FRENCH Public Torrent9 clone for TV / MOVIES / GENERAL" -language: fr-FR -type: public -encoding: UTF-8 -followredirect: true -# to fetch current domain use https://www.protege-torrent.com/Torrent9 -links: - - https://www.torrent9.tel/ - - https://torrent9.unblockninja.com/ -legacylinks: - - https://www.protege-liens.net/ - - https://www.rantop.org/ - - https://www.torrent.ws/ - - https://torrent9.nocensor.click/ - - https://www.torrent9.ms/ - - https://www.torrent9.ink/ - - https://www.torrent9.sk/ - - https://www.torrent9.rs/ - - https://www.torrent9.pm/ - - https://www.torrent9.st/ - - https://www.torrent9.boo/ - - https://torrent9.nocensor.cloud/ - - https://torrent9.mrunblock.bond/ - - https://www.torrent9.kim/ - - https://www.torrent9.mn/ - - https://www.torrent9.city/ - - https://www.torrent9.gy/ - - https://www.torrent9.sbs/ - - https://www.torrent9.sb/ - - https://www.torrent9.tf/ - - https://www.torrent9.day/ - -caps: - categorymappings: - - {id: Films, cat: Movies, desc: "Movies"} - - {id: Animes, cat: TV/Anime, desc: "Anime"} - - {id: Documentaires, cat: TV/Documentary, desc: "Documentaires"} - - {id: Séries, cat: TV, desc: "TV"} - - {id: Musiques, cat: Audio, desc: "Music"} - - {id: Ebooks, cat: Books, desc: "Books"} - - {id: Livres, cat: Books, desc: "Livres"} - - {id: Logiciels, cat: PC, desc: "Software"} - - {id: Jeux-PC, cat: PC/Games, desc: "PC Games"} - - {id: Jeux-Consoles, cat: Console/XBox 360, desc: "Console Games"} - - {id: Porno, cat: XXX, desc: "Porno"} - - {id: Spectacles, cat: TV/Other, desc: "Spectacles"} - - {id: Sports, cat: TV/Sport, desc: "Sports"} - - {id: Formations, cat: Other, desc: "Formations"} - - {id: Vidéos, cat: TV, desc: "Vidéos"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: info_flaresolverr - type: info_flaresolverr - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi FRENCH: MULTi FRENCH - ENGLISH: ENGLISH - MULTi ENGLISH: MULTi ENGLISH - VOSTFR: VOSTFR - MULTi VOSTFR: MULTi VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - -download: - selectors: - - selector: a[href^="magnet:?"] - attribute: href - - selector: script:contains("magnet:?") - filters: - - name: regexp - args: "\\s'(magnet:\\?.+?)';" - -search: - paths: - - path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}derniers{{ end }}" - keywordsfilters: - # if searching for season packs swith S01 to saison 1 #9712 - - name: re_replace - args: ["(?i)(S0)(\\d{1,2})$", "saison $2"] - - name: re_replace - args: ["(?i)(S)(\\d{1,3})$", "saison $2"] - - rows: - selector: table.table-striped > tbody > tr - - fields: - category: - selector: td:nth-child(1) i - attribute: class - title_phase1: - selector: td:nth-child(1) a - filters: - - name: re_replace - args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b(19|20\\d{2})\\b)$", "$3 $1$2"] - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - details_href: - selector: td:nth-child(1) a[href] - attribute: href - optional: true - filters: - - name: regexp - args: (/?torrent/\d+) - details_onclick: - selector: td:nth-child(1) a[onclick] - attribute: onclick - optional: true - filters: - - name: regexp - args: (/?torrent/\d+) - details: - text: "{{ or .Result.details_href .Result.details_onclick }}" - download: - text: "{{ .Result.details }}" - date: - text: now - size: - selector: td:nth-child(2) - seeders: - selector: td:nth-child(3) - optional: true - default: 0 - leechers: - selector: td:nth-child(4) - optional: true - default: 0 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentcontrol.yml b/config/prowlarr/Definitions/torrentcontrol.yml deleted file mode 100644 index 2d8dc55c..00000000 --- a/config/prowlarr/Definitions/torrentcontrol.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -id: torrentcontrol -name: TorrentControl (API) -description: "TorrentControl (API) is a Public Torrent Tracker for MOVIES / TV / ANIME" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://torrentcontrol.pw/ - -caps: - categorymappings: - - {id: movie, cat: Movies, desc: Movies, default: true} - - {id: series, cat: TV, desc: Series, default: true} - - {id: anime, cat: TV/Anime, desc: Anime, default: true} - - modes: - search: [q] - movie-search: [q] - tv-search: [q, season, ep] - -settings: [] - -search: - # docs: https://torrentcontrol.pw/en/api-docs - paths: - # since per_page is only 20 we needs to query all 3 cats separately to ensure we get hits for keywordless - - path: "api/v1/torrents?type=movie&search={{ .Keywords }}" - response: - type: json - categories: [movie] - - - path: "api/v1/torrents?type=series&search={{ .Keywords }}" - response: - type: json - categories: [series] - - - path: "api/v1/torrents?type=anime&search={{ .Keywords }}" - response: - type: json - categories: [anime] - - rows: - selector: data - - fields: - category: - selector: type - _id: - selector: content_id - details: - text: "contents/{{ .Result._id }}" - _language: - selector: language - case: - fr: French - es: Spanish - it: Italian - latino: Latino - ru: Russian - "*": "" - title_default: - selector: title - title_file_name: - selector: file_name - optional: true - title_magnet: - selector: magnet_uri:contains(&dn=) - optional: true - filters: - - name: htmldecode - - name: querystring - args: dn - title: - text: "{{ if or .Result.title_file_name .Result.title_magnet }}{{ or .Result.title_file_name .Result.title_magnet }}{{ else }}{{ .Result.title_default }}{{ end }}" - filters: - - name: append - args: "{{ if .Result._language }} {{ .Result._language }}{{ else }}{{ end }}" - magnet: - selector: magnet_uri - filters: - - name: htmldecode - poster: - selector: poster_url - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - seeders_zero: - selector: seeders - seeders: - selector: seeders - filters: - - name: append - args: "{{ if eq .Result.seeders_zero \"0\" }}1{{ else }}{{ end }}" - leechers_zero: - selector: leechers - leechers: - selector: leechers - filters: - - name: append - args: "{{ if eq .Result.leechers_zero \"0\" }}1{{ else }}{{ end }}" - date: - # 2025-10-12T21:59:04.000000Z - selector: created_at - size_default: - selector: type - case: - movie: 9GB - series: 2GB - size_in_mb: - selector: size_in_mb - optional: true - size: - text: "{{ if .Result.size_in_mb }}{{ .Result.size_in_mb }}MB{{ else }}{{ .Result.size_default }}{{ end }}" - description: - selector: provider - filters: - - name: prepend - args: "provider: " - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# json api v1 diff --git a/config/prowlarr/Definitions/torrentfunk.yml b/config/prowlarr/Definitions/torrentfunk.yml deleted file mode 100644 index d234d749..00000000 --- a/config/prowlarr/Definitions/torrentfunk.yml +++ /dev/null @@ -1,108 +0,0 @@ ---- -id: torrentfunk -name: TorrentFunk -description: "TorrentFunk is a Public torrent index" -language: en-US -type: public -encoding: UTF-8 -links: - - https://www.torrentfunk.com/ - - https://www.torrentfunk2.com/ - - https://torrentfunk.ninjaproxy1.com/ - - https://torrentfunk.proxyninja.org/ - - https://torrentfunk.proxyninja.net/ -legacylinks: - - https://torrentfunk.nocensor.cloud/ - - https://torrentfunk.mrunblock.bond/ - - https://torrentfunk.unblockit.download/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: Movies} - - {id: 2, cat: Audio, desc: Music} - - {id: 3, cat: TV, desc: Television} - - {id: 4, cat: PC/Games, desc: Games} - - {id: 5, cat: PC, desc: Software} - - {id: 6, cat: TV/Anime, desc: Anime} - - {id: 7, cat: XXX, desc: Adult} - - {id: 8, cat: Other, desc: Other(tbd)} - - {id: 9, cat: Other, desc: Other(tbd)} - - {id: 0, cat: Other, desc: Other(tbd)} - - {id: 10, cat: Other, desc: Other(tbd)} - - {id: 11, cat: Other, desc: Other(tbd)} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: [] - -search: - paths: - # https://www.torrentfunk.com/all/torrents/morty-402-castellano.html - - path: "all/torrents/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}.html" - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "-"] - - name: tolower - - rows: - selector: table.tmain tbody tr:has(a[href^="/torrent/"]) - filters: - - name: andmatch - - fields: - category: - selector: td[class^="tv"], td[class^="tn"] - attribute: class - filters: - - name: regexp - args: (\d+) - title: - selector: div a[href^="/torrent/"] - details: - selector: div a[href^="/torrent/"] - attribute: href - download: - # /tor/25878251.torrent - selector: div a[href^="/torrent/"] - attribute: href - filters: - - name: split - args: ["/", 2] - - name: prepend - args: "/tor/" - - name: append - args: ".torrent" - date_day: - # Today - # Yesterday - selector: td:nth-child(2):contains("day") - optional: true - filters: - - name: fuzzytime - date_month: - # 7 Jul - # 25 Dec - selector: td:nth-child(2):not(:contains("day")) - optional: true - filters: - - name: append - args: " -07:00" # PDT - - name: dateparse - args: "d MMM zzz" - date: - text: "{{ if or .Result.date_month .Result.date_day }}{{ or .Result.date_month .Result.date_day }}{{ else }}now{{ end }}" - 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 diff --git a/config/prowlarr/Definitions/torrentgalaxy.yml b/config/prowlarr/Definitions/torrentgalaxy.yml deleted file mode 100644 index 3ac2c36e..00000000 --- a/config/prowlarr/Definitions/torrentgalaxy.yml +++ /dev/null @@ -1,193 +0,0 @@ ---- -id: torrentgalaxy -replaces: - - torrentgalaxyorg -name: TorrentGalaxy -description: "TorrentGalaxy (TGx) is a Public site for TV / MOVIES / GENERAL" -language: en-US -type: public -encoding: UTF-8 -links: - - https://torrentgalaxy.to/ - - https://torrentgalaxy.mx/ - - https://tgx.rs/ - - https://tgx.sb/ -legacylinks: - - https://torrentgalaxy.org/ # redirects to *.to - - https://torrentgalaxy.pw/ # proxy list only - - https://tgx.unblocked.monster/ - - https://torrentgalaxy.su/ - - https://torrentgalaxy.unblockit.asia/ - - https://torrentgalaxy.unblockit.mov/ - - https://torrentgalaxy.unblockit.rsvp/ - - https://torrentgalaxy.unblockit.vegas/ - - https://torrentgalaxy.unblockit.esq/ - - https://torrentgalaxy.unblockit.zip/ - - https://torrentgalaxy.unblockit.foo/ - - https://torrentgalaxy.unblockit.ing/ - - https://torrentgalaxy.unblockninja.com/ # breaks on checkpoint - - https://tgx.proxyninja.org/ # breaks on checkpoint - -caps: - categorymappings: - - {id: 28, cat: TV/Anime, desc: "Anime - All"} - - {id: 20, cat: PC/Mobile-Other, desc: "Apps - Mobile"} - - {id: 21, cat: PC, desc: "Apps - Other"} - - {id: 18, cat: PC/0day, desc: "Apps - Windows"} - - {id: 13, cat: Audio/Audiobook, desc: "Books - Audiobooks"} - - {id: 19, cat: Books/Comics, desc: "Books - Comics"} - - {id: 12, cat: Books/EBook, desc: "Books - Ebooks"} - - {id: 14, cat: Books/Technical, desc: "Books - Education"} - - {id: 15, cat: Books/Mags, desc: "Books - Magazine"} - - {id: 9, cat: TV/Documentary, desc: "Documentaries - All"} - - {id: 43, cat: PC/Mobile-Other, desc: "Games - Mobile"} - - {id: 10, cat: PC/Games, desc: "Games - Windows"} - - {id: 3, cat: Movies/UHD, desc: "Movies - 4K UHD"} - - {id: 46, cat: Movies/Foreign, desc: "Movies - Bollywood"} - - {id: 45, cat: Movies/Other, desc: "Movies - CAM/TS"} - - {id: 42, cat: Movies/HD, desc: "Movies - HD"} - - {id: 4, cat: Movies, desc: "Movies - Packs"} - - {id: 1, cat: Movies/SD, desc: "Movies - SD"} - - {id: 22, cat: Audio, desc: "Music - Albums"} - - {id: 26, cat: Audio, desc: "Music - Discography"} - - {id: 23, cat: Audio/Lossless, desc: "Music - Lossless"} - - {id: 25, cat: Audio/Video, desc: "Music - Musicvideo"} - - {id: 24, cat: Audio, desc: "Music - Singles"} - - {id: 17, cat: Audio/Other, desc: "Audio - Other"} - - {id: 40, cat: Other/Misc, desc: "Other - Other"} - - {id: 37, cat: Other, desc: "Other - Pictures"} - - {id: 33, cat: Other, desc: "Other - Training"} - - {id: 41, cat: TV/HD, desc: "TV - Episodes HD"} - - {id: 5, cat: TV/SD, desc: "TV - Episodes SD"} - - {id: 11, cat: TV/UHD, desc: "TV - Episodes 4K UHD"} - - {id: 6, cat: TV/Other, desc: "TV - Packs"} - - {id: 7, cat: TV/Sport, desc: "TV - Sports"} - - {id: 35, cat: XXX/x264, desc: "XXX - HD"} - - {id: 47, cat: XXX/Other, desc: "XXX - Misc"} - - {id: 34, cat: XXX/SD, desc: "XXX - SD"} - - {id: 48, cat: XXX/UHD, desc: "XXX - 4K UHD"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: excludeads - type: checkbox - label: Exclude results which include advertisements - default: false - - name: sort - type: select - label: Sort requested from site - default: id - options: - id: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - # https://torrentgalaxy.to/galaxyfence.php?f&dropoff=%2Ftorrents.php%3Fsearch%3DHarry%2BPotter - path: galaxyfence.php?f - method: form - form: form[action="/galaxyfence.php"] - inputs: - dropoff: /torrents.php - captcha: - type: image - selector: img#captcha - input: captcha - error: - - selector: span:contains("Captcha incorrect") - test: - path: / - selector: a[href="/account-login.php"] - -search: - # https://torrentgalaxy.org/torrents.php?c41=1&search=mercedes+s02e04&lang=0&sort=id&order=desc - path: torrents.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - lang: 0 - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - - rows: - selector: "div.tgxtable > div:has(div[class^=\"tgxtablecell shrink\"]){{ if .Config.excludeads }}:not(:has(i.fab.fa-adversal)){{ else }}{{ end }}" - - fields: - _ads: - optional: true - selector: i.fab.fa-adversal - attribute: title - category: - selector: div a[href^="/torrents.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title_full: - selector: div a[href^="/torrent/"] - attribute: title - # this title text is abbreviated but may be needed when quotes in full title cause empty title #8585 - title_text: - selector: div a[href^="/torrent/"] - # fall back title, use href and clean it up - title_href: - selector: div a[href^="/torrent/"] - attribute: href - filters: - - name: re_replace - args: ["-quot-", " "] - - name: re_replace - args: ["-", " "] - title: - text: "{{ if or .Result.title_full .Result.title_text }}{{ or .Result.title_full .Result.title_text }}{{ else }}{{ .Result.href }}{{ end }}{{ if .Result._ads }} (Ads included!){{ else }}{{ end }}" - details: - selector: div a[href^="/torrent/"] - attribute: href - magnet: - selector: div a[href^="magnet:?"] - attribute: href - imdbid: - selector: a[href^="/torrents.php?search=tt"] - attribute: href - size: - selector: div span[style^="border-radius"] - seeders: - selector: div span[title="Seeders/Leechers"] font b - leechers: - selector: div span[title="Seeders/Leechers"] font:nth-child(2) b - date_ago: - # 20Mins ago - optional: true - selector: div td:last-of-type:contains("ago") - filters: - - name: timeago - date_year: - # 24/12/18 13:55 - optional: true - selector: div td:last-of-type small:contains(":") - filters: - - name: append - args: " -07:00" # PDT - - name: dateparse - args: "dd/MM/yy HH:mm zzz" - date: - text: "{{ if or .Result.date_year .Result.date_ago }}{{ or .Result.date_year .Result.date_ago }}{{ else }}now{{ end }}" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentland-api.yml b/config/prowlarr/Definitions/torrentland-api.yml deleted file mode 100644 index c3c5dd7c..00000000 --- a/config/prowlarr/Definitions/torrentland-api.yml +++ /dev/null @@ -1,207 +0,0 @@ ---- -id: torrentland-api -name: Torrentland (API) -description: "Torrentland is a SPANISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://torrentland.li/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Películas"} - - {id: 2, cat: TV, desc: "Series"} - - {id: 3, cat: TV/Anime, desc: "Animación"} - - {id: 4, cat: TV/Anime, desc: "Series Animación"} - - {id: 5, cat: TV/Documentary, desc: "Documentales"} - - {id: 6, cat: TV/Documentary, desc: "Series Documentales"} - - {id: 7, cat: TV/Sport, desc: "Deportes"} - - {id: 8, cat: Audio/Video, desc: "Videos Músicales"} - - {id: 9, cat: XXX, desc: "+18"} - - {id: 10, cat: Other, desc: "Otros"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your Torrentland account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: compatOld - type: checkbox - label: Improve Sonarr compatibility with the tracker's older season naming scheme by renaming Sxx to Txx in searches. Can cause results already using Sxx to not be found. - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_thanks - type: info - label: About Thanks - default: "Torrentland requires all downloads to be thanked. After initiating a download with this indexer, use your browser to visit the torrent details page and click the thank you button. Failure to maintain a 1:1 thank ratio will lead to loss of RSS and API access." - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free[]: "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - name: re_replace - args: ["(?i)\\bS(\\d+)", "{{ if .Config.compatOld }}T$1{{ else }}S$1{{ end }}"] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_vose: - selector: name:contains(VOSE) - optional: true - filters: - - name: append - args: " ENGLiSH" - title_notvose: - selector: name:not(:contains(VOSE)) - optional: true - filters: - - name: append - args: " SPANiSH" - title: - text: "{{ if .Result.title_vose }}{{ .Result.title_vose }}{{ else }}{{ .Result.title_notvose }}{{ end }}" - filters: - - name: re_replace - args: ["^ *\\[[^\\]]*\\] *", ""] # Remove prefix tags - - name: re_replace - args: ["(?i)\\bT(\\d+)", "S$1"] - - name: re_replace - args: ["UHDRip", "BDRip"] # Fix for Radarr - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)^None$", ""] - - name: re_replace - args: ["(?i)(Ciencia ficción)", "Ciencia_ficción"] - - name: re_replace - args: ["(?i)(Película de TV)", "Película_de_TV"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double -# global MR is 0.4 but torrents must be seeded for 4 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# json UNIT3D 6.5.0 (custom) diff --git a/config/prowlarr/Definitions/torrentland.yml b/config/prowlarr/Definitions/torrentland.yml deleted file mode 100644 index 858ab97e..00000000 --- a/config/prowlarr/Definitions/torrentland.yml +++ /dev/null @@ -1,223 +0,0 @@ ---- -id: torrentland -name: Torrentland -description: "Torrentland is a SPANISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: es-ES -type: private -encoding: UTF-8 -links: - - https://torrentland.li/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Películas"} - - {id: 2, cat: TV, desc: "Series"} - - {id: 3, cat: TV/Anime, desc: "Animación"} - - {id: 4, cat: TV/Anime, desc: "Series Animación"} - - {id: 5, cat: TV/Documentary, desc: "Documentales"} - - {id: 6, cat: TV/Documentary, desc: "Series Documentales"} - - {id: 7, cat: TV/Sport, desc: "Deportes"} - - {id: 8, cat: Audio/Video, desc: "Videos Músicales"} - - {id: 9, cat: XXX, desc: "+18"} - - {id: 10, cat: Other, desc: "Otros"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: compatOld - type: checkbox - label: Improve Sonarr compatibility with the tracker's older season naming scheme by renaming Sxx to Txx in searches. Can cause results already using Sxx to not be found. - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "You are required to login to the site at least once every 90 days." - -login: - path: login - method: form - form: form[action$="/login"] - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - remember: on - selectorinputs: - _token: - selector: input[name="_token"] - attribute: value - error: - - selector: div#ERROR_COPY -# test: -# path: / -# selector: a[href$="/logout"] - -search: - paths: - # https://torrentland.li/torrents? - # name=&description=&mediainfo=&uploader=&keywords=&tmdbId=&imdbId=&tvdbId=&malId= - # &startYear=&endYear=&playlistId=&collectionId=&categories[]=1&perPage=100&free[0]=100 - - path: torrents - - inputs: - $raw: "{{ range .Categories }}categories[]={{.}}&{{end}}" - name: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search - tmdbId: "{{ .Query.TMDBID }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - page: 1 - # supports genre search but you need to know the id, example genres=28 for Acción - - keywordsfilters: - - name: re_replace - args: ["(?i)\\bS(\\d+)", "{{ if .Config.compatOld }}T$1{{ else }}S$1{{ end }}"] - - rows: - # pre-release/vip torrents don't have download link - selector: table > tbody > tr:has(a[href*="/download/"]) - - fields: - categorydesc_optional: - selector: span[data-original-title="Categoria"] - optional: true - categorydesc: - text: "{{ if .Result.categorydesc_optional }}{{ .Result.categorydesc_optional }}{{ else }}Otros{{ end }}" - title_vose: - selector: a.view-torrent:contains("VOSE") - optional: true - filters: - - name: append - args: " ENGLiSH" - title_notvose: - selector: a.view-torrent:not(:contains("VOSE")) - optional: true - filters: - - name: append - args: " SPANiSH" - title: - text: "{{ if .Result.title_vose }}{{ .Result.title_vose }}{{ else }}{{ .Result.title_notvose }}{{ end }}" - filters: - - name: re_replace - args: ["^ *\\[[^\\]]*\\] *", ""] # Remove prefix tags - - name: re_replace - args: ["(?i)\\bT(\\d+)", "S$1"] - - name: re_replace - args: ["UHDRip", "BDRip"] # Fix for Radarr - details: - selector: a.view-torrent - attribute: href - download: - selector: a[href*="/torrents/download/"] - attribute: href - poster: - selector: div.torrent-poster img - attribute: src - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: div#imdb_id - size: - selector: td.torrent-listings-size - seeders: - selector: td.torrent-listings-seeders - leechers: - selector: td.torrent-listings-leechers - grabs: - selector: td.torrent-listings-completed - date: - selector: td.torrent-listings-age - filters: - # translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish - - name: re_replace - args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"] - - name: re_replace - args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"] - - name: re_replace - args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"] - - name: re_replace - args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"] - - name: re_replace - args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"] - - name: re_replace - args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"] - - name: re_replace - args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"] - - name: re_replace - args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"] - - name: re_replace - args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"] - - name: re_replace - args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"] - - name: re_replace - args: ["(?i) (ay)", "month"] - - name: re_replace - args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"] - - name: re_replace - args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"] - - name: re_replace - args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"] - - name: re_replace - args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"] - - name: re_replace - args: ["(?i) (an)", "year"] - - name: re_replace - args: ["(?i)(För |und)", ""] # Misc removals - - name: timeago - downloadvolumefactor: - case: - i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From BON Store - i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups - i[class*="fa-star text-bold"]: 0 # Freeleech From Token - i[class*="fa-coins text-bold"]: 0 # Freeleech From Token - i[class*="fa-globe text-blue"]: 0 # Global Freeleech - i[class*="fa-star text-gold"]: 0 # Freeleech - i[class*="fa-certificate text-pink"]: 0 # Featured Torrent - "*": 1 - uploadvolumefactor: - case: - i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload - i[class*="fa-globe text-green"]: 2 # Global Double Upload - i[class*="fa-certificate text-pink"]: 2 # Featured Torrent - "*": 1 -# global MR is 0.4 but torrents must be seeded for 4 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# UNIT3D 6.5.0 (custom) diff --git a/config/prowlarr/Definitions/torrentsectorcrew.yml b/config/prowlarr/Definitions/torrentsectorcrew.yml deleted file mode 100644 index c7390301..00000000 --- a/config/prowlarr/Definitions/torrentsectorcrew.yml +++ /dev/null @@ -1,195 +0,0 @@ ---- -id: torrentsectorcrew -name: Torrent Sector Crew -description: "Torrent Sector Crew (TSC) is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://tsctracker.org/ -legacylinks: - - https://tsctracker.net/ - -caps: - categorymappings: - # Apps - - {id: 65, cat: PC/Mobile-Android, desc: "Apps Android"} - - {id: 107, cat: PC/0day, desc: "Apps Linux"} - - {id: 48, cat: PC/Mac, desc: "Apps MAC"} - - {id: 109, cat: PC, desc: "Apps Sonstige"} - - {id: 134, cat: PC, desc: "Apps Tutorial"} - - {id: 22, cat: PC/0day, desc: "Apps Win"} - # Audio - - {id: 24, cat: Audio/Audiobook, desc: "Audio aBooks"} - - {id: 104, cat: Audio, desc: "Audio Disco's"} - - {id: 38, cat: Audio/Audiobook, desc: "Audio Hoerspiel"} - - {id: 6, cat: Audio, desc: "Audio Musik"} - - {id: 29, cat: Audio/Video, desc: "Audio Videos"} - # Doku - - {id: 130, cat: TV/Documentary, desc: "Doku Bluray"} - - {id: 76, cat: TV/Documentary, desc: "Doku HD"} - - {id: 78, cat: TV/Documentary, desc: "Doku Packs"} - - {id: 75, cat: TV/Documentary, desc: "Doku SD"} - - {id: 113, cat: TV/Documentary, desc: "Doku UHD"} - # Filme - - {id: 54, cat: Movies/HD, desc: "Filme 1080p"} - - {id: 5, cat: Movies/3D, desc: "Filme 3D"} - - {id: 55, cat: Movies/HD, desc: "Filme 720p"} - - {id: 135, cat: Movies/Other, desc: "Filme Anime"} - - {id: 43, cat: Movies/BluRay, desc: "Filme BluRay"} - - {id: 20, cat: Movies/DVD, desc: "Filme DVDR"} - - {id: 120, cat: Movies/Foreign, desc: "Filme Int"} - - {id: 119, cat: Movies, desc: "Filme Remux"} - - {id: 36, cat: Movies/HD, desc: "Filme SD"} - - {id: 121, cat: Movies/UHD, desc: "Filme UHD"} - - {id: 124, cat: Movies/UHD, desc: "Filme UHD Remux"} - # Serien - - {id: 143, cat: TV/Anime, desc: "Serien Anime HD"} - - {id: 138, cat: TV/Anime, desc: "Serien Anime Pack HD"} - - {id: 139, cat: TV/Anime, desc: "Serien Anime Pack SD"} - - {id: 112, cat: TV/Anime, desc: "Serien Anime SD"} - - {id: 128, cat: TV/HD, desc: "Serien Bluray"} - - {id: 129, cat: TV/SD, desc: "Serien DVDR"} - - {id: 140, cat: TV/HD, desc: "Serien HD 1080p"} - - {id: 141, cat: TV/HD, desc: "Serien HD 720p"} - - {id: 72, cat: TV/Foreign, desc: "Serien Int"} - - {id: 125, cat: TV/HD, desc: "Serien Pack HD"} - - {id: 68, cat: TV/SD, desc: "Serien Pack SD"} - - {id: 126, cat: TV/UHD, desc: "Serien Pack UHD"} - - {id: 66, cat: TV/SD, desc: "Serien SD"} - - {id: 127, cat: TV/UHD, desc: "Serien UHD"} - # Sonstige - - {id: 133, cat: PC/0day, desc: "Sonstige 0Day"} - - {id: 117, cat: Other, desc: "Sonstige Diverses"} - - {id: 28, cat: Books, desc: "Sonstige eBooks"} - - {id: 42, cat: TV/Sport, desc: "Sonstige Sport"} - - {id: 137, cat: TV/Sport, desc: "Sonstige Sport-Int"} - - {id: 103, cat: Other, desc: "Sonstige Tutorials"} - - {id: 64, cat: XXX, desc: "Sonstige XXX"} - # Spiele - - {id: 37, cat: Console/NDS, desc: "Spiele Nintendo"} - - {id: 4, cat: PC/Games, desc: "Spiele PC"} - - {id: 58, cat: Console/PS4, desc: "Spiele PSX"} - - {id: 116, cat: Other, desc: "Spiele Sonstige"} - - {id: 50, cat: Console/XBox, desc: "Spiele XBOX"} - - 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: pin - type: text - label: Pin - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: info_results - type: info - label: "Search results" - default: "
  1. Only the Classic profile is supported.
  2. Make sure to set the TorrentList-Layout option in your profile to Klassisches Layout, sehr breite Darstellung.
  3. And for best results set the Torrents pro Seite to 100.
" - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeds: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: landing.php - method: form - form: form - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - pin: "{{ .Config.pin }}" - error: - - selector: "#login_box_desc" - test: - path: index.php - selector: a[href="./logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 all, 2 dead - incldead: 1 - orderby: "{{ .Config.sort }}" - sort: "{{ .Config.type }}" - - rows: - selector: "table.tablebrowse > tbody > tr:has(a[href^=\"download_ssl.php\"]){{ if .Config.freeleech }}:has(font[color=\"#730d1e\"]:contains(\"[OnlyUpload]\")){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[title][href^="details.php"] - attribute: title - details: - selector: a[title][href^="details.php"] - attribute: href - download: - selector: a[href^="download_ssl.php"] - attribute: href - poster: - selector: a.thumbnail > span > img - attribute: src - grabs: - selector: td:nth-child(10) - size: - selector: td:nth-child(7) - files: - selector: a[href*="&filelist=1"] - seeders: - selector: td:has(a[href*="&toseeders="]) - leechers: - selector: td:has(a[href*="&todlers="]) - date: - selector: td:nth-child(6) - filters: - - name: re_replace - args: ["\\s", " "] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyyHH:mm:ss zzz" - downloadvolumefactor: - case: - "font[color=\"#730d1e\"]:contains(\"[OnlyUpload]\")": 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.8 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentseeds-api.yml b/config/prowlarr/Definitions/torrentseeds-api.yml deleted file mode 100644 index b055b2e6..00000000 --- a/config/prowlarr/Definitions/torrentseeds-api.yml +++ /dev/null @@ -1,163 +0,0 @@ ---- -id: torrentseeds-api -name: TorrentSeeds (API) -description: "TorrentSeeds is a Private Torrent Tracker for MOVIES / TV / MUSIC / GENERAL" -language: en-US -type: private -encoding: UTF-8 -requestDelay: 6 -links: - - https://torrentseeds.org/ - -caps: - categorymappings: - - {id: 1, cat: PC/0day, desc: "Apps"} - - {id: 2, cat: PC/Games, desc: "Games"} - - {id: 3, cat: Movies, desc: "Movies"} - - {id: 4, cat: Audio, desc: "Music"} - - {id: 5, cat: TV/Anime, desc: "Anime"} - - {id: 6, cat: XXX, desc: "Porn"} - - {id: 7, cat: TV/Sport, desc: "Sport"} - - {id: 8, cat: Movies, desc: "Movies/Packs"} - - {id: 3205, cat: TV, desc: "TV"} - - {id: 3206, cat: TV/Foreign, desc: "TV/Foreign"} - - {id: 3207, cat: Movies/Foreign, desc: "Movies/Foreign"} - - {id: 3208, cat: Books/EBook, desc: "E-Books"} - - {id: 3209, cat: TV, desc: "TV/Packs"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - music-search: [q] - book-search: [q] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your TorrentSeeds account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - inputs: {} # TODO: remove in v10 - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: api/torrents/filter - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: replace # avoid conflict when prepending + to words - args: ["-", " "] - - name: re_replace # prepend + to each word >2 characters - args: ["(\\w{3,})", "+$1"] - - name: re_replace # +2023 04 13 > +"2023 04 13" - args: ["\\+\\b(\\d{4}[\\s\\.]\\d{2}[\\s\\.]\\d{2})\\b", "+\"$1\""] - - rows: - selector: data - attribute: attributes - - fields: - categorydesc: - selector: category - title: - selector: name - details: - selector: details_link - download: - selector: download_link - poster: - selector: poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0=false, 1=true - selector: freeleech - case: - 0: 1 # not free - 1: 0 # freeleech - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumratio: - text: 1.0 - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 -# json UNIT3D 5.3.0 custom diff --git a/config/prowlarr/Definitions/torrentsir.yml b/config/prowlarr/Definitions/torrentsir.yml deleted file mode 100644 index d93d84a0..00000000 --- a/config/prowlarr/Definitions/torrentsir.yml +++ /dev/null @@ -1,126 +0,0 @@ ---- -id: torrentsir -name: TorrentSir -description: "TorrentSir (토렌트썰) is a Public KOREAN tracker for Korean media." -language: ko-KR -type: public -encoding: UTF-8 -followredirect: true -links: - - https://torrentsir176.com/ -legacylinks: - - http://torrentsir165.com/ - - https://torrentsir165.com/ - - http://torrentsir166.com/ - - https://torrentsir166.com/ - - http://torrentsir167.com/ - - https://torrentsir167.com/ - - http://torrentsir168.com/ - - https://torrentsir168.com/ - - http://torrentsir169.com/ - - https://torrentsir169.com/ - - http://torrentsir170.com/ - - https://torrentsir170.com/ - - http://torrentsir171.com/ - - https://torrentsir171.com/ - - http://torrentsir172.com/ - - https://torrentsir172.com/ - - http://torrentsir173.com/ - - https://torrentsir173.com/ - - http://torrentsir174.com/ - - https://torrentsir174.com/ - - http://torrentsir175.com/ - - https://torrentsir175.com/ - - http://torrentsir176.com/ - -caps: - categorymappings: - - {id: "gallery", cat: XXX, desc: "+19 (Adult)"} - - {id: "ani", cat: TV, desc: "동영상 (Video)"} - - {id: "game", cat: Console, desc: "기타 (Games)"} - - {id: "tv", cat: TV, desc: "시사/교양 (TV)"} - - {id: "netflix", cat: TV, desc: "넷플시리즈 (Netflix)"} - - {id: "movie", cat: Movies, desc: "영화 (Movie)"} - - {id: "drama", cat: TV, desc: "드라마 (Drama)"} - - {id: "entertain", cat: TV, desc: "예능/오락 (Entertainment)"} - - {id: "music", cat: Audio, desc: "음악 (Music)"} - - {id: "notice", cat: Other, desc: "고객센터 (Notice)"} - - {id: "child", cat: Other, desc: "고객센터 (Child)"} - - {id: "lecture", cat: Books, desc: "도서/강좌 (Books)"} - - {id: "util", cat: PC, desc: "유틸 (Software)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: info_flaresolverr - type: info_flaresolverr - -download: - infohash: - hash: - selector: a[href^="magnet:?xt="] - attribute: href - filters: - - name: regexp - args: ([A-F|a-f|0-9]{40}) - title: - selector: h3.panel-title - filters: - - name: trim - - name: validfilename - -search: - paths: - # https://torrentsir171.com/bbs/search.php?srows=100&gr_id=&sfl=wr_subject&stx=2025&sop=and - - path: bbs/search.php - allowEmptyInputs: true - inputs: - srows: 100 - gr_id: "" - # wr_subject||wr_content, wr_subject, wr_content, mb_id, wr_name - sfl: wr_subject - stx: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - # or, and - sop: and - - rows: - selector: div.search-media div.media - - fields: - category: - selector: div.media-heading a - attribute: href - filters: - - name: querystring - args: bo_table - title: - selector: div.media-heading a - details: - selector: div.media-heading a - attribute: href - download: - selector: div.media-heading a - attribute: href - poster: - selector: div.photo img - attribute: src - date: - # 2021-01-29T20:44:20+09:00 - selector: time - attribute: datetime - size: - text: "512 MB" - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentslocal.yml b/config/prowlarr/Definitions/torrentslocal.yml deleted file mode 100644 index 105c9411..00000000 --- a/config/prowlarr/Definitions/torrentslocal.yml +++ /dev/null @@ -1,497 +0,0 @@ ---- -id: torrentslocal -name: Torrents-Local -description: "Torrents-Local is a RUSSIAN Semi-Private Torrent Tracker" -language: ru-RU -type: semi-private -encoding: UTF-8 -certificates: - - 6914bf539522ff4a1d373e4064631d10fd3ce34b # expired 8th Feb 2025 -links: - - https://torrents-local.xyz/ - -caps: - categorymappings: - # note: when refreshing cats use the tracker.php not the search.php! - # Кино, Видео и ТВ - - {id: 8, cat: Movies, desc: "Арт-хаус и авторское кино"} - - {id: 6, cat: Movies, desc: "Зарубежное кино"} - - {id: 592, cat: Movies, desc: "Азиатские фильмы"} - - {id: 813, cat: Movies, desc: "Коллекции"} - - {id: 590, cat: Movies, desc: "Фильмы 1961 - 2000"} - - {id: 589, cat: Movies, desc: "Фильмы 2001 - 2005"} - - {id: 588, cat: Movies, desc: "Фильмы 2006 - 2010"} - - {id: 945, cat: Movies, desc: "Фильмы 2011 - 2015"} - - {id: 978, cat: Movies, desc: "Фильмы 2016 - 2021"} - - {id: 10, cat: Movies, desc: "Мультфильмы"} - - {id: 759, cat: Movies, desc: "Короткометражные"} - - {id: 475, cat: Movies, desc: "СССР"} - - {id: 7, cat: Movies, desc: "Отечественное кино"} - - {id: 227, cat: Movies, desc: "СССР"} - # DVD/HD видео" - - {id: 832, cat: Movies/HD, desc: "Арт-хаус и авторское кино HD"} - - {id: 842, cat: Movies/HD, desc: "Зарубежное кино HD"} - - {id: 876, cat: Movies/HD, desc: "HD Коллекции"} - - {id: 845, cat: Movies/HD, desc: "HD до 2000 года"} - - {id: 844, cat: Movies/HD, desc: "HD 2001 - 2005"} - - {id: 843, cat: Movies/HD, desc: "HD 2006 - 2010"} - - {id: 870, cat: Movies/HD, desc: "HD 2011 - 2015"} - - {id: 980, cat: Movies/HD, desc: "HD 2016 - 2021"} - - {id: 846, cat: Movies/HD, desc: "Мультфильмы HD"} - - {id: 849, cat: Movies/HD, desc: "Отечественное кино DVD/HD"} - - {id: 851, cat: Movies/HD, desc: "Отечественное кино DVD"} - - {id: 850, cat: Movies/HD, desc: "Отечественное кино HD"} - # Сериалы - - {id: 14, cat: TV, desc: "Зарубежные сериалы"} - - {id: 862, cat: TV, desc: "Сборники"} - - {id: 454, cat: TV, desc: "Сериалы на языке оригинала"} - - {id: 981, cat: TV, desc: "Ад на колёсах / Hell on Wheels"} - - {id: 982, cat: TV, desc: "Американская история ужасов / American Horror Story"} - - {id: 194, cat: TV, desc: "Анатомия страcти / Grey's Anatomy"} - - {id: 997, cat: TV, desc: "Банши / Banshee"} - - {id: 998, cat: TV, desc: "Белый воротничок / White Collar"} - - {id: 1013, cat: TV, desc: "Бесстыжие / Shameless"} - - {id: 379, cat: TV, desc: "Блудливая калифорния / Californication"} - - {id: 988, cat: TV, desc: "Бруклин 9-9 / Brooklyn Nine-Nine"} - - {id: 992, cat: TV, desc: "В поле зрения / Person of Interest"} - - {id: 1000, cat: TV, desc: "Викинги / Vikings"} - - {id: 818, cat: TV, desc: "Во все тяжкие / Breaking Bad; Лучше звоните Солу / Better..."} - - {id: 90, cat: TV, desc: "Герои / Heroes"} - - {id: 558, cat: TV, desc: "Готэм / Gotham"} - - {id: 126, cat: TV, desc: "Грань / Fringe"} - - {id: 162, cat: TV, desc: "Гримм / Grimm"} - - {id: 134, cat: TV, desc: "Два с половиной человека / Two and a Half Men"} - - {id: 81, cat: TV, desc: "Декстер / Dexter"} - - {id: 164, cat: TV, desc: "Дневники вампира / The Vampire Diaries; Древние / The..."} - - {id: 112, cat: TV, desc: "Доктор Кто / Doctor Who"} - - {id: 61, cat: TV, desc: "Доктор Хаус / House M.D."} - - {id: 121, cat: TV, desc: "Друзья / Friends & Джо / Joey"} - - {id: 91, cat: TV, desc: "Звездные Врата / Stargate"} - - {id: 433, cat: TV, desc: "Звездный крейсер Галактика / Battlestar Galactica"} - - {id: 220, cat: TV, desc: "Игра Престолов / Game of Thrones"} - - {id: 201, cat: TV, desc: "Как я встретил вашу маму / How I met your mother"} - - {id: 995, cat: TV, desc: "Карточный домик / House of Cards"} - - {id: 653, cat: TV, desc: "Клан Сопрано / The Sopranos"} - - {id: 127, cat: TV, desc: "Коломбо / Columbo"} - - {id: 431, cat: TV, desc: "Косяки (Дурман) / Weeds"} - - {id: 62, cat: TV, desc: "Клиника / Scrubs"} - - {id: 1003, cat: TV, desc: "Менталист / The Mentalist"} - - {id: 751, cat: TV, desc: "Мерлин / Merlin"} - - {id: 192, cat: TV, desc: "Молокососы / Skins"} - - {id: 1014, cat: TV, desc: "Нация Z / Z Nation"} - - {id: 1004, cat: TV, desc: "Оборотень / Teen Wolf"} - - {id: 64, cat: TV, desc: "Остаться в живых / LOST"} - - {id: 198, cat: TV, desc: "Отбросы / Плохие / Misfits"} - - {id: 386, cat: TV, desc: "Отчаянные домохозяйки / Desperate housewives"} - - {id: 406, cat: TV, desc: "Офис / The Office"} - - {id: 63, cat: TV, desc: "Побег / Prison Break"} - - {id: 943, cat: TV, desc: "Редкие и старинные сериалы"} - - {id: 98, cat: TV, desc: "Сверхъестественное / Supernatural"} - - {id: 88, cat: TV, desc: "Секретные материалы / X-files"} - - {id: 1007, cat: TV, desc: "Силиконовая долина / Silicon Valley"} - - {id: 385, cat: TV, desc: "Спартак / Spartacus"} - - {id: 128, cat: TV, desc: "Стрела / Arrow"} - - {id: 983, cat: TV, desc: "Сыны Анархии / Sons of Anarchy"} - - {id: 101, cat: TV, desc: "Тайны Смолвиля / Smallville"} - - {id: 993, cat: TV, desc: "Темное дитя / Orphan Black"} - - {id: 190, cat: TV, desc: "Теория Большого Взрыва / The Big Bang Theory; Мол..."} - - {id: 738, cat: TV, desc: "Теория Лжи (Обмани меня) / Lie to me"} - - {id: 129, cat: TV, desc: "Флэш / The Flash"} - - {id: 161, cat: TV, desc: "Ходячие мертвецы / The Walking Dead; Бойтесь хо..."} - - {id: 984, cat: TV, desc: "Чёрный список / The Blacklist"} - - {id: 472, cat: TV, desc: "Шерлок / Sherlock"} - - {id: 1008, cat: TV, desc: "Штамм / The Strain"} - - {id: 11, cat: TV, desc: "Мультсериалы"} - - {id: 13, cat: TV, desc: "Отечественные cериалы"} - - {id: 137, cat: TV, desc: "Бригада"} - - {id: 188, cat: TV, desc: "Восьмидесятые"} - - {id: 815, cat: TV, desc: "Глухарь"} - - {id: 559, cat: TV, desc: "Интерны"} - - {id: 189, cat: TV, desc: "Кадетство"} - - {id: 221, cat: TV, desc: "Карпов"} - - {id: 422, cat: TV, desc: "Реальные пацаны"} - - {id: 661, cat: TV, desc: "Сваты"} - - {id: 584, cat: TV, desc: "Убойная сила"} - - {id: 651, cat: TV, desc: "Улицы разбитых фонарей"} - - {id: 136, cat: TV, desc: "Универ"} - # Музыка" - - {id: 598, cat: Audio, desc: "Башкирская, татарская"} - - {id: 27, cat: Audio, desc: "Музыка других жанров"} - - {id: 608, cat: Audio, desc: "Lossless"} - - {id: 24, cat: Audio, desc: "Поп музыка"} - - {id: 470, cat: Audio, desc: "Зарубежная"} - - {id: 599, cat: Audio, desc: "Зарубежная (lossless)"} - - {id: 469, cat: Audio, desc: "Отечественная"} - - {id: 471, cat: Audio, desc: "Сборники"} - - {id: 25, cat: Audio, desc: "Рэп, Хип-Хоп, R'n'B"} - - {id: 411, cat: Audio, desc: "HD видео"} - - {id: 235, cat: Audio, desc: "Зарубежный Рэп, Хип-Хоп"} - - {id: 921, cat: Audio, desc: "Зарубежный R'n'B"} - - {id: 922, cat: Audio, desc: "Отечественный R'n'B"} - - {id: 234, cat: Audio, desc: "Отечественный Рэп, Хип-Хоп"} - - {id: 26, cat: Audio, desc: "Саундтреки и Караоке"} - - {id: 484, cat: Audio, desc: "Саундтреки к играм"} - - {id: 579, cat: Audio, desc: "Саундтреки к играм (lossless)"} - - {id: 485, cat: Audio, desc: "Саундтреки к фильмам и сериалам"} - - {id: 580, cat: Audio, desc: "Саундтреки к фильмам и сериалам (lossless)"} - - {id: 735, cat: Audio, desc: "Караоке"} - # Рок-музыка" - - {id: 30, cat: Audio, desc: "Зарубежная Alternative"} - - {id: 267, cat: Audio, desc: "Alternative"} - - {id: 562, cat: Audio, desc: "Alternative (lossless)"} - - {id: 368, cat: Audio, desc: "Emo / Hardcore"} - - {id: 369, cat: Audio, desc: "Industrial"} - - {id: 564, cat: Audio, desc: "Industrial (lossless)"} - - {id: 266, cat: Audio, desc: "Punk"} - - {id: 364, cat: Audio, desc: "Отечественная Alternative"} - - {id: 370, cat: Audio, desc: "Alternative"} - - {id: 365, cat: Audio, desc: "Emo / Hardcore"} - - {id: 367, cat: Audio, desc: "Punk"} - - {id: 569, cat: Audio, desc: "Punk (lossless)"} - - {id: 29, cat: Audio, desc: "Зарубежный Metal"} - - {id: 254, cat: Audio, desc: "Avant-garde, Experimental"} - - {id: 253, cat: Audio, desc: "Black, Folk, Pagan, Viking"} - - {id: 252, cat: Audio, desc: "Death, Doom, Sludge, Stoner"} - - {id: 500, cat: Audio, desc: "Death, Doom, Sludge, Stoner (lossless)"} - - {id: 251, cat: Audio, desc: "Gothic Metal"} - - {id: 249, cat: Audio, desc: "Heavy, Power, Progressive"} - - {id: 503, cat: Audio, desc: "Heavy, Power, Progressive (lossless)"} - - {id: 895, cat: Audio, desc: "Symphonic, Operatic"} - - {id: 909, cat: Audio, desc: "Symphonic, Operatic (lossless)"} - - {id: 504, cat: Audio, desc: "Thrash, Speed (lossless)"} - - {id: 28, cat: Audio, desc: "Зарубежный Rock"} - - {id: 260, cat: Audio, desc: "Classic Rock & Hard Rock"} - - {id: 505, cat: Audio, desc: "Classic Rock & Hard Rock (lossless)"} - - {id: 258, cat: Audio, desc: "Folk-Rock"} - - {id: 256, cat: Audio, desc: "Instrumental"} - - {id: 257, cat: Audio, desc: "Indie Rock, Britpop, Pop-Rock, Soft Rock"} - - {id: 509, cat: Audio, desc: "Indie Rock, Britpop, Pop-Rock, Soft Rock (lossless)"} - - {id: 259, cat: Audio, desc: "Progressive & Art-Rock"} - - {id: 99, cat: Audio, desc: "Отечественный Метал"} - - {id: 336, cat: Audio, desc: "Black, Folk, Pagan, Viking"} - - {id: 333, cat: Audio, desc: "Hard & Heavy, Power, Speed, Thrash"} - - {id: 31, cat: Audio, desc: "Отечественный Рок"} - - {id: 360, cat: Audio, desc: "Classic Rock & Hard Rock & Rock'n'Roll"} - - {id: 517, cat: Audio, desc: "Classic Rock & Hard Rock & Rock'n..."} - - {id: 361, cat: Audio, desc: "Progressive & Art-Rock"} - - {id: 362, cat: Audio, desc: "Pop-Rock & Soft Rock & Folk Rock"} - - {id: 519, cat: Audio, desc: "Pop-Rock & Soft Rock & Folk Rock (lossless)"} - - {id: 141, cat: Audio, desc: "Experimental"} - - {id: 526, cat: Audio, desc: "Lossless"} - - {id: 32, cat: Audio, desc: "Видео (Рок-музыка)"} - - {id: 374, cat: Audio, desc: "Alternative"} - - {id: 238, cat: Audio, desc: "DVD"} - - {id: 571, cat: Audio, desc: "Metal"} - - {id: 572, cat: Audio, desc: "Rock"} - - {id: 400, cat: Audio, desc: "Сборники Рок-Музыки"} - # Электронная музыка" - - {id: 33, cat: Audio, desc: "Trance, Goa-Trance, Psy-Trance, PsyChill, Ambient Dub"} - - {id: 429, cat: Audio, desc: "Trance - Albums, Compilations"} - - {id: 430, cat: Audio, desc: "Trance - Radioshows, Livesets, Mixes"} - - {id: 533, cat: Audio, desc: "Trance - Singles, Albums, LPs (lossless)"} - - {id: 428, cat: Audio, desc: "Goa-Trance / Psychedelic / Psy-Chill / Ambient Dub"} - - {id: 658, cat: Audio, desc: "Сборники"} - - {id: 34, cat: Audio, desc: "House, Techno"} - - {id: 438, cat: Audio, desc: "Techno / Minimal / Tech House"} - - {id: 435, cat: Audio, desc: "House / Electro House"} - - {id: 659, cat: Audio, desc: "Сборники House / Electro House"} - - {id: 436, cat: Audio, desc: "Progressive House / Deep House"} - - {id: 35, cat: Audio, desc: "Drum & Bass, Jungle, Electro, Breakbeat, IDM,..."} - - {id: 416, cat: Audio, desc: "Breakbeat / Beats"} - - {id: 540, cat: Audio, desc: "Breakbeat / Beats (lossless)"} - - {id: 415, cat: Audio, desc: "Drum & Bass / Jungle"} - - {id: 417, cat: Audio, desc: "Electro"} - - {id: 36, cat: Audio, desc: "Chillout, Lounge, Downtempo, Trip-Hop"} - # Игры для PC" - - {id: 40, cat: PC/Games, desc: "Новые раздачи"} - - {id: 65, cat: PC/Games, desc: "Горячие Новинки"} - - {id: 75, cat: PC/Games, desc: "Action"} - - {id: 457, cat: PC/Games, desc: "Action до 2003 г."} - - {id: 900, cat: PC/Games, desc: "FPS (1st Person)"} - - {id: 901, cat: PC/Games, desc: "TPS (3rd Person)"} - - {id: 902, cat: PC/Games, desc: "Counter Strike"} - - {id: 102, cat: PC/Games, desc: "Horror"} - - {id: 456, cat: PC/Games, desc: "Horror до 2003 г."} - - {id: 68, cat: PC/Games, desc: "Аркады"} - - {id: 464, cat: PC/Games, desc: "Аркады до 2003 г."} - - {id: 73, cat: PC/Games, desc: "Гонки"} - - {id: 463, cat: PC/Games, desc: "Гонки до 2003 г."} - - {id: 270, cat: PC/Games, desc: "Для самых маленьких"} - - {id: 823, cat: PC/Games, desc: "Другое"} - - {id: 624, cat: PC/Games, desc: "Программы для игр"} - - {id: 66, cat: PC/Games, desc: "Модификации"} - - {id: 657, cat: PC/Games, desc: "Логические"} - - {id: 77, cat: PC/Games, desc: "Многопользовательские"} - - {id: 69, cat: PC/Games, desc: "Приключения и квесты"} - - {id: 461, cat: PC/Games, desc: "Приключения и квесты до 2003 г."} - - {id: 76, cat: PC/Games, desc: "Ролевые (RPG)"} - - {id: 455, cat: PC/Games, desc: "Ролевые (RPG) до 2003 г."} - - {id: 908, cat: PC/Games, desc: "Симуляторы"} - - {id: 271, cat: PC/Games, desc: "Спортивные симуляторы"} - - {id: 787, cat: PC/Games, desc: "Космические симуляторы"} - - {id: 74, cat: PC/Games, desc: "Другие симуляторы"} - - {id: 71, cat: PC/Games, desc: "Автосимуляторы"} - - {id: 72, cat: PC/Games, desc: "Авиасимуляторы"} - # Программы и дизайн" - - {id: 918, cat: PC, desc: "Новые раздачи"} - - {id: 50, cat: PC, desc: "Веб-разработка и Программирование"} - - {id: 319, cat: PC, desc: "WYSIWYG Редакторы для веб-диза"} - - {id: 316, cat: PC, desc: "Компоненты для сред программирования"} - - {id: 315, cat: PC, desc: "Скрипты и шаблоны"} - - {id: 317, cat: PC, desc: "Среды программирования, компиляторы и вспомогател..."} - - {id: 318, cat: PC, desc: "Текстовые редакторы"} - - {id: 52, cat: PC, desc: "ГИС, системы навигации и карты"} - - {id: 332, cat: PC, desc: "Материалы для мультимедиа и дизайна"} - - {id: 594, cat: PC, desc: "Авторские сборки"} - - {id: 582, cat: PC, desc: "Кисти"} - - {id: 746, cat: PC, desc: "Семплы"} - - {id: 552, cat: PC, desc: "Футажи"} - - {id: 581, cat: PC, desc: "Шрифты"} - - {id: 47, cat: PC, desc: "Операционные системы от Microsoft"} - - {id: 284, cat: PC, desc: "Настольные ОС от Microsoft (выпущенные до Windows XP)"} - - {id: 280, cat: PC, desc: "Windows XP"} - - {id: 282, cat: PC, desc: "Windows Vista"} - - {id: 378, cat: PC, desc: "Windows 7"} - - {id: 944, cat: PC, desc: "Windows 8"} - - {id: 789, cat: PC, desc: "Windows 10"} - - {id: 281, cat: PC, desc: "Серверные ОС"} - - {id: 732, cat: PC, desc: "WPI, Live CD, Пакеты обновлений"} - - {id: 51, cat: PC, desc: "Программы для работы с мультимедиа и 3D"} - - {id: 324, cat: PC, desc: "3D моделирование, рендеринг и плагины для них"} - - {id: 325, cat: PC, desc: "Анимация"} - - {id: 330, cat: PC, desc: "Аудио- и видео-, CD- проигрыватели и каталогизаторы"} - - {id: 328, cat: PC, desc: "Аудио- и видео- конверторы"} - - {id: 118, cat: PC, desc: "Графические редакторы"} - - {id: 331, cat: PC, desc: "Каталогизаторы и просмотрщики графики"} - - {id: 623, cat: PC, desc: "Кодеки"} - - {id: 329, cat: PC, desc: "Работа со звуком"} - - {id: 327, cat: PC, desc: "Редакторы видео"} - - {id: 326, cat: PC, desc: "Создание DVD-видео"} - - {id: 322, cat: PC, desc: "Плагины для программ компании Adobe"} - - {id: 321, cat: PC, desc: "Программные комплекты"} - - {id: 323, cat: PC, desc: "Программы для верстки, печати и работы со шрифтами"} - - {id: 48, cat: PC, desc: "Системные программы"} - - {id: 291, cat: PC, desc: "Анти-шпионы и анти-трояны"} - - {id: 300, cat: PC, desc: "Архиваторы и файловые менеджеры"} - - {id: 289, cat: PC, desc: "Драйвера"} - - {id: 287, cat: PC, desc: "Изменение интерфейса ОС Windows"} - - {id: 296, cat: PC, desc: "Информация и диагностика"} - - {id: 290, cat: PC, desc: "Программы для защиты информации"} - - {id: 295, cat: PC, desc: "Программы для интернет и сетей"} - - {id: 292, cat: PC, desc: "Программы для защиты компьютера"} - - {id: 299, cat: PC, desc: "Программы для настройки и оптимизации ОС"} - - {id: 297, cat: PC, desc: "Работа с носителями информации"} - - {id: 285, cat: PC, desc: "Работа с жёстким диском"} - - {id: 301, cat: PC, desc: "Резервное копирование"} - - {id: 288, cat: PC, desc: "Серверное ПО для Windows"} - - {id: 54, cat: PC, desc: "Разное"} - - {id: 303, cat: PC, desc: "Системы для бизнеса, офиса, научной и проектной работы"} - - {id: 305, cat: PC, desc: "Офисные системы"} - - {id: 312, cat: PC, desc: "Программы для архитекторов и дизайнеров интерьеров"} - - {id: 308, cat: PC, desc: "Работа с PDF и DjVu"} - - {id: 307, cat: PC, desc: "Распознавание текста, звука и синтез речи"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: freeleech_50 - type: checkbox - label: Search freeleech and 50% freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: 1 - options: - 1: created - 10: seeders - 7: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Layout - default: "Only the Classic forum style is supported.
  • On the TorrentsLocal web site navigate to the Личные настройки (Preferences) section and set the Стиль форума (Forum Style) option to Классическая тема (Classic Theme)
  • " - -login: - path: login.php - method: post - inputs: - "login_username": "{{ .Config.username }}" - "login_password": "{{ .Config.password }}" - autologin: 1 - login: "Вход" - error: - - selector: h4.text-danger - test: - path: / - selector: a[href="./login.php?logout=1"] - -search: - paths: - - path: tracker.php - method: post - inputs: - $raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}" - prev_allw: 1 - prev_a: 0 - prev_dla: 0 - prev_dlc: 0 - prev_dld: 0 - prev_dlw: 0 - prev_my: 0 - prev_new: 0 - prev_sd: 0 - prev_da: 1 - prev_dc: 0 - prev_df: 1 - prev_ds: 0 - prev_tor_type: 0 - o: "{{ .Config.sort }}" - s: "{{ .Config.type }}" - # show category - dc: 0 - # show forum - df: 1 - # show author - da: 1 - # show speed - ds: 0 - # -1=all time - tm: -1 - # seed not seen -1=disregard - sns: -1 - # group releases -1=not selected - srg: -1 - nm: "{{ .Keywords }}" - # all words - allw: 1 - tor_type: "{{ if .Config.freeleech_50 }}1{{ else }}{{ end }}" - - keywordsfilters: - # strip season and/or ep - - name: re_replace - args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""] - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: tr[id^="tor_"] - - fields: - category: - selector: a[href^="tracker.php?f="] - attribute: href - filters: - - name: querystring - args: f - title: - selector: a[href^="./viewtopic.php?t="] - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(?i)\\s\\|\\sот\\s([\\w\\p{P}\\p{S}]+)$", "-$1"] - - name: re_replace - args: ["\\s\\|\\s(\\w{4,})$", "-$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a[href^="./viewtopic.php?t="] - attribute: href - download: - selector: a[href^="./dl.php?id="] - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - size: - selector: td:nth-last-child(5) > u - seeders: - selector: td.seedmed - leechers: - selector: td.leechmed - grabs: - selector: td:nth-last-child(2) - date: - # unix - selector: td:last-child > u - downloadvolumefactor: - case: - img[src="styles/images/tor_gold.gif"]: 0 - img[src="styles/images/tor_silver.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - text: 1 - description: - selector: a[href^="./viewtopic.php?t="] -# TorrentPier diff --git a/config/prowlarr/Definitions/torrentssg.yml b/config/prowlarr/Definitions/torrentssg.yml deleted file mode 100644 index 982523b2..00000000 --- a/config/prowlarr/Definitions/torrentssg.yml +++ /dev/null @@ -1,135 +0,0 @@ ---- -id: torrentssg -name: torrentssg -description: "torrentssg (토렌트쓱) is a Public KOREAN tracker for Korean media." -language: ko-KR -type: public -encoding: UTF-8 -# to fetch current domain use https://xn--sm2bw9uj0jb6a.com/ -links: - - https://ssg1.torrentssg8.com/ -legacylinks: - - https://torrentssg7.com/ - - https://torrentssg8.com/ - -caps: - categorymappings: - - {id: "st01", cat: Movies, desc: "영화 (Movies)"} - - {id: "st02", cat: Movies/Foreign, desc: "해외영화 (Foreign Movies)"} - - {id: "st02_n", cat: Other, desc: "개봉예정작 (Upcoming Releases)"} - - {id: "st03", cat: XXX, desc: "성인(19+)영화 (Adult Movies)"} - - {id: "st04", cat: TV, desc: "드라마 (Drama)"} - - {id: "st05", cat: TV/Foreign, desc: "해외드라마 (Foreign Drama)"} - - {id: "st06", cat: TV, desc: "드라마완결 (Completed Drama)"} - - {id: "st07", cat: TV, desc: "예능·방송 (Entertainment)"} - - {id: "st09", cat: TV/Documentary, desc: "시사·다큐·교양 (Documentary)"} - - {id: "st10", cat: TV/Sport, desc: "스포츠 (Sport)"} - - {id: "st11", cat: TV, desc: "OTT·자막 (OTT-Subtitles)"} -# - {id: "st12", cat: Other, desc: "자막 (Subtitles)"} # these are direct text files not torrents - - {id: "st13", cat: TV/Anime, desc: "애니·만화 (Animation)"} - - {id: "st14", cat: TV/Anime, desc: "애니완결 (Completed Animation)"} - - {id: "st15", cat: TV, desc: "극장판 (Theatrical Version)"} - - {id: "st16", cat: TV, desc: "키즈 (Kids)"} - - {id: "st18", cat: Audio, desc: "음악 (Music)"} - - {id: "st19", cat: Console, desc: "게임·유틸 (Games)"} - - {id: "st20", cat: PC, desc: "유틸 (Software)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: ip_filtering - type: info - label: "IP Filtering" - default: "torrentssg (토렌트쓱) blocks Non-South Korean IP addresses. A FlareSolverr error means your IP was not accepted." - - name: info_flaresolverr - type: info_flaresolverr - -download: - selectors: - - selector: a[href*="/bbs/download.php?"] - attribute: href - -search: - paths: - # https://ssg1.torrentssg8.com/bbs/search.php?bo_table=&sca=&sop=and&sfl=wr_subject%7C%7Cwr_content&stx=2025 - - path: bbs/search.php - allowEmptyInputs: true - inputs: - bo_table: "" - sca: "" - # or, and - sop: and - # wr_subject||wr_content, wr_subject, wr_content, mb_id, wr_name - sfl: "wr_subject" - stx: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - srows: 100 - gr_id: "" - - rows: - selector: div.search-media div.table-responsive table.table tbody tr:not(:has(a[href*="bo_table=st12"])) - - fields: - category: - selector: td.list-img a - attribute: href - filters: - - name: querystring - args: bo_table - title: - selector: td.list-subject a - details: - selector: td.list-subject a - attribute: href - download: - selector: td.list-subject a - attribute: href - poster: - selector: img - attribute: src - size: - selector: td:nth-child(5) - filters: - - name: append - args: B - date_ago: - # time ago - selector: td:last-child:contains("전") - optional: true - filters: - - name: replace - args: ["전", " ago"] - - name: replace - args: ["초", " seconds"] - - name: replace - args: ["분", " minutes"] - - name: replace - args: ["시간", " hours"] - - name: replace - args: ["일", " days"] - - name: replace - args: ["개월", " months"] - - name: replace - args: ["년", " years"] - - name: timeago - date_month: - # 02.24 - selector: td:last-child:not(:contains("전")) - optional: true - filters: - - name: dateparse - args: "MM.dd" - date: - text: "{{ if or .Result.date_ago .Result.date_month }}{{ or .Result.date_ago .Result.date_month }}{{ else }}now{{ end }}" - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentview.yml b/config/prowlarr/Definitions/torrentview.yml deleted file mode 100644 index 9d36cf10..00000000 --- a/config/prowlarr/Definitions/torrentview.yml +++ /dev/null @@ -1,102 +0,0 @@ ---- -id: torrentview -name: TorrentView -description: "Torrent View (토렌트뷰) is a Public KOREAN tracker for Korean media." -language: ko-KR -type: public -encoding: UTF-8 -followredirect: true -links: - - https://torrentview1.com/ -legacylinks: - - https://viewtorrent4.com/ - - https://viewtorrent5.com/ - - https://viewtorrent6.com/ - - https://viewtorrent7.com/ - - https://viewtorrent8.com/ - - https://viewtorrent10.com/ - - https://viewtorrent11.com/ - - https://viewtorrent12.com/ - - https://viewtorrent13.com/ - - https://viewtorrent14.com/ - - https://viewtorrent15.com/ - - https://viewtorrent16.com/ - - https://viewtorrent17.com/ - - https://viewtorrent18.com/ - - https://viewtorrent19.com/ - -caps: - categorymappings: - - {id: "mov", cat: Movies, desc: "토렌트영화 (Movies)"} - - {id: "enter", cat: TV, desc: "예능 (TV Variety Shows)"} - - {id: "drama", cat: TV, desc: "드라마 (TV Dramas)"} - - {id: "tv", cat: TV/Documentary, desc: "시사 (Documentaries)"} - - {id: "netflix", cat: TV, desc: "넷플릭스 (Netflix, Disney+, etc.)"} - - {id: "util", cat: PC, desc: "토렌트유틸 (Utilities)"} - - {id: "ani", cat: TV/Anime, desc: "애니 (Anime)"} - - {id: "music", cat: Audio, desc: "음원 (Music)"} - - {id: "comm_2", cat: Other, desc: "커뮤니티 (Community)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: [] - -download: - selectors: - - selector: a[href^="magnet:?xt="] - attribute: href - -search: - paths: - # https://torrentview3.net/bbs/search.php?srows=10&gr_id=&sfl=wr_subject&stx=test&sop=and - - path: "bbs/search.php" - inputs: - # number of rows - srows: 100 - # category: all - gr_id: "" - # search in: title - sfl: wr_subject - stx: "{{ if .Keywords }}{{ .Keywords }}{{ else }}2024{{ end }}" - # search operand: or, and - sop: and - - rows: - selector: div.search-media > div.media - - fields: - category_id: - selector: div.media-content > a[href^="./board.php"] - attribute: href - filters: - - name: querystring - args: bo_table - category: - text: "{{ .Result.category_id }}" - title: - selector: div.media-heading > a[href^="./board.php"] - details: - selector: div.media-heading > a[href^="./board.php"] - attribute: href - download: - selector: div.media-heading > a[href^="./board.php"] - attribute: href - date: - # 2020-03-28T01:30:01+09:00 - selector: time - attribute: datetime - size: - text: "{{ if ne .Result.category_id \"mov\" }}512 MB{{ else }}2 GB{{ end }}" - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentwhiz.yml b/config/prowlarr/Definitions/torrentwhiz.yml deleted file mode 100644 index cbbe61cf..00000000 --- a/config/prowlarr/Definitions/torrentwhiz.yml +++ /dev/null @@ -1,110 +0,0 @@ ---- -id: torrentwhiz -name: TorrentWhiz -description: "TorrentWhiz ( 토렌트위즈) is a Public KOREAN tracker for Korean media." -language: ko-KR -type: public -encoding: UTF-8 -followredirect: true -links: - - https://torrentwiz68.com/ -legacylinks: - - https://torrentwiz51.com/ - - https://torrentwiz52.com/ - - https://torrentwiz54.com/ - - https://torrentwiz55.com/ - - https://torrentwiz56.com/ - - https://torrentwiz57.com/ - - https://torrentwiz58.com/ - - https://torrentwiz59.com/ - - https://torrentwiz60.com/ - - https://torrentwiz61.com/ - - https://torrentwiz62.com/ - - https://torrentwiz63.com/ - - https://torrentwiz64.com/ - - https://torrentwiz66.com/ - - https://torrentwiz67.com/ - -caps: - categorymappings: - - {id: "netflix", cat: TV, desc: "넷플릭스 (Netflix)"} - - {id: "tv", cat: TV, desc: "시사 (TV)"} - - {id: "mov", cat: Movies, desc: "영화 (Movie)"} - - {id: "drama", cat: TV, desc: "드라마 (Drama)"} - - {id: "enter", cat: TV, desc: "예능 (Entertainment)"} - - {id: "music", cat: Audio, desc: "음원 (Music)"} - - {id: "util", cat: PC, desc: "유틸 (Software)"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: info_flaresolverr - type: info_flaresolverr - -download: - infohash: - hash: - selector: a[href^="magnet:?xt="] - attribute: href - filters: - - name: regexp - args: ([A-F|a-f|0-9]{40}) - title: - selector: h1.panel-title - filters: - - name: trim - - name: validfilename - -search: - paths: - # https://torrentwiz31.com/bbs/search.php?url=&stx=sin&srows=100&gr_id=&sfl=wr_subject&sop=and - - path: bbs/search.php - inputs: - stx: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}" - srows: 100 - gr_id: "" - # wr_subject||wr_content, wr_subject, wr_content, mb_id, wr_name - sfl: wr_subject - # or, and - sop: and - - rows: - selector: div.search-media div.media - - fields: - category: - selector: div.media-heading a - attribute: href - filters: - - name: querystring - args: bo_table - title: - selector: div.media-heading a - details: - selector: div.media-heading a - attribute: href - download: - selector: div.media-heading a - attribute: href - poster: - selector: div.photo img - attribute: src - date: - # 2021-01-29T20:44:20+09:00 - selector: time - attribute: datetime - size: - text: "512 MB" - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentz2eu.yml b/config/prowlarr/Definitions/torrentz2eu.yml deleted file mode 100644 index 342b0a3d..00000000 --- a/config/prowlarr/Definitions/torrentz2eu.yml +++ /dev/null @@ -1,157 +0,0 @@ ---- -id: torrentz2eu -name: Torrentz2eu -description: "Torrentz2eu is a Public torrent meta-search engine" -language: en-US -type: public -encoding: UTF-8 -requestDelay: 2 -links: - - https://torrentz2beta.in/ -legacylinks: - - https://torrentz2.org.in/ - - https://torrentzeu.org/ - - https://torrentz2.club/ - - https://torrentz2eu.in/ - - https://torrentz2.pics/ - - https://2torrentz2eu.in/ - - https://torrentz2.unblockninja.com/ - - hhttps://torrentz2beta.com/ - - https://torrentz2beta.com/ - - https://eu.torrentz2beta.in/ - - https://www.torrentz2beta.com/ - - https://torrentz2beta.asia/ - - https://www.torrentz2beta.pro/ - - https://torrentz2beta.online/ - -caps: - categorymappings: - - {id: "Applications(Android)", cat: PC/Mobile-Android, desc: "Applications(Android)"} - - {id: "Applications(IOS (iPad/iPhone))", cat: PC/Mobile-iOS, desc: "Applications(IOS (iPad/iPhone))"} - - {id: "Applications(Mac)", cat: PC/Mac, desc: "Applications(Mac)"} - - {id: "Applications(UNIX)", cat: PC/ISO, desc: "Applications(UNIX)"} - - {id: "Applications(Windows)", cat: PC/0day, desc: "Applications(Windows)"} - - {id: "Audio(Audio books)", cat: Audio/Audiobook, desc: "Audio(Audio books)"} - - {id: "Audio(FLAC)", cat: Audio/Lossless, desc: "Audio(FLAC)"} - - {id: "Audio(Music)", cat: Audio/MP3, desc: "Audio(Music)"} - - {id: "Audio(Other)", cat: Audio/Other, desc: "Audio(Other)"} - - {id: "Games(Android)", cat: PC/Mobile-Android, desc: "Games(Android)"} - - {id: "Games(Handheld)", cat: Console/Other, desc: "Games(Handheld)"} - - {id: "Games(Mac)", cat: PC/Mac, desc: "Games(Mac)"} - - {id: "Games(Other)", cat: Console/Other, desc: "Games(Other)"} - - {id: "Games(PC)", cat: PC/Games, desc: "Games(PC)"} - - {id: "Games(PSx)", cat: Console/PS3, desc: "Games(PSx)"} - - {id: "Games(Wii)", cat: Console/Wii, desc: "Games(Wii)"} - - {id: "Games(XBOX360)", cat: Console/XBox 360, desc: "Games(XBOX360)"} - - {id: "Other(Comics)", cat: Books/Comics, desc: "Other(Comics)"} - - {id: "Other(E-books)", cat: Books/EBook, desc: "Other(E-books)"} - - {id: "Other(Other)", cat: Other/Misc, desc: "Other(Other)"} - - {id: "Other(Pictures)", cat: Other, desc: "Other"} - - {id: "Porn(HD - Movies)", cat: XXX/x264, desc: "Porn(HD - Movies)"} - - {id: "Porn(Movie clips)", cat: XXX/WEB-DL, desc: "Porn(Movie clips)"} - - {id: "Porn(Movies)", cat: XXX, desc: "Porn(Movies)"} - - {id: "Porn(Other)", cat: XXX/Other, desc: "Porn(Other)"} - - {id: "Porn(Pictures)", cat: XXX/ImageSet, desc: "Porn(Pictures)"} - - {id: "Video()", cat: Movies, desc: "Movies"} - - {id: "Video(3D)", cat: Movies/3D, desc: "Movies(3D)"} - - {id: "Video(HD - Movies)", cat: Movies/HD, desc: "Movies(HD)"} - - {id: "Video(HD - TV shows)", cat: TV/HD, desc: "TV(HD)"} - - {id: "Video(Movies DVDR)", cat: Movies/DVD, desc: "Movies(DVDR)"} - - {id: "Video(Movies)", cat: Movies, desc: "Movies"} - - {id: "Video(Music videos)", cat: Audio/Video, desc: "Video(Music videos)"} - - {id: "Video(Other)", cat: Other, desc: "Video(Other)"} - - {id: "Video(TV shows)", cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: [] - -search: - paths: - # https://torrentz2beta.in/search.php?q=+ - - path: search.php - - path: search.php - inputs: - page: 2 - inputs: - q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}+{{ end }}" - keywordsfilters: - - name: re_replace - args: ["(\\w+)", "+$1"] # prepend + to each word - - rows: - selector: table.table-responsive > tbody > tr - fields: - title: - selector: td[data-title="Name"] - category_provided: - selector: td[data-title="Category"] - category_is_tv_show: - text: "{{ .Result.title }}" - filters: - - name: regexp - args: "\\b(S\\d+(?:E\\d+)?)\\b" - category: - # some tv have category as video() which can also be movies, so we look for the SxxExx to tag TV - text: "{{ if .Result.category_is_tv_show }}Video(TV shows){{ else }}{{ .Result.category_provided }}{{ end }}" - details: - text: / - download: - selector: a[href^="magnet:?"] - attribute: href - seeders: - text: 1 - leechers: - text: 1 - size: - selector: td[data-title="Description"] - filters: - - name: regexp - args: Size (.+?), - date_year: - # 01-04 2021 - selector: td[data-title="Description"]:not(:contains(":")) - optional: true - filters: - - name: regexp - args: Uploaded (\d{2}-\d{2}.\d{4}) - - name: replace - args: ["\xA0", " "] - - name: dateparse - args: "MM-dd yyyy" - date_time: - # 08-25 20:12 - selector: td[data-title="Description"]:contains(":"):not(:contains("day")) - optional: true - filters: - - name: regexp - args: Uploaded (\d{2}-\d{2}.\d{2}:\d{2}) - - name: replace - args: ["\xA0", " "] - - name: dateparse - args: "MM-dd HH:mm" - date_day: - # Y-day 16:23 - # Today 13:31 - selector: td[data-title="Description"]:contains("day") - optional: true - filters: - - name: regexp - args: Uploaded.(.+?), - - name: replace - args: ["\xA0", " "] - - name: replace - args: ["Y-day", "Yesterday"] - - name: fuzzytime - date: - text: "{{ if or .Result.date_year .Result.date_time .Result.date_day }}{{ or .Result.date_year .Result.date_time .Result.date_day }}{{ else }}now{{ end }}" - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/torrentz2nz.yml b/config/prowlarr/Definitions/torrentz2nz.yml deleted file mode 100644 index 7fade413..00000000 --- a/config/prowlarr/Definitions/torrentz2nz.yml +++ /dev/null @@ -1,78 +0,0 @@ ---- -id: torrentz2nz -name: Torrentz2nz -description: "Torrentz2nz is a Public torrent meta-search engine" -language: en-US -type: public -encoding: UTF-8 -links: - - https://torrentz2.nz/ -legacylinks: - - https://torrentz2.mrunblock.bond/ - - https://torrentz2.nocensor.cloud/ - -caps: - # unfortunately torrentz2nz does not display categories anywhere in its search results page :-( - categorymappings: - - {id: 1, cat: Movies, desc: "Movies"} - - {id: 2, cat: TV, desc: "TV"} - - {id: 3, cat: Other, desc: "Other"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - -settings: - - name: info_category_8000 - type: info - label: About Torrentz2nz Categories - default: Torrentz2nz does not return categories in its search results. To sync to your apps, include 8000(Other) in your Apps' Sync Categories. - -search: - paths: - - path: search - inputs: - q: "{{ .Keywords }}" - - rows: - selector: dl - - fields: - category: - text: 3 - title: - selector: dt - details: - selector: dt a - attribute: href - magnet: - selector: dd a - attribute: href - date: - selector: dd span:nth-child(2) - filters: - - name: replace - args: ["a ", "1 "] - - name: timeago - size: - selector: dd span:nth-child(3) - seeders: - selector: dd span:nth-child(4) - filters: - - name: re_replace - args: ["(\\d+)\\.(\\d+)K", "$1$200"] - - name: replace - args: ["K", "000"] - leechers: - selector: dd span:nth-child(5) - filters: - - name: re_replace - args: ["(\\d+)\\.(\\d+)K", "$1$200"] - - name: replace - args: ["K", "000"] - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/tosky.yml b/config/prowlarr/Definitions/tosky.yml deleted file mode 100644 index fc56ee58..00000000 --- a/config/prowlarr/Definitions/tosky.yml +++ /dev/null @@ -1,187 +0,0 @@ ---- -id: tosky -name: ToSky -description: "ToSky is a Private CHINESE tracker for MOVIES / TV / GENERAL" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://t.tosky.club/ - -caps: - categorymappings: - - {id: 401, cat: Movies, desc: "Movies/电影"} - - {id: 402, cat: TV, desc: "TV Series/电视剧"} - - {id: 403, cat: TV, desc: "TV Shows/综艺"} - - {id: 405, cat: TV/Anime, desc: "Animations/动漫"} - - {id: 409, cat: Audio, desc: "Music/音乐"} - - {id: 406, cat: Audio/Video, desc: "Music Videos/音乐视频"} - - {id: 410, cat: Other, desc: "Educations/教育"} - - {id: 411, cat: Audio/Audiobook, desc: "Audio Books/有声书"} - - {id: 407, cat: TV/Sport, desc: "Sports/体育"} - - {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"} - - {id: 408, cat: Other, desc: "Others/其他"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, doubanid] - movie-search: [q, imdbid, doubanid] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the ICC2022 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
    1. Veteran User or above would never be deleted.
    2. Elite User or above would never be deleted if parked (at User CP).
    3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row.
    4. Unparked accounts would be deleted if users have not logged in for more than 150 days in a row.
    5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
    " - -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 or .Query.IMDBID .Query.DoubanID }}1{{ 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^="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 - 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: - selector: td.rowfollow:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.11 2024-03-27 diff --git a/config/prowlarr/Definitions/totallykids.yml b/config/prowlarr/Definitions/totallykids.yml deleted file mode 100644 index 62889031..00000000 --- a/config/prowlarr/Definitions/totallykids.yml +++ /dev/null @@ -1,159 +0,0 @@ ---- -id: totallykids -name: TotallyKids -description: "TotallyKids (TK) is a Private Torrent Tracker for CHILDRENS MOVIES / TV / GENERAL" -language: en-US -type: private -encoding: UTF-8 -links: - - http://www.totallykids.tv/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID - -caps: - categorymappings: - - {id: 1, cat: TV, desc: "TV Kids"} - - {id: 24, cat: TV, desc: "TV Teens"} - - {id: 2, cat: TV, desc: "TV Family"} - - {id: 15, cat: TV, desc: "TV Educational"} - - {id: 16, cat: Movies, desc: "Movies Family"} - - {id: 23, cat: Movies, desc: "Movies Teen"} - - {id: 5, cat: Audio, desc: "Music"} - - {id: 6, cat: Audio/Audiobook, desc: "Audiobooks"} - - {id: 4, cat: Books/Comics, desc: "Comics"} - - {id: 7, cat: Books/EBook, desc: "E-Books"} - - {id: 8, cat: PC/Games, desc: "Games"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid] - movie-search: [q, imdbid] - music-search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: info_results - type: info - label: "Search results" - default: "Only the xBtit_Default style is supported with this indexer.
    For best results, increase the torrents number in your profile to 100.
    Default is 15." - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: data - options: - data: created - seeds: seeders - size: size - filename: title - - name: type - type: select - label: Order requested from site - default: DESC - options: - DESC: desc - ASC: asc - -login: - path: index.php?page=login - method: form - form: form[action^="index.php?page=login"] - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: tr td span[style="color:#FF0000;"] - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - # http://www.totallykids.tv/index.php?page=torrents&search=scooby&category=1;2;5;6;4;7;8;15;24;16;23&options=0&active=0 - - path: index.php - inputs: - page: torrents - search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}" - # 0=title, 1=title&descr, 2=descr - options: "{{ if .Query.IMDBID }}2{{ else }}0{{ end }}" - # 0 all, 1 activeonly, 2 deadonly - active: 0 - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - - rows: - selector: "table.lista tr td table.lista tr:has(a[href^=\"index.php?page=torrent-details\"]){{ if .Config.freeleech }}:has(img[src=\"gold/gold.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: td a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: td a[href^="index.php?page=torrent-details"] - details: - selector: td a[href^="index.php?page=torrent-details"] - attribute: href - download: - selector: td a[href^="download.php"] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - poster: - selector: td a[href^="index.php?page=torrent-details"]:not(a[onmouseover*="torrentimg/nocover.jpg"]) - attribute: onmouseover - filters: - - name: regexp - args: src=([^\s]+) - size: - selector: td:nth-child(10) - # two flavours of dates - date_day: - # Yesterday at 10:03:30 PM - selector: td:nth-child(5):contains("day") - # auto adjusted by site account profile - optional: true - filters: - - name: re_replace - args: ["[ ]at|[//\xa0\\s,]+", " "] - date_year: - # February 09, 2019, 06:35:08 AM - selector: td:nth-child(5):not(:contains("day")) - # auto adjusted by site account profile - optional: true - filters: - - name: re_replace - args: ["[//\xa0\\s,]+", " "] - - name: dateparse - args: "MMMM dd yyyy hh:mm:ss tt" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - img[src="gold/gold.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 7 days (as seconds = 7 x 24 x 60 x 60) - text: 604800 -# xbtit diff --git a/config/prowlarr/Definitions/totheglorycookie.yml b/config/prowlarr/Definitions/totheglorycookie.yml deleted file mode 100644 index 1de4285e..00000000 --- a/config/prowlarr/Definitions/totheglorycookie.yml +++ /dev/null @@ -1,190 +0,0 @@ ---- -id: totheglorycookie -name: ToTheGloryCookie -description: "ToTheGlory (TTG) A Chinese tracker. This uses the cookie method for access" -language: zh-CN -type: private -encoding: UTF-8 -requestDelay: 2 -links: - - https://totheglory.im/ - -caps: - categories: - # 电影 Movie - 电影DVDRip: Movies/SD # Movie DVDRip - 电影720p: Movies/HD # Movie 720p - 电影1080i/p: Movies/HD # Movie 1080i / p - BluRay原盘: Movies/BluRay # BluRay original disc - 影视2160p: Movies/UHD # Media - 2160p - UHD原盘: Movies/UHD # Blu-ray UHD - # 纪录片 Docs - 纪录片720p: Movies/HD # Documentary 720p - 纪录片1080i/p: Movies/HD # Documentary 1080i / p - 纪录片BluRay原盘: Movies/BluRay # Documentary BluRay Original - # 剧集 TV - 欧美剧720p: TV/HD # TV Series - EU/US - 720p - 欧美剧1080i/p: TV/HD # TV Series - EU/US - 1080i/p - 高清日剧: TV/HD # TV Series - JP - 大陆港台剧1080i/p: TV/HD # TV Series - CN - 1080i/p - 大陆港台剧720p: TV/HD # TV Series - CN - 720p - 高清韩剧: TV/HD # TV Series - KR - # 剧集包 TV Packs - 欧美剧包: TV/HD # TV Packs - EU/US - 日剧包: TV/HD # TV Packs - JP - 韩剧包: TV/HD # TV Packs - CN - 华语剧包: TV/HD # TV Packs - KR - # 音乐 Audio - (电影原声&Game)OST: Audio # OST - (Movie & Game) Track - 无损音乐FLAC&APE: Audio/Lossless # FLAC & APE - MV&演唱会: Audio/Video # MV & Concert - # 其他 Other - 高清体育节目: TV/Sport # HD Sports - 高清动漫: TV/Anime # HD Animation - 韩国综艺: TV/HD # TV Shows - KR - 高清综艺: TV/HD # TV Shows - 日本综艺: TV/HD # TV Shows - JP - MiniVideo: Other # MiniVideo - 补充音轨: Audio # Supplemental audio tracks - iPhone/iPad视频: PC/Mobile-Other # IPhone / iPad video - # 单机游戏 - PC: PC/Games # Games - PC - MAC: PC/Mac # Games - MAC - # 微软系列 - XBOX360: Console/XBox 360 # MicroSoft - XBOX360 - XBOX1: Console/XBox # MicroSoft - XBOX360 - XBLA: Console/XBox # MicroSoft - XBLA - XBOX+to+XBOX360: Console/XBox # MicroSoft - XBOX to XBOX360 - # 索尼系列 - PS2: Console/Other # SONY - PS2 - PSP: Console/PSP # SONY - PSP - PS4: Console/PS4 # SONY - PS4 - PS3: Console/PS3 # SONY - PS3 - PSV: Console/PS Vita # SONY - PSV - # 任天堂系列 - WIIU: Console/WiiU # Nintendo - WIIU - WII: Console/Wii # Nintendo- WII - SWITCH: Console/Other # Nintendo - SWITCH - NDS: Console/NDS # Nintendo - NDS - NGC: Console/Other # Nintendo - NGC - # 主机影视 - PS3兼容高清: Console/PS3 # Video - HD - PS3 - PSP兼容高清&标清: Console/PSP # Video - SD&HD - PSP - XBOX360兼容高清: Console/XBox 360 # Video - HD - XBOX360 - Game+Video: Console/Other # Video - Game Video - # 软件 - APPZ: PC # Software - APPZ - Game+Ebook: Books/EBook # Software - Game Ebook - Ebook: Books/EBook # Software - Ebook - # 苹果系列 - iPhone/iPad游戏: PC/Mobile-iOS # Apple - Game - iPhone/iPad - iPad书籍: Books/EBook # Apple - Book - iPad - iPhone/iPad软件: PC/Mobile-iOS # Apple - Software - iPhone/iPad - - 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 - type: info - label: How to get the Cookie - default: "
    1. Login to this tracker with your browser
    2. Open the DevTools panel by pressing F12
    3. Select the Network tab
    4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
    5. Refresh the page by pressing F5
    6. Click on the first row entry
    7. Select the Headers tab on the Right panel
    8. Find 'cookie:' in the Request Headers section
    9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
    " - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: my.php - selector: a[href*="logout.php"] - -search: - paths: - - path: browse.php - inputs: - c: M - - path: browse.php - categories: [1000, 1010, 1020, 1030, 1040, 1050, 1060, 1070, 1080, 1090, 1100, 1110, 1120, 1130, 1140, 1150, 1160, 1170, 1180, 4000, 4010, 4020, 4030, 4040, 4050, 4060, 4070, 7000, 7010, 7020, 7030, 7040, 7050, 7060] - inputs: - c: G - inputs: - search_field: "{{ range .Categories }}分类:`{{.}}` {{end}}{{ if .Query.IMDBID }}imdb{{ .Query.IMDBIDShort }}{{ else }}{{ .Keywords }}{{ end }}" - rows: - selector: table#torrent_table > tbody > tr[id] - - fields: - description: - selector: div.name_left > a > b - title: - selector: div.name_left > a > b - remove: span - category: - selector: tr[id] td:nth-child(1) > a - attribute: href - filters: - - name: querystring - args: search_field - - name: replace - args: ["category:", ""] - - name: trim - args: "\"" - details: - selector: div.name_left > a - attribute: href - download: - selector: a.dl_a - attribute: href - files: - selector: td:nth-child(3) - size: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(9) - filters: - - name: split - args: ["/", 0] - leechers: - selector: td:nth-child(9) - filters: - - name: split - args: ["/", 1] - - name: replace - args: ["\n", ""] - grabs: - selector: td:nth-child(8) - date: - selector: td:nth-child(5) - filters: - - name: append - args: " +08:00" # CST - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss zzz" - imdbid: - selector: span.imdb_rate > a - attribute: href - downloadvolumefactor: - case: - img[alt="free"]: 0 - img[alt="50%"]: 0.5 - img[alt="30%"]: 0.3 - "*": 1 - uploadvolumefactor: - case: - img[alt="200%"]: 2 - "*": 1 - minimumratio: - case: - img[title="Hit and Run"]: 1 - "*": 0 - minimumseedtime: - case: - img[title="Hit and Run"]: 216000 - "*": 0 -# engine n/a diff --git a/config/prowlarr/Definitions/trupornolabs.yml b/config/prowlarr/Definitions/trupornolabs.yml deleted file mode 100644 index 8aed5cb8..00000000 --- a/config/prowlarr/Definitions/trupornolabs.yml +++ /dev/null @@ -1,87 +0,0 @@ ---- -id: trupornolabs -name: truPornolabs -description: "truPornolabs is a RUSSIAN Public tracker for 3X" -language: ru-RU -type: public -encoding: UTF-8 -links: - - http://trupornolabs.org/ # https not supported - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: - - name: info_flaresolverr - type: info_flaresolverr - -search: - paths: - # http://trupornolabs.org/search/vika - # http://trupornolabs.org/browse/0/0/0/0 - - path: "{{ if .Keywords }}search/{{ .Keywords }}{{ else }}browse/0/0/0/0{{ end }}" - - rows: - # filter out torrents with 0B for issue #9756 - selector: tr.gai:has(a[href^="/torrent/"]):has(td:nth-of-type(3):contains("GB")), tr.gai:has(a[href^="/torrent/"]):has(td:nth-of-type(3):contains("MB")) - - fields: - category: - text: XXX - title: - selector: a[href^="/torrent/"] - details: - selector: a[href^="/torrent/"] - attribute: href - download: - selector: a.downgif - attribute: href - magnet: - selector: a[href^="magnet:?xt="] - attribute: href - date: - selector: td:first-of-type - filters: - - name: replace - args: ["Янв", "Jan"] - - name: replace - args: ["Фев", "Feb"] - - name: replace - args: ["Мар", "Mar"] - - name: replace - args: ["Апр", "Apr"] - - name: replace - args: ["Май", "May"] - - name: replace - args: ["Июн", "Jun"] - - name: replace - args: ["Июл", "Jul"] - - name: replace - args: ["Авг", "Aug"] - - name: replace - args: ["Сен", "Sep"] - - name: replace - args: ["Окт", "Oct"] - - name: replace - args: ["Ноя", "Nov"] - - name: replace - args: ["Дек", "Dec"] - - name: append - args: " +03:00" # MSK - - name: dateparse - args: "dd MMM yy zzz" - size: - selector: td:nth-of-type(3) - seeders: - selector: span.green - leechers: - selector: span.red - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/turknova.yml b/config/prowlarr/Definitions/turknova.yml deleted file mode 100644 index 1ad73383..00000000 --- a/config/prowlarr/Definitions/turknova.yml +++ /dev/null @@ -1,196 +0,0 @@ ---- -id: turknova -name: TurkNova -description: "TurkNova is a TURKISH Private Torrent Tracker for MOVIES / TV / GENERAL. This Indexer is for English only." -language: en-US -type: private -encoding: UTF-8 -links: - - https://turknova.org/ -legacylinks: - - https://www.turknova.net/ - -caps: - categorymappings: - - {id: 64, cat: Movies/UHD, desc: "4K - UHD"} - - {id: 40, cat: Movies/HD, desc: "1080p - 720p - BDRip - mRip"} - - {id: 71, cat: Movies/HD, desc: "H265 - HECV"} - - {id: 39, cat: Movies, desc: "BOXSET"} - - {id: 43, cat: Movies/HD, desc: "NETFLIX"} - - {id: 84, cat: TV, desc: "DISNEY+"} - - {id: 85, cat: TV, desc: "AMZN PRIME"} - - {id: 92, cat: TV, desc: "DISCOVERY+"} - - {id: 88, cat: TV, desc: "BLUTV"} - - {id: 74, cat: TV, desc: "EXXEN"} - - {id: 77, cat: TV, desc: "GAIN"} - - {id: 87, cat: TV, desc: "TOD"} - - {id: 91, cat: TV, desc: "TABII"} - - {id: 94, cat: TV, desc: "MUBI"} - - {id: 59, cat: Movies/WEB-DL, desc: "WEB-DL / WEBRip"} - - {id: 34, cat: TV/Documentary, desc: "Belgesel"} - - {id: 60, cat: TV/Foreign, desc: "Yabancı Dizi"} - - {id: 72, cat: TV/Anime, desc: "Animasyon"} - - {id: 48, cat: TV/HD, desc: "HDTV - Rip"} - - {id: 55, cat: TV, desc: "Türk Filmi"} - - {id: 95, cat: Other, desc: "Yeşilçam"} - - {id: 46, cat: Other, desc: "Eğitim"} - - {id: 53, cat: Other, desc: "Resim"} - - {id: 50, cat: Audio, desc: "Müzik"} - - {id: 52, cat: PC, desc: "Program"} - - {id: 62, cat: PC, desc: "İşletim Sistemi"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-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_layout - type: info - label: Layout - default: "
    1. Only the English Classic profile is supported.
    2. Make sure to set the Torrent Listing (Listeleme Biçimi) option in your profile to Classic (Klasik)
    3. And set the Language (Dil) to English
    4. Using the Modern theme will prevent results, and using Turkish will prevent upload dates.
    " - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Search results - default: "If you are getting the error: An error has occurred!You can't view this page unless you read all your unread messages, then access the site with your browser and mark as read all PMs." - -login: - path: ?p=home&pid=1 - method: form - form: form#sls_form - submitpath: ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: div.error - test: - path: ?p=home&pid=1 - selector: a#logout - -search: - paths: - - path: / - keywordsfilters: - - name: re_replace - args: ["[^a-zA-Z0-9]+", "%25"] - inputs: - p: torrents - pid: 32 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - "sortOptions[sortBy]": "{{ .Config.sort }}" - "sortOptions[sortOrder]": "{{ .Config.type }}" - error: - - selector: div.error:not(:contains("Hiçbir sonuç bulunamadı.")):not(:contains("There are no results found.")) - # does not support imdbid search and does not return imdb link in results. - - rows: - selector: "table#torrents_table_classic > tbody > tr:has(td.torrent_name){{ if .Config.freeleech }}:has(img[title=\"FREE!\"]){{ else }}{{ end }}" - - fields: - category: - selector: div.category_image > a - attribute: href - filters: - - name: querystring - args: cid - title: - selector: a[href*="?p=torrents&pid=10&action=details"] - details: - # href="https://turknova.org/?p=torrents&pid=10&action=details&tid=40737" - selector: a[href*="?p=torrents&pid=10&action=details"] - attribute: href - download: - # from details page href="https://turknova.org/?p=torrents&pid=10&action=download&tid=40774" - selector: a[href*="?p=torrents&pid=10&action=details"] - attribute: href - filters: - - name: replace - args: ["details", "download"] - poster: - selector: a[rel="fancybox"] - attribute: href - date_day: - optional: true - # Uploaded Friday at 05:11 by - # Uploaded Today at 00:48 by - # Uploaded Yesterday at 23:57 by - selector: td.torrent_name:contains(" at ") - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: replace - args: [" at ", " "] - - name: fuzzytime - date_year: - # auto adjusted by site account profile - optional: true - # Uploaded 30-01-2019 15:02 by - selector: td.torrent_name:not(:contains(" at ")) - filters: - - name: regexp - args: "Uploaded (.+?) by" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date: - text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" - size: - selector: a[rel="torrent_size"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - grabs: - selector: a[rel="times_completed"] - downloadvolumefactor: - case: - "img[title=\"FREE!\"]": 0 - "img[title=\"Download Multiplier: 0.5\"]": 0.5 - "*": 1 - uploadvolumefactor: - case: - "img[title=\"Upload Multiplier: 2\"]": 2 - "*": 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/turkseed.yml b/config/prowlarr/Definitions/turkseed.yml deleted file mode 100644 index 41fea6bf..00000000 --- a/config/prowlarr/Definitions/turkseed.yml +++ /dev/null @@ -1,152 +0,0 @@ ---- -id: turkseed -name: TurkSeed -description: "TurkSeed (Aturk) is a TURKISH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: tr-TR -type: private -encoding: UTF-8 -links: - - https://trendfilm.net/ -legacylinks: - - https://turkseed.com/ - -caps: - categorymappings: - - {id: 46, cat: Movies/3D, desc: "3D"} - - {id: 47, cat: Movies/UHD, desc: "4K"} - - {id: 74, cat: Movies/UHD, desc: "4K Plus"} - - {id: 61, cat: PC/Mobile-Android, desc: "Android"} - - {id: 48, cat: TV/Anime, desc: "Animasyon"} - - {id: 40, cat: TV/Documentary, desc: "Belgesel"} - - {id: 49, cat: Movies/BluRay, desc: "Bluray"} - - {id: 50, cat: Movies, desc: "Boxset"} - - {id: 70, cat: TV, desc: "DIGITAL TV"} - - {id: 73, cat: TV, desc: "DIGITAL TV Plus"} - - {id: 51, cat: Movies/DVD, desc: "DVD"} - - {id: 42, cat: Movies, desc: "Dini"} - - {id: 4, cat: Other, desc: "Diğer"} - - {id: 41, cat: Books/EBook, desc: "E-Kitap"} - - {id: 64, cat: Books, desc: "Eğitim"} - - {id: 55, cat: Audio/Lossless, desc: "FLAC"} - - {id: 52, cat: Movies/HD, desc: "HD"} - - {id: 66, cat: Movies/HD, desc: "Netflix"} - - {id: 26, cat: PC/Games, desc: "Oyunlar"} - - {id: 30, cat: PC, desc: "Programlar"} - - {id: 53, cat: Movies/SD, desc: "SD"} - - {id: 54, cat: Movies, desc: "Türk Filmi"} - - {id: 58, cat: Audio/Video, desc: "Video Klip"} - - {id: 43, cat: TV, desc: "Yabancı Dizi"} - - {id: 57, cat: Movies, desc: "Yabancı Müzik"} - - {id: 45, cat: TV, desc: "Yarışma - Show"} - - {id: 44, cat: TV, desc: "Yerli Dizi"} - - {id: 56, cat: Audio, desc: "Yerli Müzik"} - - {id: 59, cat: PC, desc: "İşletim Sistemi"} - - 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 - type: info - label: How to get the Cookie - default: "
    1. Login to this tracker with your browser
    2. Open the DevTools panel by pressing F12
    3. Select the Network tab
    4. Click on the Doc button (Chrome Browser) or HTML button (FireFox)
    5. Refresh the page by pressing F5
    6. Click on the first row entry
    7. Select the Headers tab on the Right panel
    8. Find 'cookie:' in the Request Headers section
    9. Select and Copy the whole cookie string (everything after 'cookie: ') and Paste here.
    " - - name: freeleech - type: checkbox - label: Filter freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -search: - paths: - - path: browse.php - inputs: - do: search - keywords: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: "{{ if .Query.IMDBID }}t_genre{{ else }}t_both{{ end }}" - category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}" - include_dead_torrents: yes - sort: "{{ .Config.sort }}" - order: "{{ .Config.type }}" - # does not return imdb link in results - - rows: - selector: "table.sortable tr:has(a[href*=\"/details.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href*="/details.php?id="] - details: - selector: a[href*="/details.php?id="] - attribute: href - download: - selector: a[href*="/download.php?id="] - attribute: href - poster: - selector: img[src*="/torrents/images/"] - attribute: src - date: - selector: td:nth-child(2) > div:last-child - # auto adjusted by site account profile - filters: - - name: dateparse - args: "dd-MM-yy HH:mm" - size: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - minimumratio: - text: 0.6 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# TS Special Edition v.8.0 diff --git a/config/prowlarr/Definitions/tvroad.yml b/config/prowlarr/Definitions/tvroad.yml deleted file mode 100644 index 668be168..00000000 --- a/config/prowlarr/Definitions/tvroad.yml +++ /dev/null @@ -1,240 +0,0 @@ ---- -id: tvroad -name: TvRoad -description: "TvRoad is a FRENCH Private Torrent Tracker for TV" -language: fr-FR -type: private -encoding: UTF-8 -links: - - https://tvroad.info/ - -caps: - categorymappings: - - {id: anime-fr-720-non-non, cat: TV/Anime, desc: "Anime FR 720p"} - - {id: anime-fr-720-non-pack, cat: TV/Anime, desc: "Anime FR 720p Pack"} - - {id: anime-fr-720-web-non, cat: TV/Anime, desc: "Anime FR 720p"} - - {id: anime-fr-720-web-pack, cat: TV/Anime, desc: "Anime FR 720p Pack"} - - {id: anime-fr-1080-non-non, cat: TV/Anime, desc: "Anime FR 1080p"} - - {id: anime-fr-1080-non-pack, cat: TV/Anime, desc: "Anime FR 1080p Pack"} - - {id: anime-fr-1080-web-non, cat: TV/Anime, desc: "Anime FR 1080p WEB-DL"} - - {id: anime-fr-1080-web-pack, cat: TV/Anime, desc: "Anime FR 1080p Pack WEB-DL"} - - {id: anime-fr-sd-non-non, cat: TV/Anime, desc: "Anime FR SD"} - - {id: anime-fr-sd-non-pack, cat: TV/Anime, desc: "Anime FR SD Pack"} - - {id: anime-fr-sd-web-non, cat: TV/Anime, desc: "Anime FR SD WEB-DL"} - - {id: anime-fr-sd-web-pack, cat: TV/Anime, desc: "Anime FR SD Pack WEB-DL"} - - {id: anime-vostf-720-non-non, cat: TV/Anime, desc: "Anime VOSTFR 720p"} - - {id: anime-vostf-720-non-pack, cat: TV/Anime, desc: "Anime VOSTFR 720p Pack"} - - {id: anime-vostf-720-web-non, cat: TV/Anime, desc: "Anime VOSTFR 720p WEB-DL"} - - {id: anime-vostf-720-web-pack, cat: TV/Anime, desc: "Anime VOSTFR 720p Pack WEB-DL"} - - {id: anime-vostf-1080-non-non, cat: TV/Anime, desc: "Anime VOSTFR 1080p"} - - {id: anime-vostf-1080-non-pack, cat: TV/Anime, desc: "Anime VOSTFR 1080p Pack"} - - {id: anime-vostf-1080-web-non, cat: TV/Anime, desc: "Anime VOSTFR 1080p WEB-DL"} - - {id: anime-vostf-1080-web-pack, cat: TV/Anime, desc: "Anime VOSTFR 1080p Pack WEB-DL"} - - {id: anime-vostf-sd-non-non, cat: TV/Anime, desc: "Anime VOSTFR SD"} - - {id: anime-vostf-sd-non-pack, cat: TV/Anime, desc: "Anime VOSTFR SD Pack"} - - {id: anime-vostf-sd-web-non, cat: TV/Anime, desc: "Anime VOSTFR SD WEB-DL"} - - {id: anime-vostf-sd-web-pack, cat: TV/Anime, desc: "Anime VOSTFR SD Pack WEB-DL"} - - {id: anime-fr-2160-non-non, cat: TV/Anime, desc: "Anime FR 2160p"} - - {id: anime-fr-2160-non-pack, cat: TV/Anime, desc: "Anime FR 2160p Pack"} - - {id: anime-fr-2160-web-non, cat: TV/Anime, desc: "Anime FR 2160p WEB-DL"} - - {id: anime-fr-2160-web-pack, cat: TV/Anime, desc: "Anime FR 2160p Pack WEB-DL"} - - {id: anime-vostf-2160-non-non, cat: TV/Anime, desc: "Anime VOSTFR 2160p"} - - {id: anime-vostf-2160-non-pack, cat: TV/Anime, desc: "Anime VOSTFR 2160p Pack"} - - {id: anime-vostf-2160-web-non, cat: TV/Anime, desc: "Anime VOSTFR 2160p WEB-DL"} - - {id: anime-vostf-2160-web-pack, cat: TV/Anime, desc: "Anime VOSTFR 2160p Pack WEB-DL"} - - {id: docs-fr-720-non-non, cat: TV/Documentary, desc: "Docs FR 720p"} - - {id: docs-fr-720-non-pack, cat: TV/Documentary, desc: "Docs FR 720p Pack"} - - {id: docs-fr-720-web-non, cat: TV/Documentary, desc: "Docs FR 720p WEB-DL"} - - {id: docs-fr-720-web-pack, cat: TV/Documentary, desc: "Docs FR 720p Pack WEB-DL"} - - {id: docs-fr-1080-non-non, cat: TV/Documentary, desc: "Docs FR 1080p"} - - {id: docs-fr-1080-non-pack, cat: TV/Documentary, desc: "Docs FR 1080p Pack"} - - {id: docs-fr-1080-web-non, cat: TV/Documentary, desc: "Docs FR 1080p WEB-DL"} - - {id: docs-fr-1080-web-pack, cat: TV/Documentary, desc: "Docs FR 1080p Pack WEB-DL"} - - {id: docs-fr-sd-non-non, cat: TV/Documentary, desc: "Docs FR SD"} - - {id: docs-fr-sd-non-pack, cat: TV/Documentary, desc: "Docs FR SD Pack"} - - {id: docs-fr-sd-web-non, cat: TV/Documentary, desc: "Docs FR SD WEB-DL"} - - {id: docs-fr-sd-web-pack, cat: TV/Documentary, desc: "Docs FR SD Pack WEB-DL"} - - {id: docs-vostf-720-non-non, cat: TV/Documentary, desc: "Docs VOSTFR 720p"} - - {id: docs-vostf-720-non-pack, cat: TV/Documentary, desc: "Docs VOSTFR 720p Pack"} - - {id: docs-vostf-720-web-non, cat: TV/Documentary, desc: "Docs VOSTFR 720p WEB-DL"} - - {id: docs-vostf-720-web-pack, cat: TV/Documentary, desc: "Docs VOSTFR 720p Pack WEB-DL"} - - {id: docs-vostf-1080-non-non, cat: TV/Documentary, desc: "Docs VOSTFR 1080p"} - - {id: docs-vostf-1080-non-pack, cat: TV/Documentary, desc: "Docs VOSTFR 1080p Pack"} - - {id: docs-vostf-1080-web-non, cat: TV/Documentary, desc: "Docs VOSTFR 1080p WEB-DL"} - - {id: docs-vostf-1080-web-pack, cat: TV/Documentary, desc: "Docs VOSTFR 1080p Pack WEB-DL"} - - {id: docs-vostf-sd-non-non, cat: TV/Documentary, desc: "Docs VOSTFR SD"} - - {id: docs-vostf-sd-non-pack, cat: TV/Documentary, desc: "Docs VOSTFR SD Pack"} - - {id: docs-vostf-sd-web-non, cat: TV/Documentary, desc: "Docs VOSTFR SD WEB-DL"} - - {id: docs-vostf-sd-web-pack, cat: TV/Documentary, desc: "Docs VOSTFR SD Pack WEB-DL"} - - {id: docs-vostf-2160-non-non, cat: TV/Documentary, desc: "Docs VOSTFR 2160p"} - - {id: docs-vostf-2160-non-pack, cat: TV/Documentary, desc: "Docs VOSTFR 2160p Pack"} - - {id: docs-vostf-2160-web-non, cat: TV/Documentary, desc: "Docs VOSTFR 2160p WEB-DL"} - - {id: docs-vostf-2160-web-pack, cat: TV/Documentary, desc: "Docs VOSTFR 2160p Pack WEB-DL"} - - {id: docs-fr-2160-non-non, cat: TV/Documentary, desc: "Docs FR 2160p"} - - {id: docs-fr-2160-non-pack, cat: TV/Documentary, desc: "Docs FR 2160p Pack"} - - {id: docs-fr-2160-web-non, cat: TV/Documentary, desc: "Docs FR 2160p WEB-DL"} - - {id: docs-fr-2160-web-pack, cat: TV/Documentary, desc: "Docs FR 2160p Pack WEB-DL"} - - {id: serie-fr-720-non-non, cat: TV/HD, desc: "Serie FR 720p"} - - {id: serie-fr-720-non-pack, cat: TV/HD, desc: "Serie FR 720p Pack"} - - {id: serie-fr-720-web-non, cat: TV/HD, desc: "Serie FR 720p WEB-DL"} - - {id: serie-fr-720-web-pack, cat: TV/HD, desc: "Serie FR 720p Pack WEB-DL"} - - {id: serie-fr-1080-non-non, cat: TV/HD, desc: "Serie FR 1080p"} - - {id: serie-fr-1080-non-pack, cat: TV/HD, desc: "Serie FR 1080p Pack"} - - {id: serie-fr-1080-web-non, cat: TV/HD, desc: "Serie FR 1080p WEB-DL"} - - {id: serie-fr-1080-web-pack, cat: TV/HD, desc: "Serie FR 1080p Pack WEB-DL"} - - {id: serie-fr-sd-non-non, cat: TV/SD, desc: "Serie FR SD"} - - {id: serie-fr-sd-non-pack, cat: TV/SD, desc: "Serie FR SD Pack"} - - {id: serie-fr-sd-web-non, cat: TV/SD, desc: "Serie FR SD WEB-DL"} - - {id: serie-fr-sd-web-pack, cat: TV/SD, desc: "Serie FR SD Pack WEB-DL"} - - {id: serie-vostf-720-non-non, cat: TV/HD, desc: "Serie VOSTFR 720p"} - - {id: serie-vostf-720-non-pack, cat: TV/HD, desc: "Serie VOSTFR 720p Pack"} - - {id: serie-vostf-720-web-non, cat: TV/HD, desc: "Serie VOSTFR 720p WEB-DL"} - - {id: serie-vostf-720-web-pack, cat: TV/HD, desc: "Serie VOSTFR 720p Pack WEB-DL"} - - {id: serie-vostf-1080-non-non, cat: TV/HD, desc: "Serie VOSTFR 1080p"} - - {id: serie-vostf-1080-non-pack, cat: TV/HD, desc: "Serie VOSTFR 1080p Pack"} - - {id: serie-vostf-1080-web-non, cat: TV/HD, desc: "Serie VOSTFR 1080p WEB-DL"} - - {id: serie-vostf-1080-web-pack, cat: TV/HD, desc: "Serie VOSTFR 1080p Pack WEB-DL"} - - {id: serie-vostf-sd-non-non, cat: TV/SD, desc: "Serie VOSTFR SD"} - - {id: serie-vostf-sd-non-pack, cat: TV/SD, desc: "Serie VOSTFR SD Pack"} - - {id: serie-vostf-sd-web-non, cat: TV/SD, desc: "Serie VOSTFR SD WEB-DL"} - - {id: serie-vostf-sd-web-pack, cat: TV/SD, desc: "Serie VOSTFR SD Pack WEB-DL"} - - {id: serie-fr-2160-non-non, cat: TV/UHD, desc: "Serie FR 2160p"} - - {id: serie-fr-2160-non-pack, cat: TV/UHD, desc: "Serie FR 2160p Pack"} - - {id: serie-fr-2160-web-non, cat: TV/UHD, desc: "Serie FR 2160p WEB-DL"} - - {id: serie-fr-2160-web-pack, cat: TV/UHD, desc: "Serie FR 2160p Pack WEB-DL"} - - {id: serie-vostf-2160-non-non, cat: TV/UHD, desc: "Serie VOSTFR 2160p"} - - {id: serie-vostf-2160-non-pack, cat: TV/UHD, desc: "Serie VOSTFR 2160p Pack"} - - {id: serie-vostf-2160-web-non, cat: TV/UHD, desc: "Serie VOSTFR 2160p WEB-DL"} - - {id: serie-vostf-2160-web-pack, cat: TV/UHD, desc: "Serie VOSTFR 2160p Pack WEB-DL"} - - {id: tvreal-fr-720-non-non, cat: TV/HD, desc: "TvReal FR 720p"} - - {id: tvreal-fr-720-non-pack, cat: TV/HD, desc: "TvReal FR 720p Pack"} - - {id: tvreal-fr-720-web-non, cat: TV/HD, desc: "TvReal FR 720p WEB-DL"} - - {id: tvreal-fr-720-web-pack, cat: TV/HD, desc: "TvReal FR 720p Pack WEB-DL"} - - {id: tvreal-fr-1080-non-non, cat: TV/HD, desc: "TvReal FR 1080p"} - - {id: tvreal-fr-1080-non-pack, cat: TV/HD, desc: "TvReal FR 1080p"} - - {id: tvreal-fr-1080-web-non, cat: TV/HD, desc: "TvReal FR 1080p WEB-DL"} - - {id: tvreal-fr-1080-web-pack, cat: TV/HD, desc: "TvReal FR 1080p WEB-DL"} - - {id: tvreal-fr-sd-non-non, cat: TV/SD, desc: "TvReal FR SD"} - - {id: tvreal-fr-sd-non-pack, cat: TV/SD, desc: "TvReal FR SD Pack"} - - {id: tvreal-fr-sd-web-non, cat: TV/SD, desc: "TvReal FR SD WEB-DL"} - - {id: tvreal-fr-sd-web-pack, cat: TV/SD, desc: "TvReal FR SD Pack WEB-DL"} - - {id: tvreal-fr-2160-web-pack, cat: TV/UHD, desc: "TvReal FR 2160p Pack WEB-DL"} - - {id: other, cat: TV, desc: "Other - category was not specified"} - - modes: - search: [q] - tv-search: [q, season, ep] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi.FRENCH: MULTi.FRENCH - ENGLISH: ENGLISH - MULTi.ENGLISH: MULTi.ENGLISH - VOSTFR: VOSTFR - MULTi.VOSTFR: MULTi.VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: info_activity - type: info - label: Account Inactivity - default: "Any inactive account will be permanently deleted depending on your rank:" - -login: - path: TvRoad/Connexion - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: font[color="red"] - test: - path: TvRoad/Bienvenue - selector: a[href$="/TvRoad/Deconnexion"] - -search: - paths: - # https://tvroad.info/TvRoad/Torrents/Recherche?recherche= - - path: TvRoad/Torrents/Recherche - inputs: - recherche: "{{ .Keywords }}" - # type of search: un one of the words), tout (all of the words), exacte (exact match) - type: tout - # search location: nomtorrent (name), desctorrent (descr) - endroit: nomtorrent - # seeded: non (no), oui (yes), peuimporte (either) - tl: peuimporte - # does not support imdbid searches and does not return imdb link in results - - rows: - selector: tr:has(a[href*="/Torrents/Telechargement/"]) - - fields: - category: - selector: a[href*="/SousCategories/"] - attribute: href - optional: true - default: other - filters: - - name: split - args: ["/", -1] - title_phase1: - selector: a.infobulletorrent - attribute: title - 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: - selector: a.infobulletorrent - attribute: href - download: - selector: a[href*="/Torrents/Telechargement/"] - attribute: href - poster: - selector: a.infobulletorrent img - attribute: src - date: - text: now - size: - selector: td.taillejour - grabs: - selector: td:nth-last-child(3) - seeders: - selector: b.seed - leechers: - selector: b.leech - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 - minimumseedtime: - # 4 days (as seconds = 4 x 24 x 60 x 60) - text: 345600 -# TT3.0 FRENCH custom diff --git a/config/prowlarr/Definitions/twisted-music.yml b/config/prowlarr/Definitions/twisted-music.yml deleted file mode 100644 index 1aa6b4c6..00000000 --- a/config/prowlarr/Definitions/twisted-music.yml +++ /dev/null @@ -1,199 +0,0 @@ ---- -id: twisted-music -name: Twisted-Music -description: "Twisted-Music is a Private Torrent Tracker for MUSIC / AUDIO SOFTWARE" -language: en-US -type: private -encoding: UTF-8 -links: - - https://twisted-music.org/ -legacylinks: - - https://twisted-music.info/ - -caps: - categorymappings: - - {id: 3, cat: PC, desc: "Apps"} - - {id: 52, cat: PC, desc: "Apps -- Miscellaneous"} - - {id: 4, cat: Audio, desc: "Albums"} - - {id: 28, cat: Audio, desc: "Alternative"} - - {id: 31, cat: Audio, desc: "Billboard Top 100"} - - {id: 13, cat: Audio, desc: "Blues"} - - {id: 27, cat: Audio, desc: "Chillout"} - - {id: 12, cat: Audio, desc: "Christmas"} - - {id: 26, cat: Audio, desc: "Classical"} - - {id: 11, cat: Audio, desc: "Country"} - - {id: 25, cat: Audio, desc: "Dance"} - - {id: 38, cat: Audio, desc: "Discography"} - - {id: 5, cat: Audio, desc: "DJ Music"} - - {id: 45, cat: Audio, desc: "DJ Music -- Funkymix"} - - {id: 46, cat: Audio, desc: "DJ Music -- Promo Only"} - - {id: 48, cat: Audio, desc: "DJ Music -- Ultimix"} - - {id: 49, cat: Audio, desc: "DJ Radio Sets"} - - {id: 7, cat: Audio, desc: "DMC"} - - {id: 29, cat: Audio, desc: "Dubstep"} - - {id: 9, cat: Audio/Lossless, desc: "Flac Music"} - - {id: 42, cat: Audio/Lossless, desc: "Flac-24 Bit Hi-Res"} - - {id: 33, cat: Audio, desc: "Funk"} - - {id: 18, cat: Audio, desc: "Hardcore"} - - {id: 16, cat: Audio, desc: "Hip hop"} - - {id: 32, cat: Audio, desc: "House"} - - {id: 17, cat: Audio, desc: "Jazz"} - - {id: 35, cat: Audio, desc: "Jungle"} - - {id: 20, cat: Audio, desc: "K3 WAV"} - - {id: 51, cat: Audio/Other, desc: "K3 WAV -- Other WAV"} - - {id: 39, cat: Audio, desc: "Karaoke"} - - {id: 8, cat: Audio, desc: "Mastermix"} - - {id: 19, cat: Audio, desc: "Metal"} - - {id: 41, cat: Audio/MP3, desc: "MP3 NEW RELEASES"} - - {id: 53, cat: Audio/Other, desc: "MP3 NEW RELEASES -- Other MP3s"} - - {id: 43, cat: Audio, desc: "Music Packs"} - - {id: 40, cat: Audio/Video, desc: "Music Videos"} - - {id: 30, cat: Audio, desc: "Oldies"} - - {id: 15, cat: Audio, desc: "Pop music"} - - {id: 36, cat: Audio, desc: "Punk"} - - {id: 23, cat: Audio, desc: "R&B/Motown"} - - {id: 34, cat: Audio, desc: "Reggae"} - - {id: 37, cat: Audio, desc: "Retro"} - - {id: 14, cat: Audio, desc: "Rock"} - - {id: 50, cat: Audio, desc: "Rock -- Rock & roll"} - - {id: 21, cat: Audio, desc: "Soul"} - - {id: 24, cat: Audio, desc: "Trance"} - - {id: 10, cat: Audio, desc: "Twisted-Music Vip"} - - modes: - search: [q] - music-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: added - options: - added: created - seeders: seeders - size: size - name: 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 Torrents per page: setting to 40 on your account profile. The Default is 15. - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: "" - error: - - selector: table:has(a[href*="login.php?error=1"]) - message: - text: "ERROR: Incorrect username!" - - selector: table:has(a[href*="login.php?error=4"]) - message: - text: "ERROR: Incorrect password!" - - selector: table:has(a[href*="login.php?error="]) - message: - text: "ERROR: Something went wrong during login!" - test: - path: index.php - selector: a[href*="/logout.php?logouthash="] - -search: - paths: - - path: browse.php - method: post - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "%"] - inputs: - do: search - keywords: "{{ .Keywords }}" - # t_name, t_description, t_both, t_uploader, t_genre - search_type: t_name - # does not support multi category searching so defaulting to all. - category: 0 - # yes, no - include_dead_torrents: yes - sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}" - order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}" - - rows: - selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href*="/browse.php?category="] - attribute: href - filters: - - name: querystring - args: category - title_default: - # is usually abbreaviated - selector: a[href*="/details.php?id="] - title: - # while still abbreviated, is usually longer than the default - selector: div.tooltip-content div - 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[src*="/torrents/images/"] - attribute: src - date: - selector: td:nth-child(2) - # auto adjusted by site account profile - filters: - - name: regexp - args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - size: - selector: td:nth-last-child(5) - grabs: - selector: td:nth-last-child(4) - seeders: - selector: td:nth-last-child(3) - leechers: - selector: td:nth-last-child(2) - description: - # Wait: 4 h - selector: div.tooltip-content > div:last-child - downloadvolumefactor: - case: - img[src$="/freedownload.gif"]: 0 - img[src$="/silverdownload.gif"]: 0.5 - "*": 1 - uploadvolumefactor: - case: - img[src$="/x2.gif"]: 2 - "*": 1 - minimumratio: - text: 0.5 - minimumseedtime: - # 1 day (as seconds = 24 x 60 x 60) - text: 86400 -# TS Special Edition v.8.0 diff --git a/config/prowlarr/Definitions/uhdtorrent.yml b/config/prowlarr/Definitions/uhdtorrent.yml deleted file mode 100644 index 033b82a8..00000000 --- a/config/prowlarr/Definitions/uhdtorrent.yml +++ /dev/null @@ -1,218 +0,0 @@ ---- -id: uhdtorrent -name: uHDTorrent -description: "uHDTorrent is a TURKISH Private Torrent Tracker for HD MOVIES / TV / GENERAL" -language: tr-TR -type: private -encoding: UTF-8 -links: - - https://uhdtorrent.club/ - -caps: - categorymappings: - - {id: 32, cat: Movies, desc: "Digital Platform İçerikleri"} - - {id: 32, cat: TV, desc: "Digital Platform İçerikleri"} - - {id: 39, cat: Movies, desc: "NETFLİX"} - - {id: 39, cat: TV, desc: "NETFLİX"} - - {id: 38, cat: Movies, desc: "AMAZON PRİME"} - - {id: 38, cat: TV, desc: "AMAZON PRİME"} - - {id: 41, cat: Movies, desc: "DİSNEY+"} - - {id: 41, cat: TV, desc: "DİSNEY+"} - - {id: 37, cat: Movies, desc: "HBOMAX"} - - {id: 37, cat: TV, desc: "HBOMAX"} - - {id: 40, cat: Movies, desc: "TOD"} - - {id: 40, cat: TV, desc: "TOD"} - - {id: 42, cat: Movies, desc: "GAİN"} - - {id: 42, cat: TV, desc: "GAİN"} - - {id: 43, cat: Movies, desc: "MUBI"} - - {id: 43, cat: TV, desc: "MUBI"} - - {id: 44, cat: Movies, desc: "TV+"} - - {id: 44, cat: TV, desc: "TV+"} - - {id: 45, cat: Movies, desc: "EXXEN"} - - {id: 45, cat: TV, desc: "EXXEN"} - - {id: 46, cat: Movies, desc: "TABİİ"} - - {id: 46, cat: TV, desc: "TABİİ"} - - {id: 47, cat: Movies, desc: "ATVP"} - - {id: 47, cat: TV, desc: "ATVP"} - - {id: 59, cat: Movies, desc: "DİĞER"} - - {id: 59, cat: TV, desc: "DİĞER"} - - {id: 48, cat: TV, desc: "Diziler"} - - {id: 49, cat: TV, desc: "Yerli Diziler"} - - {id: 50, cat: TV, desc: "Yerli Dizi Boxset"} - - {id: 52, cat: Audio, desc: "Müzikler"} - - {id: 53, cat: Audio, desc: "Müzikler Yerli"} - - {id: 54, cat: Audio, desc: "Müzikler Yabancı"} - - {id: 55, cat: PC/0day, desc: "Programlar"} - - {id: 56, cat: PC/0day, desc: "Programlar Windows"} - - {id: 57, cat: PC/Games, desc: "Oyunlar"} - - {id: 58, cat: PC/Games, desc: "Oyunla PC"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-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 - type: info - label: Layout - default: "" - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_results - type: info - label: Search results - default: "If you are getting the error Found no results while trying to browse this tracker then first access the site with your browser and check that you are not being forced to change your password because it has expired after 365 days." - -login: - path: ?p=home&pid=1 - method: form - form: form#loginbox_form - submitpath: ajax/login.php - inputs: - action: login - loginbox_membername: "{{ .Config.username }}" - loginbox_password: "{{ .Config.password }}" - loginbox_remember: 1 - selectorinputs: - securitytoken: - selector: "script:contains(\"stKey: \")" - filters: - - name: regexp - args: "stKey: \"(.+?)\"," - error: - - selector: ":contains(\"-ERROR-\")" - test: - path: ?p=home&pid=1 - selector: a[href*="/?p=logout&"] - -search: - paths: - - path: / - keywordsfilters: - - name: re_replace - args: ["[^a-zA-Z0-9]+", "%25"] - inputs: - p: torrents - pid: 32 - $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" - keywords: "{{ .Keywords }}" - # name, description, both, uploader - search_type: name - "sortOptions[sortBy]": "{{ .Config.sort }}" - "sortOptions[sortOrder]": "{{ .Config.type }}" - - rows: - selector: "table#torrents_table_classic tr:has(td.torrent_name){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}" - - fields: - title: - selector: a[href*="?p=torrents&pid=10&action=details"] - category: - selector: div.category_image > a - attribute: href - filters: - - name: querystring - args: cid - details: - selector: a[href*="?p=torrents&pid=10&action=details"] - attribute: href - download: - selector: a[href*="?p=torrents&pid=10&action=download"] - attribute: href - date_day: - # Yüklendi Bugün saat 05:11 by - # Yüklendi Dün saat 05:11 by - # Yüklendi Cumartesi at 23:57 by - selector: td.torrent_name:contains("at"):not(:has(abbr[data-time])) - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Yüklendi (.+?) by" - - name: replace - args: ["Bugün saat", "today"] - - name: replace - args: ["Dün saat", "yesterday"] - - name: replace - args: ["Pazartesi", "monday"] - - name: replace - args: ["Salı", "tuesday"] - - name: replace - args: ["Çarşamba", "wednesday"] - - name: replace - args: ["Perşembe", "thursday"] - - name: replace - args: ["Cumartesi", "saturday"] - - name: replace - args: ["Cuma", "friday"] - - name: replace - args: ["Pazar", "sunday"] - - name: fuzzytime - date_year: - # Yüklendi 20-10-2025 11:15 by - selector: td.torrent_name:not(:contains("at")):not(:has(abbr[data-time])) - # auto adjusted by site account profile - optional: true - filters: - - name: regexp - args: "Yüklendi (.+?) by" - - name: dateparse - args: "dd-MM-yyyy HH:mm" - date_unix: - # within the hour (unix) - selector: abbr[data-time] - attribute: data-time - optional: true - date: - text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}" - size: - selector: a[rel="torrent_size"] - seeders: - selector: a[rel="torrent_seeders"] - leechers: - selector: a[rel="torrent_leechers"] - grabs: - selector: a[rel="times_completed"] - poster: - selector: a[rel="fancybox"] - attribute: href - downloadvolumefactor: - case: - "img[src$=\"/silver.gif\"]": 0.5 - "img[src$=\"/freedownload.gif\"]": 0 - "*": 1 - uploadvolumefactor: - case: - "img[src$=\"/torrent_x2.png\"]": 2 - "*": 1 - minimumratio: - text: 0.8 - minimumseedtime: - # 3 day (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# TSUE 2.2 diff --git a/config/prowlarr/Definitions/uniondht.yml b/config/prowlarr/Definitions/uniondht.yml deleted file mode 100644 index ce4ad84a..00000000 --- a/config/prowlarr/Definitions/uniondht.yml +++ /dev/null @@ -1,665 +0,0 @@ ---- -id: uniondht -name: UnionDHT -description: "UnionDHT is a RUSSIAN Public Torrent Tracker for MOVIES / TV / MUSIC / GENERAL" -language: ru-RU -type: public -encoding: windows-1251 -links: - - https://uniondht.org/ - -caps: - categorymappings: - - {id: 34, cat: PC/Games, desc: "Игры для ПК (общее)"} - - {id: 59, cat: PC/Games, desc: " |- Демо-версии"} - - {id: 58, cat: PC/Games, desc: " |- NoCD / NoDVD"} - - {id: 57, cat: PC/Games, desc: " |- Русификаторы"} - - {id: 56, cat: PC/Games, desc: " |- Патчи"} - - {id: 55, cat: PC/Games, desc: " |- Чит-программы, трейнеры, сейвы"} - - {id: 54, cat: PC/Games, desc: " |- Дополнения для игр"} - - {id: 53, cat: PC/Games, desc: " |- Приложенные к игровым журналам материалы"} - - {id: 902, cat: PC/Games, desc: " |- Дополнительные материалы, бонусные диски, гайды"} - - {id: 35, cat: PC/Games, desc: "Горячие новинки"} - - {id: 36, cat: PC/Games, desc: "Аркады"} - - {id: 65, cat: PC/Games, desc: " |- Аркады (разное)"} - - {id: 64, cat: PC/Games, desc: " |- Логические аркады"} - - {id: 63, cat: PC/Games, desc: " |- Настольные и карточные аркады"} - - {id: 62, cat: PC/Games, desc: " |- Мини/флеш-игры"} - - {id: 37, cat: PC/Games, desc: "Приключения и квесты"} - - {id: 38, cat: PC/Games, desc: "Стратегии"} - - {id: 69, cat: PC/Games, desc: " |- RTS (стратегии в реальном времени)"} - - {id: 68, cat: PC/Games, desc: " |- TBS (пошаговые стратегии)"} - - {id: 67, cat: PC/Games, desc: " |- Wargame"} - - {id: 66, cat: PC/Games, desc: " |- Экономические стратегии"} - - {id: 39, cat: PC/Games, desc: "Симуляторы"} - - {id: 74, cat: PC/Games, desc: " |- Авиасимуляторы"} - - {id: 73, cat: PC/Games, desc: " |- Спортивные симуляторы"} - - {id: 72, cat: PC/Games, desc: " |- Космические симуляторы"} - - {id: 71, cat: PC/Games, desc: " |- Гоночные симуляторы"} - - {id: 70, cat: PC/Games, desc: " |- Другие симуляторы"} - - {id: 40, cat: PC/Games, desc: "Action"} - - {id: 78, cat: PC/Games, desc: " |- FPS (1st Person)"} - - {id: 77, cat: PC/Games, desc: " |- TPS (3rd Person)"} - - {id: 76, cat: PC/Games, desc: " |- Stealth Action"} - - {id: 75, cat: PC/Games, desc: " |- Тактические шутеры"} - - {id: 41, cat: PC/Games, desc: "RPG"} - - {id: 43, cat: PC/Games, desc: "Многопользовательские игры"} - - {id: 81, cat: PC/Games, desc: " |- MMORPG"} - - {id: 44, cat: PC/Games, desc: "Для самых маленьких"} - - {id: 45, cat: PC/Games, desc: "Старые игры для PC"} - - {id: 91, cat: PC/Games, desc: " |- Аркады (Старые игры)"} - - {id: 90, cat: PC/Games, desc: " |- Приключения и квесты (Старые игры)"} - - {id: 89, cat: PC/Games, desc: " |- Action (Старые игры)"} - - {id: 88, cat: PC/Games, desc: " |- Стратегии (Старые игры)"} - - {id: 87, cat: PC/Games, desc: " |- RPG (Старые игры)"} - - {id: 86, cat: PC/Games, desc: " |- Симуляторы (Старые игры)"} - - {id: 85, cat: PC/Games, desc: " |- Эротические игры (Старые игры)"} - - {id: 84, cat: PC/Games, desc: " |- Для самых маленьких (Старые Игры)"} - - {id: 83, cat: PC/Games, desc: " |- Многожанровые сборники (Старые игры)"} - - {id: 82, cat: PC/Games, desc: " |- Многопользовательские игры (Старые игры)"} - - {id: 571, cat: PC/Games, desc: "Игры для других платформ"} - - {id: 46, cat: PC/Games, desc: "Игровое видео"} - - {id: 100, cat: PC/Games, desc: " |- Трейлеры/Геймплей видео"} - - {id: 99, cat: PC/Games, desc: " |- Видео (репортажи) с игровых мероприятий"} - - {id: 98, cat: PC/Games, desc: " |- Видео прохождения игр"} - - {id: 97, cat: PC/Games, desc: " |- Бонусные видеодиски"} - - {id: 96, cat: PC/Games, desc: " |- Телепередачи/интервью"} - - {id: 95, cat: PC/Games, desc: " |- Киберспорт"} - - {id: 101, cat: Console/XBox, desc: "Xbox"} - - {id: 139, cat: Console/XBox 360, desc: " |- XBox360 | Игры"} - - {id: 1068, cat: Console/XBox One, desc: " |- Xbox One | Игры"} - - {id: 554, cat: Console/XBox 360, desc: " |- XBox360 | Kinect"} - - {id: 730, cat: Console/XBox 360, desc: " |- XBox360 | GOD Игры"} - - {id: 138, cat: Console/XBox 360, desc: " |- XBox360 | JTAG"} - - {id: 137, cat: Console/XBox 360, desc: " |- XBox360 | 360E"} - - {id: 136, cat: Console/XBox 360, desc: " |- XBox360 | Demo"} - - {id: 135, cat: Console/XBox 360, desc: " |- XBox360 | Live"} - - {id: 134, cat: Console/XBox 360, desc: " |- XBox360 | Soft"} - - {id: 133, cat: Console/XBox, desc: " |- XBox | Игры"} - - {id: 102, cat: Console/PSP, desc: "PlayStation"} - - {id: 1067, cat: Console/PS4, desc: " |- PS4 | Игры"} - - {id: 127, cat: Console/PS3, desc: " |- PS3 | Игры"} - - {id: 972, cat: Console/PS3, desc: " |- PS3 | Emulation"} - - {id: 126, cat: Console/PSP, desc: " |- PSN | Игры"} - - {id: 1137, cat: Console/PS Vita, desc: " |- PS Vita | Игры"} - - {id: 125, cat: Console/PSP, desc: " |- PSP | Игры"} - - {id: 124, cat: Console/PSP, desc: " |- PS2 | Игры"} - - {id: 123, cat: Console/PSP, desc: " |- PSX | Игры"} - - {id: 722, cat: Console/PSP, desc: " |- PSP | Сцена"} - - {id: 121, cat: Console/PSP, desc: " |- PSP | PSX-PSP"} - - {id: 120, cat: Console/PS3, desc: " |- PS3 | Soft"} - - {id: 119, cat: Console/PSP, desc: " |- PSP | Прочее"} - - {id: 103, cat: Console/NDS, desc: "Nintendo"} - - {id: 113, cat: Console/NDS, desc: " |- NDS | Игры"} - - {id: 112, cat: Console/Wii, desc: " |- Wii | Игры"} - - {id: 111, cat: Console/Wiiware, desc: " |- WiiWare | Игры"} - - {id: 110, cat: Console, desc: " |- GameCube | Игры"} - - {id: 104, cat: Console, desc: "Sega"} - - {id: 108, cat: Console, desc: " |- Dreamcast | Игры"} - - {id: 107, cat: Console, desc: " |- Saturn | Игры"} - - {id: 105, cat: Console, desc: "Игры для старых консолей"} - - {id: 106, cat: Console, desc: "Коллекции (игры для разных платформ)"} - - {id: 154, cat: Movies, desc: "Зарубежные фильмы"} - - {id: 1216, cat: Movies, desc: " |- Зарубежные фильмы 2020"} - - {id: 783, cat: Movies, desc: " |- Зарубежные фильмы 2016-2019 (Новинки зарубежного кино)"} - - {id: 197, cat: Movies, desc: " |- Зарубежные фильмы до 2016"} - - {id: 1142, cat: Movies, desc: " |- Фильмы Ближнего Зарубежья"} - - {id: 1131, cat: Movies, desc: " |- Азиатские фильмы"} - - {id: 198, cat: Movies, desc: " |- Звуковые дорожки и Переводы"} - - {id: 155, cat: Movies, desc: "Российские фильмы"} - - {id: 784, cat: Movies, desc: " |- Российские фильмы 2016-2020 (Новинки русского кино)"} - - {id: 184, cat: Movies, desc: " |- Российские фильмы до 2016"} - - {id: 158, cat: Movies, desc: "Мультфильмы"} - - {id: 924, cat: Movies, desc: " |- Мультфильмы 2016-2020 (Новинки мультфильмов)"} - - {id: 172, cat: Movies, desc: " |- Мультфильмы до 2016"} - - {id: 830, cat: Movies/3D, desc: "3D Видео"} - - {id: 1128, cat: Movies/3D, desc: " |- 3D Фильмы, кино"} - - {id: 832, cat: Movies/3D, desc: " |- 3D Мультфильмы"} - - {id: 833, cat: Movies/3D, desc: " |- 3D Документальные фильмы"} - - {id: 834, cat: Movies/3D, desc: " |- 3D Разное"} - - {id: 187, cat: TV, desc: "Трейлеры и дополнительные материалы"} - - {id: 156, cat: TV, desc: "Зарубежные сериалы"} - - {id: 157, cat: TV/Anime, desc: "Российские сериалы"} - - {id: 159, cat: TV, desc: "Мультсериалы"} - - {id: 160, cat: TV/Documentary, desc: "Документальные фильмы и телепередачи"} - - {id: 161, cat: TV, desc: "Развлекательные телепередачи и шоу"} - - {id: 695, cat: TV/Sport, desc: "Спорт"} - - {id: 1124, cat: TV/Sport, desc: " |- Зимние Олимпийские игры в Сочи 2014"} - - {id: 922, cat: TV/Sport, desc: " |- Евро 2012"} - - {id: 931, cat: TV/Sport, desc: " |- Лига Чемпионов 2012-2013"} - - {id: 1130, cat: TV/Sport, desc: " |- Чемпионат Мира 2014"} - - {id: 737, cat: TV/Other, desc: "Видео для Консолей"} - - {id: 987, cat: TV/Other, desc: " |- PSVita | Видео"} - - {id: 748, cat: TV/Other, desc: " |- PSP | CAMRip/TS/Scr"} - - {id: 747, cat: TV/Other, desc: " |- PSP | Фильмы"} - - {id: 743, cat: TV/Other, desc: " |- PSP | Cериалы"} - - {id: 742, cat: TV/Other, desc: " |- PSP | Аниме"} - - {id: 741, cat: TV/Other, desc: " |- PSP | Мультфильмы"} - - {id: 739, cat: TV/Other, desc: " |- PSP | Телепередачи/Документальное кино"} - - {id: 738, cat: TV/Other, desc: " |- PSP | UMD Video"} - - {id: 211, cat: TV/Anime, desc: "Аниме (Основной)"} - - {id: 517, cat: TV/Anime, desc: " |- Аниме | Rips"} - - {id: 518, cat: TV/Anime, desc: " |- Аниме | HD Rips"} - - {id: 928, cat: TV/Anime, desc: " |- Блич | Bleach"} - - {id: 929, cat: TV/Anime, desc: " |- Ван-Пис | One Piece"} - - {id: 930, cat: TV/Anime, desc: " |- Наруто | Naruto"} - - {id: 519, cat: TV/Anime, desc: " |- Азиатская анимация"} - - {id: 520, cat: TV/Anime, desc: " |- Аниме | Разное"} - - {id: 212, cat: TV/Anime, desc: "Аниме (DVD и Blu-ray)"} - - {id: 230, cat: TV/Anime, desc: " |- Аниме | DVD"} - - {id: 521, cat: TV/Anime, desc: " |- Аниме | Blu-Ray и BDRemux"} - - {id: 214, cat: TV/Anime, desc: "Манга и прочий арт"} - - {id: 226, cat: TV/Anime, desc: " |- Манга"} - - {id: 225, cat: TV/Anime, desc: " |- Обои, артбуки и др."} - - {id: 810, cat: Books, desc: "Книги и журналы"} - - {id: 812, cat: Books, desc: " |- Художественная литература"} - - {id: 813, cat: Books, desc: " |- Документалистика и публицистика"} - - {id: 818, cat: Books, desc: " |- Образовательная и справочная литература"} - - {id: 826, cat: Books, desc: " |- Журналы"} - - {id: 910, cat: Books, desc: " |- Комиксы"} - - {id: 817, cat: Books, desc: " |- Для детей"} - - {id: 816, cat: Books, desc: " |- Профессии и увлечения"} - - {id: 815, cat: Books, desc: " |- На иностранных языках"} - - {id: 814, cat: Books, desc: " |- Прочее"} - - {id: 811, cat: Audio/Audiobook, desc: "Аудиокниги"} - - {id: 825, cat: Audio/Audiobook, desc: " |- Детская литература"} - - {id: 824, cat: Audio/Audiobook, desc: " |- Аудиокниги на иностранных языках"} - - {id: 823, cat: Audio/Audiobook, desc: " |- Детективы, приключения, триллеры, боевики"} - - {id: 822, cat: Audio/Audiobook, desc: " |- Фантастика, фэнтези, ужасы, мистика"} - - {id: 820, cat: Audio/Audiobook, desc: " |- Обучающая литература"} - - {id: 819, cat: Audio/Audiobook, desc: " |- Прочее"} - - {id: 238, cat: PC/Mac, desc: "Mac OS. Программное обеспечение под них"} - - {id: 371, cat: PC/Mac, desc: " |- Mac OS (для Apple Macintosh)"} - - {id: 370, cat: PC/Mac, desc: " |- Mac OS (для РС-Hackintosh)"} - - {id: 369, cat: PC/Mac, desc: " |- Программы для просмотра и обработки видео Mac OS"} - - {id: 368, cat: PC/Mac, desc: " |- Программы для создания и обработки графики Mac OS"} - - {id: 367, cat: PC/Mac, desc: " |- Аудио редакторы и конверторы для Mac OS"} - - {id: 366, cat: PC/Mac, desc: " |- Системные программы для Mac OS"} - - {id: 365, cat: PC/Mac, desc: " |- Другие программы для Mac OS"} - - {id: 239, cat: PC, desc: "Unix, Unix-подобные (*nix) и другие OS. Программное обеспече.."} - - {id: 361, cat: PC, desc: " |- Операционные системы (Unix и Unix-подобные)"} - - {id: 360, cat: PC, desc: " |- Программное обеспечение для Unix и Unix-подобных OS"} - - {id: 359, cat: PC, desc: " |- Другие OS и программное обеспечение под них"} - - {id: 241, cat: PC, desc: "Microsoft Windows OS"} - - {id: 349, cat: PC, desc: " |- Настольные OS, выпущенные до 2001 года (Microsoft Windows OS.."} - - {id: 348, cat: PC, desc: " |- Windows XP"} - - {id: 347, cat: PC, desc: " |- Windows Vista"} - - {id: 346, cat: PC, desc: " |- Windows 7"} - - {id: 939, cat: PC, desc: " |- Windows 8"} - - {id: 1132, cat: PC, desc: " |- Windows 10"} - - {id: 345, cat: PC, desc: " |- Серверные (Microsoft Windows OS)"} - - {id: 344, cat: PC, desc: " |- Разное (Microsoft Windows OS)"} - - {id: 242, cat: PC, desc: "Системные программы"} - - {id: 340, cat: PC, desc: " |- Работа с жёстким диском"} - - {id: 339, cat: PC, desc: " |- Резервное копирование"} - - {id: 338, cat: PC, desc: " |- Архиваторы и файловые менеджеры"} - - {id: 337, cat: PC, desc: " |- Программы для настройки и оптимизации ОС"} - - {id: 336, cat: PC, desc: " |- Сервисное обслуживание компьютера"} - - {id: 335, cat: PC, desc: " |- Работа с носителями информации"} - - {id: 334, cat: PC, desc: " |- Информация и диагностика"} - - {id: 333, cat: PC, desc: " |- Программы для интернет и сетей"} - - {id: 332, cat: PC, desc: " |- Антивирусы и Файерволы"} - - {id: 331, cat: PC, desc: " |- Программы для защиты информации"} - - {id: 330, cat: PC, desc: " |- Драйвера"} - - {id: 329, cat: PC, desc: " |- Серверное ПО для Windows"} - - {id: 328, cat: PC, desc: " |- Изменение интерфейса ОС Windows (Обои, заставки, темы)"} - - {id: 327, cat: PC, desc: " |- Скринсейверы"} - - {id: 326, cat: PC, desc: " |- Разное (Системные программы под Windows)"} - - {id: 243, cat: PC, desc: "Пользовательские программы"} - - {id: 324, cat: PC, desc: " |- Системы автоматизации проектных работ (САПР)"} - - {id: 323, cat: PC, desc: " |- Программы для архитекторов и дизайнеров интерьеров"} - - {id: 322, cat: PC, desc: " |- Офисные программы и системы"} - - {id: 321, cat: PC, desc: " |- Системы для научной работы"} - - {id: 320, cat: PC, desc: " |- Системы для бизнеса"} - - {id: 319, cat: PC, desc: " |- Каталогизаторы и просмотрщики графики"} - - {id: 318, cat: PC, desc: " |- Аудио- и видео-, CD- проигрыватели и каталогизаторы"} - - {id: 317, cat: PC, desc: " |- Программы для интернет и сетей"} - - {id: 316, cat: PC, desc: " |- Распознавание текста, звука и синтез речи"} - - {id: 315, cat: PC, desc: " |- Словари и переводчики"} - - {id: 314, cat: PC, desc: " |- Программное обеспечение для автолюбителей"} - - {id: 313, cat: PC, desc: " |- Медицинское программное обеспечение"} - - {id: 312, cat: PC, desc: " |- Справочные системы и карты"} - - {id: 311, cat: PC, desc: " |- Разное (Пользовательские программы)"} - - {id: 244, cat: PC, desc: "Веб-разработка и Программирование"} - - {id: 307, cat: PC, desc: " |- WYSIWYG Редакторы для веб-диза"} - - {id: 306, cat: PC, desc: " |- Текстовые редакторы с подсветкой"} - - {id: 305, cat: PC, desc: " |- Среды программирования, компиляторы и вспомогательные програ.."} - - {id: 304, cat: PC, desc: " |- Компоненты для сред программирования"} - - {id: 303, cat: PC, desc: " |- Системы управления базами данных (СУБД)"} - - {id: 302, cat: PC, desc: " |- Скрипты и шаблоны"} - - {id: 301, cat: PC, desc: " |- Разное (Веб-разработка и программирование)"} - - {id: 245, cat: PC, desc: "Создание и редактирование мультимедиа и 3D контента"} - - {id: 297, cat: PC, desc: " |- Программные комплекты"} - - {id: 296, cat: PC, desc: " |- Плагины для программ компании Adobe"} - - {id: 295, cat: PC, desc: " |- Графические редакторы"} - - {id: 294, cat: PC, desc: " |- Программы для верстки, печати и работы со шрифтами"} - - {id: 293, cat: PC, desc: " |- 3D моделирование, рендеринг и плагины для них"} - - {id: 292, cat: PC, desc: " |- Анимация"} - - {id: 291, cat: PC, desc: " |- Создание DVD и BD дисков"} - - {id: 290, cat: PC, desc: " |- Редакторы видео"} - - {id: 289, cat: PC, desc: " |- Видео- Аудио- конверторы"} - - {id: 288, cat: PC, desc: " |- Работа со звуком"} - - {id: 287, cat: PC, desc: " |- Разное (Программы для работы с мультимедиа и 3D)"} - - {id: 246, cat: PC, desc: "Материалы для мультимедиа и дизайна"} - - {id: 284, cat: PC, desc: " |- Растровые и Векторные Клипарты"} - - {id: 283, cat: PC, desc: " |- Заготовки, виньетки, рамки"} - - {id: 282, cat: PC, desc: " |- Стили, кисти, формы и узоры для Adobe Photoshop"} - - {id: 281, cat: PC, desc: " |- Текстуры и материалы"} - - {id: 280, cat: PC, desc: " |- 3D графика"} - - {id: 1129, cat: PC, desc: " |- Футажи"} - - {id: 278, cat: PC, desc: " |- Звуковые эффекты"} - - {id: 277, cat: PC, desc: " |- Библиотеки сэмплов"} - - {id: 276, cat: PC, desc: " |- Шрифты"} - - {id: 275, cat: PC, desc: " |- Photostoсks"} - - {id: 274, cat: PC, desc: " |- Разное (Материалы для мультимедиа и дизайна)"} - - {id: 247, cat: PC, desc: "Справочно-правовые Системы"} - - {id: 272, cat: PC, desc: " |- Консультант Плюс"} - - {id: 271, cat: PC, desc: " |- Гарант"} - - {id: 270, cat: PC, desc: " |- Кодекс"} - - {id: 248, cat: PC, desc: "Мобильные устройства и КПК"} - - {id: 1047, cat: PC, desc: " |- Android OS (Игры/Программы/Прошивка)"} - - {id: 1048, cat: PC, desc: " |- Java (Игры/Программы/Прошивка)"} - - {id: 268, cat: PC, desc: " |- Видео (Фильмы/Клипы)"} - - {id: 267, cat: PC, desc: " |- Symbian OS (Игры/Программы/Прошивка)"} - - {id: 266, cat: PC, desc: " |- Навигаторы"} - - {id: 265, cat: PC, desc: " |- Карты для навигаторов"} - - {id: 1046, cat: PC, desc: " |- Windows Mobile, Palm OS, BlackBerry и пр."} - - {id: 263, cat: PC, desc: " |- Разное (Мобильные устройства и КПК)"} - - {id: 249, cat: PC, desc: "Apple Mobile Device Software"} - - {id: 715, cat: PC, desc: " |- Программы (iPhone/iPod Touch/iPad)"} - - {id: 262, cat: PC, desc: " |- Прошивки (iPhone/iPod Touch/iPad)"} - - {id: 260, cat: PC, desc: " |- Игры (iPhone/iPod Touch/iPad)"} - - {id: 259, cat: PC, desc: " |- Видео (iPhone/iPod Touch/iPad)"} - - {id: 258, cat: PC, desc: " |- Разное (iPhone/iPod Touch/iPad)"} - - {id: 257, cat: PC, desc: " |- Аудио (iPhone/iPod Touch/iPad)"} - - {id: 250, cat: PC, desc: "Обучающие материалы"} - - {id: 254, cat: PC, desc: " |- Обучающие видеоматериалы"} - - {id: 253, cat: PC, desc: " |- Мультимедийные материалы"} - - {id: 251, cat: PC, desc: " |- Разное"} - - {id: 574, cat: Audio, desc: "Классическая музыка"} - - {id: 595, cat: Audio, desc: " |- Архив (Классическая музыка)"} - - {id: 594, cat: Audio, desc: " |- Классическая музыка (lossless)"} - - {id: 593, cat: Audio, desc: " |- Классическая музыка в современной обработке (lossless)"} - - {id: 592, cat: Audio, desc: " |- Классическая музыка (mp3)"} - - {id: 591, cat: Audio, desc: " |- Классическая музыка в современной обработке (mp3)"} - - {id: 590, cat: Audio, desc: " |- Классическая музыка (video)"} - - {id: 575, cat: Audio, desc: "Jazz, Blues"} - - {id: 694, cat: Audio, desc: " |- Архив (Jazz, Blues)"} - - {id: 693, cat: Audio, desc: " |- Jazz, Blues (lossless)"} - - {id: 691, cat: Audio, desc: " |- Jazz, Blues (mp3)"} - - {id: 689, cat: Audio, desc: " |- Jazz, Blues (video)"} - - {id: 576, cat: Audio, desc: "Reggae, Ska, Dub"} - - {id: 688, cat: Audio, desc: " |- Архив (Reggae, Ska, Dub)"} - - {id: 687, cat: Audio, desc: " |- Reggae, Ska, Dub (lossless)"} - - {id: 685, cat: Audio, desc: " |- Reggae, Ska, Dub (mp3)"} - - {id: 683, cat: Audio, desc: " |- Reggae, Ska, Dub (video)"} - - {id: 577, cat: Audio, desc: "Зарубежный Rock"} - - {id: 682, cat: Audio, desc: " |- Архив (Зарубежный Rock)"} - - {id: 681, cat: Audio, desc: " |- Rосk | Mеtаl | Аltеrnаtivе, Рunk, Indереndеnt (losslеss)"} - - {id: 678, cat: Audio, desc: " |- Rосk | Mеtаl | Аltеrnаtivе, Рunk, Indереndеnt (mр3)"} - - {id: 675, cat: Audio, desc: " |- Зарубежный Rock (video)"} - - {id: 578, cat: Audio, desc: "Отечественный Rock"} - - {id: 674, cat: Audio, desc: " |- Архив (Отечественный Rock)"} - - {id: 673, cat: Audio, desc: " |- Rосk | Mеtаl | Аltеrnаtivе, Рunk, Indереndеnt (losslеss)"} - - {id: 671, cat: Audio, desc: " |- Rосk | Mеtаl | Аltеrnаtivе, Рunk, Indереndеnt (mр3)"} - - {id: 669, cat: Audio, desc: " |- Отечественный Rock (video)"} - - {id: 579, cat: Audio, desc: "Поп-музыка, Eurodance, Disco"} - - {id: 668, cat: Audio, desc: " |- Архив (Поп-музыка, Eurodance, Disco)"} - - {id: 667, cat: Audio, desc: " |- Зарубежная Поп-музыка (lossless)"} - - {id: 666, cat: Audio, desc: " |- Отечественная Поп-музыка (lossless)"} - - {id: 664, cat: Audio, desc: " |- Зарубежная Поп-музыка (mp3)"} - - {id: 663, cat: Audio, desc: " |- Отечественная Поп-музыка (mp3)"} - - {id: 665, cat: Audio, desc: " |- Eurodance, Technopop, Disco (lossless)"} - - {id: 662, cat: Audio, desc: " |- Поп-музыка, Eurodance, Disco (mp3)"} - - {id: 660, cat: Audio, desc: " |- Поп-музыка, Eurodance, Disco (video)"} - - {id: 580, cat: Audio, desc: "Фольклор, Народная и Этническая музыка"} - - {id: 659, cat: Audio, desc: " |- Архив (Фольклор, Народная и Этническая музыка)"} - - {id: 658, cat: Audio, desc: " |- Фольклор, Народная и Этническая музыка (lossless)"} - - {id: 657, cat: Audio, desc: " |- Фольклор, Народная и Этническая музыка (mp3)"} - - {id: 656, cat: Audio, desc: " |- Фольклор, Народная и Этническая музыка (video)"} - - {id: 581, cat: Audio, desc: "New Age, Relax, Meditative & Flamenco"} - - {id: 655, cat: Audio, desc: " |- Архив (New Age, Relax, Meditative & Flamenco)"} - - {id: 654, cat: Audio, desc: " |- NewAge, Meditative (lossless)"} - - {id: 653, cat: Audio, desc: " |- Flamenco, Акустическая гитара (lossless)"} - - {id: 652, cat: Audio, desc: " |- NewAge, Meditative (mp3)"} - - {id: 651, cat: Audio, desc: " |- Flamenco, Акустическая гитара (mp3)"} - - {id: 650, cat: Audio, desc: " |- New Age, Relax, Meditative & Flamenco (video)"} - - {id: 649, cat: Audio, desc: " |- Звуки природы"} - - {id: 648, cat: Audio, desc: " |- Психоактивныe аудиопрограммы"} - - {id: 582, cat: Audio, desc: "Rap, Hip-Hop, R'n'B"} - - {id: 647, cat: Audio, desc: " |- Архив (Rap, Hip-Hop, R'n'B)"} - - {id: 646, cat: Audio, desc: " |- Зарубежный Rap, Hip-Hop, R'n'B (lossless)"} - - {id: 645, cat: Audio, desc: " |- Отечественный Rap, Hip-Hop, R'n'B (lossless)"} - - {id: 644, cat: Audio, desc: " |- Зарубежный Rap, Hip-Hop, R'n'B (mp3)"} - - {id: 643, cat: Audio, desc: " |- Отечественный Rap, Hip-Hop, R'n'B (mp3)"} - - {id: 642, cat: Audio, desc: " |- Rap, Hip-Hop, R'n'B (video)"} - - {id: 583, cat: Audio, desc: "Электронная музыка"} - - {id: 641, cat: Audio, desc: " |- Архив (Электронная музыка)"} - - {id: 640, cat: Audio, desc: " |- Электронная музыка (lossless)"} - - {id: 634, cat: Audio, desc: " |- Электронная музыка (mp3)"} - - {id: 628, cat: Audio, desc: " |- Электронная музыка (video)"} - - {id: 584, cat: Audio, desc: "Шансон, Авторская и Военная песня"} - - {id: 627, cat: Audio, desc: " |- Архив (Шансон, Авторская и Военная песня)"} - - {id: 626, cat: Audio, desc: " |- Шансон | Авторская песня | Военная песня (lossless)"} - - {id: 622, cat: Audio, desc: " |- Шансон | Авторская песня | Военная песня (mp3)"} - - {id: 617, cat: Audio, desc: " |- Шансон, Авторская и Военная песня (video)"} - - {id: 585, cat: Audio, desc: "Саундтреки"} - - {id: 616, cat: Audio, desc: " |- Архив (Саундтреки)"} - - {id: 615, cat: Audio, desc: " |- Саундтреки к фильмам и мультфильмам (lossless)"} - - {id: 614, cat: Audio, desc: " |- Саундтреки к аниме (lossless)"} - - {id: 613, cat: Audio, desc: " |- Саундтреки к играм (lossless)"} - - {id: 612, cat: Audio, desc: " |- Саундтреки к фильмам и мультфильмам (mp3)"} - - {id: 611, cat: Audio, desc: " |- Саундтреки к аниме (mp3)"} - - {id: 610, cat: Audio, desc: " |- Саундтреки к играм (mp3)"} - - {id: 586, cat: Audio, desc: "Музыка других жанров"} - - {id: 609, cat: Audio, desc: " |- Архив (Музыка других жанров)"} - - {id: 608, cat: Audio, desc: " |- Музыка других жанров (lossless)"} - - {id: 606, cat: Audio, desc: " |- Музыка других жанров (mp3)"} - - {id: 604, cat: Audio, desc: " |- Музыка других жанров (video)"} - - {id: 603, cat: Audio, desc: " |- Караоке и минусовки (фонограммы)"} - - {id: 602, cat: Audio, desc: " |- Сборники песен для детей"} - - {id: 601, cat: Audio, desc: " |- Неофициальные и внежанровые сборники"} - - {id: 600, cat: Audio, desc: " |- Неофициальные кинематографические видео"} - - {id: 587, cat: Audio, desc: "Многоканальная музыка / Собственные оцифровки / Hi-Res stere.."} - - {id: 599, cat: Audio, desc: " |- Архив (Многоканальная музыка / Собственные оцифровки / Hi-Re.."} - - {id: 598, cat: Audio, desc: " |- Многоканальная музыка"} - - {id: 597, cat: Audio, desc: " |- Собственные оцифровки"} - - {id: 596, cat: Audio, desc: " |- Hi-Res stereo"} - - {id: 1154, cat: XXX, desc: "Эротическое видео / Erotic & Softcore"} - - {id: 1155, cat: XXX, desc: " |- Эротические фильмы / Erotic Movies"} - - {id: 1156, cat: XXX, desc: " |- Документальные фильмы / Documentary & Reality"} - - {id: 1191, cat: XXX, desc: " |- Эротические ролики и сайтрипы / Erotic Clips & SiteRips"} - - {id: 1157, cat: XXX, desc: " |- Нудизм-Натуризм / Nudity"} - - {id: 850, cat: XXX, desc: "Зарубежные порнофильмы / Full Length Movies"} - - {id: 862, cat: XXX, desc: " |- Паки полных фильмов / Full Length Movies Packs"} - - {id: 861, cat: XXX, desc: " |- Классические фильмы / Classic"} - - {id: 869, cat: XXX, desc: " |- Фильмы с сюжетом / Feature & Vignettes"} - - {id: 1217, cat: XXX, desc: " |- Гонзо-фильмы 1991-2010 / Gonzo 1991-2010"} - - {id: 971, cat: XXX, desc: " |- Гонзо-фильмы 2011-2022 / Gonzo 2011-2022"} - - {id: 870, cat: XXX, desc: " |- Фильмы без сюжета 1991-2010 / All Sex & Amateur 1991-201.."} - - {id: 1158, cat: XXX, desc: " |- Фильмы без сюжета 2011-2022 / All Sex & Amateur 2011-202.."} - - {id: 873, cat: XXX, desc: " |- Лесбо-фильмы / All Girl & Solo"} - - {id: 871, cat: XXX, desc: " |- Этнические фильмы / Ethnic-Themed"} - - {id: 1084, cat: XXX, desc: " |- Видео для телефонов и КПК / Pocket РС & Phone Video"} - - {id: 872, cat: XXX, desc: " |- Японские порно фильмы"} - - {id: 1165, cat: XXX, desc: "Зарубежные фильмы в высоком качестве (DVD&HD) / Full Len.."} - - {id: 1166, cat: XXX, desc: " |- Эротические и Документальные видео (HD Video) / Erotic, Docu.."} - - {id: 1167, cat: XXX, desc: " |- Фильмы с сюжетом, Классические (DVD) / Feature & Vignett.."} - - {id: 1168, cat: XXX, desc: " |- Гонзо, Лесбо и Фильмы без сюжета (DVD) / Gonzo, All Girl &.."} - - {id: 1169, cat: XXX, desc: " |- Фильмы с сюжетом, Классические (HD Video) / Feature & Vi.."} - - {id: 1170, cat: XXX, desc: " |- Гонзо, Лесбо и Фильмы без сюжета (HD Video) / Gonzo, All Gir.."} - - {id: 849, cat: XXX, desc: "Русское порно / Russian Video"} - - {id: 1145, cat: XXX, desc: " |- Русские порнофильмы / Russian Full Length Movies"} - - {id: 1146, cat: XXX, desc: " |- Паки русских порнороликов / Russian Clips Packs"} - - {id: 1147, cat: XXX, desc: " |- Сайтрипы с русскими актрисами 1991-2015 / Russian SiteRip.."} - - {id: 1148, cat: XXX, desc: " |- Сайтрипы с русскими актрисами 1991-2015 (HD Video) / Russian.."} - - {id: 1149, cat: XXX, desc: " |- Сайтрипы с русскими актрисами 2016-2022 / Russian SiteRip.."} - - {id: 1150, cat: XXX, desc: " |- Сайтрипы с русскими актрисами 2016-2022 (HD Video) / Russian.."} - - {id: 1151, cat: XXX, desc: " |- Русские Порноролики Разное / Russian Clips (various)"} - - {id: 1152, cat: XXX, desc: " |- Русское любительское видео / Russian Amateur Video"} - - {id: 864, cat: XXX, desc: " |- Полнометражные порно фильмы (Rips)"} - - {id: 863, cat: XXX, desc: " |- Полнометражные порно фильмы (DVD, HD DVD и Blu-ray)"} - - {id: 1153, cat: XXX, desc: " |- Не сортированное"} - - {id: 865, cat: XXX, desc: "Зарубежные порноролики / Clips"} - - {id: 1123, cat: XXX, desc: " |- Сайтрипы 2011"} - - {id: 868, cat: XXX, desc: " |- Русское любительское видео"} - - {id: 1184, cat: XXX, desc: " |- Паки сайтрипов (HD Video) / SiteRip's Packs (HD Video)"} - - {id: 1183, cat: XXX, desc: " |- Паки сайтрипов (SD Video) / SiteRip's Packs (SD Video)"} - - {id: 866, cat: XXX, desc: " |- Паки порнороликов по актрисам / Actresses Clips Packs"} - - {id: 1181, cat: XXX, desc: " |- Сайтрипы 1991-2010 (HD Video) / SiteRip's 1991-2010 (HD.."} - - {id: 1180, cat: XXX, desc: " |- Сайтрипы 2011-2012 (HD Video) / SiteRip's 2011-2012 (HD.."} - - {id: 1179, cat: XXX, desc: " |- Сайтрипы 2013 (HD Video) / SiteRip's 2013 (HD Video)"} - - {id: 1178, cat: XXX, desc: " |- Сайтрипы 2014 (HD Video) / SiteRip's 2014 (HD Video)"} - - {id: 1177, cat: XXX, desc: " |- Сайтрипы 2015 (HD Video) / SiteRip's 2015 (HD Video)"} - - {id: 1176, cat: XXX, desc: " |- Сайтрипы 2016 (HD Video) / SiteRip's 2016 (HD Video)"} - - {id: 1175, cat: XXX, desc: " |- Сайтрипы 2017 (HD Video) / SiteRip's 2017 (HD Video)"} - - {id: 1174, cat: XXX, desc: " |- Сайтрипы 2018 (HD Video) / SiteRip's 2018 (HD Video)"} - - {id: 1173, cat: XXX, desc: " |- Сайтрипы 2019 (HD Video) / SiteRip's 2019 (HD Video)"} - - {id: 1172, cat: XXX, desc: " |- Сайтрипы 2020 (HD Video) / SiteRip's 2020 (HD Video)"} - - {id: 1218, cat: XXX, desc: " |- Сайтрипы 2021 (HD Video) / SiteRip's 2021 (HD Video)"} - - {id: 867, cat: XXX, desc: " |- Сайтрипы 1991-2010 / SiteRip's 1991-2010"} - - {id: 1122, cat: XXX, desc: " |- Сайтрипы 2011-2012 / SiteRip's 2011-2012"} - - {id: 1121, cat: XXX, desc: " |- Сайтрипы 2013 / SiteRip's 2013"} - - {id: 1120, cat: XXX, desc: " |- Сайтрипы 2014 / SiteRip's 2014"} - - {id: 1133, cat: XXX, desc: " |- Сайтрипы 2015 / SiteRip's 2015"} - - {id: 1136, cat: XXX, desc: " |- Сайтрипы 2016 / SiteRip's 2016"} - - {id: 1138, cat: XXX, desc: " |- Сайтрипы 2017 / SiteRip's 2017"} - - {id: 1141, cat: XXX, desc: " |- Сайтрипы 2018 / SiteRip's 2018"} - - {id: 1143, cat: XXX, desc: " |- Сайтрипы 2019 / SiteRip's 2019"} - - {id: 1144, cat: XXX, desc: " |- Сайтрипы 2020 / SiteRip's 2020"} - - {id: 1219, cat: XXX, desc: " |- Сайтрипы 2021 / SiteRip's 2021"} - - {id: 1085, cat: XXX, desc: " |- Сцены из фильмов / Movie Scenes (кроме SiteRip)"} - - {id: 1171, cat: XXX, desc: " |- Порноролики Разное / Clips (various)"} - - {id: 1140, cat: XXX, desc: " |- Порноролики в 3D и Virtual Reality (VR) / 3D & Virtual R"} - - {id: 1159, cat: XXX, desc: "Японское и китайское порно / Japanese & Chinese Adult Vi.."} - - {id: 1160, cat: XXX, desc: " |- Паки японских фильмов и сайтрипов / Full Length Japanese Mov.."} - - {id: 1164, cat: XXX, desc: " |- Японские фильмы и сайтрипы (DVD и HD Video) / Japanese Movie.."} - - {id: 1163, cat: XXX, desc: " |- Японские фильмы и сайтрипы 1991-2014 / Japanese Movies &.."} - - {id: 1162, cat: XXX, desc: " |- Японские фильмы и сайтрипы 2015-2022 / Japanese Movies &.."} - - {id: 1161, cat: XXX, desc: " |- Архив (Японское порно)"} - - {id: 848, cat: XXX, desc: "Фото и журналы / Photos & Magazines"} - - {id: 1190, cat: XXX, desc: " |- MetArt & MetModels"} - - {id: 1189, cat: XXX, desc: " |- Эротические студии Разное / Erotic Picture Gallery (various)"} - - {id: 1188, cat: XXX, desc: " |- Паки сайтрипов эротических студий / Erotic Picture SiteRip'.."} - - {id: 874, cat: XXX, desc: " |- Любительское фото / Amateur Picture Gallery"} - - {id: 1187, cat: XXX, desc: " |- Подборки по актрисам / Actresses Picture Packs"} - - {id: 1186, cat: XXX, desc: " |- Подборки сайтрипов / SiteRip's Picture Packs"} - - {id: 1185, cat: XXX, desc: " |- Подборки сетов / Picture Sets Packs"} - - {id: 1135, cat: XXX, desc: " |- Тематическое и нетрадиционное фото / Misc & Special Inte.."} - - {id: 875, cat: XXX, desc: " |- Журналы / Magazines"} - - {id: 938, cat: XXX, desc: " |- Эротические студии (Фото | Видео)"} - - {id: 851, cat: XXX, desc: "Хентай и Манга, Мультфильмы и Комиксы, Рисунки / Hentai &.."} - - {id: 1197, cat: XXX, desc: " |- Хентай: основной подраздел / Hentai: main subsection"} - - {id: 1196, cat: XXX, desc: " |- Хентай в высоком качестве (DVD и HD) / Hentai DVD & HD"} - - {id: 1195, cat: XXX, desc: " |- Хентай: ролики 2D / Hentai: 2D video"} - - {id: 1194, cat: XXX, desc: " |- Хентай: ролики 3D / Hentai: 3D video"} - - {id: 1139, cat: XXX, desc: " |- Хентай: Манга / Hentai: Manga"} - - {id: 1193, cat: XXX, desc: " |- Хентай: Арт и HCG / Hentai: Artwork & HCG"} - - {id: 858, cat: XXX, desc: " |- Мультфильмы / Cartoons"} - - {id: 1192, cat: XXX, desc: " |- Комиксы и рисунки / Comics & Artwork"} - - {id: 856, cat: XXX, desc: " |- Хентай | Без цензуры"} - - {id: 855, cat: XXX, desc: " |- Хентай | С цензурой"} - - {id: 42, cat: XXX, desc: "Игры / Games"} - - {id: 1203, cat: XXX, desc: " |- Игры: основной подраздел / Games: main subsection"} - - {id: 1202, cat: XXX, desc: " |- Игры: визуальные новеллы / Games: Visual Novels"} - - {id: 1201, cat: XXX, desc: " |- Игры: ролевые / Games: role-playing (RPG Maker and WOLF RPG .."} - - {id: 1200, cat: XXX, desc: " |- Игры и Софт: Анимация / Software: Animation"} - - {id: 1199, cat: XXX, desc: " |- Игры: В разработке и Демо (основной подраздел) / Games: In P.."} - - {id: 1198, cat: XXX, desc: " |- Игры: В разработке и Демо (ролевые) / Games: In Progress and.."} - - {id: 846, cat: XXX, desc: "Нетрадиционное порно / Special Interest Movies & Clips"} - - {id: 984, cat: XXX, desc: " |- Транссексуалы (DVD и HD) / Transsexual (DVD & HD)"} - - {id: 1204, cat: XXX, desc: " |- Транссексуалы / Transsexual"} - - {id: 986, cat: XXX, desc: " |- Бисексуалы / Bisexual"} - - {id: 985, cat: XXX, desc: " |- БДСМ / BDSM"} - - {id: 983, cat: XXX, desc: " |- Женское доминирование и страпон / Femdom & Strapon"} - - {id: 982, cat: XXX, desc: " |- Подглядывание / Voyeur"} - - {id: 981, cat: XXX, desc: " |- Фистинг и дилдо / Fisting & Dildo"} - - {id: 1086, cat: XXX, desc: " |- Беременные / Pregnant"} - - {id: 1087, cat: XXX, desc: " |- Буккаке / Bukkake"} - - {id: 1088, cat: XXX, desc: " |- Мочеиспускание / Peeing"} - - {id: 980, cat: XXX, desc: " |- Фетиш / Fetish"} - - {id: 1089, cat: XXX, desc: " |- Дефекация / Scat"} - - {id: 1205, cat: XXX, desc: "Гей-порно / Gay Forum"} - - {id: 1214, cat: XXX, desc: " |- Полнометражные гей-фильмы / Full Length Movies (Gay)"} - - {id: 1213, cat: XXX, desc: " |- Полнометражные азиатские гей-фильмы / Full-length Asian Film.."} - - {id: 1212, cat: XXX, desc: " |- Классические гей-фильмы (до 1990 года) / Classic Gay Films (.."} - - {id: 1211, cat: XXX, desc: " |- Гей-фильмы в высоком качестве (DVD и HD) / High-Quality Full.."} - - {id: 1210, cat: XXX, desc: " |- Азиатские гей-фильмы в высоком качестве (DVD и HD) / High-Qu.."} - - {id: 1209, cat: XXX, desc: " |- ПАКи гей-роликов и сайтрипов / Clip's & SiteRip.."} - - {id: 1208, cat: XXX, desc: " |- Гей-ролики в высоком качестве (HD Video) / Gay Clips (HD Vid.."} - - {id: 1207, cat: XXX, desc: " |- Ролики, SiteRip'ы и сцены из гей-фильмов / Clips &.."} - - {id: 1206, cat: XXX, desc: " |- Гей-журналы, фото, разное / Magazines, Photo, Rest (Gay)"} - - {id: 1134, cat: XXX, desc: " |- Геи"} - - {id: 853, cat: XXX, desc: "Эротика, документальное и обучающее"} - - {id: 1215, cat: XXX, desc: "Архив (общий)"} - - {id: 497, cat: Other, desc: "Разное"} - - {id: 506, cat: Other, desc: "Тестовый"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: sort - type: select - label: Sort requested from site - default: 1 - options: - 1: created - 10: seeders - 7: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - -download: - selectors: - - selector: a[href^="magnet:?xt="] - attribute: href - -search: - paths: - - path: tracker.php - inputs: - $raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}" - prev_a: 0 - prev_dla: 0 - prev_dlc: 0 - prev_dld: 0 - prev_dlw: 0 - prev_my: 0 - prev_new: 0 - prev_sd: 0 - prev_da: 1 - prev_dc: 0 - prev_df: 1 - # sort by 1=registered 2=topicTitle 4=completed 10=seed 11=leech 5=replies 6=views 7=size - o: "{{ .Config.sort }}" - # 1=asc 2=desc - s: "{{ .Config.type }}" - # show category - dc: 0 - # show forum - df: 1 - # show author - da: 1 - # -1=all time - tm: -1 - nm: "{{ .Keywords }}" - # find a username - - keywordsfilters: - - name: diacritics - args: replace - - name: re_replace # S01 to сезон 1 - args: ["(?i)\\bS0*(\\d+)\\b", "сезон $1"] - - name: re_replace # E02 to сери 1 - args: ["(?i)\\bE0*(\\d+)\\b", "сери $1"] - - name: re_replace # S01E02 to сезон 1 сери 2 - args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "сезон $1 сери $2"] - - headers: - User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.203"] - - rows: - selector: tr[id^="tor_"] - - fields: - category: - selector: a.gen - attribute: href - filters: - - name: querystring - args: f - title: - selector: a.tLink - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a.tLink - attribute: href - download: - selector: a.tLink - attribute: href - size: - selector: td:nth-child(6) > u - seeders: - selector: td.seedmed - leechers: - selector: td.leechmed - grabs: - selector: td:nth-child(9) - date: - # unix - selector: td:last-child > u - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 - description: - selector: a.tLink -# engine n/a diff --git a/config/prowlarr/Definitions/uniongang.yml b/config/prowlarr/Definitions/uniongang.yml deleted file mode 100644 index 46f76dec..00000000 --- a/config/prowlarr/Definitions/uniongang.yml +++ /dev/null @@ -1,217 +0,0 @@ ---- -id: uniongang -name: UnionGang -description: "UnionGang is a RUSSIAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: ru-RU -type: private -encoding: UTF-8 -links: - - https://uniongang.net/ -legacylinks: - - http://www.uniongang.net/ - - https://www.uniongang.net/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movies / HDRip / BDRip"} - - {id: 21, cat: Movies/WEB-DL, desc: "Movies WEB-DL / WEB-DLRip"} - - {id: 2, cat: Movies/HD, desc: "Movies x264"} - - {id: 5, cat: Movies/HD, desc: "Movies BDRemux / BDRip1080p"} - - {id: 6, cat: TV, desc: "TV Сериал"} - - {id: 7, cat: TV/Documentary, desc: "TV Документальный"} - - {id: 9, cat: TV, desc: "Мультфильм"} - - {id: 10, cat: TV, desc: "ТВ / Выпуски / Шоу"} - - {id: 11, cat: PC, desc: "Игра / PC"} - - {id: 13, cat: Audio, desc: "Музыка / Русская"} - - {id: 14, cat: Audio, desc: "Музыка / Зарубежная"} - - {id: 23, cat: Movies/UHD, desc: "Movies / 4K"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: stripcyrillic - type: checkbox - label: Strip Cyrillic Letters - default: false - - name: addrussiantotitle - type: checkbox - label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified. - default: false - - name: 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 - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div.error - test: - path: / - selector: a[href="/logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}cat[]={{.}}&{{end}}" - search: "{{ .Keywords }}" - shw_incl_cats: 0 - # 0 default, 1 active, 1 inactive, 3 gold, 4 important, 5 unverified, 6 banned, 7 no tags, 8 my torrents, 9-31 lots of other choices - incldead: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}" - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - # site does not support imdbid search or provide imdb links in results - - keywordsfilters: - # strip season and/or ep - - name: re_replace - args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""] - - rows: - selector: table.brws.main > tbody > tr[class^="torcont"] - after: 1 - - fields: - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - filters: - # normalize to SXXEYY format - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"] - - name: re_replace - args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"] - - name: re_replace - args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"] - - name: re_replace - args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"] - - name: re_replace - args: ["(?i)\\bР(\\d)?\\b", "P$1"] - - name: re_replace - args: ["(?i)\\sот\\s([\\w\\p{P}\\p{S}]+)\\s\\|(.+)", "$2-$1"] - - name: re_replace - args: ["\\s\\|\\s(\\w{4,})$", "-$1"] - - name: re_replace - args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"] - - name: re_replace - args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"] - - name: re_replace - args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"] - - name: re_replace - args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"] - - name: re_replace - args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""] - - name: re_replace - args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""] - - name: append - args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="], a[href^="magnet:?xt="] - attribute: href - size: - selector: a[href^="download.php?id="], a[href^="magnet:?xt="] - seeders: - selector: td:nth-last-child(3) - filters: - - name: split - args: ["|", 0] - leechers: - selector: td:nth-last-child(3) - filters: - - name: split - args: ["|", 1] - date: - selector: td:has(a[href^="userdetails.php?id="]) ~ td, td:has(a[href^="browse.php?gr="]) ~ td - remove: a - filters: - - name: re_replace - args: ["(?i)(назад)", "ago"] - - name: re_replace - args: ["(?i)(секунду|секунды|секунд)", "seconds"] - - name: re_replace - args: ["(?i)(минуты|минуту|минут)", "minutes"] - - name: re_replace - args: ["(?i)(часов|часа|час)", "hours"] - - name: re_replace - args: ["(?i)(день|дней|дня)", "days"] - - name: re_replace - args: ["(?i)(неделю|недели|недель)", "weeks"] - - name: re_replace - args: ["(?i)(месяц|месяца|месяцев)", "months"] - - name: re_replace - args: ["(?i)(года|год|лет)", "years"] - - name: timeago - downloadvolumefactor: - case: - img[src="/pic/freedownload.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 0.3 -# Engine n/a diff --git a/config/prowlarr/Definitions/universaltorrents.yml b/config/prowlarr/Definitions/universaltorrents.yml deleted file mode 100644 index e12b9b77..00000000 --- a/config/prowlarr/Definitions/universaltorrents.yml +++ /dev/null @@ -1,192 +0,0 @@ ---- -id: universaltorrents -name: Universal-Torrents -description: "Universal-Torrents is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL" -language: de-DE -type: private -encoding: UTF-8 -links: - - https://uni-track.org/ - -caps: - categorymappings: - - {id: 28, cat: Movies/SD, desc: "Filme SD"} - - {id: 32, cat: Movies/HD, desc: "Filme HD"} - - {id: 114, cat: Movies/UHD, desc: "Filme UHD"} - - {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"} - - {id: 138, cat: Movies, desc: "Filme Pack`s"} - - {id: 60, cat: TV/SD, desc: "Serien SD"} - - {id: 57, cat: TV/HD, desc: "Serien HD"} - - {id: 139, cat: TV/UHD, desc: "Serien UHD"} - - {id: 59, cat: TV, desc: "Serien Pack`s"} - - {id: 110, cat: Audio/MP3, desc: "Audio MP3"} - - {id: 48, cat: Audio/Lossless, desc: "Audio Flac"} - - {id: 52, cat: Audio, desc: "Audio Pack"} - - {id: 63, cat: Audio/Audiobook, desc: "Audio Hörbuch"} - - {id: 120, cat: Audio/Video, desc: "Audio Videos"} - - {id: 12, cat: PC/0day, desc: "Apps Windows"} - - {id: 125, cat: PC/Mac, desc: "Apps Mac-OSX"} - - {id: 11, cat: PC/Mobile-Android, desc: "Apps Mobil"} - - {id: 141, cat: PC, desc: "Apps Other"} - - {id: 15, cat: TV/Documentary, desc: "Doku SD"} - - {id: 14, cat: TV/Documentary, desc: "Doku HD"} - - {id: 123, cat: TV/Documentary, desc: "Doku Reihe"} - - {id: 126, cat: PC/Mobile-Android, desc: "Spiel Mobil"} - - {id: 17, cat: PC/Games, desc: "Spiel PC"} - - {id: 24, cat: Console, desc: "Spiel Konsole"} - - {id: 121, cat: PC/Games, desc: "Spiel Wimmelbild"} - - {id: 61, cat: TV/Sport, desc: "Sport HD"} - - {id: 62, cat: TV/Sport, desc: "Sport SD"} - - {id: 96, cat: Books/Mags, desc: "ePaper Zeitungen"} - - {id: 136, cat: Books/EBook, desc: "ePaper E-Book"} - - {id: 137, cat: Books/Comics, desc: "ePaper Comics"} - - {id: 143, cat: Movies/Other, desc: "Trickfilm Anime"} - - {id: 144, cat: TV/Anime, desc: "Trickfilm Anime Serien"} - - {id: 145, cat: Movies/Other, desc: "Trickfilm Kids"} - - {id: 76, cat: XXX/SD, desc: "XXX SD"} - - {id: 73, cat: XXX/x264, desc: "XXX HD"} - - {id: 75, cat: XXX/Pack, desc: "XXX Pack"} - - {id: 142, cat: XXX/ImageSet, desc: "XXX Pic´s"} - - {id: 129, cat: Movies/SD, desc: "Internal Film SD"} - - {id: 128, cat: Movies/HD, desc: "Internal Film HD"} - - {id: 131, cat: TV/SD, desc: "Internal Serie SD"} - - {id: 130, cat: TV/HD, desc: "Internal Serien HD"} - - {id: 132, cat: Other, desc: "Internal Sonstiges"} - - 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: added - options: - added: created - seeds: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_tpp - type: info - label: Results Per Page - default: For best results, change the Anzahl der Torrents beim Durchsuchen Torrents per page: setting to 60 on your account profile. The default is 15. - - name: info_activity - type: info - label: Account Inactivity - default: "Inactive accounts will be deactivated after 7 weeks and deleted after another 3 weeks." - -login: - path: login.php - method: form - cookies: ["JAVA=OK"] # avoid jscheck redirect - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: div#login_error - test: - path: index.php - selector: a[href="logout.php"] - -search: - paths: - - path: selection.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 name, 1 descr, 2 both - blah: 2 - orderby: "{{ .Config.sort }}" - sort: "{{ .Config.type }}" - # site does not support imdbid searching or display imdb links in results. - - rows: - selector: "div.selection_wrap{{ if .Config.freeleech }}:has(:root:has(div.onlyup)){{ else }}{{ end }}" - filters: - - name: andmatch - - fields: - category_p1: - selector: div.kat_cat_pic_name - category_p2: - selector: div.kat_cat_pic_name_b - categorydesc: - text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}" - title: - selector: a[href^="details.php?id="] - filters: - - name: re_replace - args: ["^\\[.+?\\]\\s?", ""] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download_ssl.php?torrent="] - attribute: href - poster: - selector: div[id^="details"] img - attribute: src - size: - selector: div.selection_unter_ad - date_day: - # Heute 13:30:04 - # Gestern 09:10:10 - selector: div.selection_unter_ab:not(:contains(".")) - optional: true - filters: - - name: replace - args: ["Heute", "Today"] - - name: replace - args: ["Gestern", "Yesterday"] - date_year: - # 30.02.2018 um 23:12:50 - selector: div.selection_unter_ab:contains(".") - optional: true - filters: - - name: replace - args: [" um", ""] - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd.MM.yyyy HH:mm:ss zzz" - date: - text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}" - grabs: - selector: div.selection_unter_ae - seeders: - selector: div.selection_unter_aa - leechers: - selector: div.selection_unter_aaa - downloadvolumefactor: - case: - ":root:has(div.onlyup)": 0 # GLobal Freeleech event - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# 3xT diff --git a/config/prowlarr/Definitions/visionhd-api.yml b/config/prowlarr/Definitions/visionhd-api.yml deleted file mode 100644 index 3d531af3..00000000 --- a/config/prowlarr/Definitions/visionhd-api.yml +++ /dev/null @@ -1,172 +0,0 @@ ---- -id: visionhd-api -name: ViSiON HD (API) -description: "ViSiON HD is a Private Torrent Tracker for HD MOVIES / TV" -language: en-US -type: private -encoding: UTF-8 -links: - - https://vision-hd.org/ - -caps: - categorymappings: - - {id: 1, cat: Movies, desc: "Movie"} - - {id: 2, cat: TV, desc: "TV"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your ViSiON HD account My Settings page and clicking on the API Key tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: single_file_release_use_filename - type: checkbox - label: Use filename as title for single file releases - default: true - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - category: - selector: category_id - title_optional: - selector: name - title_filename: - selector: "files[0].name" - optional: true - files: - selector: num_file - title: - text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}" - details: - selector: details_link - download: - selector: download_link - infohash: - selector: info_hash - poster: - selector: meta.poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - genre: - selector: meta.genres - filters: - - name: re_replace - args: ["(?i)(Science Fiction)", "Science_Fiction"] - - name: replace - args: [" & ", "_&_"] - description: - text: "{{ .Result.genre }}" - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns False, True - selector: double_upload - case: - False: 1 # normal - True: 2 # double -# global MR is 0.4 but torrents must be seeded for 5 days regardless of ratio -# minimumratio: -# text: 0.4 - minimumseedtime: - # 5 days (as seconds = 5 x 24 x 60 x 60) - text: 432000 -# json UNIT3D 8.1.3 diff --git a/config/prowlarr/Definitions/wukong.yml b/config/prowlarr/Definitions/wukong.yml deleted file mode 100644 index 7b2941b9..00000000 --- a/config/prowlarr/Definitions/wukong.yml +++ /dev/null @@ -1,185 +0,0 @@ ---- -id: wukong -name: Wukong (悟空问道) -description: "Wukong (悟空问道) is a CHINESE Private Torrent Tracker for E-LEARNING" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://wukongwendao.top/ - -caps: - categorymappings: - - {id: 402, cat: Other, desc: "模型"} - - {id: 407, cat: Other, desc: "整合包"} - - {id: 401, cat: Other, desc: "源码"} - - {id: 408, cat: Other, desc: "音乐生成"} - - {id: 406, cat: Other, desc: "文字语料"} - - {id: 403, cat: Other, desc: "训练教程"} - - {id: 405, cat: Other, desc: "动画生成"} - - {id: 411, cat: Other, desc: "作品"} - - {id: 404, cat: Books/Technical, desc: "文档"} - - {id: 410, cat: Books/Technical, desc: "电子书"} - - {id: 409, cat: Other/Misc, desc: "其他"} - - modes: - search: [q] - book-search: [q] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: 2facode - type: text - label: 2FA code - - name: info_2fa - type: info - label: "About 2FA code" - default: "Only fill in the 2FA code box if you have enabled 2FA on the Wukong 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Cherish your user account. Inactive accounts would be deleted based on the following rules:
    1. Veteran User or above would never be deleted
    2. Elite User or above would never be deleted if parked (at User CP)
    3. Parked accounts would be deleted if users have not logged in for more than 400 days in a row
    4. Un-parked accounts would be deleted if users have not logged in for more than 365 days in a row
    5. Accounts with both uploaded and downloaded amount being 0 would be deleted if users have not logged in for more than 100 days in a row.
    " - -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: "{{ .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) - 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: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP v1.8.8 2023-09-25 diff --git a/config/prowlarr/Definitions/xbytes2.yml b/config/prowlarr/Definitions/xbytes2.yml deleted file mode 100644 index 94f289ac..00000000 --- a/config/prowlarr/Definitions/xbytes2.yml +++ /dev/null @@ -1,357 +0,0 @@ ---- -id: xbytesv2 -name: XbytesV2 -description: "xbytesV2 is a SPANISH site for HD content" -language: es-ES -type: private -encoding: ISO-8859-1 -links: - - https://xbytesv2.li/ -legacylinks: - - http://xbytesv2.li/ - -caps: - categorymappings: - - {id: 17, cat: Movies/BluRay, desc: "Video - FullBluray/BDRemux"} - - {id: 23, cat: Movies/3D, desc: "Video - 3D"} - - {id: 18, cat: Movies/HD, desc: "Video - 1080p"} - - {id: 30, cat: Movies/HD, desc: "Video - MicroHD x265"} - - {id: 29, cat: Movies/HD, desc: "Video - 1080p x265"} - - {id: 16, cat: Movies/HD, desc: "Video - MicroHD"} - - {id: 61, cat: Movies, desc: "Video - Custom"} - - {id: 42, cat: Movies/DVD, desc: "Video - DVD"} - - {id: 21, cat: Movies/BluRay, desc: "Video UHD - FullBluray/BDRemux"} - - {id: 45, cat: Movies/UHD, desc: "Video UHD - UHD BDRip"} - - {id: 46, cat: Movies/UHD, desc: "Video UHD - M-UHD"} - - {id: 62, cat: Movies/UHD, desc: "Video UHD - Custom 4K"} - - {id: 25, cat: TV/HD, desc: "Series - temp. complet"} - - {id: 31, cat: TV/HD, desc: "Series - x265"} - - {id: 35, cat: TV/UHD, desc: "Series - 4K"} - - {id: 41, cat: TV/Sport, desc: "Deportes"} - - {id: 37, cat: TV/Documentary, desc: "Documentales"} - - {id: 34, cat: TV/HD, desc: "Dibujos animados"} - - {id: 5, cat: TV/Anime, desc: "Anime"} - - {id: 14, cat: Audio/MP3, desc: "Musica - MP3"} - - {id: 39, cat: Audio/Lossless, desc: "Musica - FLAC"} - - {id: 38, cat: Audio/Other, desc: "Musica - otros formato"} - - {id: 27, cat: PC/Games, desc: "Juegos"} - - {id: 65, cat: Console, desc: "Juegos Retro"} - - {id: 33, cat: Books, desc: "Libros"} - - {id: 7, cat: PC/0day, desc: "Software"} - - {id: 40, cat: PC/Mobile-Other, desc: "Telefonos y tablets"} - - {id: 12, cat: XXX, desc: "Adult"} - - {id: 32, cat: Other, desc: "Otros"} - # internal cats not provided in search category dropdown !?! - # found by fishing - - {id: 19, cat: Movies/HD, desc: "Video - 720p"} - - 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: 3 - options: - 3: created - 5: seeders - 4: size - 2: title - - name: type - type: select - label: Order requested from site - default: 2 - options: - 2: desc - 1: asc - - name: info - type: info - label: Results Per Page - default: For best results, change the Torrents per page: setting to 100 on your account profile. - -login: - path: index.php?page=login - method: post - inputs: - uid: "{{ .Config.username }}" - pwd: "{{ .Config.password }}" - error: - - selector: body[onLoad^="makeAlert('"] - message: - selector: body[onLoad^="makeAlert('"] - attribute: onLoad - filters: - - name: replace - args: ["makeAlert('Error' , '", ""] - - name: replace - args: ["');", ""] - test: - path: index.php - selector: a[href="logout.php"] - -search: - path: index.php - keywordsfilters: - - name: re_replace - args: ["(?i)(S0?1)(?![\\dE])", "Primera Temporada"] - - name: re_replace - args: ["(?i)(S0?2)(?![\\dE])", "Segunda Temporada"] - - name: re_replace - args: ["(?i)(S0?3)(?![\\dE])", "Tercera Temporada"] - - name: re_replace - args: ["(?i)(S0?4)(?![\\dE])", "Cuarta Temporada"] - - name: re_replace - args: ["(?i)(S0?5)(?![\\dE])", "Quinta Temporada"] - - name: re_replace - args: ["(?i)(S0?6)(?![\\dE])", "Sexta Temporada"] - - name: re_replace - args: ["(?i)(S0?7)(?![\\dE])", "Septima Temporada"] - - name: re_replace - args: ["(?i)(S0?8)(?![\\dE])", "Octava Temporada"] - - name: re_replace - args: ["(?i)(S0?9)(?![\\dE])", "Novena Temporada"] - - name: re_replace - args: ["(?i)(S10)(?![\\dE])", "Decima Temporada"] - - name: re_replace - args: ["(?i)(S11)(?![\\dE])", "Onceava Temporada"] - - name: re_replace - args: ["(?i)(S12)(?![\\dE])", "Decimosegunda Temporada"] - # Parse other seasons - - name: re_replace - args: ["(?i)(S(\\d{1,2}))(?![\\dE])", "Temporada"] - - name: re_replace - args: ["(?i)S(\\d{1,2})E(\\d{1,2})", "S$1/E$2"] - inputs: - page: torrents - $raw: "&category={{ range .Categories }}{{.}};{{end}}" - # 0 all, 1 activeonly, 2 deadonly - active: 0 - # 0 title, 1 title&desc, 2 descr, 3 uploaders, 5 gold, 6 silver, 7 bronze, 8 1x, 9 2x, 10 3x, 11 4x, 12 5x, 13 6x, 14 7x, 15 8x, 16 9x, 17 10x - # note the options are exclusive, so searching for gold means the search keywords are ignored - options: 0 - search: "{{ .Keywords }}" - order: "{{ .Config.sort }}" - by: "{{ .Config.type }}" - - rows: - selector: "table.lista > tbody > tr:has(td[onMouseOut]){{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}, table.lista > tbody > tr:has(td[onMouseOut]){{ if .Config.freeleech }}:has(img[src$=\"freeleech.gif\"]){{ else }}{{ end }}" - - fields: - category: - selector: a[href^="index.php?page=torrents&category="] - attribute: href - filters: - - name: querystring - args: category - title: - selector: a[href^="index.php?page=torrent-details&id="] - filters: - # To improve next replaces - - name: replace - args: ["//", "/"] - - name: re_replace - args: ["\\((?=(.*\\d{4}))", "{"] - - name: re_replace - args: ["\\)(?=(.*\\d{4}))", "}"] - - # Years and Dates - - name: re_replace # eg El proyecto colibrí (Estreno 2021) (2018/... - args: ["\\{?(?i)Estreno (19|20)\\d{2}\\}?", ""] - - name: re_replace - args: ["(\\{((19|20)\\d{2}) ((19|20)\\d{2}))", "{$2-$4}"] - - name: re_replace - args: ["(\\/(?i)E\\d{1,2}) (\\d{1,2})", "$1-$2"] - - name: re_replace - args: ["(?i)S(\\d{1,2})[ \\/]E(\\d{1,2})", "S$1E$2"] - # remove the year in tv series, but keep it in movies. issue #3290 - - name: re_replace # eg Supergirl (2017 18/S03E19 ... - args: ["\\{(19|20)\\d{2} \\d{2}", ""] - - name: re_replace # eg Supergirl (2018/S04E01 ... - args: ["\\{(19|20)\\d{2}\\/(S\\d{2})", "$2"] - - name: re_replace # eg La habitación (The Room) (2...) - args: ["(\\{(19|20)\\d{2})\\/", "$1}/"] - - # Languages - - name: replace - args: ["/Español", "/SPANiSH"] - - name: replace - args: ["/SPA", "/SPANiSH"] - - name: replace - args: ["/ESP", "/SPANiSH"] - - name: re_replace - args: ["\\/[EI]NG", "/English"] - - name: replace - args: ["/CAT", "/Catalan"] - - name: re_replace - args: ["\\/FR[AE]?", "/French"] - - name: replace - args: ["/ALE", "/German"] - - name: replace - args: ["/HOL", "/Dutch"] - - name: replace - args: ["/NL", "/Dutch"] - - name: replace - args: ["/NOR", "/Norwegian"] - - name: replace - args: ["/CHI", "/Chinese"] - - name: replace - args: ["/JAP", "/Japanese"] - - name: re_replace - args: ["\\/ITA?", "/Italian"] - - name: replace - args: ["/RUS", "/Russian"] - - name: re_replace - args: ["\\/[KC]O?R", "/Korean"] - - name: replace - args: ["/LAT", "/Latino"] - - name: replace - args: ["/HEB", "/Hebrew"] - - name: replace - args: ["/AR", "/Arabic"] - - name: replace - args: ["/FIN", "/Finnish"] - - name: replace - args: ["/SUE", "/Swedish"] - - name: replace - args: ["/Turco", "/Turkish"] - - name: re_replace - args: ["\\/(?i)DUAL", "/MULTi SPANiSH"] - - # Video Origin - - name: re_replace - args: ["(?i)UHDRip", "Bluray"] # Fix for Radarr - - name: re_replace # eg El Ministerio Del Tiempo Temporada 4 (2020/MHD/WEB-DL/1080p - args: ["(\\d)\\}\\/(?i)(MHD)\\/(\\d)", "$1}/mHD BluRay/$3"] # Fix for Radarr - - name: re_replace - args: ["(?i)BDRIP", "BluRay"] - - name: re_replace - args: ["WEB DL", "WEBDL"] # Fix for Radarr - - # Audio Codecs - - name: replace - args: ["E AC3", "E-AC3"] - - name: replace - args: ["DTS HD", "DTS-HD"] - - name: replace - args: ["VC 1", "VC-1"] - - - name: re_replace # eg AC3 2 1 -> AC3 2.1 | eg V2 1 3 4 -> V2.1 3.4 - args: [" ((?i)V?)((\\d+) (\\d+))", " $1$3.$4"] - - name: re_replace # eg eg V2.1 3.4 -> V2.1.3.4 - args: ["\\.((\\d+) (\\d+))", ".$2.$3"] - - # Another Info - - name: re_replace - args: ["(?i)(REPARAD[OA])", "REPACK"] - - name: re_replace - args: ["(?i)(Miniserie)", ""] - - name: re_replace - args: ["(?i)(Temporada(s?)( (\\d+))( Completa)?)", "S$4"] - - name: re_replace - args: ["(?i)(Decimosegunda Temporada)", "S12"] - - name: re_replace - args: ["(?i)(Primera Temporada)", "S01"] - - name: re_replace - args: ["(?i)(Segunda Temporada)", "S02"] - - name: re_replace - args: ["(?i)(Tercera Temporada)", "S03"] - - name: re_replace - args: ["(?i)(Cuarta Temporada)", "S04"] - - name: re_replace - args: ["(?i)(Quinta Temporada)", "S05"] - - name: re_replace - args: ["(?i)(Sexta Temporada)", "S06"] - - name: re_replace - args: ["(?i)(Septima Temporada)", "S07"] - - name: re_replace - args: ["(?i)(Octava Temporada)", "S08"] - - name: re_replace - args: ["(?i)(Novena Temporada)", "S09"] - - name: re_replace - args: ["(?i)(Decima Temporada)", "S10"] - - name: re_replace - args: ["(?i)(Onceava Temporada)", "S11"] - - name: re_replace - args: ["(?i)(Temporada) (\\d{1,2})", "S$2"] - - - name: replace - args: ["/", " "] - - name: replace - args: ["(", " "] - - name: replace - args: [")", " "] - - name: replace - args: ["{", "("] - - name: replace - args: ["}", ")"] - - name: replace - args: [" ", " "] - - details: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: href - poster: - selector: a[href^="index.php?page=torrent-details&id="] - attribute: onmouseover - filters: - - name: regexp - args: "src=(.+?) " - download: - selector: a[href^="download.php?id="] - attribute: href - date: - selector: td:nth-child(5) - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "dd/MM/yyyy zzz" - size: - selector: td:nth-child(10) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - ":root:has(td.mainuser:contains(\"Free Leech\"))": 0 # Global Freeleech event - img[src$="freeleech.gif"]: 0 - img[src$="gold.gif"]: 0 - img[src$="silver.gif"]: 0.5 - img[src$="bronze.gif"]: 0.25 - "*": 1 - uploadvolumefactor: - case: - img[src$="2x.gif"]: 2 - img[src$="3x.gif"]: 3 - img[src$="4x.gif"]: 4 - img[src$="5x.gif"]: 5 - img[src$="6x.gif"]: 6 - img[src$="7x.gif"]: 7 - img[src$="8x.gif"]: 8 - img[src$="9x.gif"]: 9 - img[src$="10x.gif"]: 10 - "*": 1 - minimumratio: - text: 1.0 - minimumseedtime: - # 3 days (as seconds = 3 x 24 x 60 x 60) - text: 259200 -# xbtitFM v3.1.00 diff --git a/config/prowlarr/Definitions/xider-torrent.yml b/config/prowlarr/Definitions/xider-torrent.yml deleted file mode 100644 index 2004d5d2..00000000 --- a/config/prowlarr/Definitions/xider-torrent.yml +++ /dev/null @@ -1,164 +0,0 @@ ---- -id: xider-torrent -name: Xider-Torrent -description: "Xider-Torrent is a HUNGARIAN Private Tracker for MOVIES / TV" -language: hu-HU -type: private -encoding: UTF-8 -certificates: - - 2191bbeb4c86d287861b0a63d26aecc0983d5087 # Expired 18th November 2024 -links: - - https://xider.eu/ - -caps: - categorymappings: - - {id: 56, cat: TV, desc: " Film Sorozat"} - - {id: 44, cat: Movies/SD, desc: "Film-Cam/Eng"} - - {id: 45, cat: Movies/SD, desc: "Film-Cam/Hun"} - - {id: 58, cat: Movies/DVD, desc: "Film-DVD/Eng"} - - {id: 59, cat: Movies/DVD, desc: "Film-DVD/Hun"} - - {id: 64, cat: Movies/HD, desc: "Film-HD"} - - {id: 60, cat: Movies/SD, desc: "Film-Xvid/Eng"} - - {id: 62, cat: Movies/SD, desc: "Film-Xvid/Hun"} - - {id: 53, cat: Audio/Audiobook, desc: "Hangoskönyv"} - - {id: 51, cat: Other, desc: "Hátterek-Képek"} - - {id: 55, cat: PC/Games, desc: "Játék-ISO"} - - {id: 54, cat: PC/Games, desc: "Játék-RIP"} - - {id: 43, cat: Books, desc: "Könyvek"} - - {id: 50, cat: TV/Anime, desc: "Mesefilm"} - - {id: 42, cat: PC/Mobile-Other, desc: "Mobilok"} - - {id: 39, cat: PC, desc: "Program"} - - {id: 57, cat: Audio/MP3, desc: "Zene-MP3"} - - {id: 72, cat: XXX, desc: "XXX-Film"} - - {id: 71, cat: XXX/ImageSet, desc: "XXX-Kép"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - book-search: [q] - music-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: 4 - options: - 1: title - 4: added - 5: size - 7: seeders - - 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 Torrentek száma egy oldalon: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "User profiles are automatically deleted after a long period of inactivity." - -login: - path: login.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table[width="920"]:contains("Hiba") - test: - path: index.php - selector: a[href^="logout.php"] - -search: - paths: - - path: browse.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ .Keywords }}" - # 0 active, 1 all, 2 deadonly, 3 my uploads, 4 seedless - incldead: 1 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - # does not support imdbid search or return imdbid in results. - - rows: - selector: "tr.torrentDataRow{{ if .Config.freeleech }}:has(span[style^=\"font\"]:contains(\"0x\")){{ else }}{{ end }}" - - fields: - _id: - selector: a[data-torrent-id] - attribute: data-torrent-id - category: - selector: a[href^="browse.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[data-torrent-id] - attribute: title - filters: - - name: replace - args: ["Név: ", ""] - - name: replace - args: ["Első név: -", ""] - - name: replace - args: ["Második név: -", ""] - details: - text: "details.php?id={{ .Result._id }}" - download: - text: "download.php?torrent={{ .Result._id }}" - attribute: href - poster: - selector: a[href^="kepek/"] - attribute: href - date: - selector: td:nth-child(4) span - attribute: title - filters: - - name: append - args: " +01:00" # CET - - name: dateparse - args: "yyyy-MM-dd HH:mm:ss zzz" - size: - selector: td:nth-child(5) - grabs: - selector: td:nth-child(8) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - description: - case: - span[style*="color:#ccc;"]: Verified - i.fa-question: Unverified - downloadvolumefactor: - case: - "span[style^=\"font\"]:contains(\"0x\")": 0 - "*": 1 - uploadvolumefactor: - case: - "span[style^=\"font\"]:last-child:contains(\"2x\")": 2 - "*": 1 - minimumseedtime: - # 2 days (as seconds = 2 x 24 x 60 x 60) - text: 172800 -# Engine n/a diff --git a/config/prowlarr/Definitions/xperiencebytes-api.yml b/config/prowlarr/Definitions/xperiencebytes-api.yml deleted file mode 100644 index 13729930..00000000 --- a/config/prowlarr/Definitions/xperiencebytes-api.yml +++ /dev/null @@ -1,152 +0,0 @@ ---- -id: xperiencebytes-api -name: XperienceBytes (API) -description: "XperienceBytes (XPB) is a BRAZILIAN Private site for ANIME" -language: pt-BR -type: private -encoding: UTF-8 -links: - - https://xperiencebytes.me/ - -caps: - categorymappings: - - {id: 6, cat: Movies, desc: "Tipo Filme"} - - {id: 7, cat: TV, desc: "Tipo Série"} - - modes: - search: [q] - tv-search: [q, season, ep, imdbid, tvdbid, tmdbid] - movie-search: [q, imdbid, tmdbid] - -settings: - - name: apikey - type: text - label: APIKey - - name: info_key - type: info - label: About your API key - default: "Find or Generate a new API Token by accessing your XPB account My Security page and clicking on the API Token tab." - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: created_at - options: - created_at: created - seeders: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_activity - type: info - label: Account Inactivity - default: "After 3 months without any log in or usage of your account, it will be pruned and can only be reactivated by a staff member. Make sure to keep your account active and do not use programs to keep your account active, as your account may still get pruned." - -login: - path: /api/torrents - method: get - error: - - selector: a[href*="/login"] - message: - text: "The API key was not accepted by {{ .Config.sitelink }}." - - selector: :root:contains("Account is Banned") - -search: - paths: - # https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x) - # https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476 - - path: "/api/torrents/filter" - response: - type: json - - headers: - Authorization: ["Bearer {{ .Config.apikey }}"] - - inputs: - # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 - $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" - name: "{{ .Keywords }}" - seasonNumber: "{{ .Query.Season }}" - episodeNumber: "{{ .Query.Ep }}" - imdbId: "{{ .Query.IMDBIDShort }}" - tmdbId: "{{ .Query.TMDBID }}" - tvdbId: "{{ .Query.TVDBID }}" - free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" - sortField: "{{ .Config.sort }}" - sortDirection: "{{ .Config.type }}" - perPage: 100 - - keywordsfilters: - - name: re_replace - args: ["\\.", " "] - - rows: - selector: data - attribute: attributes - - fields: - categorydesc: - selector: category - title: - selector: name - details: - selector: details_link - download: - selector: download_link - poster: - selector: poster - filters: - - name: replace - args: ["https://via.placeholder.com/90x135", ""] - imdbid: - selector: imdb_id - tmdbid: - selector: tmdb_id - tvdbid: - selector: tvdb_id - files: - selector: num_file - seeders: - selector: seeders - leechers: - selector: leechers - grabs: - selector: times_completed - date: - # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 - selector: created_at - filters: - - name: append - args: " +00:00" # GMT - - name: dateparse - args: "MM/dd/yyyy HH:mm:ss zzz" - size: - selector: size - downloadvolumefactor: - # api returns 0%, 25%, 50%, 75%, 100% - selector: freeleech - case: - 0%: 1 # not free - 25%: 0.75 - 50%: 0.5 - 75%: 0.25 - 100%: 0 # freeleech - "*": 0 # catch errors - uploadvolumefactor: - # api returns 0=false, 1=true - selector: double_upload - case: - 0: 1 # normal - 1: 2 # double - minimumratio: - text: 1.0 -# json UNIT3D 6.0.0 diff --git a/config/prowlarr/Definitions/xxxadulttorrent.yml b/config/prowlarr/Definitions/xxxadulttorrent.yml deleted file mode 100644 index d935b4c7..00000000 --- a/config/prowlarr/Definitions/xxxadulttorrent.yml +++ /dev/null @@ -1,64 +0,0 @@ ---- -id: xxxadulttorrent -name: xxxAdultTorrent -description: "xxxAdultTorrent is a RUSSIAN Public tracker for 3X" -language: ru-RU -type: public -encoding: UTF-8 -links: - - https://xxxadulttorrent.org/ - -caps: - categories: - XXX: XXX - - modes: - search: [q] - -settings: [] - -download: - selectors: - - selector: a[href^="magnet:?xt="] - attribute: href - -search: - headers: - User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.203"] - - paths: - # https://xxxadulttorrent.org/search/vika - # https://xxxadulttorrent.org/browse/0/0/0/0 - - path: "{{ if .Keywords }}search/{{ .Keywords }}{{ else }}browse/0/0/0/0{{ end }}" - - rows: - # filter out torrents with 0B for issue #9756 - selector: li.content__item:has(div#torrent_info > div:contains("GB")), li.content__item:has(div#torrent_info > div:contains("MB")) - - fields: - category: - text: XXX - title: - selector: h1 - details: - selector: a[href^="/torrent/"] - attribute: href - download: - selector: a[href^="/torrent/"] - attribute: href - poster: - selector: img.content__item-img-wrapper - attribute: src - date: - text: now - size: - selector: div#torrent_info > div - seeders: - text: 1 - leechers: - text: 1 - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/ydypt.yml b/config/prowlarr/Definitions/ydypt.yml deleted file mode 100644 index e0c9d669..00000000 --- a/config/prowlarr/Definitions/ydypt.yml +++ /dev/null @@ -1,177 +0,0 @@ ---- -id: ydypt -name: YDYPT (伊甸园PT) -description: "YDYPT (伊甸园PT) is a CHINESE Private Torrent Tracker for MOVIES / TV / 3X" -language: zh-CN -type: private -encoding: UTF-8 -links: - - https://pt.hdbd.us/ - -caps: - categorymappings: - - {id: 420, cat: Movies/BluRay, desc: "电影BluRay Movies"} - - {id: 423, cat: Movies/HD, desc: "电影HD Movies"} - - {id: 424, cat: TV/HD, desc: "剧集BluRay TV"} - - {id: 421, cat: TV/HD, desc: "剧集HD TV"} - - {id: 506, cat: XXX, desc: "有码censured BluRay 3X"} - - {id: 500, cat: XXX, desc: "有码censured HD 3X"} - - {id: 507, cat: XXX, desc: "无码uncensured BluRay 3X"} - - {id: 501, cat: XXX, desc: "无码uncensured HD 3X"} - - {id: 503, cat: XXX, desc: "欧美Euro&USA 3X"} - - {id: 502, cat: XXX, desc: "国产自拍Homemade 3X"} - - {id: 509, cat: XXX, desc: "里番H-Anime"} - - {id: 422, cat: XXX, desc: "其他Other 3X"} - - 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: 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 Torrents per page: setting to 100 on your account profile. - - name: info_activity - type: info - label: Account Inactivity - default: "Account retention rules:
    1. Veteran User and above will be retained forever
    2. Elite User and above will not have their account deleted after parking (in the control panel)
    3. Users with a parked account will be deleted if they do not log in for 180 consecutive days
    4. Users with a non-parked account will be deleted if they do not log in for 30 consecutive days
    5. Users who have registered without traffic for 15 days (that is, the upload/download data are both 0) will be deleted directly.
    " - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - logout: forever - securelogin: "" - error: - - selector: td.embedded:has(h2:contains("失败")) - test: - path: index.php - selector: a[href*="logout.php"] - -search: - paths: - # https://pt.hdbd.us/torrents.php?incldead=0&spstate=0&picktype=0&inclbookmarked=0&search=&search_area=0&search_mode=0 - - path: torrents.php - inputs: - $raw: "{{ range .Categories }}cat{{.}}=1&{{end}}" - # currently supports only one query id at one time. - 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 popular, 3 classic, 4 recomended, 5 0day, 6 imdb top 250 - picktype: 0 - # 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%, 8 all promotions - spstate: "{{ if .Config.freeleech }}8{{ else }}0{{ end }}" - # 0 title, 1 descr, 2 subtitltes, 3 uploader, 4 imdburl - search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}" - # 0 AND 1 OR 2 exact - search_mode: 0 - sort: "{{ .Config.sort }}" - type: "{{ .Config.type }}" - notnewword: 1 - - rows: - selector: table.torrents > tbody > tr:has(table.torrentname) - - fields: - category: - selector: a[href*="cat="] - attribute: href - filters: - - name: querystring - args: cat - title_default: - selector: a[href^="details.php?id="] - title: - selector: a[title][href^="details.php?id="] - attribute: title - optional: true - default: "{{ .Result.title_default }}" - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="download.php?id="] - attribute: href - imdbid: - selector: a[href*="imdb.com/title/tt"] - attribute: href - date_elapsed: - # time type: time elapsed (default) - selector: td: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: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:nth-child(5) - seeders: - selector: td:nth-child(6) - leechers: - selector: td:nth-child(7) - grabs: - selector: td:nth-child(8) - downloadvolumefactor: - case: - font.free: 0 - font.twoupfree: 0 - font.halfdown: 0.5 - font.twouphalfdown: 0.5 - font.thirtypercent: 0.3 - "*": 1 - uploadvolumefactor: - case: - font.twouphalfdown: 2 - font.twoupfree: 2 - font.twoup: 2 - "*": 1 - minimumratio: - text: 0.8 - description: - selector: td:nth-child(2) - remove: a, b, font, img, span -# NexusPHP Standard v1.5 Beta 4 (custom ulvf dlvf) diff --git a/config/prowlarr/Definitions/yggcookie.yml b/config/prowlarr/Definitions/yggcookie.yml deleted file mode 100644 index 1711c7ad..00000000 --- a/config/prowlarr/Definitions/yggcookie.yml +++ /dev/null @@ -1,382 +0,0 @@ ---- -id: yggcookie -name: YGG cookie -description: "YggTorrent (YGG) is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL. This indexer uses cookie login." -language: fr-FR -type: private -encoding: UTF-8 -followredirect: true -requestDelay: 4 -links: - - https://www.yggtorrent.top/ -legacylinks: - - https://www2.yggtorrent.si/ - - https://www.yggtorrent.li/ - - https://www4.yggtorrent.li/ - - https://www3.yggtorrent.nz/ - - https://www3.yggtorrent.re/ - - https://www3.yggtorrent.la/ - - https://www5.yggtorrent.la/ - - https://www5.yggtorrent.fi/ - - https://yggtorrent.lol/ - - https://www6.yggtorrent.lol/ - - https://www3.yggtorrent.do/ - - https://www3.yggtorrent.wtf/ - - https://www3.yggtorrent.qa/ - - https://www3.yggtorrent.cool/ - - https://www.ygg.re/ - -caps: - categorymappings: - - {id: 2145, cat: TV, desc: "Film/Vidéo"} - - {id: 2178, cat: Movies/Other, desc: "Film/Vidéo : Animation"} # changed to movies, see #3553 - - {id: 2179, cat: TV/Anime, desc: "Film/Vidéo : Animation Série"} - - {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"} - - {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"} - - {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"} - - {id: 2183, cat: Movies, desc: "Film/Vidéo : Film"} - - {id: 2184, cat: TV, desc: "Film/Vidéo : Série TV"} - - {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"} - - {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"} - - {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"} - - {id: 2139, cat: Audio, desc: "Audio"} - - {id: 2147, cat: Audio, desc: "Audio : Karaoké"} - - {id: 2148, cat: Audio, desc: "Audio : Musique"} - - {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"} - - {id: 2149, cat: Audio/Other, desc: "Audio : Samples"} - - {id: 2144, cat: PC, desc: "Application"} - - {id: 2177, cat: PC/0day, desc: "Application : Autre"} - - {id: 2176, cat: PC, desc: "Application : Formation"} - - {id: 2171, cat: PC/ISO, desc: "Application : Linux"} - - {id: 2172, cat: PC/Mac, desc: "Application : MacOS"} - - {id: 2174, cat: PC/Mobile-Android, desc: "Application : Smartphone"} - - {id: 2175, cat: PC/Mobile-Android, desc: "Application : Tablette"} - - {id: 2173, cat: PC/0day, desc: "Application : Windows"} - - {id: 2142, cat: PC/Games, desc: "Jeu vidéo"} - - {id: 2167, cat: Console/Other, desc: "Jeu vidéo : Autre"} - - {id: 2159, cat: PC/Games, desc: "Jeu vidéo : Linux"} - - {id: 2160, cat: PC/Games, desc: "Jeu vidéo : MacOS"} - - {id: 2162, cat: Console/XBox One, desc: "Jeu vidéo : Microsoft"} - - {id: 2163, cat: Console/Wii, desc: "Jeu vidéo : Nintendo"} - - {id: 2165, cat: PC/Mobile-Android, desc: "Jeu vidéo : Smartphone"} - - {id: 2164, cat: Console/PS4, desc: "Jeu vidéo : Sony"} - - {id: 2166, cat: PC/Mobile-Android, desc: "Jeu vidéo : Tablette"} - - {id: 2161, cat: PC/Games, desc: "Jeu vidéo : Windows"} - - {id: 2140, cat: Books, desc: "eBook"} - - {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"} - - {id: 2152, cat: Books/EBook, desc: "eBook : Bds"} - - {id: 2153, cat: Books/Comics, desc: "eBook : Comics"} - - {id: 2154, cat: Books/EBook, desc: "eBook : Livres"} - - {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"} - - {id: 2156, cat: Books/Mags, desc: "eBook : Presse"} - - {id: 2300, cat: Other, desc: "Nulled"} - - {id: 2301, cat: Other, desc: "Nulled : Wordpress"} - - {id: 2302, cat: Other, desc: "Nulled : Scripts PHP & CMS"} - - {id: 2303, cat: Other, desc: "Nulled : Mobile"} - - {id: 2304, cat: Other, desc: "Nulled : Divers"} - - {id: 2200, cat: Other, desc: "Imprimante 3D"} - - {id: 2201, cat: Other, desc: "Imprimante 3D : Objets"} - - {id: 2202, cat: Other, desc: "Imprimante 3D : Personnages"} - - {id: 2141, cat: Other, desc: "Emulation"} - - {id: 2157, cat: Other, desc: "Emulation : Emulateurs"} - - {id: 2158, cat: Other, desc: "Emulation : Roms"} - - {id: 2143, cat: Other, desc: "GPS"} - - {id: 2168, cat: Other, desc: "GPS : Applications"} - - {id: 2169, cat: Other, desc: "GPS : Cartes"} - - {id: 2170, cat: Other, desc: "GPS : Divers"} - - {id: 2188, cat: XXX, desc: "XXX"} - - {id: 2401, cat: XXX/Other, desc: "XXX : Ebooks"} - - {id: 2189, cat: XXX, desc: "XXX : Films"} - - {id: 2190, cat: XXX, desc: "XXX : Hentai"} - - {id: 2191, cat: XXX/ImageSet, desc: "XXX : Images"} - - {id: 2402, cat: XXX/Other, desc: "XXX : Jeux"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: cookie - type: text - label: Cookie - - name: info_cookie - type: info_cookie - - name: useragent - type: text - label: User-Agent - - name: info_useragent - type: info_useragent - - name: category - type: select - label: Category - default: all - options: - all: "Tous" - 2145: "Film/Vidéo" - 2139: "Audio" - 2144: "Application" - 2142: "Jeu vidéo" - 2140: "eBook" - 2300: "Nulled" - 2200: "Imprimante 3D" - 2141: "Emulation" - 2143: "GPS" - 2188: "XXX" - - name: subcategory - type: select - label: Sub-category - default: all - options: - all: "Tous" - 2178: "Film/Vidéo : Animation" - 2179: "Film/Vidéo : Animation Série" - 2180: "Film/Vidéo : Concert" - 2181: "Film/Vidéo : Documentaire" - 2182: "Film/Vidéo : Emission TV" - 2183: "Film/Vidéo : Film" - 2184: "Film/Vidéo : Série TV" - 2185: "Film/Vidéo : Spectacle" - 2186: "Film/Vidéo : Sport" - 2187: "Film/Vidéo : Vidéo-clips" - 2147: "Audio : Karaoké" - 2148: "Audio : Musique" - 2150: "Audio : Podcast Radio" - 2149: "Audio : Samples" - 2177: "Application : Autre" - 2176: "Application : Formation" - 2171: "Application : Linux" - 2172: "Application : MacOS" - 2174: "Application : Smartphone" - 2175: "Application : Tablette" - 2173: "Application : Windows" - 2167: "Jeu vidéo : Autre" - 2159: "Jeu vidéo : Linux" - 2160: "Jeu vidéo : MacOS" - 2162: "Jeu vidéo : Microsoft" - 2163: "Jeu vidéo : Nintendo" - 2165: "Jeu vidéo : Smartphone" - 2164: "Jeu vidéo : Sony" - 2166: "Jeu vidéo : Tablette" - 2161: "Jeu vidéo : Windows" - 2151: "eBook : Audio" - 2152: "eBook : Bds" - 2153: "eBook : Comics" - 2154: "eBook : Livres" - 2155: "eBook : Mangas" - 2156: "eBook : Presse" - 2301: "Nulled : Wordpress" - 2302: "Nulled : Scripts PHP & CMS" - 2303: "Nulled : Mobile" - 2304: "Nulled : Divers" - 2201: "Imprimante 3D : Objets" - 2202: "Imprimante 3D : Personnages" - 2157: "Emulation : Emulateurs" - 2158: "Emulation : Roms" - 2168: "GPS : Applications" - 2169: "GPS : Cartes" - 2170: "GPS : Divers" - 2401: "XXX : Ebooks" - 2189: "XXX : Films" - 2190: "XXX : Hentai" - 2191: "XXX : Images" - 2402: "XXX : Jeux" - - name: info_category - type: info - label: Category and Sub-category - default: Only select a Category OR a Sub-category, leaving the other as Tous. - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi.FRENCH: MULTi.FRENCH - ENGLISH: ENGLISH - MULTi.ENGLISH: MULTi.ENGLISH - VOSTFR: VOSTFR - MULTi.VOSTFR: MULTi.VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: filter_title - type: checkbox - label: Normalize release names by moving year after the title - default: false - - name: strip_season - type: checkbox - label: Strip season only (e.g. S01) from searches, as tracker does not support partial matches - default: true - - name: enhancedAnime - type: checkbox - label: Enhance Sonarr compatibility with anime by renaming episodes (xxx > Exxx). Can disturb movies search (e.g. Back To The Future 3 > Back To The Future E3). - default: false - - name: enhancedAnime4 - type: checkbox - label: Extend the Sonarr compatibility with anime up to 4 digits. This WILL break all searches and result titles which contain years. - default: false - - name: sort - type: select - label: Sort requested from site - default: publish_date - options: - publish_date: created - seed: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_flaresolverr - type: info_flaresolverr - -login: - # using cookie method as an alternative when regular login for some users does not work - method: cookie - inputs: - cookie: "{{ .Config.cookie }}" - test: - path: / - selector: a[href$="/user/logout"] - -search: - paths: - - path: engine/search - inputs: - name: "{{ .Keywords }}" - followredirect: true - - path: engine/search - inputs: - $raw: "name={{ if .Keywords }}{{ re_replace .Keywords \"(?i)S0?(\\d{1,2})\" \"Saison $1\" }}{{ else }}&page=50{{ end }}" - followredirect: true - inputs: - $raw: "{{ if eq .Config.subcategory \"all\" }}category={{ .Config.category }}{{ else }}sub_category={{ .Config.subcategory }}{{ end }}" - do: search - order: "{{ .Config.type }}" - sort: "{{ .Config.sort }}" - - headers: - User-Agent: ["{{ .Config.useragent }}"] - - keywordsfilters: - - name: re_replace # 1234 > E1234 - args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"] - - name: re_replace # 123 > E123 - args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"] - # fix date search and workaround for internal YGG issues - - name: re_replace - args: ["[\\\\\\-\\.\\/!\\s]+", " "] - # strip season as site does not support partial matches - - name: re_replace - args: ["(?i)\\b(S\\d{1,3})\\b", "{{ if .Config.strip_season }}{{ else }}$1{{ end }}"] - - name: trim - # put each word in quotations to prevent exact phrase search - - name: re_replace - args: ["([^\\s]+)", "\"$1\""] - - rows: - selector: table.table > tbody > tr - - fields: - _id: - selector: td:nth-child(2) > a - attribute: href - filters: - - name: regexp - args: "/(\\d+)-" - title_normal: - selector: td:nth-child(2) > a - filters: - # Saison 1 Episode 2 > S01E02 - - name: re_replace - args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)([\\s\\.]*[EÉ]pisodes?[\\s\\.]*)(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2E$4{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)[\\s\\.]*[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1E$2"] - # Saison 1 > S01 - - name: re_replace - args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"] - - name: re_replace - args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"] - # Episode 1 > E01 - - name: re_replace - args: ["(?i)\\b([EÉ]pisodes?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"] - - name: re_replace - args: ["(?i)\\b[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"] - # S1 à 2 > S1-2 - - name: re_replace - args: ["(?i)\\b(S?\\d*[SE])(\\d{4})([\\s\\.\\-aà]+)(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}$1$2-$4{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\b(S?\\d*[SE])(\\d{1,3})[\\s\\.\\-aà]+(\\d{1,3})\\b", "$1$2-$3"] - # Replace French date dd-mm-yyyy to yyyy.mm.dd - - name: re_replace - args: ["\\b(\\d{2})[\\-_\\.](\\d{2})[\\-_\\.](\\d{4})\\b", "$3.$2.$1"] - title_filtered: - text: "{{ .Result.title_normal }}" - filters: - - name: re_replace - args: ["(?i)^(?:(.+?)((?:[\\.\\-\\s_\\[]+(?:imax|(?:dvd|bd|tv)(?:rip|scr)|bluray(?:\\-?rip)?|720\\s*p?|1080\\s*p?|vof?|vost(?:fr)?|multi|vf(?:f|q)?[1-3]?|(?:true)?french|eng?)[\\.\\-\\s_\\]]*)*)([\\(\\[]?(?:20|1[7-9])\\d{2}[\\)\\]]?)(.*)$|(.*))$", "$1 $3 $2 $4 $5"] - - name: trim - - name: re_replace - args: ["(?i)(.\\b(mkv|avi|divx|xvid|mp4)\\b)$", ""] - - name: re_replace - args: ["(\\s+)", " "] - - name: trim - title_phase1: - text: "{{ if .Config.filter_title }}{{ .Result.title_filtered }}{{ else }}{{ .Result.title_normal }}{{ end }}" - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - filters: - - name: re_replace - args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"] - - name: re_replace - args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"] - details: - selector: td:nth-child(2) > a - attribute: href - category: - selector: td:nth-child(1) > div.hidden - download: - text: "/engine/download_torrent?id={{ .Result._id }}" - date: - # unix - selector: td:nth-child(5) > div.hidden - size: - selector: td:nth-child(6) - filters: - - name: replace - args: ["o", "B"] - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/yggtorrent.yml b/config/prowlarr/Definitions/yggtorrent.yml deleted file mode 100644 index 0970fab0..00000000 --- a/config/prowlarr/Definitions/yggtorrent.yml +++ /dev/null @@ -1,386 +0,0 @@ ---- -id: yggtorrent -name: YggTorrent -description: "YggTorrent (YGG) is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL" -language: fr-FR -type: private -encoding: UTF-8 -followredirect: true -requestDelay: 4 -links: - - https://www.yggtorrent.top/ -legacylinks: - - https://www2.yggtorrent.si/ - - https://www.yggtorrent.li/ - - https://www4.yggtorrent.li/ - - https://www3.yggtorrent.nz/ - - https://www3.yggtorrent.re/ - - https://www3.yggtorrent.la/ - - https://www5.yggtorrent.la/ - - https://www5.yggtorrent.fi/ - - https://yggtorrent.lol/ - - https://www6.yggtorrent.lol/ - - https://www3.yggtorrent.do/ - - https://www3.yggtorrent.wtf/ - - https://www3.yggtorrent.qa/ - - https://www3.yggtorrent.cool/ - - https://www.ygg.re/ - -caps: - categorymappings: - - {id: 2145, cat: TV, desc: "Film/Vidéo"} - - {id: 2178, cat: Movies/Other, desc: "Film/Vidéo : Animation"} # changed to movies, see #3553 - - {id: 2179, cat: TV/Anime, desc: "Film/Vidéo : Animation Série"} - - {id: 2180, cat: Audio/Video, desc: "Film/Vidéo : Concert"} - - {id: 2181, cat: TV/Documentary, desc: "Film/Vidéo : Documentaire"} - - {id: 2182, cat: TV, desc: "Film/Vidéo : Emission TV"} - - {id: 2183, cat: Movies, desc: "Film/Vidéo : Film"} - - {id: 2184, cat: TV, desc: "Film/Vidéo : Série TV"} - - {id: 2185, cat: TV, desc: "Film/Vidéo : Spectacle"} - - {id: 2186, cat: TV/Sport, desc: "Film/Vidéo : Sport"} - - {id: 2187, cat: TV/Other, desc: "Film/Vidéo : Vidéo-clips"} - - {id: 2139, cat: Audio, desc: "Audio"} - - {id: 2147, cat: Audio, desc: "Audio : Karaoké"} - - {id: 2148, cat: Audio, desc: "Audio : Musique"} - - {id: 2150, cat: Audio, desc: "Audio : Podcast Radio"} - - {id: 2149, cat: Audio/Other, desc: "Audio : Samples"} - - {id: 2144, cat: PC, desc: "Application"} - - {id: 2177, cat: PC/0day, desc: "Application : Autre"} - - {id: 2176, cat: PC, desc: "Application : Formation"} - - {id: 2171, cat: PC/ISO, desc: "Application : Linux"} - - {id: 2172, cat: PC/Mac, desc: "Application : MacOS"} - - {id: 2174, cat: PC/Mobile-Android, desc: "Application : Smartphone"} - - {id: 2175, cat: PC/Mobile-Android, desc: "Application : Tablette"} - - {id: 2173, cat: PC/0day, desc: "Application : Windows"} - - {id: 2142, cat: PC/Games, desc: "Jeu vidéo"} - - {id: 2167, cat: Console/Other, desc: "Jeu vidéo : Autre"} - - {id: 2159, cat: PC/Games, desc: "Jeu vidéo : Linux"} - - {id: 2160, cat: PC/Games, desc: "Jeu vidéo : MacOS"} - - {id: 2162, cat: Console/XBox One, desc: "Jeu vidéo : Microsoft"} - - {id: 2163, cat: Console/Wii, desc: "Jeu vidéo : Nintendo"} - - {id: 2165, cat: PC/Mobile-Android, desc: "Jeu vidéo : Smartphone"} - - {id: 2164, cat: Console/PS4, desc: "Jeu vidéo : Sony"} - - {id: 2166, cat: PC/Mobile-Android, desc: "Jeu vidéo : Tablette"} - - {id: 2161, cat: PC/Games, desc: "Jeu vidéo : Windows"} - - {id: 2140, cat: Books, desc: "eBook"} - - {id: 2151, cat: Audio/Audiobook, desc: "eBook : Audio"} - - {id: 2152, cat: Books/EBook, desc: "eBook : Bds"} - - {id: 2153, cat: Books/Comics, desc: "eBook : Comics"} - - {id: 2154, cat: Books/EBook, desc: "eBook : Livres"} - - {id: 2155, cat: Books/Comics, desc: "eBook : Mangas"} - - {id: 2156, cat: Books/Mags, desc: "eBook : Presse"} - - {id: 2300, cat: Other, desc: "Nulled"} - - {id: 2301, cat: Other, desc: "Nulled : Wordpress"} - - {id: 2302, cat: Other, desc: "Nulled : Scripts PHP & CMS"} - - {id: 2303, cat: Other, desc: "Nulled : Mobile"} - - {id: 2304, cat: Other, desc: "Nulled : Divers"} - - {id: 2200, cat: Other, desc: "Imprimante 3D"} - - {id: 2201, cat: Other, desc: "Imprimante 3D : Objets"} - - {id: 2202, cat: Other, desc: "Imprimante 3D : Personnages"} - - {id: 2141, cat: Other, desc: "Emulation"} - - {id: 2157, cat: Other, desc: "Emulation : Emulateurs"} - - {id: 2158, cat: Other, desc: "Emulation : Roms"} - - {id: 2143, cat: Other, desc: "GPS"} - - {id: 2168, cat: Other, desc: "GPS : Applications"} - - {id: 2169, cat: Other, desc: "GPS : Cartes"} - - {id: 2170, cat: Other, desc: "GPS : Divers"} - - {id: 2188, cat: XXX, desc: "XXX"} - - {id: 2401, cat: XXX/Other, desc: "XXX : Ebooks"} - - {id: 2189, cat: XXX, desc: "XXX : Films"} - - {id: 2190, cat: XXX, desc: "XXX : Hentai"} - - {id: 2191, cat: XXX/ImageSet, desc: "XXX : Images"} - - {id: 2402, cat: XXX/Other, desc: "XXX : Jeux"} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - allowrawsearch: true - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: category - type: select - label: Category - default: all - options: - all: "Tous" - 2145: "Film/Vidéo" - 2139: "Audio" - 2144: "Application" - 2142: "Jeu vidéo" - 2140: "eBook" - 2300: "Nulled" - 2200: "Imprimante 3D" - 2141: "Emulation" - 2143: "GPS" - 2188: "XXX" - - name: subcategory - type: select - label: Sub-category - default: all - options: - all: "Tous" - 2178: "Film/Vidéo : Animation" - 2179: "Film/Vidéo : Animation Série" - 2180: "Film/Vidéo : Concert" - 2181: "Film/Vidéo : Documentaire" - 2182: "Film/Vidéo : Emission TV" - 2183: "Film/Vidéo : Film" - 2184: "Film/Vidéo : Série TV" - 2185: "Film/Vidéo : Spectacle" - 2186: "Film/Vidéo : Sport" - 2187: "Film/Vidéo : Vidéo-clips" - 2147: "Audio : Karaoké" - 2148: "Audio : Musique" - 2150: "Audio : Podcast Radio" - 2149: "Audio : Samples" - 2177: "Application : Autre" - 2176: "Application : Formation" - 2171: "Application : Linux" - 2172: "Application : MacOS" - 2174: "Application : Smartphone" - 2175: "Application : Tablette" - 2173: "Application : Windows" - 2167: "Jeu vidéo : Autre" - 2159: "Jeu vidéo : Linux" - 2160: "Jeu vidéo : MacOS" - 2162: "Jeu vidéo : Microsoft" - 2163: "Jeu vidéo : Nintendo" - 2165: "Jeu vidéo : Smartphone" - 2164: "Jeu vidéo : Sony" - 2166: "Jeu vidéo : Tablette" - 2161: "Jeu vidéo : Windows" - 2151: "eBook : Audio" - 2152: "eBook : Bds" - 2153: "eBook : Comics" - 2154: "eBook : Livres" - 2155: "eBook : Mangas" - 2156: "eBook : Presse" - 2301: "Nulled : Wordpress" - 2302: "Nulled : Scripts PHP & CMS" - 2303: "Nulled : Mobile" - 2304: "Nulled : Divers" - 2201: "Imprimante 3D : Objets" - 2202: "Imprimante 3D : Personnages" - 2157: "Emulation : Emulateurs" - 2158: "Emulation : Roms" - 2168: "GPS : Applications" - 2169: "GPS : Cartes" - 2170: "GPS : Divers" - 2401: "XXX : Ebooks" - 2189: "XXX : Films" - 2190: "XXX : Hentai" - 2191: "XXX : Images" - 2402: "XXX : Jeux" - - name: info_category - type: info - label: Category and Sub-category - default: Only select a Category OR a Sub-category, leaving the other as Tous. - - name: multilang - type: checkbox - label: Replace MULTi by another language in release name - default: false - - name: multilanguage - type: select - label: Replace MULTi by this language - default: FRENCH - options: - FRENCH: FRENCH - MULTi.FRENCH: MULTi.FRENCH - ENGLISH: ENGLISH - MULTi.ENGLISH: MULTi.ENGLISH - VOSTFR: VOSTFR - MULTi.VOSTFR: MULTi.VOSTFR - - name: vostfr - type: checkbox - label: Replace VOSTFR and SUBFRENCH with ENGLISH - default: false - - name: filter_title - type: checkbox - label: Normalize release names by moving year after the title - default: false - - name: strip_season - type: checkbox - label: Strip season only (e.g. S01) from searches, as tracker does not support partial matches - default: true - - name: enhancedAnime - type: checkbox - label: Enhance Sonarr compatibility with anime by renaming episodes (xxx > Exxx). Can disturb movies search (e.g. Back To The Future 3 > Back To The Future E3). - default: false - - name: enhancedAnime4 - type: checkbox - label: Extend the Sonarr compatibility with anime up to 4 digits. This WILL break all searches and result titles which contain years. - default: false - - name: sort - type: select - label: Sort requested from site - default: publish_date - options: - publish_date: created - seed: seeders - size: size - name: title - - name: type - type: select - label: Order requested from site - default: desc - options: - desc: desc - asc: asc - - name: info_flaresolverr - type: info_flaresolverr - -login: - method: form - path: /auth/login - form: form.login-form - inputs: - id: "{{ .Config.username }}" - pass: "{{ .Config.password }}" - error: - - selector: p.error-form - - selector: a[href$="/user/disabled"] - message: - # Compte Inactif - selector: a[href$="/user/disabled"] strong - filters: - - name: append - args: " - Dès que vous passez en dessous d'un ratio inférieur à 1, Votre compte devient inactif et le site vous coupe les téléchargements." - test: - path: / - selector: a[href$="/user/logout"] - -search: - paths: - - path: engine/search - inputs: - name: "{{ .Keywords }}" - followredirect: true - - path: engine/search - inputs: - $raw: "name={{ if .Keywords }}{{ re_replace .Keywords \"(?i)S0?(\\d{1,2})\" \"Saison $1\" }}{{ else }}&page=50{{ end }}" - followredirect: true - inputs: - $raw: "{{ if eq .Config.subcategory \"all\" }}category={{ .Config.category }}{{ else }}sub_category={{ .Config.subcategory }}{{ end }}" - do: search - order: "{{ .Config.type }}" - sort: "{{ .Config.sort }}" - - keywordsfilters: - - name: re_replace # 1234 > E1234 - args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"] - - name: re_replace # 123 > E123 - args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"] - # fix date search and workaround for internal YGG issues - - name: re_replace - args: ["[\\\\\\-\\.\\/!\\s]+", " "] - # strip season as site does not support partial matches - - name: re_replace - args: ["(?i)\\b(S\\d{1,3})\\b", "{{ if .Config.strip_season }}{{ else }}$1{{ end }}"] - - name: trim - # put each word in quotations to prevent exact phrase search - - name: re_replace - args: ["([^\\s]+)", "\"$1\""] - - rows: - selector: table.table > tbody > tr - - fields: - _id: - selector: td:nth-child(2) > a - attribute: href - filters: - - name: regexp - args: "/(\\d+)-" - title_normal: - selector: td:nth-child(2) > a - filters: - # Saison 1 Episode 2 > S01E02 - - name: re_replace - args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)([\\s\\.]*[EÉ]pisodes?[\\s\\.]*)(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2E$4{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)[\\s\\.]*[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1E$2"] - # Saison 1 > S01 - - name: re_replace - args: ["(?i)\\b(Saisons?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"] - - name: re_replace - args: ["(?i)\\bSaisons?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"] - # Episode 1 > E01 - - name: re_replace - args: ["(?i)\\b([EÉ]pisodes?[\\s\\.]*)(\\d{4}(?:[\\s\\.\\-aà]+\\d{4})?)\\b", "{{ if .Config.enhancedAnime4 }}S$2{{ else }}$1$2{{ end }}"] - - name: re_replace - args: ["(?i)\\b[EÉ]pisodes?[\\s\\.]*(\\d{1,3}(?:[\\s\\.\\-aà]+\\d{1,3})?)\\b", "S$1"] - # S1 à 2 > S1-2 - - name: re_replace - args: ["(?i)\\b(S?\\d*[SE])(\\d{4})([\\s\\.\\-aà]+)(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}$1$2-$4{{ else }}$1$2$3$4{{ end }}"] - - name: re_replace - args: ["(?i)\\b(S?\\d*[SE])(\\d{1,3})[\\s\\.\\-aà]+(\\d{1,3})\\b", "$1$2-$3"] - # Replace French date dd-mm-yyyy to yyyy.mm.dd - - name: re_replace - args: ["\\b(\\d{2})[\\-_\\.](\\d{2})[\\-_\\.](\\d{4})\\b", "$3.$2.$1"] - title_filtered: - text: "{{ .Result.title_normal }}" - filters: - - name: re_replace - args: ["(?i)^(?:(.+?)((?:[\\.\\-\\s_\\[]+(?:imax|(?:dvd|bd|tv)(?:rip|scr)|bluray(?:\\-?rip)?|720\\s*p?|1080\\s*p?|vof?|vost(?:fr)?|multi|vf(?:f|q)?[1-3]?|(?:true)?french|eng?)[\\.\\-\\s_\\]]*)*)([\\(\\[]?(?:20|1[7-9])\\d{2}[\\)\\]]?)(.*)$|(.*))$", "$1 $3 $2 $4 $5"] - - name: trim - - name: re_replace - args: ["(?i)(.\\b(mkv|avi|divx|xvid|mp4)\\b)$", ""] - - name: re_replace - args: ["(\\s+)", " "] - - name: trim - title_phase1: - text: "{{ if .Config.filter_title }}{{ .Result.title_filtered }}{{ else }}{{ .Result.title_normal }}{{ end }}" - title_vostfr: - text: "{{ .Result.title_phase1 }}" - filters: - - name: re_replace - args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] - title_phase2: - text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" - title_multilang: - text: "{{ .Result.title_phase2 }}" - filters: - - name: re_replace - args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] - title: - text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" - filters: - - name: re_replace - args: ["\\b(\\d{4})\\b", "{{ if .Config.enhancedAnime4 }}E$1{{ else }}$1{{ end }}"] - - name: re_replace - args: ["\\b(\\d{2,3})\\b", "{{ if .Config.enhancedAnime }}E$1{{ else }}$1{{ end }}"] - details: - selector: td:nth-child(2) > a - attribute: href - category: - selector: td:nth-child(1) > div.hidden - download: - text: "/engine/download_torrent?id={{ .Result._id }}" - date: - # unix - selector: td:nth-child(5) > div.hidden - size: - selector: td:nth-child(6) - filters: - - name: replace - args: ["o", "B"] - grabs: - selector: td:nth-child(7) - seeders: - selector: td:nth-child(8) - leechers: - selector: td:nth-child(9) - downloadvolumefactor: - text: 1 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/yourbittorrent.yml b/config/prowlarr/Definitions/yourbittorrent.yml deleted file mode 100644 index 03651536..00000000 --- a/config/prowlarr/Definitions/yourbittorrent.yml +++ /dev/null @@ -1,111 +0,0 @@ ---- -id: yourbittorrent -name: YourBittorrent -description: "YourBittorrent is a Public torrent index" -language: en-US -type: public -encoding: UTF-8 -links: - - https://yourbittorrent.com/ - - https://yourbittorrent2.com/ -legacylinks: - - https://yourbittorrent.host/ - - https://yourbittorrent.nocensor.cloud/ - - https://yourbittorrent.mrunblock.bond/ - -caps: - categorymappings: - - {id: anime, cat: TV/Anime, desc: Anime} - - {id: software, cat: PC, desc: Software} - - {id: ebooks, cat: Books, desc: Ebooks} - - {id: adult, cat: XXX, desc: Adult} - - {id: games, cat: PC/Games, desc: Games} - - {id: movies, cat: Movies, desc: Movies} - - {id: music, cat: Audio, desc: Music} - - {id: television, cat: TV, desc: TV} - - {id: other, cat: Other, desc: Other} - - {id: photos, cat: Other, desc: Photos} - - {id: pictures, cat: Other, desc: Pictures} - - {id: unknown, cat: Other, desc: Unknown} - - modes: - search: [q] - tv-search: [q, season, ep] - movie-search: [q] - music-search: [q] - book-search: [q] - -settings: [] - -search: - paths: - - path: / - inputs: - q: "{{ .Keywords }}" - allowEmptyInputs: true - keywordsfilters: - - name: re_replace - args: ["[\\s]+", "-"] - - name: tolower - - rows: - selector: tr.table-default:has(a[href^="/torrent/"]) - filters: - - name: andmatch - - fields: - category: - selector: td:nth-child(1) - attribute: onclick - filters: - - name: regexp - args: "href='/(.+?).html" - title: - selector: td:nth-child(2) a - details: - selector: td:nth-child(2) a - attribute: href - download: - selector: td:nth-child(2) a - attribute: href - # turn /torrent/25778710/have-i-got-news-for-you-s59e02-720p-britishb00bseztv.html - # into /down/25778710.torrent - filters: - - name: split - args: ["/", 2] - - name: prepend - args: "/down/" - - name: append - args: ".torrent" - size: - selector: td:nth-child(3) - date_day: - selector: td:nth-child(4):not(:contains("/")):not(:contains("-")) - optional: true - filters: - - name: replace - args: ["Today", "now"] - - name: replace - args: ["Yesterday", "1 day"] - - name: timeago - date_year: - selector: td:nth-child(4):contains("/"), td:nth-child(4):contains("-") - optional: true - filters: - - name: replace - args: ["-", "/"] - - name: append - args: " -07:00" # PDT - - name: dateparse - args: "dd/MM/yy zzz" - date: - text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}" - seeders: - selector: td:nth-child(5) - leechers: - selector: td:nth-child(6) - downloadvolumefactor: - text: 0 - uploadvolumefactor: - text: 1 -# engine n/a diff --git a/config/prowlarr/Definitions/zomb.yml b/config/prowlarr/Definitions/zomb.yml deleted file mode 100644 index 40466716..00000000 --- a/config/prowlarr/Definitions/zomb.yml +++ /dev/null @@ -1,128 +0,0 @@ ---- -id: zomb -name: ZOMB -description: "ZOMB is a Semi-Private Torrent Tracker for BOOTLEG MUSIC" -language: en-US -type: semi-private -encoding: UTF-8 -links: - - http://zombtracker.the-zomb.com/ # site does not support https ERR_CONNECTION_REFUSED - -caps: - categorymappings: - - {id: 19, cat: Audio/Lossless, desc: "APE"} - - {id: 5, cat: Audio/Lossless, desc: "FLAC"} - - {id: 1, cat: Audio/Lossless, desc: "SHN"} - - {id: 12, cat: Audio/Video, desc: "MPG"} - - {id: 6, cat: Audio/Video, desc: "AVI"} - - {id: 2, cat: Audio/Video, desc: "DVD"} - - {id: 4, cat: Audio/Other, desc: "MISC"} - - modes: - search: [q] - music-search: [q, album, artist] - -settings: - - name: username - type: text - label: Username - - name: password - type: password - label: Password - - name: freeleech - type: checkbox - label: Search freeleech only - default: false - - name: sort - type: select - label: Sort requested from site - default: added - options: - added: created - seeders: seeders - size: size - name: 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 Torrents per page: setting to 100 on your account profile. - -login: - path: takelogin.php - method: post - inputs: - username: "{{ .Config.username }}" - password: "{{ .Config.password }}" - error: - - selector: table.main:contains("Login failed!") - test: - path: my.php - selector: a[href="logout.php"] - -search: - paths: - # http://zombtracker.the-zomb.com/browse-a.php?search=pearl+jam&incldead=1&c2=1 - - path: browse-a.php - inputs: - $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" - search: "{{ if or (.Query.Artist) (.Query.Album) }}{{ or (.Query.Artist) (.Query.Album) }}{{ else }}{{ .Keywords }}{{ end }}" - # 0 active, 1 all, 2 inactive, 3 freeleech, 4 banned - incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}" - sort: "{{ .Config.sort }}" - d: "{{ .Config.type }}" - # does not support imdbid searches, does not return imdb link in results - - rows: - selector: "table[style=\"border: solid #000000 1px;\"] > tbody > tr:has(a[href^=\"takedownload.php?id=\"])" - filters: - - name: andmatch - - fields: - category: - selector: a[href^="browse-a.php?cat="] - attribute: href - filters: - - name: querystring - args: cat - title: - selector: a[href^="details.php?id="] - details: - selector: a[href^="details.php?id="] - attribute: href - download: - selector: a[href^="takedownload.php?id="] - attribute: href - description: - selector: font.sig - files: - selector: td:nth-child(5) - date: - selector: td:nth-child(7) - # auto adjusted by site account profile - filters: - - name: dateparse - args: "yyyy-MM-ddHH:mm:ss" - size: - selector: td:nth-child(8) - grabs: - selector: td:nth-child(9) - seeders: - selector: td:nth-child(10) - leechers: - selector: td:nth-child(11) - downloadvolumefactor: - case: - img[src="pic/download3.gif"]: 0 - "*": 1 - uploadvolumefactor: - text: 1 - minimumratio: - text: 1.0 -# Engine n/a diff --git a/config/prowlarr/Sentry/FDD003821460B16D4E0D4235129BD6BFAF29B751/.installation b/config/prowlarr/Sentry/FDD003821460B16D4E0D4235129BD6BFAF29B751/.installation deleted file mode 100644 index 0985dc34..00000000 --- a/config/prowlarr/Sentry/FDD003821460B16D4E0D4235129BD6BFAF29B751/.installation +++ /dev/null @@ -1 +0,0 @@ -fcaf94a0-d7d7-4144-b047-157ef1dbc1c1 \ No newline at end of file diff --git a/config/prowlarr/asp/key-344e03e9-81b0-482b-abbd-945220e40741.xml b/config/prowlarr/asp/key-344e03e9-81b0-482b-abbd-945220e40741.xml deleted file mode 100644 index b6cdada3..00000000 --- a/config/prowlarr/asp/key-344e03e9-81b0-482b-abbd-945220e40741.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2025-09-19T14:09:23.1619127Z - 2025-09-19T19:30:19.6161313Z - 2025-12-18T14:09:23.0853843Z - - - - - - - AovhjQJiWP1rp2NNpxS0helrT+DFcrJNXO4yeQ3ZzJGVGjdAPDLUFPT72RPXXlURu6EHSrzU5RwBweYecemBiQ== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-3f8a3ebf-f6ab-477a-9734-0dc4627530dd.xml b/config/prowlarr/asp/key-3f8a3ebf-f6ab-477a-9734-0dc4627530dd.xml deleted file mode 100644 index c886aeb1..00000000 --- a/config/prowlarr/asp/key-3f8a3ebf-f6ab-477a-9734-0dc4627530dd.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2025-03-24T20:52:11.7677823Z - 2025-03-26T05:03:59.5920195Z - 2025-06-22T20:52:11.7586991Z - - - - - - - sJ8o1WcGuSQ1kq5Tj3fZhr3/7vLCw95nGpKEXH6KhWfu/P4ngZ2fhV5PE/QwsXE1igue7/IJc08S/zUqDgFsyA== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-55aed5d2-d712-47ee-b885-2f9a1846920d.xml b/config/prowlarr/asp/key-55aed5d2-d712-47ee-b885-2f9a1846920d.xml deleted file mode 100644 index 77fbc116..00000000 --- a/config/prowlarr/asp/key-55aed5d2-d712-47ee-b885-2f9a1846920d.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2024-06-24T04:02:47.034576Z - 2024-06-25T05:02:22.6351446Z - 2024-09-22T04:02:46.9445264Z - - - - - - - 7eIFyV32Qz2GrgoXwvXW9Wcwqxxp6IfHr4BMPFL/1dbHTIXMLCMIaBYr9rNl4TrsMncdDPp8JJPzGyCCZGFsgQ== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-5e91c4db-563b-4464-8a88-5f9bf6d10374.xml b/config/prowlarr/asp/key-5e91c4db-563b-4464-8a88-5f9bf6d10374.xml deleted file mode 100644 index 49eb86c5..00000000 --- a/config/prowlarr/asp/key-5e91c4db-563b-4464-8a88-5f9bf6d10374.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2025-06-21T19:30:19.6182135Z - 2025-06-22T20:52:11.7586991Z - 2025-09-19T19:30:19.6161313Z - - - - - - - FZ7twE4VIM8MnbwUdDAUvdp6En84mqpUxShccvfE/BPP9Oq83hfyvhhAjN9UKWbIdis0pkwNI/AbJ9sMEsP8PQ== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-68aaf7b0-62fc-4c18-9885-e9a7c0d08e96.xml b/config/prowlarr/asp/key-68aaf7b0-62fc-4c18-9885-e9a7c0d08e96.xml deleted file mode 100644 index dbe6806c..00000000 --- a/config/prowlarr/asp/key-68aaf7b0-62fc-4c18-9885-e9a7c0d08e96.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2024-09-25T04:02:04.0315976Z - 2024-09-25T04:02:03.9048355Z - 2024-12-24T04:02:03.9048355Z - - - - - - - /Fpb6O84Jo0H3XYnvXnBLqv2pqam701z2tJ/JR6S2LiWuEjKTWMdW7mQLDuJetk3kxdhCTsKOfmNKtU98/hAaw== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-acae6d4e-47e3-492b-b3ed-55a146527c12.xml b/config/prowlarr/asp/key-acae6d4e-47e3-492b-b3ed-55a146527c12.xml deleted file mode 100644 index c0b4f6f5..00000000 --- a/config/prowlarr/asp/key-acae6d4e-47e3-492b-b3ed-55a146527c12.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2024-03-27T05:02:22.7514691Z - 2024-03-27T05:02:22.6351446Z - 2024-06-25T05:02:22.6351446Z - - - - - - - +Lr/ix1yC6nglFKyBs+Rtp7Lka22BsLZg0RiprxDZP3KOy3orKcoKqpahGD/42BdOg0X7uZBrrO+lqkE7/MTJw== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-c6020da7-0a09-48f2-b36d-fc6019d376e7.xml b/config/prowlarr/asp/key-c6020da7-0a09-48f2-b36d-fc6019d376e7.xml deleted file mode 100644 index bb96bf5b..00000000 --- a/config/prowlarr/asp/key-c6020da7-0a09-48f2-b36d-fc6019d376e7.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2023-12-24T15:19:38.942704Z - 2023-12-24T15:19:38.6982724Z - 2024-03-23T15:19:38.6982724Z - - - - - - - HIeza8+bd2JWdDu/l3ELk1YGF7bG1VSVzEMzFCXD7j8jY8RkUHw3QijNxLM+v1R/LI9et3D6y/yqDTcURCP7eA== - - - - \ No newline at end of file diff --git a/config/prowlarr/asp/key-c7cdba4b-4310-4e7e-b4df-a2980d208408.xml b/config/prowlarr/asp/key-c7cdba4b-4310-4e7e-b4df-a2980d208408.xml deleted file mode 100644 index 66f9b364..00000000 --- a/config/prowlarr/asp/key-c7cdba4b-4310-4e7e-b4df-a2980d208408.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - 2024-12-26T05:03:59.8063704Z - 2024-12-26T05:03:59.5920195Z - 2025-03-26T05:03:59.5920195Z - - - - - - - d5CowsEOSqn4RcWzOoPhLUwGhSMmpIOffUJEHe32HOzZApS9q0r+U7LQ0ty7hjMYXRIeqNDmk3Fkmk4Sgfy9Pg== - - - - \ No newline at end of file diff --git a/config/prowlarr/config.xml b/config/prowlarr/config.xml index da77b843..a8dc5fb4 100644 --- a/config/prowlarr/config.xml +++ b/config/prowlarr/config.xml @@ -5,7 +5,7 @@ False True 17f6fcffd2fe45faac76b463f7d46431 - Forms + External Enabled master info diff --git a/config/qbitorrent/qBittorrent/BT_backup/1997b578049f1f68c6e1778e72c4882a8306847c.fastresume b/config/qbitorrent/qBittorrent/BT_backup/1997b578049f1f68c6e1778e72c4882a8306847c.fastresume index 3069f5a5..4a008e19 100644 Binary files a/config/qbitorrent/qBittorrent/BT_backup/1997b578049f1f68c6e1778e72c4882a8306847c.fastresume and b/config/qbitorrent/qBittorrent/BT_backup/1997b578049f1f68c6e1778e72c4882a8306847c.fastresume differ diff --git a/config/qbitorrent/qBittorrent/BT_backup/35b66be2c24faebd38435c9c470228fa092c8ed2.fastresume b/config/qbitorrent/qBittorrent/BT_backup/35b66be2c24faebd38435c9c470228fa092c8ed2.fastresume index e1220827..79f60b34 100644 Binary files a/config/qbitorrent/qBittorrent/BT_backup/35b66be2c24faebd38435c9c470228fa092c8ed2.fastresume and b/config/qbitorrent/qBittorrent/BT_backup/35b66be2c24faebd38435c9c470228fa092c8ed2.fastresume differ diff --git a/config/qbitorrent/qBittorrent/BT_backup/4c400b1c4d51e88057501dd3bd70739737f1eedc.fastresume b/config/qbitorrent/qBittorrent/BT_backup/4c400b1c4d51e88057501dd3bd70739737f1eedc.fastresume index 5e13e0d2..c046b54e 100644 Binary files a/config/qbitorrent/qBittorrent/BT_backup/4c400b1c4d51e88057501dd3bd70739737f1eedc.fastresume and b/config/qbitorrent/qBittorrent/BT_backup/4c400b1c4d51e88057501dd3bd70739737f1eedc.fastresume differ diff --git a/config/qbitorrent/qBittorrent/BT_backup/ab19d6ee93b7b54bedc3e359dcb2218214104d8f.fastresume b/config/qbitorrent/qBittorrent/BT_backup/ab19d6ee93b7b54bedc3e359dcb2218214104d8f.fastresume index 2971b308..743598be 100644 Binary files a/config/qbitorrent/qBittorrent/BT_backup/ab19d6ee93b7b54bedc3e359dcb2218214104d8f.fastresume and b/config/qbitorrent/qBittorrent/BT_backup/ab19d6ee93b7b54bedc3e359dcb2218214104d8f.fastresume differ diff --git a/config/qbitorrent/qBittorrent/BT_backup/fe6f6ae1eb512420d9f967ff135021239b9b9e7d.fastresume b/config/qbitorrent/qBittorrent/BT_backup/fe6f6ae1eb512420d9f967ff135021239b9b9e7d.fastresume index d04772e2..91aca244 100644 Binary files a/config/qbitorrent/qBittorrent/BT_backup/fe6f6ae1eb512420d9f967ff135021239b9b9e7d.fastresume and b/config/qbitorrent/qBittorrent/BT_backup/fe6f6ae1eb512420d9f967ff135021239b9b9e7d.fastresume differ diff --git a/config/qbitorrent/qBittorrent/qBittorrent-data.conf b/config/qbitorrent/qBittorrent/qBittorrent-data.conf index 0a426c47..f840634d 100644 --- a/config/qbitorrent/qBittorrent/qBittorrent-data.conf +++ b/config/qbitorrent/qBittorrent/qBittorrent-data.conf @@ -1,2 +1,2 @@ [Stats] -AllStats=@Variant(\0\0\0\x1c\0\0\0\x2\0\0\0\x12\0\x41\0l\0l\0t\0i\0m\0\x65\0U\0L\0\0\0\x4\0\0\0*\x10\x86\xcc\x83\0\0\0\x12\0\x41\0l\0l\0t\0i\0m\0\x65\0\x44\0L\0\0\0\x4\0\0\x2l\xdf\x97\x80\x93) +AllStats=@Variant(\0\0\0\x1c\0\0\0\x2\0\0\0\x12\0\x41\0l\0l\0t\0i\0m\0\x65\0U\0L\0\0\0\x4\0\0\0*\x12\xd1\x91M\0\0\0\x12\0\x41\0l\0l\0t\0i\0m\0\x65\0\x44\0L\0\0\0\x4\0\0\x2l\xdf\xb9\xfe)) diff --git a/docker-compose.yml b/docker-compose.yml index 52e34d70..aa2b9b51 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -177,7 +177,7 @@ services: - "kuma.radarr.http.url=http://${LOCAL_IP}:7878" prowlarr: - image: linuxserver/prowlarr:latest + image: lscr.io/linuxserver/prowlarr:latest container_name: prowlarr restart: unless-stopped #network_mode: service:transmission-vpn @@ -189,7 +189,6 @@ services: - PUID - PGID - TZ - - UMASK_SET=002 labels: - "traefik.enable=true" - "traefik.http.routers.prowlarr.rule=Host(`prowlarr.${DOMAIN}`)" @@ -394,7 +393,7 @@ services: - "traefik.http.routers.freshrss.tls=true" - "traefik.http.routers.freshrss.tls.certresolver=myresolver" - "traefik.http.routers.freshrss.middlewares=secured" - - "kuma.freshrss.http.name=Prowlarr" + - "kuma.freshrss.http.name=FreshRSS" - "kuma.freshrss.http.url=http://${LOCAL_IP}:10180" uptimekuma: @@ -609,7 +608,7 @@ services: # - "traefik.http.routers.wg.tls.certresolver=myresolver" # - "traefik.http.routers.wg.middlewares=secured" # - "traefik.http.services.wireguard-ui.loadbalancer.server.port=51821" - # - "kuma.wg.http.name=Prowlarr" + # - "kuma.wg.http.name=WG-Easy" # - "kuma.wg.http.url=http://${LOCAL_IP}:51821" joal: @@ -653,7 +652,7 @@ services: - "traefik.http.routers.audiobookshelf.tls=true" - "traefik.http.routers.audiobookshelf.tls.certresolver=myresolver" - "traefik.http.routers.audiobookshelf.middlewares=secured-no-oauth" - - "kuma.audiobookshelf.http.name=Prowlarr" + - "kuma.audiobookshelf.http.name=Audiobookshelf" - "kuma.audiobookshelf.http.url=http://${LOCAL_IP}:13378" mylar3: diff --git a/immich/config/postgres/pg_stat_tmp/db_0.stat b/immich/config/postgres/pg_stat_tmp/db_0.stat index 5ff62563..94f33fb6 100644 Binary files a/immich/config/postgres/pg_stat_tmp/db_0.stat and b/immich/config/postgres/pg_stat_tmp/db_0.stat differ diff --git a/immich/config/postgres/pg_stat_tmp/db_1.stat b/immich/config/postgres/pg_stat_tmp/db_1.stat index 7de1dba5..dec5150d 100644 Binary files a/immich/config/postgres/pg_stat_tmp/db_1.stat and b/immich/config/postgres/pg_stat_tmp/db_1.stat differ diff --git a/immich/config/postgres/pg_stat_tmp/db_13780.stat b/immich/config/postgres/pg_stat_tmp/db_13780.stat index 8aa8353c..feeb1527 100644 Binary files a/immich/config/postgres/pg_stat_tmp/db_13780.stat and b/immich/config/postgres/pg_stat_tmp/db_13780.stat differ diff --git a/immich/config/postgres/pg_stat_tmp/db_16384.stat b/immich/config/postgres/pg_stat_tmp/db_16384.stat index 4d1af8f0..9f0d41d1 100644 Binary files a/immich/config/postgres/pg_stat_tmp/db_16384.stat and b/immich/config/postgres/pg_stat_tmp/db_16384.stat differ diff --git a/immich/config/postgres/pg_stat_tmp/global.stat b/immich/config/postgres/pg_stat_tmp/global.stat index 820ae35a..5f87f741 100644 Binary files a/immich/config/postgres/pg_stat_tmp/global.stat and b/immich/config/postgres/pg_stat_tmp/global.stat differ