Files
managarr-demo/mock-htpc/prowlarr/Definitions/uniongang.yml

196 lines
7.5 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
id: uniongang
name: UnionGang
description: "UnionGang is a RUSSIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
language: ru-RU
type: private
encoding: windows-1251
links:
- http://www.uniongang.net/
legacylinks:
- https://www.uniongang.net/ # site is forcing to http
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies SATRip / DVDRip / HDRip"}
- {id: 21, cat: Movies/WEB-DL, desc: "Movies WEB-DLRip / WEB-DL"}
- {id: 2, cat: Movies/HD, desc: "Movies x264"}
- {id: 3, cat: Movies/DVD, desc: "Movies DVD5"}
- {id: 4, cat: Movies/DVD, desc: "Movies DVD9"}
- {id: 5, cat: Movies/HD, desc: "Movies BDRemux / 720p / 1080p / Bl"}
- {id: 6, cat: TV, desc: "TV Сериал"}
- {id: 7, cat: TV/Documentary, desc: "TV Документальный"}
- {id: 19, cat: TV/Sport, desc: "TV Спорт"}
- {id: 8, cat: XXX, desc: "XXX Эротика"}
- {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: 15, cat: Audio/Video, desc: "Видеоклип"}
- {id: 16, cat: Audio/Audiobook, desc: "Аудиокнига"}
- {id: 20, cat: Movies/3D, desc: "Movies 3D"}
- {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
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 }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# 0 active, 1 incldead, 2 onlydead, 3 goldtorrents, 5 silvertorrents, 4 noseeds
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
keywordsfilters:
# strip season and/or ep
- name: re_replace
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
rows:
selector: table.embedded > tbody > tr:has(a[href^="download.php?id="])
fields:
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Р(\\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^="/torrent-"]
attribute: href
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
download:
selector: a[href^="download.php?id="]
attribute: href
date:
selector: i
filters:
- name: append
args: " +03:00" # MSK
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
files:
selector: td:nth-last-child(5)
size:
selector: td:nth-last-child(3)
seeders:
selector: td:nth-last-child(2)
filters:
- name: split
args: ["|", 0]
leechers:
selector: td:nth-last-child(2)
filters:
- name: split
args: ["|", 1]
grabs:
selector: td:nth-last-child(1)
downloadvolumefactor:
case:
img[src="pic/freedownload.gif"]: 0
img[src="pic/silverdownload.gif"]: 0.5
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 0.3
description:
selector: a[href^="/torrent-"]
# engine tbd