217 lines
8.1 KiB
YAML
217 lines
8.1 KiB
YAML
---
|
||
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://www.uniongang.net/
|
||
legacylinks:
|
||
- http://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="]
|
||
attribute: href
|
||
size:
|
||
selector: a[href^="download.php?id="]
|
||
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
|