media-server-docker-compose/config/prowlarr/Definitions/uhdbits.yml
Braden Jageman fd77c332fb new stuff
2024-04-07 00:37:31 -04:00

195 lines
5.4 KiB
YAML

---
id: uhdbits
name: UHDBits
description: "UHDBits is a Private Torrent Tracker for UHD Movies / TV"
language: en-US
type: private
encoding: UTF-8
links:
- https://uhdbits.org/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: Movies}
- {id: 2, cat: Audio, desc: Music}
- {id: 3, cat: TV, desc: TV}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
music-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: 2facode
type: text
label: 2FA code
- name: info_2fa
type: info
label: "About 2FA code"
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the UHDBits 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
- name: info_activity
type: info
label: Account Inactivity
default: "An account will be automatically disabled if there is no log-in activity for 1 year."
login:
path: login.php
form: form.auth_form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step: "{{ .Config.2facode }}"
keeplogged: 1
error:
- selector: .auth_form > .warning
test:
path: index.php
selector: a[href^="logout.php?auth="]
search:
paths:
# https://uhdbits.org/torrents.php?groupname=&filelist=&description=&artistname=&recordlabel=&remastertitle=&remasterrecordlabel=&rating=0&rating1=10&freetorrent=1&searchstr=&taglist=&tags_type=1&order_by=time&order_way=desc&action=advanced&searchsubmit=1
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
searchstr: "{{ .Keywords }}"
imdbid: "{{ .Query.IMDBIDShort }}"
tags_type: 1
freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
order_by: "{{ .Config.sort }}"
order_way: "{{ .Config.type }}"
action: advanced
searchsubmit: 1
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
# if searching for season packs switch S01 to season 1 #10423
- name: re_replace
args: ["(?i)\\bS(\\d{1,3})(E\\d+)?$", "season $1"]
rows:
selector: table#torrent_table > tbody > tr.torrent
fields:
# note: there are optional extra colums
category_id:
selector: a[href^="torrents.php?filter_cat"]
attribute: href
filters:
- name: regexp
args: "\\[(\\d+)\\]"
category:
text: "{{ .Result.category_id }}"
download:
selector: a[href^="torrents.php?action=download&id="]
attribute: href
filters:
- name: replace
args: ["\t", " "]
details:
selector: a.torrent_name
attribute: href
filters:
- name: replace
args: ["\t", " "]
- name: regexp
args: (.*)#torrent\d+$
size:
selector: td[class="number_column nobr"]
grabs:
selector: td[class="number_column nobr"] ~ td
files:
selector: td:nth-child(3)
seeders:
selector: td[class="number_column nobr"] ~ td ~ td
leechers:
selector: td[class="number_column nobr"] ~ td ~ td ~ td
date:
selector: td:nth-child(5) > span[title]
attribute: title
filters:
- name: replace
args: [",", ""]
- name: append
args: " +07:00" # ICT
- name: dateparse
args: "MMM dd yyyy HH:mm zzz"
downloadvolumefactor:
case:
"strong.blink_me:contains(\"Free\")": 0
"strong.blink_me:contains(\"50\")": 0.5
"strong.blink_me:contains(\"25\")": 0.75
"strong.blink_me:contains(\"75\")": 0.25
"*": 1
uploadvolumefactor:
case:
"strong.blink_me:contains(\"2x\")": 2
"*": 1
minimumratio:
text: 0.6
_release_info:
selector: div.torrent_info
remove: .torrent_label.red, .torrent_label.blink_me, .torrent_label:contains("User"), .torrent_label:contains("ViE"), .torrent_label:contains("Exclusive")
filters:
- name: re_replace
args: ["[\\s\\/]+$", ""]
- name: replace
args: [" / ", " "]
- name: re_replace
args: ["\\s+([\\w@\\.\\[\\]\\$\\-\\!\\u2122]+)$", " -$1"]
- name: re_replace
args: ["\\bEncode\\b", "Blu-Ray"]
- name: re_replace
args: ["\\b(H\\.264 )?Blu-ray\\b", "BR-DISK"]
- name: re_replace
args: ["\\bRemux\\b", "Blu-Ray Remux"]
- name: re_replace
args: ["\\s+", " "]
_release_info_music:
selector: div.torrent_info
remove: .torrent_label.red, .torrent_label.blink_me
filters:
- name: re_replace
args: ["[\\s\\/]+$", ""]
- name: replace
args: [" / ", " "]
- name: re_replace
args: ["\\s+", " "]
title:
selector: div.group_info
remove: span, div.tags, div.torrent_info
filters:
- name: re_replace
args: ["(?i)\\bSeason (\\d+)\\b", "S$1"]
- name: trim
- name: append
args: " {{ if eq .Result.category_id \"2\" }}{{ .Result._release_info_music }}{{ else }}{{ .Result._release_info }}{{ end }}"
# Gazelle