diff --git a/README.md b/README.md index a23de0ce9..fe0de67a9 100644 --- a/README.md +++ b/README.md @@ -212,6 +212,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht * TribalMixes * Union Fansub * UniOtaku + * ViDEOTEKA * xTorrenty * ZOMB * Ztracker diff --git a/src/Jackett.Common/Definitions/videoteka.yml b/src/Jackett.Common/Definitions/videoteka.yml new file mode 100644 index 000000000..e7565b2a9 --- /dev/null +++ b/src/Jackett.Common/Definitions/videoteka.yml @@ -0,0 +1,214 @@ +--- +id: videoteka +name: ViDEOTEKA +description: "ViDEOTEKA (VT) is a SLOVENIAN Semi-Private Torrent Tracker for MOVIES / TV" +language: sl-SI +type: semi-private +encoding: UTF-8 +links: + - http://videoteka.org/ # https is not supported + +caps: + categorymappings: + - {id: 1, cat: Movies, desc: "FILMI"} + - {id: 50, cat: Movies/WEB-DL, desc: "WEBRip-1080"} + - {id: 17, cat: Movies/WEB-DL, desc: "WEBRip-720"} + - {id: 51, cat: Movies/WEB-DL, desc: "WEBRip"} + - {id: 48, cat: Movies/BluRay, desc: "BluRay-1080"} + - {id: 49, cat: Movies/BluRay, desc: "BluRay-720"} + - {id: 52, cat: Movies/BluRay, desc: "BRRip"} + - {id: 44, cat: Movies/BluRay, desc: "BDRip"} + - {id: 32, cat: Movies/DVD, desc: "DVDRip"} + - {id: 36, cat: Movies/SD, desc: "TVRip"} + - {id: 43, cat: Movies/HD, desc: "HDRip"} + - {id: 16, cat: Movies/HD, desc: "HDTV"} + - {id: 31, cat: Movies/SD, desc: "HDSD"} + - {id: 46, cat: Movies/DVD, desc: "DVD"} + - {id: 45, cat: Movies/SD, desc: "XviD"} + - {id: 38, cat: TV, desc: "TV - Serija"} + - {id: 35, cat: TV/Documentary, desc: "Dokumentarni"} + - {id: 40, cat: TV, desc: "Slo"} + - {id: 33, cat: TV/Anime, desc: "Risanke"} + - {id: 34, cat: XXX, desc: "xxx"} + - {id: 6, cat: PC, desc: "PROGRAMI"} + - {id: 18, cat: PC, desc: "Programi"} + - {id: 47, cat: Console, desc: "Igre"} + - {id: 37, cat: Books/EBook, desc: "E-Knjiga"} + - {id: 19, cat: Other, desc: "Ostalo"} + - {id: 39, cat: PC/Mobile-Android, desc: "Android App"} + - {id: 7, cat: Audio, desc: "GLASBA"} + - {id: 20, cat: Audio/Video, desc: "Video"} + - {id: 21, cat: Audio, desc: "Glasba"} + + modes: + search: [q] + tv-search: [q, season, ep] + movie-search: [q] + music-search: [q] + book-search: [q] + +settings: + - name: username + type: text + label: Username + - name: password + type: password + label: Password + - name: freeleech + type: checkbox + label: Filter freeleech only + default: false + - name: sort + type: select + label: Sort requested from site + default: added + options: + added: created + seeders: seeders + size: size + - name: type + type: select + label: Order requested from site + default: desc + options: + desc: desc + asc: asc + type: info + label: Layout + default: "
  1. Only the Classic list is supported.
  2. Make sure to set the Torrent Listing (Prikaz torrentov) option in your profile to Classic
  3. Using the Modern list will prevent results
" + +login: + path: ?p=home&pid=1 + method: form + form: form#loginbox_form + submitpath: /ajax/login.php + inputs: + action: login + loginbox_membername: "{{ .Config.username }}" + loginbox_password: "{{ .Config.password }}" + loginbox_remember: 1 + selectorinputs: + securitytoken: + selector: "script:contains(\"stKey: \")" + filters: + - name: regexp + args: "stKey: \"(.+?)\"," + error: + - selector: ":contains(\"-ERROR-\")" + test: + path: ?p=home&pid=1 + selector: a#logout + +search: + paths: + - path: / + keywordsfilters: + - name: re_replace # add brackets to year on searchquery if missing + args: ["\\(*((19|20)\\d{2})\\)*", "($1)"] + - name: re_replace + args: ["[^\\w\\d\\(\\)]+", "%"] + inputs: + p: torrents + pid: 32 + $raw: "{{ range .Categories }}cid[]={{.}}&{{end}}" + keywords: "{{ .Keywords }}" + # name, description, both, uploader + search_type: name + "sortOptions[sortBy]": "{{ .Config.sort }}" + "sortOptions[sortOrder]": "{{ .Config.type }}" + error: + - selector: div.error:not(:contains("Nič ni najdeno.")):not(:contains("There are no results found.")) + + rows: + selector: "table#torrents_table_classic tr:has(td.torrent_name){{ if .Config.freeleech }}:has(img[src$=\"/torrent_free.png\"]){{ else }}{{ end }}" + filters: + - name: andmatch + + fields: + category: + selector: a[href*="?p=torrents"][href*="&cid="] + attribute: href + filters: + - name: querystring + args: cid + title: + selector: a[href*="?p=torrents"][href*="&action=details"] + details: + selector: a[href*="?p=torrents"][href*="&action=details"] + attribute: href + download: + selector: a[href*="?p=torrents"][href*="&action=download"] + attribute: href + magnet: + selector: a[href^="magnet:?xt="] + attribute: href + poster: + selector: a[rel="fancybox"] + attribute: href + imdbid: + selector: a[href*="imdb.com/title/tt"] + attribute: href + size: + selector: a[rel="torrent_size"] + seeders: + selector: a[rel="torrent_seeders"] + leechers: + selector: a[rel="torrent_leechers"] + grabs: + selector: a[rel="times_completed"] + downloadvolumefactor: + case: + "img[src*=\"torrent_free.png\"]": 0 + "*": 1 + uploadvolumefactor: + text: 1 + date_day: + selector: td.torrent_name:contains("day"), td.torrent_name:contains("Nedelja"), td.torrent_name:contains("Ponedeljek"), td.torrent_name:contains("Torek"), td.torrent_name:contains("Sreda"), td.torrent_name:contains("Četrtek"), td.torrent_name:contains("Petek"), td.torrent_name:contains("Sobota"), td.torrent_name:contains("Danes"), td.torrent_name:contains("Včeraj") + # auto adjusted by site account profile + optional: true + remove: span, a, br + filters: + - name: replace + args: ["Uploaded ", ""] + - name: replace + args: [" by", ""] + - name: replace + args: [" naložil", ""] # Uploaded + - name: replace + args: ["ob ", "at "] # at + - name: replace + args: ["Danes", "Today"] + - name: replace + args: ["Včeraj", "Yesterday"] + - name: replace + args: ["Ponedeljek", "Monday"] + - name: replace + args: ["Torek", "Tuesday"] + - name: replace + args: ["Sreda", "Wednesday"] + - name: replace + args: ["Četrtek", "Thursday"] + - name: replace + args: ["Petek", "Friday"] + - name: replace + args: ["Sobota", "Saturday"] + - name: replace + args: ["Nedelja", "Sunday"] + - name: fuzzytime + date_year: + selector: td.torrent_name:contains("-") + # auto adjusted by site account profile + optional: true + remove: span, a, br + filters: + - name: replace + args: ["Uploaded ", ""] + - name: replace + args: [" by", ""] + - name: replace + args: [" naložil", ""] # Uploaded + - name: dateparse + args: "dd-MM-yyyy HH:mm" + date: + text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}" +# TSUE 2.1