Created the managarr demo docker-compose and quickstart script
This commit is contained in:
@@ -0,0 +1,293 @@
|
||||
---
|
||||
id: nyaasi
|
||||
name: Nyaa.si
|
||||
description: "Nyaa is a Public torrent site focused on Eastern Asian media including anime, manga, literature and music"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://nyaa.si/
|
||||
- https://nyaa.iss.ink/
|
||||
- https://nyaa.land/
|
||||
- https://nyaa.unblockninja.com/ # for magnets only
|
||||
legacylinks:
|
||||
- https://nyaa.black-mirror.xyz/
|
||||
- https://nyaa.unblocked.casa/
|
||||
- https://nyaa.proxyportal.fun/
|
||||
- https://nyaa.uk-unblock.xyz/
|
||||
- https://nyaa.ind-unblock.xyz/
|
||||
- https://nyaa.unblocked.bar/
|
||||
- https://nyaa.proxyportal.pw/
|
||||
- https://nyaa.uk-unblock.pro/
|
||||
- https://nyaa.root.yt/
|
||||
- https://nyaa.lol/ # dropped at request of owner
|
||||
- https://nyaa.nocensor.world/
|
||||
- https://nyaa.nocensor.lol/
|
||||
- https://nyaa.nocensor.art/
|
||||
- https://nyaa.mrunblock.guru/
|
||||
- https://nyaa.mrunblock.life/
|
||||
- https://nyaa.nocensor.click/
|
||||
- https://nyaa.mrunblock.bond/ # for magnets only
|
||||
- https://nyaa.nocensor.cloud/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Anime
|
||||
- {id: 1_0, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 1_1, cat: TV/Anime, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: TV/Anime, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: TV/Anime, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: TV/Anime, desc: "Raw animes"}
|
||||
# Anime as Movies (Radarr uses t=movie):
|
||||
- {id: 1_0, cat: Movies/Other, desc: "Anime"}
|
||||
- {id: 1_1, cat: Movies/Other, desc: "Anime music videos"}
|
||||
- {id: 1_2, cat: Movies/Other, desc: "English subtitled animes"}
|
||||
- {id: 1_3, cat: Movies/Other, desc: "Non-english subtitled animes"}
|
||||
- {id: 1_4, cat: Movies/Other, desc: "Raw animes"}
|
||||
# Audio
|
||||
- {id: 2_0, cat: Audio, desc: "Audio"}
|
||||
- {id: 2_1, cat: Audio, desc: "Lossless audio"}
|
||||
- {id: 2_2, cat: Audio, desc: "Lossy audio"}
|
||||
# Literature
|
||||
- {id: 3_0, cat: Books, desc: "Literature"}
|
||||
- {id: 3_1, cat: Books, desc: "Literature english translated"}
|
||||
- {id: 3_2, cat: Books, desc: "Literature non-english translated"}
|
||||
- {id: 3_3, cat: Books, desc: "Raw literature"}
|
||||
# Live
|
||||
- {id: 4_0, cat: TV, desc: "Live Action"}
|
||||
- {id: 4_1, cat: TV, desc: "Live Action - English"}
|
||||
- {id: 4_2, cat: TV, desc: "Live Action - Idol/PV"}
|
||||
- {id: 4_3, cat: TV, desc: "Live Action - Non-English"}
|
||||
- {id: 4_4, cat: TV, desc: "Live Action - Raw"}
|
||||
# Pics
|
||||
- {id: 5_0, cat: Other, desc: "Pictures"}
|
||||
- {id: 5_1, cat: Other, desc: "Pictures - Graphics"}
|
||||
- {id: 5_2, cat: Other, desc: "Pictures - Photos"}
|
||||
# Software
|
||||
- {id: 6_0, cat: PC, desc: "Software"}
|
||||
- {id: 6_1, cat: PC/ISO, desc: "Applications"}
|
||||
- {id: 6_2, cat: PC/Games, desc: "Games"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: prefer_magnet_links
|
||||
type: checkbox
|
||||
label: Prefer Magnet Links
|
||||
default: true
|
||||
- name: sonarr_compatibility
|
||||
type: checkbox
|
||||
label: Improve Sonarr compatibility by trying to add Season information into Release Titles
|
||||
default: false
|
||||
- name: radarr_compatibility
|
||||
type: checkbox
|
||||
label: Improve Radarr compatibility by removing year information from keywords and adding it to Release Titles
|
||||
default: false
|
||||
- name: filter-id
|
||||
type: select
|
||||
label: Filter
|
||||
default: 0
|
||||
options:
|
||||
0: No filter
|
||||
1: No remakes
|
||||
2: Trusted only
|
||||
- name: cat-id
|
||||
type: select
|
||||
label: Category
|
||||
default: 0_0
|
||||
options:
|
||||
0_0: "All categories"
|
||||
1_0: "Anime"
|
||||
1_1: "Anime - Anime Music Video"
|
||||
1_2: "Anime - English-translated"
|
||||
1_3: "Anime - Non-English-translated"
|
||||
1_4: "Anime - Raw"
|
||||
2_0: "Audio"
|
||||
2_1: "Audio - Lossless"
|
||||
2_2: "Audio - Lossy"
|
||||
3_0: "Literature"
|
||||
3_1: "Literature - English-translated"
|
||||
3_2: "Literature - Non-English-translated"
|
||||
3_3: "Literature - Lossy"
|
||||
4_0: "Live Action"
|
||||
4_1: "Live Action - English"
|
||||
4_2: "Live Action - Idol/PV"
|
||||
4_3: "Live Action - Non-English"
|
||||
4_4: "Live Action - Raw"
|
||||
5_0: "Pictures"
|
||||
5_1: "Pictures - Graphics"
|
||||
5_2: "Pictures - Photos"
|
||||
6_0: "Software"
|
||||
6_1: "Software - Applications"
|
||||
6_2: "Software - Games"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: id
|
||||
options:
|
||||
id: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: /
|
||||
inputs:
|
||||
q: "{{ .Keywords }}"
|
||||
# strip 0 from start of episode number - #11019, or fetch page 2 for keywordless
|
||||
- path: /
|
||||
inputs:
|
||||
q: "{{ if .Keywords }}{{ re_replace .Keywords \"\\b0(\\d{1})\\b\" \"$1\" }}{{ else }}{{ end }}"
|
||||
p: "{{ if .Keywords }}{{ else }}2{{ end }}"
|
||||
inputs:
|
||||
f: "{{ .Config.filter-id }}"
|
||||
c: "{{ .Config.cat-id }}"
|
||||
s: "{{ .Config.sort }}"
|
||||
o: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: [" *\\b((?:19|20)\\d{2})\\b", "{{ if .Config.radarr_compatibility }}{{ else }} $1{{ end }}"]
|
||||
|
||||
rows:
|
||||
selector: tr.default,tr.danger,tr.success
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td:nth-child(1) a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: ["=", -1]
|
||||
category_group_id:
|
||||
selector: td:nth-child(1) a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: ["=", -1]
|
||||
- name: split
|
||||
args: ["_", 0]
|
||||
title_default:
|
||||
selector: td:nth-child(2) a:last-of-type
|
||||
title_phase1:
|
||||
selector: td:nth-child(2) a:last-of-type:contains("[PuyaSubs!] ")
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " Spanish"
|
||||
title_keyword_year:
|
||||
text: "{{ .Query.Keywords }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "\\b((19|20)\\d{2})\\b"
|
||||
title_phase2:
|
||||
text: "{{ or (.Result.title_phase1) (.Result.title_default) }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["^(\\[.+?\\] ?)?(\\[.+?\\] ?)?(.+?)(\\[)", "$1$2$3{{ if .Config.radarr_compatibility }} {{ .Result.title_keyword_year }} $4{{ else }}$4{{ end }}"]
|
||||
title_phase3:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b((?:S|Seasons?|EP?|Episodes?)\\s?)(\\d+)(?:\\-|[\\s~\\+àa&]+)(\\d+)\\b", "$1$2-$3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:S|Seasons?)\\s?(\\d+(?:-\\d+)?)[\\s\\-]+(?:EP|Episodes?)\\s?(\\d+(?:-\\d+)?)\\b", "$0 S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:S|Seasons?)\\s?(\\d+(?:-\\d+)?)(?:.+?)(?:EP|Episodes?)\\s?(\\d+(?:-\\d+)?)\\b(?!(?:-\\d+)?\\sS\\d+(?:-\\d+)?E\\d+(?:-\\d+)?)", "$0 S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["\\b (II) - (\\d+)[\\s\\-~\\+àa&]+(\\d+)", " $1 S02 - $2-$3"]
|
||||
- name: re_replace
|
||||
args: ["\\b (II) - (\\d+)", " $1 S02 - $2"]
|
||||
- name: re_replace
|
||||
args: ["\\b (III) - (\\d+)[\\s\\-~\\+àa&]+(\\d+)", " $1 S03 - $2-$3"]
|
||||
- name: re_replace
|
||||
args: ["\\b (III) - (\\d+)", " $1 S03 - $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(\\d+)(st|nd|rd|th) Season\\b", "$0 S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)_(\\d+)(st|nd|rd|th)_season_(\\d+)_", "$0S$1E$3_"]
|
||||
- name: re_replace
|
||||
args: ["(?i)_(\\d+)(st|nd|rd|th)_season_", "$0S$1_"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(S\\d+(?:-\\d+)?) - (\\d+)[\\s\\-~\\+àa&]+(\\d+)\\b", "$1E$2-$3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(S\\d+(?:-\\d+)?) - (\\d+)\\b", "$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:S\\s|Seasons?\\s?)(\\d+(?:-\\d+)?)\\b(?!(?:-\\d+)?\\s(?:EP|Episodes?)?\\s?(?:\\d+(?:-\\d+)?)?\\s?S\\d+(?:E\\d+(?:-\\d+)?)?)", "$0 S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:EP|Episodes?)\\s?(\\d+(?:-\\d+)?)\\b(?!(?:-\\d+)?\\sS\\d+(?:-\\d+)?(?:E\\d+(?:-\\d+)?)?)", "$0 S01E$1"]
|
||||
title_has_season:
|
||||
text: "{{ .Result.title_phase3 }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(?i)(S\\d{1,3}(E\\d+)?)"
|
||||
- name: append
|
||||
args: "NULL"
|
||||
title_has_episode:
|
||||
text: "{{ .Result.title_phase3 }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "\\b(.+? - ?)(\\d+) ([\\[\\(])\\b"
|
||||
- name: append
|
||||
args: "NULL"
|
||||
title_optional:
|
||||
text: "{{ .Result.title_phase3 }}"
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if and (eq .Result.category_group_id \"1\") (and (eq .Result.title_has_season \"NULL\") (eq .Result.title_has_episode \"NULL\")) }} S01{{ else }}{{ end }}"
|
||||
title:
|
||||
text: "{{ if .Config.sonarr_compatibility }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: td:nth-child(2) a:last-of-type
|
||||
attribute: href
|
||||
download_optional:
|
||||
selector: td:nth-child(3) a[href$=".torrent"]
|
||||
attribute: href
|
||||
optional: true
|
||||
download:
|
||||
text: "{{ if .Config.prefer_magnet_links }}{{ else }}{{ .Result.download_optional }}{{ end }}"
|
||||
optional: true
|
||||
magnet:
|
||||
selector: td:nth-child(3) a[href^="magnet:?"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: append
|
||||
args: " -00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm zzz"
|
||||
seeders:
|
||||
selector: td:nth-child(6):not(:empty)
|
||||
optional: true
|
||||
default: 0
|
||||
leechers:
|
||||
selector: td:nth-child(7):not(:empty)
|
||||
optional: true
|
||||
default: 0
|
||||
grabs:
|
||||
selector: td:nth-child(8):not(:empty)
|
||||
optional: true
|
||||
default: 0
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
description:
|
||||
selector: td:nth-child(2) a:last-of-type
|
||||
# engine n/a
|
||||
Reference in New Issue
Block a user