--- 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: strip_s01 type: checkbox label: Remove first season keywords (S1/S01/Season 1), as some results do not include this for first/single season releases 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 }}"] - name: re_replace args: ["(?i) *\\b(S(?:0|eason *)?1)\\b", "{{ if .Config.strip_s01 }}{{ 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+(-\\d+)?) ([\\[\\(])\\b" - name: append args: "NULL" title_has_movie_ova: text: "{{ .Result.title_phase3 }}" filters: - name: regexp args: "(?i)(?