--- id: hebits name: Hebits description: "Hebits (HB) is an ISRAELI Private Torrent Tracker for MOVIES / TV / GENERAL." language: he-IL type: private encoding: UTF-8 # Status: https://status.hebits.net/ links: - https://hebits.net/ caps: categorymappings: - {id: 1, cat: Movies, desc: "סרטים (Movies)"} - {id: 2, cat: TV, desc: "סדרות (TV)"} - {id: 3, cat: TV/Other, desc: "הצגות והופעות (Theater)"} - {id: 4, cat: PC/0day, desc: "תוכנות (Apps)"} - {id: 5, cat: PC/Games, desc: "משחקים (Games)"} - {id: 6, cat: Audio, desc: "מוזיקה (Music)"} - {id: 7, cat: Books, desc: "ספרים (Books)"} - {id: 8, cat: Movies/Other, desc: "חבילות סרטים (Movies Packs)"} - {id: 9, cat: XXX, desc: "פורנו (Porn)"} - {id: 10, cat: Other, desc: "שונות (Other)"} modes: search: [q] tv-search: [q, season, ep, imdbid] movie-search: [q, imdbid] music-search: [q] book-search: [q] settings: - name: cookie type: text label: Cookie - name: info_cookie type: info_cookie - name: freeleech type: checkbox label: Search freeleech only default: false - name: sort type: select label: Sort requested from site default: time options: time: created seeders: seeders size: size - name: type type: select label: Order requested from site default: desc options: desc: desc asc: asc - name: info_activity type: info label: Account Inactivity default: "There is an automatic system for blocking inactive accounts. The system will block any account below Heb Prophet rank without activity for at least 90 days." - name: info_results type: info label: Search results default: "If you are getting the error Login failed: Selector \"a[href*=\"/logout.php?auth=\"]\" didn't match then first access the site with your browser and check that you are not being forced to change your password because it has expired after 180 days." login: # using cookie method because login page has a custom captcha with multiple possible answers on individual radio buttons not supported via yaml method: cookie inputs: cookie: "{{ .Config.cookie }}" test: path: / selector: a[href*="/logout.php?auth="] search: paths: - path: ajax.php response: type: json inputs: searchstr: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}" order_by: "{{ .Config.sort }}" order_way: "{{ .Config.type }}" imdbgt: 0 imdblt: 10 # 1 freeleech, 2 neutral, 3 50%, 4 2x, 5 3x, 9 75%, 11 only perks, 0 normal freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}" action: browse group_results: 0 $raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}" rows: selector: response.results attribute: torrents multiple: true fields: _id: selector: torrentId category: selector: ..categoryID title_notenglish: selector: release:not(:contains("a")):not(:contains("e")):not(:contains("i")):not(:contains("o")):not(:contains("u")):not(:contains("y")) optional: true filters: # space out the book language at the end of the title # everything within the outermost quotes below is right to left - name: re_replace args: ["(אנגלית)$", " - אנגלית"] # English - name: re_replace args: ["(עברית)$", " - עברית"] # Hebrew title_english: selector: release optional: true filters: - name: append args: "א" # catch English only results - name: regexp args: "(.+?[a-zA-Z0-9\\]\\)\\}])[א-ת].*" # remove Hebrew labels from end of title, account for titles ending in letters, numbers, and brackets title: text: "{{ if .Result.title_notenglish }}{{ .Result.title_notenglish }}{{ else }}{{ .Result.title_english }}{{ end }}" details: text: "/torrents.php?torrentid={{ .Result._id }}" download: text: "/torrents.php?action=download&id={{ .Result._id }}" poster: selector: ..cover imdbid: selector: ..catalogue files: selector: fileCount date: selector: time filters: - name: append args: " +02:00" # IST - name: dateparse args: "yyyy-MM-dd HH:mm:ss zzz" size: selector: size grabs: selector: snatches seeders: selector: seeders leechers: selector: leechers description: selector: ..tags _half: selector: isHalfFreeleech _free: selector: isFreeleech _x2: selector: isUploadX2 _x3: selector: isUploadX3 _quarter: selector: isQuarterLeech _neutral: selector: isNeutralLeech _personal: selector: isPersonalFreeleech downloadvolumefactor_special: optional: true text: "{{ if eq .Result._half \"True\" }}0.5{{ else }}{{ end }}{{ if eq .Result._quarter \"True\" }}0.25{{ else }}{{ end }}{{ if eq .Result._neutral \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._free \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._personal \"True\" }}0{{ else }}{{ end }}" downloadvolumefactor: text: "{{ if .Result.downloadvolumefactor_special }}{{ .Result.downloadvolumefactor_special }}{{ else }}1{{ end }}" uploadvolumefactor_special: optional: true text: "{{ if eq .Result._x3 \"True\" }}3{{ else }}{{ end }}{{ if eq .Result._x2 \"True\" }}2{{ else }}{{ end }}{{ if eq .Result._neutral \"True\" }}0{{ else }}{{ end }}" uploadvolumefactor: text: "{{ if .Result.uploadvolumefactor_special }}{{ .Result.uploadvolumefactor_special }}{{ else }}1{{ end }}" minimumratio: text: 1.0 minimumseedtime: # 7 days (as seconds = 7 x 24 x 60 x 60) text: 604800 # JSON Gazelle