--- id: cpasbienclone name: cpasbien clone description: "cpasbien clone is a FRENCH Public site for TV / MOVIES / GENERAL" language: fr-FR type: public encoding: UTF-8 followredirect: true links: - https://www.cpasbien.tw/ legacylinks: - https://www1.cpasbiens.ws/ - https://www2.cpasbiens.ws/ - https://cpasbiens.cm/ - https://www1.cpasbiens.cm/ - https://wwv.cpasbien.to/ - https://cpasbiens.black-mirror.xyz/ - https://cpasbiens.unblocked.casa/ - https://cpasbiens.proxyportal.fun/ - https://cpasbiens.uk-unblock.xyz/ - https://cpasbiens.ind-unblock.xyz/ - https://www.cpasbien.gg/ - https://www.cpasbien.vip/ - https://cpasbien.to/ caps: categories: Other: Other modes: search: [q] tv-search: [q, season, ep] movie-search: [q] allowrawsearch: true settings: - name: info_8000 type: info label: About cpasbienclone Categories default: cpasbienclone does not return categories in its search results. To sync to your apps, include 8000(Other) in your Apps' Sync Categories. - name: multilang type: checkbox label: Replace MULTi by another language in release name default: false - name: multilanguage type: select label: Replace MULTi by this language default: FRENCH options: FRENCH: FRENCH MULTi FRENCH: MULTi FRENCH ENGLISH: ENGLISH MULTi ENGLISH: MULTi ENGLISH VOSTFR: VOSTFR MULTi VOSTFR: MULTi VOSTFR - name: vostfr type: checkbox label: Replace VOSTFR and SUBFRENCH with ENGLISH default: false - name: sort type: select label: Sort requested from site (Works only for searches with Keywords) default: trie-date-d options: trie-date-d: created desc trie-date-a: created asc trie-seeds-d: seeders desc trie-seeds-a: seeders asc trie-poid-d: size desc trie-poid-a: size asc trie-nom-d: title desc trie-nom-a: title asc download: before: # request target path: "download_magnet?id={{ re_replace .DownloadUri.AbsoluteUri \"^.*-(\\d+)\\.html\" \"$1\" }}" selectors: - selector: body usebeforeresponse: true search: paths: - path: "{{ if .Keywords }}search_torrent/{{ .Keywords }}.html,{{ .Config.sort }}{{ else }}home/{{ end }}" rows: selector: table.table-corps > tbody > tr:has(a) fields: category: text: Other title_phase1: selector: a filters: - name: re_replace args: ["(?i)\\b(FRENCH|MULTI|TRUEFRENCH|VOSTFR|SUBFRENCH)\\b(.+?)(\\b(19|20\\d{2})\\b)$", "$3 $1$2"] title_vostfr: text: "{{ .Result.title_phase1 }}" filters: - name: re_replace args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"] title_phase2: text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" title_multilang: text: "{{ .Result.title_phase2 }}" filters: - name: re_replace args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"] title: text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" details: selector: a attribute: href download: selector: a attribute: href size: selector: div.poid filters: - name: re_replace args: ["(\\w)o", "$1B"] # keyword search returns nnnnn.n in MB but without unit indicator - name: re_replace args: ["(\\d+\\.\\d)$", "$1MB"] date: text: now seeders: selector: div.up optional: true default: 0 leechers: selector: div.down optional: true default: 0 downloadvolumefactor: text: 0 uploadvolumefactor: text: 1 # engine n/a