--- id: bitporn name: BitPorn (API) description: "BitPorn (Malacka) is a HUNGARIAN Private Torrent Tracker for 3X" language: hu-HU type: private encoding: UTF-8 links: - https://bitporn.eu/ caps: categorymappings: - {id: 4, cat: XXX, desc: Amateur"} - {id: 5, cat: XXX, desc: Anal"} - {id: 6, cat: XXX, desc: Asian"} - {id: 7, cat: XXX, desc: BBW"} - {id: 8, cat: XXX, desc: BDSM"} - {id: 9, cat: XXX, desc: Big Ass"} - {id: 10, cat: XXX, desc: Big Tits"} - {id: 11, cat: XXX, desc: Black"} - {id: 12, cat: XXX, desc: Cartoon"} - {id: 13, cat: XXX, desc: Casting"} - {id: 14, cat: XXX, desc: Classic"} - {id: 15, cat: XXX, desc: Collection"} - {id: 16, cat: XXX, desc: Creampie"} - {id: 17, cat: XXX, desc: Cumshot"} - {id: 18, cat: XXX, desc: Deepthroat"} - {id: 19, cat: XXX, desc: Extreme"} - {id: 20, cat: XXX, desc: Fansite"} - {id: 21, cat: XXX, desc: Family"} - {id: 22, cat: XXX, desc: Feature"} - {id: 23, cat: XXX, desc: Fetish"} - {id: 24, cat: XXX, desc: Fisting"} - {id: 25, cat: XXX, desc: Gangbang"} - {id: 26, cat: XXX, desc: Game"} - {id: 27, cat: XXX, desc: Gay / Bi"} - {id: 28, cat: XXX, desc: Hair"} - {id: 29, cat: XXX, desc: Hardcore"} - {id: 30, cat: XXX, desc: HiddenCam"} - {id: 31, cat: XXX, desc: Homemade"} - {id: 32, cat: XXX, desc: Interracial"} - {id: 33, cat: XXX, desc: Lesbian"} - {id: 34, cat: XXX, desc: Magyar"} - {id: 35, cat: XXX, desc: Masturbation"} - {id: 36, cat: XXX, desc: Mature"} - {id: 37, cat: XXX, desc: Milf"} - {id: 38, cat: XXX, desc: Old and Young"} - {id: 39, cat: XXX, desc: Parody"} - {id: 40, cat: XXX, desc: Pictures"} - {id: 41, cat: XXX, desc: Pissing"} - {id: 42, cat: XXX, desc: POV"} - {id: 43, cat: XXX, desc: Pregnant"} - {id: 44, cat: XXX, desc: Public"} - {id: 45, cat: XXX, desc: Shemale"} - {id: 46, cat: XXX, desc: Softcore"} - {id: 47, cat: XXX, desc: Squirt"} - {id: 48, cat: XXX, desc: Straight"} - {id: 49, cat: XXX, desc: Teen"} - {id: 50, cat: XXX, desc: Threesome"} - {id: 51, cat: XXX, desc: VR"} - {id: 52, cat: XXX, desc: Uncategorized"} modes: search: [q] settings: - name: apikey type: text label: APIKey - name: info_key type: info label: About your API key default: "Find or Generate a new API Token by accessing your BitPorn account My Settings page and clicking on the API Key tab." - name: freeleech type: checkbox label: Search freeleech only default: false - name: sort type: select label: Sort requested from site default: created_at options: created_at: created seeders: seeders size: size name: title - 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: "You must log in to the site at least once a month; otherwise, your account will be suspended." login: path: /api/torrents method: get error: - selector: a[href*="/login"] message: text: "The API key was not accepted by {{ .Config.sitelink }}." - selector: :root:contains("Account is Banned") search: paths: # https://hdinnovations.github.io/UNIT3D/torrent_api.html # https://github.com/HDInnovations/UNIT3D/blob/master/app/Http/Controllers/API/TorrentController.php#L657 - path: api/torrents/filter response: type: json headers: Authorization: ["Bearer {{ .Config.apikey }}"] inputs: # if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6 $raw: "{{ range .Categories }}&categories[]={{.}}{{end}}" name: "{{ .Keywords }}" "free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}" sortField: "{{ .Config.sort }}" sortDirection: "{{ .Config.type }}" perPage: 100 keywordsfilters: - name: re_replace args: ["\\.", " "] rows: selector: data attribute: attributes fields: category: selector: category_id title: selector: name details: selector: details_link download: selector: download_link infohash: selector: info_hash files: selector: num_file seeders: selector: seeders leechers: selector: leechers grabs: selector: times_completed date: # "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50 selector: created_at filters: - name: append args: " +00:00" # GMT - name: dateparse args: "MM/dd/yyyy HH:mm:ss zzz" size: selector: size _featured: selector: featured case: False: "{{ .False }}" True: "{{ .True }}" downloadvolumefactor_freeleech: # api returns 0%, 25%, 50%, 75%, 100% selector: freeleech case: 0%: 1 # not free 25%: 0.75 50%: 0.5 75%: 0.25 100%: 0 # freeleech "*": 0 # catch errors downloadvolumefactor: text: "{{ if .Result._featured }}0{{ else }}{{ .Result.downloadvolumefactor_freeleech }}{{ end }}" uploadvolumefactor_double_upload: # api returns False, True selector: double_upload case: False: 1 # normal True: 2 # double uploadvolumefactor: text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}" minimumratio: text: 1.0 minimumseedtime: # 48 hours (as seconds = 2 x 24 x 60 x 60) text: 172800 # json UNIT3D 9.1.5 (custom)