diff --git a/README.md b/README.md index 266d04294..a35ebd805 100644 --- a/README.md +++ b/README.md @@ -413,6 +413,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht * leech24 * LegacyHD (HD4Free) * LemonHD + * Les-Cinephiles * Libble * LibraNet (LN) * LinkoManija [![(invite needed)][inviteneeded]](#) diff --git a/src/Jackett.Common/Definitions/les-cinephiles.yml b/src/Jackett.Common/Definitions/les-cinephiles.yml new file mode 100644 index 000000000..ebc9f669a --- /dev/null +++ b/src/Jackett.Common/Definitions/les-cinephiles.yml @@ -0,0 +1,373 @@ +--- +id: les-cinephiles +name: Les-Cinephiles +description: "Les-Cinephiles is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL" +language: fr-FR +type: private +encoding: UTF-8 +links: + - https://les-cinephiles.nl/ + +caps: + categorymappings: + - {id: 2, cat: TV/Anime, desc: "Animations: 4K"} + - {id: 3, cat: TV/Anime, desc: "Animations: 4K Light"} + - {id: 4, cat: TV/Anime, desc: "Animations: BDRIP"} + - {id: 5, cat: TV/Anime, desc: "Animations: BRRIP"} + - {id: 6, cat: TV/Anime, desc: "Animations: BluRay-R"} + - {id: 8, cat: TV/Anime, desc: "Animations: DVD-R"} + - {id: 9, cat: TV/Anime, desc: "Animations: DVDRIP"} + - {id: 165, cat: TV/Anime, desc: "Animations: JAP"} + - {id: 11, cat: TV/Anime, desc: "Animations: HD 1080P"} + - {id: 12, cat: TV/Anime, desc: "Animations: HD 720p"} + - {id: 13, cat: TV/Anime, desc: "Animations: HDRIP"} + - {id: 14, cat: TV/Anime, desc: "Animations: REMUX"} + - {id: 15, cat: TV/Anime, desc: "Animations: TVRIP"} + - {id: 16, cat: TV/Anime, desc: "Animations: WEBRIP"} + - {id: 17, cat: TV/Anime, desc: "Animations: WEB-DL"} + - {id: 73, cat: Books, desc: "Ebook: BD"} + - {id: 74, cat: Books, desc: "Ebook: ENFANTS"} + - {id: 75, cat: Books/Comics, desc: "Ebook: MANGAS"} + - {id: 76, cat: Books, desc: "Ebook: ROMANS"} + - {id: 167, cat: Audio/Audiobook, desc: "Ebook: AUDIO"} + - {id: 168, cat: Books/Mags, desc: "Ebook: MAGAZINE"} + - {id: 24, cat: Movies, desc: "Film: DOC.UNIVERS"} + - {id: 20, cat: Movies, desc: "Film: DOC.DECOUVERTES"} + - {id: 23, cat: Movies, desc: "Film: DOC.SPORT"} + - {id: 18, cat: Movies, desc: "Film: DOC.ANIMAUX"} + - {id: 19, cat: Movies, desc: "Film: DOC.ANTIQUE"} + - {id: 21, cat: Movies, desc: "Film: DOC.DIVERS"} + - {id: 22, cat: Movies, desc: "Film: DOC.HISTOIRE"} + - {id: 164, cat: Movies, desc: "Film: EMISSION.TV"} + - {id: 198, cat: Movies, desc: "Film: DOC.SPECTACLE"} + - {id: 25, cat: Movies/3D, desc: "Film: 3D"} + - {id: 26, cat: Movies/UHD, desc: "Film: 4K"} + - {id: 27, cat: Movies/UHD, desc: "Film: 4K Light"} + - {id: 169, cat: Movies, desc: "Film: AV1"} + - {id: 28, cat: Movies/BluRay, desc: "Film: BDRIP"} + - {id: 29, cat: Movies/BluRay, desc: "Film: BRRIP"} + - {id: 30, cat: Movies/BluRay, desc: "Film: BluRay-R"} + - {id: 31, cat: Movies, desc: "Film: Coffret"} + - {id: 32, cat: Movies/DVD, desc: "Film: DVD-R"} + - {id: 33, cat: Movies/DVD, desc: "Film: DVDRIP"} + - {id: 36, cat: Movies/HD, desc: "Film: HD 720p"} + - {id: 35, cat: Movies/HD, desc: "Film: HD 1080P"} + - {id: 37, cat: Movies/HD, desc: "Film: HDRIP"} + - {id: 170, cat: Movies/HD, desc: "Film: HDTV"} + - {id: 172, cat: Movies/HD, desc: "Film: M-HD"} + - {id: 38, cat: Movies, desc: "Film: REMUX"} + - {id: 39, cat: Movies, desc: "Film: TVRIP"} + - {id: 41, cat: Movies/WEB-DL, desc: "Film: WEB-DL"} + - {id: 200, cat: Movies/WEB-DL, desc: "Film: WEB-RIP"} + - {id: 184, cat: Movies/BluRay, desc: "Film: VOSTFR bdrip"} + - {id: 185, cat: Movies/DVD, desc: "Film: VOSTFR.DVDrip"} + - {id: 186, cat: Movies/WEB-DL, desc: "Film: VOSTFR.WEBrip"} + - {id: 202, cat: Movies/WEB-DL, desc: "Film: VOSTFR-WebDL"} + - {id: 203, cat: Movies/BluRay, desc: "Film: VOSTFR-bluray"} + - {id: 59, cat: Console/3DS, desc: "Jeux: 3DS-DS"} + - {id: 60, cat: Console/Other, desc: "Jeux: ANDROID"} + - {id: 61, cat: Console/Other, desc: "Jeux: IOS-X"} + - {id: 62, cat: PC/Games, desc: "Jeux: PC"} + - {id: 63, cat: Console/PS4, desc: "Jeux: PS3-4"} + - {id: 64, cat: Console/PSP, desc: "Jeux: PSP-X"} + - {id: 65, cat: Console/WiiU, desc: "Jeux: WII-U"} + - {id: 66, cat: Console/Wii, desc: "Jeux: WII"} + - {id: 67, cat: Console/XBox, desc: "Jeux: XBOX"} + - {id: 68, cat: PC/Mobile-Android, desc: "Logiciel: ANDROID"} + - {id: 69, cat: PC/Mac, desc: "Logiciel: APPLE"} + - {id: 70, cat: PC/Mobile-iOS, desc: "Logiciel: IPHONE"} + - {id: 71, cat: PC/Mobile-Other, desc: "Logiciel: LINUX"} + - {id: 72, cat: PC/0day, desc: "Logiciel: WINDOWS"} + - {id: 7, cat: TV/Anime, desc: "Serie: Coffret-Anime"} + - {id: 197, cat: TV, desc: "Serie: EPISODE"} + - {id: 182, cat: TV/Anime, desc: "Serie: JAP-ANIM"} + - {id: 166, cat: TV/Documentary, desc: "Serie: SERIE Docu"} + - {id: 194, cat: TV/Documentary, desc: "Serie: DOCU.DIVERS"} + - {id: 195, cat: TV/Documentary, desc: "Serie: DOCU.EMISTV"} + - {id: 173, cat: TV/UHD, desc: "Serie: 4K"} + - {id: 174, cat: TV/UHD, desc: "Serie: 4k-lLIGHT"} + - {id: 85, cat: TV, desc: "Serie: Coffret"} + - {id: 86, cat: TV, desc: "Serie: DVD-R"} + - {id: 87, cat: TV, desc: "Serie : DVDRIP"} + - {id: 88, cat: TV/HD, desc: "Serie : HD 1080P"} + - {id: 89, cat: TV/HD, desc: "Serie: HD 720p"} + - {id: 90, cat: TV/HD, desc: "Serie: HDRIP"} + - {id: 175, cat: TV/HD, desc: "Serie: HDTV 720"} + - {id: 176, cat: TV/HD, desc: "Serie: HDTV 1080"} + - {id: 177, cat: TV/HD, desc: "Serie: M-HD"} + - {id: 91, cat: TV, desc: "Serie: REMUX"} + - {id: 92, cat: TV, desc: "Serie: TVRIP"} + - {id: 93, cat: TV/WEB-DL, desc: "Serie: WEBRIP"} + - {id: 178, cat: TV/WEB-DL, desc: "Serie: WEB-DL 720"} + - {id: 179, cat: TV/WEB-DL, desc: "Serie: WEB-DL 1080"} + - {id: 199, cat: TV/WEB-DL, desc: "Serie: WebDL"} + - {id: 188, cat: TV, desc: "Serie: VOSTFR.BDrip"} + - {id: 189, cat: TV, desc: "Serie: VOSTFR.DVDrip"} + - {id: 190, cat: TV/HD, desc: "Serie: VOSTFR.HDRIP"} + - {id: 191, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEBrip"} + - {id: 192, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEB-DL"} + - {id: 180, cat: TV, desc: "Serie: VOSTFR.COFFRET"} + + modes: + search: [q] + tv-search: [q, season, ep] + movie-search: [q] + book-search: [q] + +settings: + - name: username + type: text + label: Username + - name: password + type: password + label: Password + - name: freeleech + type: checkbox + label: Search freeleech only + default: false + - 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 with ENGLISH + default: false + - name: sort + type: select + label: Sort requested from site + default: id + options: + id: created + name: title + size: size + seeders: seeders + - name: type + type: select + label: Order requested from site + default: desc + options: + desc: desc + asc: asc + +login: + path: account-login.php + method: post + inputs: + username: "{{ .Config.username }}" + password: "{{ .Config.password }}" + remember: yes + error: + - selector: div.myFrame:contains("ACCESS_DENIED") + test: + path: index.php + selector: a[href="account-logout.php"] + +download: + selectors: + - selector: a[href^="download.php?id="] + attribute: href + +search: + paths: + - path: torrents-search.php + inputs: + $raw: "{{ range .Categories }}c{{.}}=1&{{end}}" + # 0 active, 1 incldead, 2 onlydead + incldead: 1 + # 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 multilang + lang: 0 + # 0 all 1 notfree 2 onlyfree + freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}" + # 0 both, 1 local, 2 external + inclexternal: 0 + search: "{{ .Keywords }}" + sort: "{{ .Config.sort }}" + order: "{{ .Config.type }}" + # does not support imdbid search or return imdb link + + keywordsfilters: + - name: re_replace + args: ["(\\w+)", " +$1"] # prepend + to each word + + rows: + selector: table[class="ttable_headinner"] tr.rowners + filters: + - name: strdump + + fields: + category: +# selector: a[href^="torrents.php?cat="] +# attribute: href +# filters: +# - name: querystring +# args: cat + selector: img + attribute: src + case: + img[src$="/anim4k.png"]: 2 + img[src$="/anim4klight.png"]: 3 + img[src$="/animbdrip.png"]: 4 + img[src$="/animbrrip.png"]: 5 + img[src$="/animbluray.png"]: 6 + img[src$="/animdvdr.png"]: 8 + img[src$="/animdvdrip.png"]: 9 + img[src$="/animjap.png"]: 165 + img[src$="/animhd1080p.png"]: 11 + img[src$="/animhd720p.png"]: 12 + img[src$="/animhdrip.png"]: 13 + img[src$="/animremux.png"]: 14 + img[src$="/animtvrip.png"]: 15 + img[src$="/animwebrip.png"]: 16 + img[src$="/animwebdl.png"]: 17 + img[src$="/ebookbd.png"]: 73 + img[src$="/ebookenfant.png"]: 74 + img[src$="/ebookmanga.png"]: 75 + img[src$="/ebookromans.png"]: 76 + img[src$="/ebookaudio.png"]: 167 + img[src$="/ebookmagazine.png"]: 168 + img[src$="/docunivers.png"]: 24 + img[src$="/docdecouverte.png"]: 20 + img[src$="/docsport.png"]: 23 + img[src$="/docanimaux.png"]: 18 + img[src$="/docantique.png"]: 19 + img[src$="/docdivers.png"]: 21 + img[src$="/dochistoire.png"]: 22 + img[src$="/docsemitv.png"]: 164 + img[src$="/docsseries.png"]: 198 + img[src$="/film3d.png"]: 25 + img[src$="/film4k.png"]: 26 + img[src$="/film4klight.png"]: 27 + img[src$="/filmav1.png"]: 169 + img[src$="/filmbdrip.png"]: 28 + img[src$="/filmbrrip.png"]: 29 + img[src$="/filmbluray.png"]: 30 + img[src$="/filmcoffret.png"]: 31 + img[src$="/filmdvdr.png"]: 32 + img[src$="/filmdvdrip.png"]: 33 + img[src$="/filmhd720p.png"]: 36 + img[src$="/filmhd1080p.png"]: 35 + img[src$="/filmhdrip.png"]: 37 + img[src$="/filmhdtv720p.png"]: 170 + img[src$="/filmmhd.png"]: 172 + img[src$="/filmremux.png"]: 38 + img[src$="/filmtvrip.png"]: 39 + img[src$="/filmwebdl.png"]: 41 + img[src$="/filmwebrip.png"]: 200 + img[src$="/filmvostfrbdrip.png"]: 184 + img[src$="/filmvostfrdvdrip.png"]: 185 + img[src$="/filmvostfrwebrip.png"]: 186 + img[src$="/filmvostfrwebdl.png"]: 202 + img[src$="/filmvostfrbluray.png"]: 203 + img[src$="/jeux3d3ds.png"]: 59 + img[src$="/jeuxandroid.png"]: 60 + img[src$="/jeuxiosx.png"]: 61 + img[src$="/jeuxwindows.png"]: 62 + img[src$="/jeuxps3ps4.png"]: 63 + img[src$="/jeuxpsppsx.png"]: 64 + img[src$="/jeuxwiiu.png"]: 65 + img[src$="/jeuxwii.png"]: 66 + img[src$="/jeuxxbox.png"]: 67 + img[src$="/logandroid.png"]: 68 + img[src$="/logapple.png"]: 69 + img[src$="/logiphone.png"]: 70 + img[src$="/loglinux.png"]: 71 + img[src$="/logwindows.png"]: 72 + img[src$="/animcoffret.png"]: 7 + img[src$="/unknown.png"]: 197 # serie episode + img[src$="/unknown.png"]: 182 # serie jap anim + img[src$="/unknown.png"]: 166 # serie docu + img[src$="/unknown.png"]: 194 # serie docu divers + img[src$="/unknown.png"]: 195 # serie docu emistv + img[src$="/seriesfr4k.png"]: 173 + img[src$="/seriesfr4klight.png"]: 174 + img[src$="/seriecoffret.png"]: 85 + img[src$="/seriedvdr.png"]: 86 + img[src$="/seriedvdrip.png"]: 87 + img[src$="/seriehd1080p.png"]: 88 + img[src$="/seriehd720p.png"]: 89 + img[src$="/seriehdrip.png"]: 90 + img[src$="/seriesfrhdtv720p.png"]: 175 + img[src$="/seriesfrhdtv1080p.png"]: 176 + img[src$="/seriesfrmhd.png"]: 177 + img[src$="/serieremux.png"]: 91 + img[src$="/serietvrip.png"]: 92 + img[src$="/seriewebrip.png"]: 93 + img[src$="/seriesfrwebdl720p.png"]: 178 + img[src$="/seriesfrwebdl1080p.png"]: 179 + img[src$="/unknown.png"]: 199 # serie webdl + img[src$="/serievostfrbdrip.png"]: 188 + img[src$="/serievostfrdvdrip.png"]: 189 + img[src$="/serievostfrhdrip.png"]: 190 + img[src$="/serievostfrwebrip.png"]: 191 + img[src$="/serievostfrwebdl.png"]: 192 + img[src$="/serievostfrcoffret.png"]: 180 + title_phase1: + selector: a[href^="torrents-details.php?id="] + filters: + title_multilang: + text: "{{ .Result.title_phase1 }}" + filters: + - name: re_replace + args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "] + title_phase2: + text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}" + title_vostfr: + text: "{{ .Result.title_phase2 }}" + filters: + - name: re_replace + args: ["(?i)(\\svostfr\\s)", " ENGLISH "] + - name: re_replace + args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "] + title: + text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}" + details: + selector: a[href^="torrents-details.php?id="] + attribute: href + download: + selector: a[href^="torrents-details.php?id="] + attribute: href + poster: + selector: a[onMouseover] + attribute: onMouseover + filters: + - name: regexp + args: src=(.+?)> + date: + selector: a[onMouseover] + attribute: onMouseover + # auto adjusted by site account profile + filters: + - name: regexp + args: "(\\d{2}-\\d{2}-\\d{4})" + - name: dateparse + args: "02-01-2006" + size: + selector: td:nth-last-child(5) + seeders: + selector: td:nth-last-child(4) + leechers: + selector: td:nth-last-child(3) + grabs: + selector: td:nth-last-child(2) + downloadvolumefactor: + case: + img[src="img/freeleech_star.gif"]: 0 + "*": 1 + uploadvolumefactor: + text: 1 + minimumseedtime: + # 1 day (as seconds = 24 x 60 x 60) + text: 86400 +# TorrentTrader 2.08