diff --git a/README.md b/README.md index 04be2155d..3e90fd0a4 100644 --- a/README.md +++ b/README.md @@ -268,6 +268,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht * Bitded * Bithorlo (BHO) * BitHUmen [![(invite needed)][inviteneeded]](#) + * Bitpalace * BitPorn * Bitspyder * BitTorrentFiles diff --git a/src/Jackett.Common/Definitions/bitpalace.yml b/src/Jackett.Common/Definitions/bitpalace.yml new file mode 100644 index 000000000..42e1eee04 --- /dev/null +++ b/src/Jackett.Common/Definitions/bitpalace.yml @@ -0,0 +1,166 @@ +--- +id: bitpalace +name: Bitpalace +description: "Bitpalace is a Hungarian Private Torrent Tracker for MOVIES / TV / GENERAL" +language: hu-HU +type: private +encoding: UTF-8 +links: + - https://bitpalace.cc/ + +caps: + categorymappings: + - {id: 8, cat: Movies/BluRay, desc: "BLUERAY ENG"} + - {id: 7, cat: Movies/BluRay, desc: "BLUERAY HUN"} + - {id: 15, cat: Movies/DVD, desc: "DVD-R ENG"} + - {id: 2, cat: Movies/DVD, desc: "DVD-R HUN"} + - {id: 9, cat: Books, desc: "Ebook ENG"} + - {id: 5, cat: Books, desc: "Ebook HUN"} + - {id: 40, cat: Other, desc: "EGYÉBB"} + - {id: 16, cat: Movies/HD, desc: "HD ENG"} + - {id: 1, cat: Movies/HD, desc: "HD HUN"} + - {id: 25, cat: TV/Anime, desc: "MESE ENG"} + - {id: 24, cat: TV/Anime, desc: "MESE HUN"} + - {id: 18, cat: PC/Games, desc: "PC game ISO"} + - {id: 21, cat: Console, desc: "PC game KONZOL"} + - {id: 17, cat: PC/Games, desc: "PC game RIP"} + - {id: 27, cat: PC/ISO, desc: "Program ISO"} + - {id: 26, cat: PC/Mobile-Other, desc: "Program MOBIL"} + - {id: 78, cat: PC/0day, desc: "Program RIP"} + - {id: 23, cat: TV/SD, desc: "Sor.DVD-R ENG"} + - {id: 22, cat: TV/SD, desc: "Sor.DVD-R HUN"} + - {id: 14, cat: TV/SD, desc: "Sor.XVID ENG"} + - {id: 4, cat: TV, desc: "Sorozat HUN"} + - {id: 13, cat: Movies/SD, desc: "XVID ENG"} + - {id: 3, cat: Movies/SD, desc: "XVID HUN"} + - {id: 12, cat: XXX/DVD, desc: "XXX DVD-R"} + - {id: 6, cat: XXX/x264, desc: "XXX HD"} + - {id: 10, cat: XXX/ImageSet, desc: "XXX/Képek"} + - {id: 11, cat: XXX/XviD, desc: "XXX XVID"} + - {id: 19, cat: Audio/Video, desc: "ZENE Klipp"} + - {id: 26, cat: Audio/MP3, desc: "ZENE MP3"} + + 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: 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: login + method: form + form: form[action="/login_check"] + inputs: + _username: "{{ .Config.username }}" + _password: "{{ .Config.password }}" + logout: "" + error: + - selector: h3[style="color:red"] + test: + path: my + selector: a[href="/logout"] + +search: + paths: + - path: browse + keywordsfilters: + # the site uses % for wildcard + - name: re_replace + args: ["[^a-zA-Z0-9]+", "%"] + inputs: + $raw: "{{ range .Categories }}cat[]={{.}}&{{end}}" + search: "{{ .Keywords }}" + # 0 active, 1 incldead, 2 onlydead + incldead: 1 + sort: "{{ .Config.sort }}" + order: "{{ .Config.type }}" + # does not support imdbid searches + + rows: + selector: "table#torrenttable > tbody > tr:has(a[onclick]){{ if .Config.freeleech }}:has(img[src$=\"/freeicon.png\"]){{ else }}{{ end }}" + + fields: + categorydesc: + selector: img + attribute: alt + title: + selector: a[onclick] + remove: style + _id: + selector: a[onclick] + attribute: onclick + filters: + - name: regexp + args: (\d+) + details: + text: "details?id={{ .Result._id }}" + download: + text: "/raw/download?id={{ .Result._id }}&name={{ .Result.title }}.torrent" + imdbid: + selector: a[href*="imdb.com/title/tt"] + attribute: href + description: + case: + img[src$="/yes.png"]: "Verified" + img[src$="/nincs.png"]: "Unverified" + poster: + selector: img[width="200"][height="250"] + attribute: src + date: + selector: td:nth-last-child(6) + filters: + - name: append + args: " +01:00" # CET + - name: dateparse + args: "yyyy-MM-dd HH:mm:ss zzz" + size: + selector: td:nth-last-child(5) + grabs: + selector: td:nth-last-child(4) + seeders: + selector: td:nth-last-child(3) + leechers: + selector: td:nth-last-child(2) + downloadvolumefactor: + case: + img[src$="/freeicon.png"]: 0 + "*": 1 + uploadvolumefactor: + case: + img[src$="/2xup.jpg"]: 2 + "*": 1 + minimumratio: + text: 1.0 + minimumseedtime: + # 2 days (as seconds = 2 x 24 x 60 x 60) + text: 172800 +# engine n/a