media-server-docker-compose/config/prowlarr/Definitions/themixingbowl.yml

144 lines
3.5 KiB
YAML
Raw Normal View History

2024-04-07 00:37:31 -04:00
---
id: themixingbowl
name: themixingbowl
description: "themixingbowl (TMB) is a Semi-Private Torrent Tracker for DJ Music mixes"
language: en-US
type: semi-private
encoding: UTF-8
links:
- https://tmb.dj/
- https://themixingbowl.org/
caps:
categorymappings:
- {id: 1, cat: Audio, desc: Music}
modes:
search: [q]
music-search: [q, artist]
settings:
- name: info_nojs
type: info
label: JavaScript
default: This indexer requires that the web site not use JS when searching.</br> Access your account Preferences on the web site and change the <b>set JavaScript level:</b> setting to <b>No JavaScript</b>.
- 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: 11
options:
11: created
8: seeders
4: size
3: title
- name: type
type: select
label: Order requested from site
default: d
options:
d: desc
a: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>50</b> on your account preferences.
login:
path: login/
method: post
inputs:
loginform: show
page_history: disable
page_js_enabled: false
redirect: "{{ .Config.sitelink }}"
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
keeploggedin: on
restricttoip: ""
ok: Login
error:
- selector: div:contains("do not match")
test:
path: /
selector: a[href="/logout/"]
search:
paths:
# https://themixingbowl.org/torrent/advancedsearch/?search=tmb&go=Search&freesearch=on&results-order1=11.d&results-page=1
- path: torrent/advancedsearch/
inputs:
search: "{{ .Keywords }}"
go: Search
artistsearch: "{{ .Query.Artist }}"
freesearch: "{{ if .Config.freeleech }}on{{ else }}{{ end }}"
results-order1: "{{ .Config.sort }}.{{ .Config.type }}"
results-page: 1
# can search by genre but need join support. &tagsearch=acid,+house for Acid and House
rows:
selector: table.torrenttable > tbody > tr:has(a[href^="/torrent/download/"])
fields:
category:
text: 1
title:
selector: td.name a
details:
selector: td:nth-child(16) a
attribute: href
filters:
- name: append
args: "/details/"
download:
selector: a[href^="/torrent/download/"]
attribute: href
size:
selector: td:nth-child(5)
artist:
selector: span.artist
optional: true
genre:
selector: span.tag
optional: true
_codec:
selector: td:nth-child(6)
optional: true
_bit:
selector: td:nth-child(7)
optional: true
description:
text: "Artist=[{{ .Result.artist }}] , Tags={{ .Result.genre }} , Codec=[{{ .Result._codec }}] , BitRate=[{{ .Result._bit }}]"
grabs:
selector: td:nth-child(8)
seeders:
selector: td:nth-child(9)
leechers:
selector: td:nth-child(10)
date:
selector: td:nth-child(12)
# auto adjusted by site account profile
filters:
- name: replace
args: ["at", ""]
- name: dateparse
args: "d MMM yyyy HH:mm"
downloadvolumefactor:
case:
"img[src$=\"freeleech.png\"]": 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
# engine n/a