mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-12 15:04:13 +02:00
Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ef20198a4f | ||
![]() |
6c6d379002 | ||
![]() |
7c2a343629 | ||
![]() |
ea2e88d6bb | ||
![]() |
abaf909ef1 | ||
![]() |
74054523c5 | ||
![]() |
37daacf9fa | ||
![]() |
b58dc51f8d | ||
![]() |
6c661a4974 | ||
![]() |
7a49ddda3a | ||
![]() |
5e4cb3581d | ||
![]() |
968c2ca3a6 | ||
![]() |
af4fb5c6a0 | ||
![]() |
fc7d5a0e35 | ||
![]() |
2a7c693917 | ||
![]() |
838ad77d7f | ||
![]() |
3978ba6c04 | ||
![]() |
60554c25d9 | ||
![]() |
bd03c903d0 |
@@ -28,7 +28,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* BTstor.net
|
||||
* btbit
|
||||
* BTDB
|
||||
* BT-Scene
|
||||
* cpasbien
|
||||
* ETTV
|
||||
* ExtraTorrent.ag
|
||||
|
@@ -135,22 +135,22 @@
|
||||
selector: a[href^="/download.php"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(7)
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
selector: td:nth-child(4)
|
||||
size:
|
||||
selector: td:nth-child(8)
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
seeders:
|
||||
selector: td:nth-child(3) > a
|
||||
selector: td:nth-child(2) > a
|
||||
leechers:
|
||||
selector: td:nth-child(4)
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: td:nth-child(9)
|
||||
selector: td:nth-child(10)
|
||||
filters:
|
||||
- name: split
|
||||
args: ["by", 0]
|
||||
|
@@ -74,12 +74,37 @@
|
||||
args: ([\d\.]+)
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portoguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch
|
||||
- name: re_replace
|
||||
args: ["(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|hace|il y a|vor|преди)", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut)", "minute"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur)", "hour"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден)", "day"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица)", "week"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|mois|Monat|месец|maand)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"100% Free\"]": "0"
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0"
|
||||
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
|
||||
"*": "1"
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"Double upload\"]": "2"
|
||||
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
|
||||
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
|
||||
"*": "1"
|
||||
|
@@ -1,94 +0,0 @@
|
||||
---
|
||||
site: bt-scene
|
||||
name: BT-Scene
|
||||
description: "BT-Scene (BTS) is a Public site for MOVIES / TV / GENERAL"
|
||||
language: us-en
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bt-scene.cc/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 2, cat: TV, desc: "Series"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
- {id: 4, cat: PC/Games, desc: "Games"}
|
||||
- {id: 5, cat: PC/0day, desc: "Software"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 7, cat: Books, desc: "Ebooks"}
|
||||
- {id: 8, cat: Other, desc: "Misc"}
|
||||
- {id: 9, cat: XXX, desc: "Porn"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: category
|
||||
type: select
|
||||
label: Category
|
||||
default: "0"
|
||||
options:
|
||||
"0" : "All"
|
||||
"1": "Movies"
|
||||
"2": "Series"
|
||||
"3": "Music"
|
||||
"4": "Games"
|
||||
"5": "Software"
|
||||
"6": "Anime"
|
||||
"7": "Ebooks"
|
||||
"8": "Misc"
|
||||
"9": "Porn"
|
||||
|
||||
search:
|
||||
# https://bt-scene.cc/cat/id/1/
|
||||
# https://bt-scene.cc/results_.php?q=midnight+texas+s01e10&advcat=2
|
||||
keywordsfilters:
|
||||
# replace space between keywords with +
|
||||
- name: re_replace
|
||||
args: [" ", "+"]
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}results_.php?q={{ .Keywords }}&advcat={{ .Config.category }}{{else}}indexfull/{{end}}"
|
||||
rows:
|
||||
selector: table.tor > tbody > tr[id^="_"]
|
||||
filters:
|
||||
- name: andmatch
|
||||
fields:
|
||||
title:
|
||||
selector: td[class^="tname"] > a
|
||||
details:
|
||||
selector: td[class^="tname"] > a
|
||||
attribute: href
|
||||
category:
|
||||
selector: td[class^="tname"] > div.subinfo > a[href^="/cat/id"]
|
||||
optional: true
|
||||
attribute: href
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[^\\d+]", ""]
|
||||
download:
|
||||
# build "/torrentget.php?id=5730447" from "_5730447"
|
||||
selector: tr
|
||||
attribute: id
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["_", ""]
|
||||
- name: prepend
|
||||
args: "/torrentget.php?id="
|
||||
size:
|
||||
selector: td[class^="tsize"]
|
||||
seeders:
|
||||
selector: td[class^="tseeds"]
|
||||
leechers:
|
||||
selector: td[class^="tpeers"]
|
||||
date:
|
||||
selector: td[class^="ttime"]
|
||||
filters:
|
||||
- name: append
|
||||
args: " ago"
|
||||
downloadvolumefactor:
|
||||
text: "0"
|
||||
uploadvolumefactor:
|
||||
text: "1"
|
@@ -73,12 +73,37 @@
|
||||
args: ([\d\.]+)
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portoguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch
|
||||
- name: re_replace
|
||||
args: ["(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|hace|il y a|vor|преди)", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut)", "minute"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur)", "hour"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден)", "day"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица)", "week"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|mois|Monat|месец|maand)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"100% Free\"]": "0"
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0"
|
||||
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
|
||||
"*": "1"
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"Double upload\"]": "2"
|
||||
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
|
||||
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
|
||||
"*": "1"
|
||||
|
@@ -79,6 +79,30 @@
|
||||
args: ([\d\.]+)
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portoguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch
|
||||
- name: re_replace
|
||||
args: ["(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|hace|il y a|vor|преди)", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut)", "minute"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur)", "hour"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден)", "day"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица)", "week"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|mois|Monat|месец|maand)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"100% Free\"]": "0"
|
||||
@@ -87,4 +111,5 @@
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"Double upload\"]": "2"
|
||||
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
|
||||
"*": "1"
|
||||
|
@@ -35,6 +35,8 @@
|
||||
- path: "{{ if .Keywords }}search/{{ .Keywords }}/{{else}}new/{{end}}"
|
||||
rows:
|
||||
selector: table.data tr.odd
|
||||
filters:
|
||||
- name: andmatch
|
||||
fields:
|
||||
category:
|
||||
selector: span.uploader_block strong a
|
||||
|
@@ -11,89 +11,91 @@
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 84, cat: Movies, desc: "N ees (2016, 2017)"}
|
||||
- {id: 14, cat: Movies/SD, desc: "DVDRip-BDRip-BRRip (e?? 2015) FREE"}
|
||||
- {id: 16, cat: Movies/SD, desc: "In Avouri (CAM) FREE"}
|
||||
- {id: 17, cat: Movies/BluRay, desc: "B LU-RAY"}
|
||||
- {id: 44, cat: Movies, desc: "E English Movies"}
|
||||
- {id: 76, cat: Movies, desc: "N tokimanter"}
|
||||
- {id: 82, cat: Movies, desc: "I EATP"}
|
||||
- {id: 84, cat: Movies, desc: "Movies New (2017, 2018)"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Movies DVDRip-BDRip-BRRip (up to 2016) FREE"}
|
||||
- {id: 16, cat: Movies/SD, desc: "Movies (CAM) FREE"}
|
||||
- {id: 17, cat: Movies/BluRay, desc: "Movies BLU-RAY"}
|
||||
- {id: 44, cat: Movies, desc: "Movies Greek"}
|
||||
- {id: 76, cat: Movies, desc: "Movies Documentaries"}
|
||||
- {id: 82, cat: Movies, desc: "Movies Theater"}
|
||||
|
||||
- {id: 52, cat: TV, desc: "series"}
|
||||
- {id: 53, cat: TV/SD, desc: ", O Enes"}
|
||||
- {id: 70, cat: TV/HD, desc: "O Enes (720p)"}
|
||||
- {id: 54, cat: TV, desc: "E English"}
|
||||
- {id: 86, cat: TV, desc: "O Enes Complete Seasons"}
|
||||
- {id: 92, cat: TV, desc: "O Enes Complete Seasons (720p)"}
|
||||
- {id: 87, cat: TV, desc: "E English Complete Seasons"}
|
||||
- {id: 63, cat: TV, desc: "Y ychagogikes Emissions"}
|
||||
- {id: 52, cat: TV, desc: "TV Series"}
|
||||
- {id: 53, cat: TV/SD, desc: "TV Series Foreign"}
|
||||
- {id: 70, cat: TV/HD, desc: "TV Series Foreign (720p)"}
|
||||
- {id: 54, cat: TV, desc: "TV Series Greek"}
|
||||
- {id: 86, cat: TV, desc: "TV Series Foreign Complete Seasons"}
|
||||
- {id: 92, cat: TV, desc: "TV Series Foreign Complete Seasons (720p)"}
|
||||
- {id: 87, cat: TV, desc: "TV Series Greek Complete Seasons"}
|
||||
- {id: 63, cat: TV, desc: "TV Series Recreational"}
|
||||
- {id: 83, cat: TV/Sport, desc: "TV Sports"}
|
||||
|
||||
- {id: 55, cat: Movies, desc: "Children"}
|
||||
- {id: 38, cat: Movies, desc: "M etaglotismena (Movies)"}
|
||||
- {id: 39, cat: Movies, desc: "M e Subtitled (Movies)"}
|
||||
- {id: 93, cat: Movies, desc: "M etaglotismena (Series)"}
|
||||
- {id: 94, cat: Movies, desc: "M e Subtitled (Series)"}
|
||||
- {id: 45, cat: Movies, desc: "I absent Anime"}
|
||||
- {id: 98, cat: Movies, desc: "M etaglotismena 3D"}
|
||||
- {id: 64, cat: Movies, desc: "M music for Children"}
|
||||
- {id: 38, cat: Movies, desc: "Children (Movies)"}
|
||||
- {id: 39, cat: Movies, desc: "Children Subtitled (Movies)"}
|
||||
- {id: 93, cat: Movies, desc: "Children (TV Series)"}
|
||||
- {id: 94, cat: Movies, desc: "Children Subtitled (TV Series)"}
|
||||
- {id: 45, cat: Movies, desc: "Children Anime"}
|
||||
- {id: 98, cat: Movies, desc: "Children 3D"}
|
||||
- {id: 64, cat: Movies, desc: "Children Music"}
|
||||
|
||||
- {id: 7, cat: Audio, desc: "Foreign music"}
|
||||
- {id: 21, cat: Audio, desc: "N ees Releases"}
|
||||
- {id: 46, cat: Audio, desc: "P. Alai Releases"}
|
||||
- {id: 32, cat: Audio, desc: "D. iskografies"}
|
||||
- {id: 20, cat: Audio, desc: "In ylloges"}
|
||||
- {id: 102, cat: Audio, desc: "M AGICO Radio"}
|
||||
- {id: 81, cat: Audio, desc: "K araoke"}
|
||||
- {id: 95, cat: Audio, desc: "Soundtrack"}
|
||||
- {id: 7, cat: Audio, desc: "Music Foreign"}
|
||||
- {id: 21, cat: Audio, desc: "Music Foreign New Releases"}
|
||||
- {id: 46, cat: Audio, desc: "Music Foreign Old Releases"}
|
||||
- {id: 32, cat: Audio, desc: "Music Foreign Discographies"}
|
||||
- {id: 20, cat: Audio, desc: "Music Foreign Collections"}
|
||||
- {id: 102, cat: Audio, desc: "Music Foreign MAGICO Radio"}
|
||||
- {id: 81, cat: Audio, desc: "Music Foreign Karaoke"}
|
||||
- {id: 95, cat: Audio, desc: "Music Foreign Soundtrack"}
|
||||
|
||||
- {id: 47, cat: Audio, desc: "Greek music"}
|
||||
- {id: 48, cat: Audio, desc: "N ees Releases"}
|
||||
- {id: 49, cat: Audio, desc: "P. Alai Releases"}
|
||||
- {id: 51, cat: Audio, desc: "D. iskografies"}
|
||||
- {id: 50, cat: Audio, desc: "In ylloges"}
|
||||
- {id: 101, cat: Audio, desc: "M AGICO Radio"}
|
||||
- {id: 97, cat: Audio, desc: "Live Cd 's"}
|
||||
- {id: 57, cat: Audio, desc: "P empetika"}
|
||||
- {id: 58, cat: Audio, desc: "D. imotika"}
|
||||
- {id: 59, cat: Audio, desc: "K exception of preservatives"}
|
||||
- {id: 60, cat: Audio, desc: "N isiotika"}
|
||||
- {id: 62, cat: Audio, desc: "P. ontiaka"}
|
||||
- {id: 80, cat: Audio, desc: "K araoke"}
|
||||
- {id: 96, cat: Audio, desc: "Soundtracks"}
|
||||
- {id: 47, cat: Audio, desc: "Music Greek"}
|
||||
- {id: 48, cat: Audio, desc: "Music Greek New Releases"}
|
||||
- {id: 49, cat: Audio, desc: "Music Greek Old Releases"}
|
||||
- {id: 51, cat: Audio, desc: "Music Greek Discographies"}
|
||||
- {id: 50, cat: Audio, desc: "Music Greek Collections"}
|
||||
- {id: 101, cat: Audio, desc: "Music Greek MAGICO Radio"}
|
||||
- {id: 97, cat: Audio, desc: "Music Greek Live Cd's"}
|
||||
- {id: 57, cat: Audio, desc: "Music Greek Rebetika"}
|
||||
- {id: 58, cat: Audio, desc: "Music Greek Primary"}
|
||||
- {id: 59, cat: Audio, desc: "Music Greek Cretan"}
|
||||
- {id: 60, cat: Audio, desc: "Music Greek Island"}
|
||||
- {id: 62, cat: Audio, desc: "Music Greek Pontian"}
|
||||
- {id: 80, cat: Audio, desc: "Music Greek Karaoke"}
|
||||
- {id: 96, cat: Audio, desc: "Music Greek Soundtracks"}
|
||||
|
||||
- {id: 73, cat: Audio, desc: "seasonal Music"}
|
||||
- {id: 74, cat: Audio, desc: "X ristougenna"}
|
||||
- {id: 79, cat: Audio, desc: "P. ascha"}
|
||||
- {id: 75, cat: Audio, desc: "A pokriatika"}
|
||||
- {id: 78, cat: Audio, desc: "A Tariff Valentine"}
|
||||
- {id: 73, cat: Audio, desc: "Music Seasonal"}
|
||||
- {id: 74, cat: Audio, desc: "Music Seasonal Xmas"}
|
||||
- {id: 79, cat: Audio, desc: "Music Seasonal Easter"}
|
||||
- {id: 75, cat: Audio, desc: "Music Seasonal Halloween"}
|
||||
- {id: 78, cat: Audio, desc: "Music Seasonal Valentines"}
|
||||
|
||||
- {id: 33, cat: Books, desc: "Books"}
|
||||
- {id: 41, cat: Books, desc: "E nglis"}
|
||||
- {id: 65, cat: Books, desc: "K omix"}
|
||||
- {id: 43, cat: Books, desc: "P. periods"}
|
||||
- {id: 72, cat: Books, desc: "P. aidika"}
|
||||
- {id: 66, cat: Books, desc: "L. exika - Educational"}
|
||||
- {id: 42, cat: Books, desc: "O enoglossa"}
|
||||
- {id: 67, cat: Books, desc: "E. Konya-Photos"}
|
||||
- {id: 41, cat: Books, desc: "Books Greek"}
|
||||
- {id: 65, cat: Books, desc: "Books Comics"}
|
||||
- {id: 43, cat: Books, desc: "Books Periodicals"}
|
||||
- {id: 105, cat: Books, desc: "Books Audio"}
|
||||
- {id: 72, cat: Books, desc: "Books Children"}
|
||||
- {id: 66, cat: Books, desc: "Books Educational"}
|
||||
- {id: 42, cat: Books, desc: "Books Foreign"}
|
||||
- {id: 67, cat: Books, desc: "Books Photos"}
|
||||
|
||||
- {id: 6, cat: PC, desc: "programs"}
|
||||
- {id: 18, cat: PC/0day, desc: "PC"}
|
||||
- {id: 40, cat: PC/Phone-Android, desc: "Android"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 6, cat: PC, desc: "Programs"}
|
||||
- {id: 18, cat: PC/0day, desc: "Programs PC"}
|
||||
- {id: 40, cat: PC/Phone-Android, desc: "Programs Android"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Programs Mac"}
|
||||
|
||||
- {id: 2, cat: PC/Games, desc: "Games"}
|
||||
- {id: 27, cat: PC/Games, desc: "PC"}
|
||||
- {id: 68, cat: PC/Phone-Android, desc: "Android"}
|
||||
- {id: 27, cat: PC/Games, desc: "Games PC"}
|
||||
- {id: 68, cat: PC/Phone-Android, desc: "Games Android"}
|
||||
|
||||
- {id: 88, cat: Other, desc: "Design / Tutorials / Accessories"}
|
||||
- {id: 89, cat: Other, desc: "Photoshop Tutorials"}
|
||||
- {id: 91, cat: Other, desc: "Illustrator Tutorials"}
|
||||
- {id: 90, cat: Other, desc: "After Effects Tutorials"}
|
||||
- {id: 88, cat: Other, desc: "Tutorials / Design / Accessories"}
|
||||
- {id: 89, cat: Other, desc: "Tutorials Photoshop"}
|
||||
- {id: 91, cat: Other, desc: "Tutorials Illustrator"}
|
||||
- {id: 90, cat: Other, desc: "Tutorials After Effects"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
login:
|
||||
path: /?p=home&pid=1
|
||||
@@ -135,7 +137,7 @@
|
||||
error:
|
||||
- selector: div#show_error font
|
||||
rows:
|
||||
selector: div#content > div.torrent-box[id^="torrent_"]
|
||||
selector: div#content > div.torrent-box[id^="torrent_"], tr:has(a[href*="?p=torrents&pid=10&action=details"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
fields:
|
||||
@@ -145,7 +147,7 @@
|
||||
- name: replace
|
||||
args: ["Grey's Anatomy", "Greys Anatomy"]
|
||||
category:
|
||||
selector: div.categoryImage > a
|
||||
selector: a[href*="?p=torrents&pid=10&cid="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
@@ -157,6 +159,7 @@
|
||||
selector: a[href*="?p=torrents&pid=10&action=download"]
|
||||
attribute: href
|
||||
imdb:
|
||||
optional: true
|
||||
selector: a[href^="http://www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
@@ -172,6 +175,7 @@
|
||||
selector: a[rel="fancybox"]
|
||||
attribute: href
|
||||
description:
|
||||
optional: true
|
||||
selector: div.torrentDetails > div:has(span.floatright)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
@@ -217,5 +221,17 @@
|
||||
args: ["Κυριακή", "Sunday"]
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
|
||||
|
||||
date:
|
||||
# <br /> Uploaded Saturday at 21:09 by
|
||||
optional: true
|
||||
selector: td.torrent_name
|
||||
remove: div, a, span
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Uploaded ", ""]
|
||||
- name: replace
|
||||
args: [" by", ""]
|
||||
- name: replace
|
||||
args: ["at ", ""]
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
|
@@ -84,12 +84,37 @@
|
||||
args: ([\d\.]+)
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portoguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch
|
||||
- name: re_replace
|
||||
args: ["(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|hace|il y a|vor|преди)", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut)", "minute"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur)", "hour"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден)", "day"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица)", "week"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|mois|Monat|месец|maand)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"100% Free\"]": "0"
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0"
|
||||
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
|
||||
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
|
||||
"*": "1"
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"Double upload\"]": "2"
|
||||
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
|
||||
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
|
||||
"*": "1"
|
||||
|
@@ -77,6 +77,30 @@
|
||||
args: ([\d\.]+)
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portoguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch
|
||||
- name: re_replace
|
||||
args: ["(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|hace|il y a|vor|преди)", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut)", "minute"]
|
||||
- name: re_replace
|
||||
args: ["(dakika|minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur)", "hour"]
|
||||
- name: re_replace
|
||||
args: ["(saat|tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден)", "day"]
|
||||
- name: re_replace
|
||||
args: ["(gün|päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица)", "week"]
|
||||
- name: re_replace
|
||||
args: ["(hafta|nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|mois|Monat|месец|maand)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"i[data-original-title=\"100% Free\"]": "0"
|
||||
|
@@ -114,6 +114,7 @@
|
||||
FRENCH : "FRENCH"
|
||||
MULTI.FRENCH: "MULTI.FRENCH"
|
||||
ENGLISH: "ENGLISH"
|
||||
MULTI.ENGLISH: "MULTI.ENGLISH"
|
||||
login:
|
||||
method: form
|
||||
path: /
|
||||
|
@@ -20,6 +20,11 @@
|
||||
20: Movies/DVD
|
||||
9: XXX
|
||||
49: XXX/Other
|
||||
6: Audio
|
||||
30: Audio/Other
|
||||
29: Audio/Other
|
||||
51: Audio/Other
|
||||
34: Audio/Lossless
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -13,10 +13,11 @@
|
||||
"anime": TV/Anime
|
||||
"app": PC
|
||||
"book": Books
|
||||
"files": Other/Misc
|
||||
"game": PC/Games
|
||||
"movies": Movies
|
||||
"music": Audio
|
||||
"other": Other/Misc
|
||||
"other": Other
|
||||
"tv": TV
|
||||
|
||||
modes:
|
||||
|
@@ -156,7 +156,9 @@ namespace Jackett.Common.Indexers
|
||||
var release = new ReleaseInfo();
|
||||
release.Title = string.Format("{0} [480p]", title);
|
||||
release.PublishDate = releasedate;
|
||||
release.Link = new Uri(p480.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
var torrentlink = new Uri(p480.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
release.Link = torrentlink;
|
||||
release.Guid = torrentlink;
|
||||
release.MagnetUri = new Uri(p480.QuerySelector(".hs-magnet-link > a").GetAttribute("href"));
|
||||
release.Files = 1;
|
||||
release.Category = new List<int> { TorznabCatType.TVAnime.ID };
|
||||
@@ -175,7 +177,9 @@ namespace Jackett.Common.Indexers
|
||||
var release = new ReleaseInfo();
|
||||
release.Title = string.Format("{0} [720p]", title);
|
||||
release.PublishDate = releasedate;
|
||||
release.Link = new Uri(p720.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
var torrentlink = new Uri(p720.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
release.Link = torrentlink;
|
||||
release.Guid = torrentlink;
|
||||
release.MagnetUri = new Uri(p720.QuerySelector(".hs-magnet-link > a").GetAttribute("href"));
|
||||
release.Files = 1;
|
||||
release.Category = new List<int> { TorznabCatType.TVAnime.ID };
|
||||
@@ -194,7 +198,9 @@ namespace Jackett.Common.Indexers
|
||||
var release = new ReleaseInfo();
|
||||
release.Title = string.Format("{0} [1080p]", title);
|
||||
release.PublishDate = releasedate;
|
||||
release.Link = new Uri(p1080.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
var torrentlink = new Uri(p1080.QuerySelector(".hs-torrent-link > a").GetAttribute("href"));
|
||||
release.Link = torrentlink;
|
||||
release.Guid = torrentlink;
|
||||
release.MagnetUri = new Uri(p1080.QuerySelector(".hs-magnet-link > a").GetAttribute("href"));
|
||||
release.Files = 1;
|
||||
release.Category = new List<int> { TorznabCatType.TVAnime.ID };
|
||||
|
@@ -59,7 +59,7 @@ namespace Jackett.Common.Indexers
|
||||
|
||||
TorznabCaps.SupportsImdbSearch = true;
|
||||
|
||||
webclient.requestDelay = 2.0; // 0.5 requests per second (2 causes problems)
|
||||
webclient.requestDelay = 2.1; // The api has a 1req/2s limit.
|
||||
|
||||
AddCategoryMapping(4, TorznabCatType.XXX, "XXX (18+)");
|
||||
AddCategoryMapping(14, TorznabCatType.MoviesSD, "Movies/XVID");
|
||||
|
@@ -19,9 +19,15 @@ namespace Jackett.Common.Indexers
|
||||
{
|
||||
public class TorrentHeaven : BaseWebIndexer
|
||||
{
|
||||
public override string[] LegacySiteLinks { get; protected set; } = new string[] {
|
||||
"https://torrentheaven.myfqdn.info/",
|
||||
};
|
||||
private string IndexUrl { get { return SiteLink + "index.php"; } }
|
||||
private string LoginCompleteUrl { get { return SiteLink + "index.php?strWebValue=account&strWebAction=login_complete&ancestry=verify"; } }
|
||||
private static readonly string certificateHash = "6F5CE30D578C2A7AECFB919D0D013976D395055F";
|
||||
private static readonly string[] certificateHashs = new string[] {
|
||||
"6F5CE30D578C2A7AECFB919D0D013976D395055F",
|
||||
"66096DB5FD0107E4FFBAF5EC8378EB235CADA909",
|
||||
};
|
||||
|
||||
private new ConfigurationDataCaptchaLogin configData
|
||||
{
|
||||
@@ -32,7 +38,7 @@ namespace Jackett.Common.Indexers
|
||||
public TorrentHeaven(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps)
|
||||
: base(name: "TorrentHeaven",
|
||||
description: "A German general tracker.",
|
||||
link: "https://torrentheaven.myfqdn.info/",
|
||||
link: "https://newheaven.nl/",
|
||||
caps: TorznabUtil.CreateDefaultTorznabTVCaps(),
|
||||
configService: configService,
|
||||
client: wc,
|
||||
@@ -92,7 +98,8 @@ namespace Jackett.Common.Indexers
|
||||
AddCategoryMapping(70, TorznabCatType.PC, "APPLICATIONS/Linux");
|
||||
AddCategoryMapping(71, TorznabCatType.PCMac, "APPLICATIONS/Mac");
|
||||
|
||||
webclient.AddTrustedCertificate(new Uri(SiteLink).Host, certificateHash);
|
||||
foreach (var certificateHash in certificateHashs)
|
||||
webclient.AddTrustedCertificate(new Uri(SiteLink).Host, certificateHash);
|
||||
}
|
||||
|
||||
public override async Task<ConfigurationData> GetConfigurationForSetup()
|
||||
|
@@ -275,6 +275,7 @@ namespace Jackett.Updater
|
||||
"Definitions/torrentkim.yml",
|
||||
"Definitions/horriblesubs.yml",
|
||||
"Definitions/idope.yml",
|
||||
"Definitions/bt-scene.yml",
|
||||
};
|
||||
|
||||
foreach (var oldFile in oldFiles)
|
||||
|
Reference in New Issue
Block a user