Compare commits

...

101 Commits

Author SHA1 Message Date
jackettbot[bot]
e5f372225f Update rudub 2025-09-28 01:29:14 +00:00
Garfield69
33bf0a1d64 itorrent: removed. resolves #5459 2025-09-28 06:05:49 +13:00
Garfield69
17f677e42d bludv: new domain 2025-09-28 06:05:11 +13:00
Garfield69
8d58135514 filmeshdtorrent: new domain 2025-09-28 06:04:58 +13:00
Garfield69
b517dd0943 torrentdosfilmes: new domains 2025-09-28 06:04:39 +13:00
jackettbot[bot]
0e346c007c Update rudub 2025-09-27 01:28:31 +00:00
Garfield69
aab59c0621 torrenttip: add flaresolverr info 2025-09-27 06:31:32 +12:00
Garfield69
cdb1765120 torrentsome: add flaresolverr info 2025-09-27 06:31:19 +12:00
Garfield69
572e7b9cdc teamos: add config info VPN not allowed 2025-09-27 06:31:03 +12:00
Garfield69
c37ae999b3 bitporn: -> 9.1.7 info_hash removed 2025-09-27 06:30:37 +12:00
Garfield69
d96dff92f4 3dtorrents: update cats 2025-09-27 06:30:06 +12:00
jackettbot[bot]
1c800c9a4f Update rudub 2025-09-26 01:28:48 +00:00
Garfield69
1505e26dbd darkpeers: bump engine tag, update cat 2025-09-26 10:23:46 +12:00
Garfield69
c35da294e9 itatorrents: bump engine tag 2025-09-26 10:14:01 +12:00
Garfield69
2a059627e4 bitbazis: update login test 2025-09-26 06:07:07 +12:00
Garfield69
a676df9a98 Update extratorrent-st.yml 2025-09-26 05:45:05 +12:00
Garfield69
949edec2d0 torrentqq: bump domains 2025-09-26 05:41:39 +12:00
Garfield69
74e9057606 extratorrent-st: update cats 2025-09-26 05:41:26 +12:00
jackettbot[bot]
737a907ec7 Update rudub 2025-09-25 01:28:59 +00:00
Garfield69
abf6994ae7 uztracker: update cats 2025-09-25 06:05:18 +12:00
Garfield69
750d5ebd38 torrenttip: bump domain 2025-09-25 06:04:28 +12:00
Garfield69
f09e7b447c torrentsome: bump domain 2025-09-25 06:04:09 +12:00
Garfield69
ec05656fcd hhd: -> 9.1.7 info_hash removed. resovles #15738 2025-09-24 19:07:08 +12:00
jackettbot[bot]
abfd4dc92b Update rudub 2025-09-24 01:28:51 +00:00
Garfield69
f3b626133d assorted unit3d: bump engine tag 2025-09-24 07:55:05 +12:00
Garfield69
4c1ba8b04d 52bt: bump domain 2025-09-24 05:36:39 +12:00
jackettbot[bot]
22efd22e73 Update rudub 2025-09-23 01:28:47 +00:00
Garfield69
d12b920274 cgpeers: migrate c# to yaml. update for luminance. resolves #16190 2025-09-23 13:22:56 +12:00
Garfield69
99f887900a kickasstorrents-to: update cats 2025-09-23 04:59:26 +12:00
Garfield69
d826055762 exttorrents: update cats 2025-09-23 04:59:12 +12:00
Garfield69
ea9e674d6b extratorrent-st: update cats 2025-09-23 04:58:59 +12:00
Garfield69
07e8a0e10e 52bt: bump domain 2025-09-23 04:58:38 +12:00
Garfield69
aa1d539678 crazyspirits: new tld. resolves #5479 2025-09-22 18:58:42 +12:00
jackettbot[bot]
2c4ca34b81 Update rudub 2025-09-22 01:29:12 +00:00
Garfield69
7fd64f519e aiduro!online: add config info about ratio. #9486 2025-09-22 08:33:28 +12:00
Garfield69
6516df29d3 polishtorrent: new cat 2025-09-22 06:29:20 +12:00
Garfield69
4f42bd68e3 malayabits:n: -> 9.1.7 info_hash removed 2025-09-22 06:29:03 +12:00
Garfield69
db299b6e5a kickasstorrents-to: new cats 2025-09-22 05:35:29 +12:00
Garfield69
f637bc6c89 exttorrents: new cats 2025-09-22 05:35:08 +12:00
jackettbot[bot]
751b11afd8 Update rudub 2025-09-21 01:29:26 +00:00
Bogdan
9cd50a883a animebytes: prevent false positives parsing seasons for "No. 8" 2025-09-20 23:11:53 +03:00
Garfield69
948bb67e2b oxtorrent-vip: new tld 2025-09-21 05:35:02 +12:00
Garfield69
a7406eb725 uploadcx: bump engine tag 2025-09-20 13:36:58 +12:00
jackettbot[bot]
65da50d6bf Update rudub 2025-09-20 01:28:38 +00:00
jackettbot[bot]
3829d49aed Update rudub 2025-09-19 01:28:56 +00:00
Garfield69
ff17b147d6 polishtorrent: 3x no longer available 2025-09-19 12:37:15 +12:00
Garfield69
b579de495d cinematik: bump engine tag 2025-09-19 12:36:48 +12:00
Garfield69
f6384c933c blutopia: bump engine tag 2025-09-19 12:36:31 +12:00
Garfield69
4f3c57de59 kickasstorrents-ws: alternate domains update #9333 2025-09-19 06:32:46 +12:00
Garfield69
dc4bde017a rastastugan: -> 9.1.6 info_hash removed 2025-09-19 05:50:54 +12:00
Garfield69
088dfba4b6 ebooks-shares: new cat 2025-09-19 05:50:16 +12:00
Garfield69
c414181da3 zkrorremt: new tld plus CA trust 2025-09-19 05:29:10 +12:00
Garfield69
ed507c3a43 zetorrents: new tld 2025-09-19 05:28:34 +12:00
Garfield69
c42383f605 torrentqq: bump domains 2025-09-19 05:28:19 +12:00
Garfield69
d53f764b4f nortorrent: new tld 2025-09-19 05:27:59 +12:00
Garfield69
fd3c5aea9e esharenet: removed. resolves #5690 2025-09-18 16:13:51 +12:00
jackettbot[bot]
5c379fc5fb Update rudub 2025-09-18 01:28:50 +00:00
Garfield69
4203abf435 yoinked: -> 9.1.6 info_hash removed 2025-09-18 05:44:35 +12:00
Garfield69
cc7a2dae35 sextorrent: new cat 2025-09-18 05:44:01 +12:00
Garfield69
3932f1cdb1 torrenttip: bump domain 2025-09-18 05:16:54 +12:00
Garfield69
b4c9145642 torrentsome: bump domain 2025-09-18 05:16:41 +12:00
Garfield69
8b48206e84 oxtorrent-vip: new domain 2025-09-18 05:16:30 +12:00
Bogdan
896a3e6e21 core: bump backend dependencies (#16189) 2025-09-17 13:10:54 +03:00
jackettbot[bot]
70885a1153 Update rudub 2025-09-17 01:28:48 +00:00
Roc13x
edd3c83a94 exttorrents: restore keyword search alongside imdbid (#16188) 2025-09-16 18:14:24 +01:00
Garfield69
98c2590a16 idope: new domain resolves #1386 2025-09-16 18:16:46 +12:00
jackettbot[bot]
e4d773bae9 Update rudub 2025-09-16 01:28:48 +00:00
ilike2burnthing
9e716d8e9b thefallingangels: update cats 2025-09-16 00:16:11 +01:00
ilike2burnthing
b24acf3327 majomparade: add tpp info & search one page 2025-09-15 22:42:21 +01:00
Garfield69
7bf75794c8 dontorrent: new domain 2025-09-16 05:11:38 +12:00
ilike2burnthing
e6e82b90a6 arabp2p: include rows with magnets 2025-09-15 17:05:18 +01:00
jackettbot[bot]
bb8c403b23 Update rudub 2025-09-15 01:29:02 +00:00
Garfield69
c9066b5ea8 dasunerwartete: new row selector 2025-09-15 05:55:48 +12:00
Garfield69
19586cd2d1 ebook-shares: new cat 2025-09-15 05:43:55 +12:00
Garfield69
42c7d1fc59 extratorrent-st: ignore comment link. resolves #16186 2025-09-14 16:57:01 +12:00
jackettbot[bot]
a98e69d18b Update rudub 2025-09-14 01:29:04 +00:00
Garfield69
64c2f7b895 uztracker: new cat 2025-09-14 05:54:26 +12:00
jackettbot[bot]
5cd2b53907 Update rudub 2025-09-13 01:28:37 +00:00
ilike2burnthing
0649a45697 femdomcult: support sitewide freeleech 2025-09-12 23:58:26 +01:00
ilike2burnthing
e05e7a77c4 sextorrent: support sitewide freeleech 2025-09-12 23:57:23 +01:00
Garfield69
8f526aba30 magnetcat: bump alternate domains 2025-09-13 05:45:19 +12:00
Garfield69
67b98536b5 datascene: bump engine tag that should have been done back in march 2025-09-12 19:17:26 +12:00
jackettbot[bot]
04bdc9ebf0 Update rudub 2025-09-12 01:28:59 +00:00
Garfield69
a1af921349 torrenttip: bump domain 2025-09-12 06:00:53 +12:00
Garfield69
9411f98064 torrentsome: bump domain 2025-09-12 06:00:40 +12:00
Garfield69
4c0ef2d33b torrentqq: bump domains 2025-09-12 06:00:27 +12:00
jackettbot[bot]
6d8c9709e0 Update rudub 2025-09-11 01:29:12 +00:00
Bogdan
3011b5397a bump supported version 2025-09-10 19:01:18 +03:00
Bogdan
22284d5106 core: bump .NET framework to 4.7.1 (#16184) 2025-09-10 18:59:28 +03:00
ilike2burnthing
dbf2a455c4 sextorrent: add private 3x tracker. resolves #16182 (#16183) 2025-09-10 15:09:52 +01:00
ilike2burnthing
5e82419fee femdomcult: add freeleech case, remove old date fix
'never' date issue from 2020 seems to be resolved
2025-09-10 15:03:56 +01:00
Garfield69
b20d0aca8c mejortorrent: bump domain 2025-09-10 17:32:02 +12:00
jackettbot[bot]
240054e089 Update rudub 2025-09-10 01:29:01 +00:00
Garfield69
9586e6d349 ptp: movies only. resolves #16180 2025-09-10 12:36:19 +12:00
Garfield69
4f3d0589a3 yourbittorrent: removed. resolves 5417 2025-09-10 08:19:28 +12:00
Garfield69
710cbea589 torlock: removed. resolves #1650 2025-09-10 08:13:09 +12:00
Garfield69
f04babe9b4 anidex: removed. resolves #14991 2025-09-10 08:05:43 +12:00
Garfield69
9a5bc0e882 f1gp: new cat 2025-09-10 05:48:13 +12:00
jackettbot[bot]
3784d1a1bf Update rudub 2025-09-09 01:28:51 +00:00
Garfield69
7af2d20bc1 Revert "vsttorrents: CA trust"
This reverts commit 38f457975e.
2025-09-09 12:00:49 +12:00
Garfield69
38f457975e vsttorrents: CA trust 2025-09-09 06:21:03 +12:00
68 changed files with 639 additions and 1239 deletions

View File

@@ -20,7 +20,7 @@ The software implements the [Torznab](https://torznab.github.io/spec-1.3-draft/i
A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](https://github.com/webtor-io/go-jackett)
#### Supported Systems
The currently supported version of Jackett is 0.22.+, which is compatible with the following OS:
The currently supported version of Jackett is 0.23.+, which is compatible with the following OS:
* Windows 10 Version 1607+ or greater [supported operating systems here](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md#windows)
* Linux [supported operating systems here](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md#linux)
* macOS 13.0+ (Ventura) or greater [supported operating systems here](https://github.com/dotnet/core/blob/main/release-notes/8.0/supported-os.md#macos)
@@ -34,7 +34,6 @@ Prior versions of Jackett are no longer supported.
* 1337x
* 52BT
* ACG.RIP
* Anidex
* AniLibria
* Anime Time
* Anime Tosho
@@ -77,7 +76,6 @@ Prior versions of Jackett are no longer supported.
* ilCorSaRoNeRo
* Internet Archive (archive.org)
* Isohunt2
* iTorrent
* kickasstorrents.to
* kickasstorrents.ws
* Knaben
@@ -124,7 +122,6 @@ Prior versions of Jackett are no longer supported.
* The Pirate Bay (TPB)
* TheRARBG
* Tokyo Tosho
* Torlock
* Torrent Downloads
* Torrent Oyun indir
* Torrent[CORE]
@@ -152,7 +149,6 @@ Prior versions of Jackett are no longer supported.
* Wolfmax4K
* XXXClub
* xxxtor
* YourBittorrent
* YTS.ag
* zetorrents
* ZkTorrent
@@ -337,7 +333,6 @@ Prior versions of Jackett are no longer supported.
* Ebooks-Shares [![(invite needed)][inviteneeded]](#)
* Empornium (EMP) [![(invite needed)][inviteneeded]](#)
* eMuwarez
* eShareNet
* eStone (BigTorrent)
* Exitorrent.org [![(invite needed)][inviteneeded]](#)
* ExoticaZ (YourExotic)
@@ -528,6 +523,7 @@ Prior versions of Jackett are no longer supported.
* SeedFile (SF)
* seedpool
* SewerPT (下水道) [![(invite needed)][inviteneeded]](#)
* SexTorrent
* SFP (Share Friends Projekt)
* Shareisland
* Shazbat
@@ -765,7 +761,7 @@ If you want to run it with a user without a /home directory you need to add `Env
## Installation on Linux (ARMv6 or below)
1. Install [Mono 5.8](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release is recommended)
1. Install [Mono 5.10](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release is recommended)
* Follow the instructions on the mono website and install the `mono-devel` and the `ca-certificates-mono` packages.
* On Red Hat/CentOS/openSUSE/Fedora the `mono-locale-extras` package is also required.
2. Install libcurl:

View File

@@ -2,7 +2,7 @@
name: $(majorVersion).$(minorVersion).$(patchVersion)
variables:
majorVersion: 0
minorVersion: 22
minorVersion: 23
patchVersion: $[counter(variables['minorVersion'], 1)] # this will reset when we bump minor
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
buildConfiguration: Release
@@ -108,7 +108,7 @@ stages:
Mono:
buildDescription: Mono
imageName: ubuntu-22.04
framework: net462
framework: net471
runtime: linux-x64
archiveType: tar
artifactName: Jackett.Binaries.Mono.tar.gz
@@ -280,7 +280,6 @@ stages:
$newVersion.Value = '4.0.0.0'
$xml.Save($file)
Remove-Item '$(Build.BinariesDirectory)/Jackett/System.Net.Http.dll'
Remove-Item '$(Build.BinariesDirectory)/Jackett/System.Runtime.InteropServices.RuntimeInformation.dll'
- task: Bash@3
displayName: Set Folder and File Permissions (Mono, Linux and macOS)
@@ -438,7 +437,7 @@ stages:
Mono:
buildDescription: Mono
imageName: ubuntu-22.04
framework: net462
framework: net471
runtime: linux-x64
pool:
vmImage: $(imageName)
@@ -535,7 +534,7 @@ stages:
buildDescription: Mono
imageName: ubuntu-22.04
artifactName: Jackett.Binaries.Mono.tar.gz
framework: net462
framework: net471
runtime: linux-x64
pool:
vmImage: $(imageName)

View File

@@ -18,8 +18,10 @@ caps:
- {id: 17, cat: Movies/BluRay, desc: "Movies Blu-ray"}
- {id: 27, cat: Movies/BluRay, desc: "Movies BD25 Encode"}
- {id: 33, cat: Movies/BluRay, desc: "Movies BD9 AVCHD"}
- {id: 22, cat: Movies, desc: "Movies 2D to 3D Conv"}
- {id: 32, cat: Movies, desc: "Bluray MKV Remux"}
- {id: 22, cat: Movies, desc: "Movies Home Conversions"}
- {id: 32, cat: Movies, desc: "Movies Bluray MKV Remux"}
- {id: 38, cat: Movies, desc: "Movies Studio Conversion"}
- {id: 39, cat: Movies/3D, desc: "Movies VR 360"}
- {id: 23, cat: Movies/3D, desc: "Movies Evo 3D"}
- {id: 36, cat: Movies/UHD, desc: "Movies 4K UHD Bluray"}
- {id: 37, cat: Movies/UHD, desc: "Movies 4K UHD Encode"}

View File

@@ -8,10 +8,9 @@ encoding: UTF-8
requestDelay: 2
links:
# Send any content to 52btbtbt@gmail.com to get the latest address. or visit https://52btbt.icu/
- https://www.529065.xyz/
- https://www.529069.xyz/
- https://www.529067.xyz/
legacylinks:
- https://529049.xyz/
- https://www.529052.xyz/
- https://www.529053.xyz/
- https://www.529055.xyz/
@@ -26,6 +25,8 @@ legacylinks:
- https://www.529063.xyz/
- https://www.529064.xyz/
- https://www.529066.xyz/
- https://www.529065.xyz/
- https://www.529068.xyz/
caps:
categorymappings:

View File

@@ -57,6 +57,10 @@ settings:
options:
desc: desc
asc: asc
- name: info_results
type: info
label: Search results
default: "If you are getting the error <b>Found no results while trying to browse this tracker</b> then first access the site with your browser and check that your ratio is <b>not below 0.8</b>, otherwise the site will not return download links to the indexer. This does not apply to freeleech torrents."
login:
# using cookie method because login page returns 0 bytes with a cookie flog=6

View File

@@ -126,7 +126,7 @@ search:
# does not support imdbid search or provide imdb link in results
rows:
selector: table#torrents_list_p > tbody > tr:has(a[href^="download.php?id="])
selector: table#torrents_list_p > tbody > tr:has(a[href^="download.php?id="]), table#torrents_list_p > tbody > tr:has(a[href^="magnet:?xt="])
filters:
- name: andmatch

View File

@@ -81,7 +81,7 @@ login:
cookie: "{{ .Config.cookie }}"
test:
path: index.php
selector: i.fa-arrow-right-from-bracket[title="Kilépés"]
selector: a[onclick="confirmLogout()"]
search:
paths:

View File

@@ -143,8 +143,6 @@ search:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
files:
selector: num_file
seeders:
@@ -193,4 +191,4 @@ search:
minimumseedtime:
# 48 hours (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 9.1.5 (custom)
# json UNIT3D 9.1.7 (custom)

View File

@@ -178,4 +178,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 9.1.6 (custom)
# json UNIT3D 9.1.7 (custom)

View File

@@ -194,4 +194,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -0,0 +1,131 @@
# CGPeers uses the Luminance code, which is based on gazelle
# ajax.php API additionally needs the auth=$authkey argument
# Because the API is e.g. missing poster images we use screen scraping instead of the generic gazelle based approach
---
id: cgpeers
name: CGPeers
description: "CGPeers is a Private Torrent Tracker for GRAPHICS SOFTWARE / TUTORIALS / ETC"
language: en-US
type: private
encoding: UTF-8
links:
- https://cgpeers.to/
legacylinks:
- https://www.cgpeers.com/
caps:
categorymappings:
- {id: 1, cat: PC/ISO, desc: "Applications"}
- {id: 8, cat: PC/ISO, desc: "Audio"}
- {id: 7, cat: Other, desc: "Game Development"}
- {id: 5, cat: Other, desc: "Materials"}
- {id: 6, cat: Other/Misc, desc: "Miscellaneous"}
- {id: 4, cat: Other, desc: "Models"}
- {id: 2, cat: PC/0day, desc: "Plugins"}
- {id: 3, cat: Other, desc: "Tutorials"}
- {id: 9, cat: Other, desc: "Web Development"}
modes:
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
login:
method: cookie
inputs:
cookie: "{{ .Config.cookie }}"
test:
path: index.php
selector: a[href^="/user.php?id="]
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
title: "{{ .Keywords }}"
order_by: "{{ .Config.sort }}"
order_way: "{{ .Config.type }}"
action: advanced
filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
rows:
selector: table#torrent_table > tbody > tr:has(a[href*="action=download"])
fields:
download:
selector: a[href^="/torrents.php?action=download&id="]
attribute: href
title:
selector: a[href^="/torrents.php?id="]
category:
selector: a[href*="filter_cat"]
attribute: href
filters:
- name: regexp
args: "(\\d+)]=1"
details:
selector: a[href^="/torrents.php?id="]
attribute: href
poster:
selector: td:nth-child(2) > script
filters:
- name: regexp
args: "src=(.*?)>"
- name: re_replace
args: ["[\\\\\"]", ""]
- name: re_replace
args: ["/static/common/noartwork/.+", ""]
files:
selector: td:nth-child(3)
date:
selector: td:nth-child(6) > span
attribute: title
# auto adjusted by site account profile
filters:
- name: dateparse
args: "MMM dd yyyy, HH:mm"
size:
selector: td:nth-child(7)
grabs:
selector: td:nth-child(8)
seeders:
selector: td:nth-child(9)
leechers:
selector: td:nth-child(10)
downloadvolumefactor:
case:
i.unlimited_leech: 0
i.sitewide_leech: 0
img[alt="Freeleech"]: 0
"*": 1
uploadvolumefactor:
case:
span.icon[title*="DoubleSeed"]: 2
img[alt="DoubleSeed"]: 2
"*": 1
# luminance

View File

@@ -193,4 +193,4 @@ search:
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -6,6 +6,8 @@ language: fr-FR
type: private
encoding: UTF-8
links:
- https://www.crazyspirits.ca/
legacylinks:
- https://www.crazyspirits.com/
caps:

View File

@@ -12,11 +12,11 @@ caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 7, cat: Audio/Audiobook, desc: "Audiobooks"}
- {id: 4, cat: Console, desc: "Games"}
- {id: 3, cat: Audio, desc: "Music"}
- {id: 5, cat: PC, desc: "Software"}
- {id: 6, cat: XXX, desc: "XXX"}
- {id: 7, cat: Other, desc: "Assorted"}
modes:
search: [q]
@@ -194,4 +194,4 @@ search:
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -124,7 +124,7 @@ search:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
rows:
selector: $
selector: data
fields:
categorydesc:

View File

@@ -224,4 +224,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 8.3.6
# json UNIT3D 9.1.1

View File

@@ -64,6 +64,7 @@ caps:
- {id: 346, cat: Books/EBook, desc: "Chemistry"}
- {id: 347, cat: Books/EBook, desc: "Medical"}
- {id: 348, cat: Books/EBook, desc: "Mathematics"}
- {id: 363, cat: Books/EBook, desc: "Sheet Music"}
# Tech/Computers
- {id: 331, cat: Books/EBook, desc: "Electronics"}
- {id: 336, cat: Books/EBook, desc: "Video Games"}
@@ -87,6 +88,7 @@ caps:
- {id: 349, cat: Books/EBook, desc: "Self Help"}
- {id: 351, cat: Books/EBook, desc: "Religion"}
- {id: 358, cat: Books/EBook, desc: "History"}
- {id: 362, cat: Books/EBook, desc: "Politics"}
# Military
- {id: 287, cat: Books/EBook, desc: "WW1"}
- {id: 288, cat: Books/EBook, desc: "WW2"}

View File

@@ -1,225 +0,0 @@
---
id: esharenet
name: eShareNet
description: "eShareNet is a Private Tracker for British MOVIE / TV"
language: en-GB
type: private
encoding: UTF-8
links:
- https://esharenet.eu/
caps:
categorymappings:
- {id: 2, cat: TV, desc: "Comedy"}
- {id: 4, cat: TV, desc: "Entertainment"}
- {id: 5, cat: TV, desc: "Game Shows"}
- {id: 6, cat: TV, desc: "Motoring"}
- {id: 7, cat: TV, desc: "News and Current Affairs"}
- {id: 8, cat: TV, desc: "Sci-Fi"}
- {id: 9, cat: TV, desc: "Talkshow"}
- {id: 10, cat: TV, desc: "Advertisements - Continuity"}
- {id: 11, cat: TV, desc: "Comedy-Drama"}
- {id: 12, cat: TV, desc: "Fantasy"}
- {id: 13, cat: TV, desc: "Home and Property"}
- {id: 14, cat: Movies, desc: "Movies"}
- {id: 15, cat: Other, desc: "Other"}
- {id: 16, cat: TV, desc: "Soaps"}
- {id: 17, cat: TV, desc: "Trains and Planes"}
- {id: 18, cat: TV, desc: "Animation"}
- {id: 19, cat: TV/Documentary, desc: "Documentaries"}
- {id: 20, cat: TV, desc: "Food and Cooking"}
- {id: 21, cat: TV, desc: "Horror"}
- {id: 22, cat: Audio, desc: "Music"}
- {id: 23, cat: Audio, desc: "Radio"}
- {id: 24, cat: TV/Sport, desc: "Sport"}
- {id: 25, cat: TV, desc: "True Crime"}
- {id: 26, cat: Audio/Audiobook, desc: "Audiobook and E-book"}
- {id: 27, cat: TV, desc: "Drama"}
- {id: 28, cat: TV, desc: "Kids"}
- {id: 29, cat: TV, desc: "Mystery and Crime Fiction"}
- {id: 30, cat: TV, desc: "Reality"}
- {id: 31, cat: TV, desc: "Subtitles - english subs"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
music-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: 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
login:
path: login
method: form
form: form[action$="/login"]
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: on
selectorinputs:
_token:
selector: input[name="_token"]
attribute: value
error:
- selector: div#ERROR_COPY
# test:
# path: /
# selector: a[href$="/logout"]
search:
paths:
- path: torrents/filter
inputs:
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
imdb: "{{ .Query.IMDBIDShort }}"
tvdb: "{{ .Query.TVDBID }}"
tmdb: "{{ .Query.TMDBID }}"
sorting: "{{ .Config.sort }}"
direction: "{{ .Config.type }}"
qty: 50
page: 0
view: list
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
# can search by genre but need range support. &genres[]=Action&genres[]=Comedy for Action and Comedy
rows:
selector: table > tbody > tr
fields:
category:
selector: a[href*="/categories/"]
attribute: href
filters:
- name: regexp
args: "/categories/(\\d+)"
title:
selector: a.view-torrent
download:
selector: a[href*="/download/"]
attribute: href
details:
selector: a.view-torrent
attribute: href
poster:
selector: div.torrent-poster img
attribute: src
filters:
- name: prepend
args: "https://images.weserv.nl/?url=" # for display on dashboard
- name: append
args: "&w=180&h=270" # for display on dashboard
- name: replace
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
genre:
selector: td:nth-last-child(8)
filters:
- name: replace
args: ["\n", ""]
- name: re_replace
args: ["(?i)(Science Fiction)", "Science_Fiction"]
- name: validate
args: "Action, Adventure, Animation, Biography, Comedy, Crime, Documentary, Drama, Family, Fantasy, Game-Show, History, Horror, Music, Musical, Mystery, News, Reality-TV, Romance, Science_Fiction, Sitcom, Sport, Talk-Show, Thriller, War, Western"
description:
text: "{{ .Result.genre }}"
size:
selector: td:nth-last-child(4)
seeders:
selector: td:nth-last-child(3)
leechers:
selector: td:nth-last-child(2)
grabs:
selector: td:nth-last-child(1)
imdbid:
selector: a[href*="imdb.com/title/tt"]
attribute: href
tmdbid:
selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
attribute: href
date:
selector: time
filters:
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
- name: re_replace
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"]
- name: re_replace
args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"]
- name: re_replace
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"]
- name: re_replace
args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"]
- name: re_replace
args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"]
- name: re_replace
args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"]
- name: re_replace
args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"]
- name: re_replace
args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"]
- name: re_replace
args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"]
- name: re_replace
args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"]
- name: re_replace
args: ["(?i) (ay)", "month"]
- name: re_replace
args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"]
- name: re_replace
args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"]
- name: re_replace
args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"]
- name: re_replace
args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"]
- name: re_replace
args: ["(?i) (an)", "year"]
- name: re_replace
args: ["(?i)(För |und)", ""] # Misc removals
- name: timeago
downloadvolumefactor:
case:
i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From BON Store
i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups
i[class*="fa-star text-bold"]: 0 # Freeleech From Token
i[class*="fa-coins text-bold"]: 0 # Freeleech From Token
i[class*="fa-globe text-blue"]: 0 # Global Freeleech
i[class*="fa-star text-gold"]: 0 # Freeleech
i[class*="fa-certificate text-pink"]: 0 # Featured Torrent
"*": 1
uploadvolumefactor:
case:
i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload
i[class*="fa-globe text-green"]: 2 # Global Double Upload
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
"*": 1
minimumratio:
text: 0.4
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# UNIT3D 2.5.0

View File

@@ -17,50 +17,53 @@ legacylinks:
caps:
categorymappings:
- {id: Movies, cat: Movies, desc: Movies}
- {id: Highres Movies, cat: Movies/HD, desc: Movies HD}
- {id: UltraHD, cat: Movies/UHD, desc: Movies UHD}
- {id: 3D Movies, cat: Movies/3D, desc: Movies 3D}
- {id: Bollywood, cat: Movies, desc: Bollywood}
- {id: Movie clips, cat: Movies, desc: Movies clips}
- {id: DVD, cat: Movies/DVD, desc: Movies DVD}
- {id: MP4, cat: Movies, desc: Movies MP4}
- {id: Dubbed Movies, cat: Movies/Foreign, desc: Movies Dubbed}
- {id: Other Movies, cat: Movies/Other, desc: Movies Other}
- {id: Documentary, cat: TV/Documentary, desc: Documentary}
- {id: TV, cat: TV, desc: TV}
- {id: MP3, cat: Audio/MP3, desc: Music MP3}
- {id: AAC, cat: Audio, desc: Music AAC}
- {id: Lossless, cat: Audio/Lossless, desc: Music Lossless}
- {id: Music videos, cat: Audio/Video, desc: Music Videos}
- {id: Other Music, cat: Audio/Other, desc: Music Other}
- {id: Radio Shows, cat: Audio/Other, desc: Music Radio}
- {id: Video, cat: XXX, desc: Adult / Porn}
- {id: "Adult / Porn", cat: XXX, desc: Adult / Porn}
- {id: Pictures, cat: XXX/ImageSet, desc: Adult Pictures}
- {id: Magazines, cat: XXX/Other, desc: Adult Magazines}
- {id: "Adult / Porn", cat: XXX, desc: "Adult / Porn"}
- {id: Android, cat: PC/Mobile-Android, desc: Software Android}
- {id: Anime, cat: TV/Anime, desc: Anime}
- {id: Audio books, cat: Audio/Audiobook, desc: Books Audiobook}
- {id: Bollywood, cat: Movies, desc: Bollywood}
- {id: Comics, cat: Books/Comics, desc: Books Comics}
- {id: DVD, cat: Movies/DVD, desc: Movies DVD}
- {id: Documentary, cat: TV/Documentary, desc: Documentary}
- {id: Dubbed Movies, cat: Movies/Foreign, desc: Movies Dubbed}
- {id: Ebooks, cat: Books/EBook, desc: Books Ebook}
- {id: English-translated, cat: TV/Anime, desc: Anime English-translated}
- {id: Games, cat: XXX/Other, desc: Adult Games}
- {id: Hentai, cat: XXX/Other, desc: Adult Hentai}
- {id: Windows, cat: PC, desc: Software Windows}
- {id: Android, cat: PC/Mobile-Android, desc: Software Android}
- {id: Mac, cat: PC/Mac, desc: Software Mac}
- {id: Highres Movies, cat: Movies/HD, desc: Movies HD}
- {id: Linux, cat: PC, desc: Software Linux}
- {id: PC Games, cat: PC/Games, desc: PC Games}
- {id: Lossless, cat: Audio/Lossless, desc: Music Lossless}
- {id: "Manga [English-translated]", cat: Books/Comics, desc: "Manga [English-translated]"}
- {id: MP3, cat: Audio/MP3, desc: Music MP3}
- {id: MP4, cat: Movies, desc: Movies MP4}
- {id: Mac, cat: PC/Mac, desc: Software Mac}
- {id: Magazines, cat: XXX/Other, desc: Adult Magazines}
- {id: Movie clips, cat: Movies, desc: Movies clips}
- {id: Movies, cat: Movies, desc: Movies}
- {id: Music videos, cat: Audio/Video, desc: Music Videos}
- {id: NDS, cat: Console/NDS, desc: Games NDS}
- {id: Other Applications, cat: PC, desc: Other Applications}
- {id: Other Games, cat: Console/Other, desc: Games Other}
- {id: Other Movies, cat: Movies/Other, desc: Movies Other}
- {id: Other Music, cat: Audio/Other, desc: Music Other}
- {id: Other, cat: Other/Misc, desc: Other}
- {id: PC Games, cat: PC/Games, desc: PC Games}
- {id: PS3, cat: Console/PS3, desc: Games PS3}
- {id: PS4, cat: Console/PS4, desc: Games PS4}
- {id: PSP, cat: Console/PSP, desc: Games PSP}
- {id: Wii, cat: Console/Wii, desc: Games Wii}
- {id: Xbox360, cat: Console/XBox 360, desc: Games Xbox360}
- {id: Pictures, cat: XXX/ImageSet, desc: Adult Pictures}
- {id: Radio Shows, cat: Audio/Other, desc: Music Radio}
- {id: Raw, cat: TV/Anime, desc: Anime Raw}
- {id: Subs, cat: TV/Anime, desc: Anime Subs}
- {id: Switch, cat: Console/Other, desc: Games Switch}
- {id: Other Games, cat: Console/Other, desc: Games Other}
- {id: English-translated, cat: TV/Anime, desc: Anime English-translated}
- {id: Anime, cat: TV/Anime, desc: Anime}
- {id: Audio books, cat: Audio/Audiobook, desc: Books Audiobook}
- {id: Comics, cat: Books/Comics, desc: Books Comics}
- {id: Ebooks, cat: Books/EBook, desc: Books Ebook}
- {id: Other, cat: Other/Misc, desc: Other}
- {id: Other Applications, cat: PC, desc: Other Applications}
- {id: TV, cat: TV, desc: TV}
- {id: UltraHD, cat: Movies/UHD, desc: Movies UHD}
- {id: Video, cat: XXX, desc: Adult / Porn}
- {id: Wii, cat: Console/Wii, desc: Games Wii}
- {id: Windows, cat: PC, desc: Software Windows}
- {id: Xbox360, cat: Console/XBox 360, desc: Games Xbox360}
modes:
search: [q]
@@ -94,7 +97,7 @@ search:
args: ["in ", ""]
- name: trim
title:
selector: a[href^="/torrent/"]
selector: a[href^="/torrent/"]:not([href$="comments"])
details:
selector: a[href^="/torrent/"]
attribute: href

View File

@@ -22,7 +22,11 @@ legacylinks:
caps:
categorymappings:
- {id: "/anime/", cat: TV/Anime, desc: Anime}
- {id: "/anime//anime/audio-lossless/", cat: Audio/Lossless, desc: "Anime Audio Lossless"}
- {id: "/anime//anime/english-translated/", cat: TV/Anime, desc: "Anime English Translated"}
- {id: "/anime//anime/raw", cat: TV/Anime, desc: Anime Raw}
- {id: "/anime//anime/subs/", cat: TV/Anime, desc: Anime Subs}
- {id: "/anime/raw", cat: TV/Anime, desc: Anime Raw}
- {id: "/applications/", cat: PC, desc: Apps}
- {id: "/applications//applications/android/", cat: PC/Mobile-Android, desc: "Apps Android"}
- {id: "/applications//applications/ios/", cat: PC/Mobile-iOS, desc: "Apps iOS"}
@@ -35,6 +39,7 @@ caps:
- {id: "/books//books/comics/", cat: Books/Comics, desc: "Books Comics"}
- {id: "/books//books/ebooks/", cat: Books/EBook, desc: "Books Ebooks"}
- {id: "/games/", cat: PC/Games, desc: Games}
- {id: "/games//games/mac/", cat: PC/Mac, desc: "Games Mac"}
- {id: "/games//games/nds/", cat: Console/NDS, desc: "Games NDS"}
- {id: "/games//games/other-games/", cat: Console/Other, desc: "Games Other"}
- {id: "/games//games/pc-games/", cat: PC/Games, desc: "Games PC"}
@@ -44,7 +49,6 @@ caps:
- {id: "/games//games/switch/", cat: Console/Other, desc: "Games Switch"}
- {id: "/games//games/wii/", cat: Console/Wii, desc: "Games Wii"}
- {id: "/games//games/xbox360/", cat: Console/XBox 360, desc: "Games Xbox360"}
- {id: "/games//games/mac/", cat: PC/Mac, desc: "Games Mac"}
- {id: "/movies/", cat: Movies, desc: Movies}
- {id: "/movies//movies/3d-movies/", cat: Movies/3D, desc: "Movies 3D"}
- {id: "/movies//movies/bollywood/", cat: Movies, desc: "Movies Bollywood"}
@@ -52,11 +56,11 @@ caps:
- {id: "/movies//movies/dubbed-movies/", cat: Movies, desc: "Movies Dubbed"}
- {id: "/movies//movies/dvd/", cat: Movies/DVD, desc: "Movies DVD"}
- {id: "/movies//movies/highres-movies/", cat: Movies/HD, desc: "Movies Highres"}
- {id: "/movies//movies/movie-clips/", cat: Movies/Other, desc: "Movies Movie clips"}
- {id: "/movies//movies/mp4/", cat: Movies, desc: "Movies MP4"}
- {id: "/movies//movies/music-videos/", cat: Audio/Video, desc: "Movies Music videos"}
- {id: "/movies//movies/other-movies/", cat: Movies, desc: "Movies Other Movies"}
- {id: "/movies//movies/ultrahd/", cat: Movies/UHD, desc: "Movies UltraHD"}
- {id: "/movies//movies/music-videos/", cat: Audio/Video, desc: "Movies Music videos"}
- {id: "/movies//movies/movie-clips/", cat: Movies/Other, desc: "Movies Movie clips"}
- {id: "/music/", cat: Audio, desc: Music}
- {id: "/music//music/aac/", cat: Audio, desc: "Music AAC"}
- {id: "/music//music/lossless/", cat: Audio/Lossless, desc: "Music Lossless"}
@@ -65,13 +69,13 @@ caps:
- {id: "/music//music/radio-shows/", cat: Audio, desc: "Music Radio Shows"}
- {id: "/other/", cat: Other, desc: Other}
- {id: "/tv/", cat: TV, desc: TV}
- {id: "/video/", cat: XXX, desc: "XXX Video"}
- {id: "/xxx/", cat: XXX, desc: XXX}
- {id: "/xxx//xxx/games/", cat: XXX/Other, desc: "XXX Games"}
- {id: "/xxx//xxx/hentai/", cat: XXX/Other, desc: "XXX Hentai"}
- {id: "/xxx//xxx/magazines/", cat: XXX/Other, desc: "XXX Magazines"}
- {id: "/xxx//xxx/pictures/", cat: XXX/ImageSet, desc: "XXX Pictures"}
- {id: "/xxx//xxx/video/", cat: XXX, desc: "XXX Video"}
- {id: "/video/", cat: XXX, desc: "XXX Video"}
modes:
search: [q]
@@ -110,7 +114,7 @@ search:
page: 2
followredirect: true
inputs:
q: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
q: "{{ .Keywords }}"
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
# 0=last 24 hours, 1=last 3 days, 2=last week, 3=last 2 weeks, 4=last month

View File

@@ -26,6 +26,7 @@ caps:
- {id: 17, cat: TV/Sport, desc: "F2 Championship"}
- {id: 18, cat: TV/Sport, desc: "F3 Championship"}
- {id: 19, cat: TV/Sport, desc: "FE Championship"}
- {id: 20, cat: TV/Sport, desc: "Freeleech"}
modes:
search: [q]

View File

@@ -133,8 +133,6 @@ search:
selector: td:nth-child(5) > span
attribute: title
# auto adjusted by site account profile
optional: true
default: "20 years ago" # some torrents have "Never" date
filters:
- name: dateparse
args: "MMM dd yyyy, HH:mm"
@@ -148,12 +146,14 @@ search:
selector: td:nth-child(9)
downloadvolumefactor:
case:
"img[alt=\"Freeleech\"]": 0
i.unlimited_leech: 0
i.sitewide_leech: 0
img[alt="Freeleech"]: 0
"*": 1
uploadvolumefactor:
case:
span.icon[title*="DoubleSeed"]: 2
"img[alt=\"DoubleSeed\"]": 2
img[alt="DoubleSeed"]: 2
"*": 1
minimumratio:
text: 0.5

View File

@@ -125,8 +125,6 @@ search:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
poster:
selector: meta.poster
filters:
@@ -198,4 +196,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 9.1.5
# json UNIT3D 9.1.7

View File

@@ -7,7 +7,7 @@ type: public
encoding: UTF-8
requestDelay: 2
links:
- https://idope.se/
- https://idope.me/
legacylinks:
- https://idope.black-mirror.xyz/
- https://idope.unblocked.casa/
@@ -19,6 +19,7 @@ legacylinks:
- https://idope.uk-unblock.pro/
- https://idope.unblocked.rest/
- https://idope.unblocked.monster/
- https://idope.se/
caps:
categorymappings:

View File

@@ -208,4 +208,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 9.1.6 (custom)
# json UNIT3D 9.1.7 (custom)

View File

@@ -1,108 +0,0 @@
---
id: itorrent
name: iTorrent
description: "iTorrent is a HUNGARIAN Public site"
language: hu-HU
type: public
encoding: UTF-8
links:
- https://itorrent.ws/
legacylinks:
- https://itorrent.hu/
caps:
categorymappings:
- {id: app, cat: PC, desc: Apps}
- {id: book, cat: Books, desc: Books}
- {id: game, cat: PC/Games, desc: Games}
- {id: movies, cat: Movies, desc: Movies}
- {id: music, cat: Audio, desc: Music}
- {id: heart, cat: XXX, desc: XXX}
- {id: tv, cat: TV, desc: TV}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: sort
type: select
label: Sort requested from site
default: date_added
options:
date_added: created
seeders: seeders
size: size
title: title
- name: type
type: select
label: Order requested from site
default: DESC
options:
DESC: desc
ASC: asc
download:
selectors:
- selector: a[href^="/torrentfiles/"]
attribute: href
search:
paths:
- path: "torrentek/title/{{ .Keywords }}/order/{{ .Config.sort }}/by/{{ .Config.type }}/"
rows:
selector: tr.gradeX
filters:
- name: andmatch
fields:
category:
selector: td:nth-child(1) i
attribute: class
filters:
- name: replace
args: ["zqf zqf-", ""]
title:
selector: td:nth-child(2) a
details:
selector: td:nth-child(2) a
attribute: href
download:
selector: td:nth-child(2) a
attribute: href
date_time:
selector: td:nth-child(4) span
optional: true
attribute: title
filters:
- name: append
args: " +01:00" # CET
- name: dateparse
args: "yyyy.MM.dd HH:mm zzz"
date_year:
selector: td:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +01:00" # CET
- name: dateparse
args: "yyyy.MM.dd zzz"
date:
text: "{{ if or .Result.date_year .Result.date_time }}{{ or .Result.date_year .Result.date_time }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(5)
grabs:
selector: td:nth-child(6)
seeders:
selector: td:nth-child(7)
leechers:
selector: td:nth-child(8)
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -24,84 +24,87 @@ legacylinks:
caps:
categorymappings:
# category naming is inconsistent with root cat being left out on some results, hence the duplicate entries with/without root
- {id: Anime, cat: TV/Anime, desc: Anime}
- {id: AnimeEnglish-translated, cat: TV/Anime, desc: "Anime English-translated"}
- {id: English-translated, cat: TV/Anime, desc: "Anime English-translated"}
- {id: Apps, cat: PC, desc: Apps}
- {id: AppsWindows, cat: PC/0day, desc: "Apps Windows"}
- {id: Windows, cat: PC/0day, desc: "Apps Windows"}
- {id: AppsMac, cat: PC/Mac, desc: "Apps Mac"}
- {id: Mac, cat: PC/Mac, desc: "Apps Mac"}
- {id: AppsAndroid, cat: PC/Mobile-Android, desc: "Apps Android"}
- {id: Android, cat: PC/Mobile-Android, desc: "Apps Android"}
- {id: AppsLinux, cat: PC, desc: "Apps Linux"}
- {id: Linux, cat: PC, desc: "Apps Linux"}
- {id: Books, cat: Books, desc: Books}
- {id: BooksAudiobooks, cat: Audio/Audiobook, desc: "Audio books"}
- {id: Audiobooks, cat: Audio/Audiobook, desc: "Audio books"}
- {id: BooksComics, cat: Books/Comics, desc: Comics}
- {id: Comics, cat: Books/Comics, desc: Comics}
- {id: BooksEbooks, cat: Books/EBook, desc: Ebooks}
- {id: EBooks, cat: Books/EBook, desc: Ebooks}
- {id: Games, cat: Console, desc: "Games"}
- {id: PCGames, cat: PC/Games, desc: "Games PC"}
- {id: GamesPCGames, cat: PC/Games, desc: "Games PC"}
- {id: GamesOtherGames, cat: PC/Games, desc: "Games Other"}
- {id: OtherGames, cat: PC/Games, desc: "Games Other"}
- {id: GamesNDS, cat: Console/NDS, desc: NDS}
- {id: NDS, cat: Console/NDS, desc: NDS}
- {id: GamesPS3, cat: Console/PS3, desc: PS3}
- {id: PS3, cat: Console/PS3, desc: PS3}
- {id: GamesPS4, cat: Console/PS4, desc: PS4}
- {id: PS4, cat: Console/PS4, desc: PS4}
- {id: GamesPSP, cat: Console/PSP, desc: PSP}
- {id: PSP, cat: Console/PSP, desc: PSP}
- {id: GamesXbox360, cat: Console/XBox 360, desc: Xbox360}
- {id: Xbox360, cat: Console/XBox 360, desc: Xbox360}
- {id: GamesWii, cat: Console/Wii, desc: Wii}
- {id: Wii, cat: Console/Wii, desc: Wii}
- {id: Movies, cat: Movies, desc: Movies}
- {id: Movies3DMovies, cat: Movies/3D, desc: "Movies 3D Movies"}
- {id: 3DMovies, cat: Movies/3D, desc: "Movies 3D Movies"}
- {id: MoviesBollywood, cat: Movies, desc: "Movies Bollywood"}
- {id: Bollywood, cat: Movies, desc: "Movies Bollywood"}
- {id: MoviesDocumentary, cat: Movies/Other, desc: "Movies Documentary"}
- {id: Documentary, cat: Movies/Other, desc: "Movies Documentary"}
- {id: MoviesDVD, cat: Movies/DVD, desc: "Movies DVD"}
- {id: DVD, cat: Movies/DVD, desc: "Movies DVD"}
- {id: MoviesMP4, cat: Movies/HD, desc: "Movies MP4"}
- {id: MP4, cat: Movies/HD, desc: "Movies MP4"}
- {id: MoviesHighresMovies, cat: Movies/HD, desc: "Movies Highres"}
- {id: HighresMovies, cat: Movies/HD, desc: "Movies Highres"}
- {id: MoviesDubbedMovies, cat: Movies, desc: "Movies Dubbed"}
- {id: DubbedMovies, cat: Movies, desc: "Movies Dubbed"}
- {id: MoviesUltraHD, cat: Movies/UHD, desc: "Movies UltraHD"}
- {id: UltraHD, cat: Movies/UHD, desc: "Movies UltraHD"}
- {id: MoviesOtherMovies, cat: Movies/Other, desc: "Movies Other"}
- {id: OtherMovies, cat: Movies/Other, desc: "Movies Other"}
- {id: Music, cat: Audio, desc: Music}
- {id: MusicLossless, cat: Audio/Lossless, desc: "Music Lossless"}
- {id: Lossless, cat: Audio/Lossless, desc: "Music Lossless"}
- {id: MusicMP3, cat: Audio/MP3, desc: "Music MP3"}
- {id: MP3, cat: Audio/MP3, desc: "Music MP3"}
- {id: MoviesMusicvideos, cat: Audio/Video, desc: "Movies Music videos"}
- {id: MusicMusicvideos, cat: Audio/Video, desc: "Music videos"}
- {id: Musicvideos, cat: Audio/Video, desc: "Music videos"}
- {id: MusicOthermusic, cat: Audio/Other, desc: "Music Other"}
- {id: Othermusic, cat: Audio/Other, desc: "Music Other"}
- {id: Other, cat: Other, desc: Other}
- {id: Movieclips, cat: Other, desc: "Movie clips"}
- {id: TV, cat: TV, desc: TV}
- {id: AdultVideo, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: Adult, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: XXXVideo, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: Video, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: AdultGames, cat: XXX/Other, desc: "Adult Games"}
- {id: AdultHentai, cat: XXX/Other, desc: "Adult Hentai"}
- {id: AdultMagazines, cat: XXX/Other, desc: "Adult Magazines"}
- {id: XXXGames, cat: XXX/Other, desc: "Adult Games"}
- {id: AdultPictures, cat: XXX/ImageSet, desc: "Adult Pictures"}
- {id: AdultVideo, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: Android, cat: PC/Mobile-Android, desc: "Apps Android"}
- {id: Anime, cat: TV/Anime, desc: Anime}
- {id: AnimeAudioLossless, cat: Audio/Lossless, desc: "Anime Audio Lossless"}
- {id: AnimeEnglish-translated, cat: TV/Anime, desc: "Anime English-translated"}
- {id: AnimeRaw, cat: TV/Anime, desc: Anime Raw}
- {id: AnimeSubs, cat: TV/Anime, desc: Anime Subs}
- {id: Apps, cat: PC, desc: Apps}
- {id: AppsAndroid, cat: PC/Mobile-Android, desc: "Apps Android"}
- {id: AppsLinux, cat: PC, desc: "Apps Linux"}
- {id: AppsMac, cat: PC/Mac, desc: "Apps Mac"}
- {id: AppsWindows, cat: PC/0day, desc: "Apps Windows"}
- {id: Audiobooks, cat: Audio/Audiobook, desc: "Audio books"}
- {id: Bollywood, cat: Movies, desc: "Movies Bollywood"}
- {id: Books, cat: Books, desc: Books}
- {id: BooksAudiobooks, cat: Audio/Audiobook, desc: "Audio books"}
- {id: BooksComics, cat: Books/Comics, desc: Comics}
- {id: BooksEbooks, cat: Books/EBook, desc: Ebooks}
- {id: Comics, cat: Books/Comics, desc: Comics}
- {id: DVD, cat: Movies/DVD, desc: "Movies DVD"}
- {id: Documentary, cat: Movies/Other, desc: "Movies Documentary"}
- {id: DubbedMovies, cat: Movies, desc: "Movies Dubbed"}
- {id: EBooks, cat: Books/EBook, desc: Ebooks}
- {id: English-translated, cat: TV/Anime, desc: "Anime English-translated"}
- {id: Games, cat: Console, desc: "Games"}
- {id: GamesNDS, cat: Console/NDS, desc: NDS}
- {id: GamesOtherGames, cat: PC/Games, desc: "Games Other"}
- {id: GamesPCGames, cat: PC/Games, desc: "Games PC"}
- {id: GamesPS3, cat: Console/PS3, desc: PS3}
- {id: GamesPS4, cat: Console/PS4, desc: PS4}
- {id: GamesPSP, cat: Console/PSP, desc: PSP}
- {id: GamesWii, cat: Console/Wii, desc: Wii}
- {id: GamesXbox360, cat: Console/XBox 360, desc: Xbox360}
- {id: HighresMovies, cat: Movies/HD, desc: "Movies Highres"}
- {id: Linux, cat: PC, desc: "Apps Linux"}
- {id: Lossless, cat: Audio/Lossless, desc: "Music Lossless"}
- {id: MP3, cat: Audio/MP3, desc: "Music MP3"}
- {id: MP4, cat: Movies/HD, desc: "Movies MP4"}
- {id: Mac, cat: PC/Mac, desc: "Apps Mac"}
- {id: Movieclips, cat: Other, desc: "Movie clips"}
- {id: Movies, cat: Movies, desc: Movies}
- {id: Movies3DMovies, cat: Movies/3D, desc: "Movies 3D Movies"}
- {id: MoviesBollywood, cat: Movies, desc: "Movies Bollywood"}
- {id: MoviesDVD, cat: Movies/DVD, desc: "Movies DVD"}
- {id: MoviesDocumentary, cat: Movies/Other, desc: "Movies Documentary"}
- {id: MoviesDubbedMovies, cat: Movies, desc: "Movies Dubbed"}
- {id: MoviesHighresMovies, cat: Movies/HD, desc: "Movies Highres"}
- {id: MoviesMP4, cat: Movies/HD, desc: "Movies MP4"}
- {id: MoviesMusicvideos, cat: Audio/Video, desc: "Movies Music videos"}
- {id: MoviesOtherMovies, cat: Movies/Other, desc: "Movies Other"}
- {id: MoviesUltraHD, cat: Movies/UHD, desc: "Movies UltraHD"}
- {id: Music, cat: Audio, desc: Music}
- {id: MusicLossless, cat: Audio/Lossless, desc: "Music Lossless"}
- {id: MusicMP3, cat: Audio/MP3, desc: "Music MP3"}
- {id: MusicMusicvideos, cat: Audio/Video, desc: "Music videos"}
- {id: MusicOthermusic, cat: Audio/Other, desc: "Music Other"}
- {id: Musicvideos, cat: Audio/Video, desc: "Music videos"}
- {id: NDS, cat: Console/NDS, desc: NDS}
- {id: Other, cat: Other, desc: Other}
- {id: OtherGames, cat: PC/Games, desc: "Games Other"}
- {id: OtherMovies, cat: Movies/Other, desc: "Movies Other"}
- {id: Othermusic, cat: Audio/Other, desc: "Music Other"}
- {id: PCGames, cat: PC/Games, desc: "Games PC"}
- {id: PS3, cat: Console/PS3, desc: PS3}
- {id: PS4, cat: Console/PS4, desc: PS4}
- {id: PSP, cat: Console/PSP, desc: PSP}
- {id: TV, cat: TV, desc: TV}
- {id: UltraHD, cat: Movies/UHD, desc: "Movies UltraHD"}
- {id: Video, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: Wii, cat: Console/Wii, desc: Wii}
- {id: Windows, cat: PC/0day, desc: "Apps Windows"}
- {id: XXXGames, cat: XXX/Other, desc: "Adult Games"}
- {id: XXXPictures, cat: XXX/ImageSet, desc: "Adult Pictures"}
- {id: XXXVideo, cat: XXX/WEB-DL, desc: "Adult Video"}
- {id: Xbox360, cat: Console/XBox 360, desc: Xbox360}
modes:
search: [q]

View File

@@ -16,7 +16,7 @@ links:
- https://kickasst.net/
- https://kickasstorrents.id/
- https://thekat.cc/
- https://kickasshydra.dev/
- https://kattracker.com/
legacylinks:
- https://kickass.gg/
- https://katcr.io/
@@ -29,6 +29,7 @@ legacylinks:
- https://kickasstorrents.unblockninja.com/ # currently kickasstorrents-to proxy
- https://kickass-kat.com/
- https://kickass.sh/
- https://kickasshydra.dev/
caps:
categorymappings:

View File

@@ -9,10 +9,10 @@ encoding: UTF-8
links:
- https://magnetcatcat.com/
- https://clmclm.com/
- https://www.8800492.xyz/
- https://www.8800493.xyz/
- https://www.8800494.xyz/
- https://www.8800490.xyz/
- https://www.8800498.xyz/
- https://www.8800497.xyz/
- https://www.8800499.xyz/
- https://www.8800500.xyz/
legacylinks:
- https://www.8800460.xyz/
- https://www.8800473.xyz/
@@ -29,6 +29,10 @@ legacylinks:
- https://www.8800483.xyz
- https://www.8800486.xyz
- https://www.8800487.xyz
- https://www.8800492.xyz/
- https://www.8800493.xyz/
- https://www.8800494.xyz/
- https://www.8800490.xyz/
caps:
categorymappings:

View File

@@ -67,6 +67,10 @@ settings:
label: User-Agent
- name: info_useragent
type: info_useragent
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrentek oldalanként:</b> setting to <b>100</b> on your account profile.
- name: info_activity
type: info
label: Account Inactivity
@@ -87,10 +91,6 @@ search:
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
inputs:
tipus: 1
- path: letoltes.php
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
inputs:
tipus: 2
- path: xxx.php
categories: [70, 39, 57]
inputs:

View File

@@ -115,8 +115,6 @@ search:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
poster:
selector: meta.poster
filters:
@@ -187,4 +185,4 @@ search:
minimumseedtime:
# 1 day (as seconds = 1 x 24 x 60 x 60)
text: 86400
# json UNIT3D 9.1.2
# json UNIT3D 9.1.7

View File

@@ -10,7 +10,7 @@ type: public
encoding: UTF-8
# to fetch current domain use https://www.rantop.my/
links:
- https://www.nortorrent6.com/
- https://www.nortorrent.net/
legacylinks:
# latest domains list
- https://www.rantop.my/
@@ -26,7 +26,6 @@ legacylinks:
- https://torrent9.news/
- https://www.site-torrent.com/
# actual legacylinks
- https://www.torrent9.gd/
- https://www.torrent9.ing/
- https://www.torrent9.run/
- https://www.torrent9.cv/
@@ -41,6 +40,7 @@ legacylinks:
- https://www.nortorrent3.com/
- https://www.nortorrent4.com/
- https://www.nortorrent5.com/
- https://www.nortorrent6.com/
caps:
categorymappings:

View File

@@ -193,4 +193,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -10,7 +10,7 @@ type: public
encoding: UTF-8
# to fetch current domain use https://www.rantop.my/
links:
- https://www.oxtorrent8.com/
- https://www.oxtorrent.fyi/
- https://www.zone-torrent.me/
- https://www.mega-torrent.net/
legacylinks:
@@ -28,8 +28,6 @@ legacylinks:
- https://oxtorrent.blog/
- https://www.site-torrent.com/
# actual legacylinks
- https://www.oxtorrent.cv/
- https://www.torrent911.ke/
- https://oxtorrent.proxyninja.org/
- https://www-oxtorrent.com/
- https://www.oxtorrent.ke/
@@ -49,6 +47,8 @@ legacylinks:
- https://www.oxtorrent7.com/
- https://www.mega-torrent6.com/
- https://www.zone-torrent3.com/
- https://www.oxtorrent8.com/
- https://www.oxtorrent.diy/
caps:
categorymappings:

View File

@@ -42,7 +42,7 @@ caps:
- {id: 30, cat: TV, desc: "TV Seriale Bajki"}
- {id: 9, cat: TV/HD, desc: "TV Seriale HD"}
- {id: 22, cat: TV/SD, desc: "TV Seriale SD"}
- {id: 7, cat: XXX, desc: "XXX 18+"}
- {id: 38, cat: TV, desc: "Reality TV"}
modes:
search: [q]

View File

@@ -123,8 +123,6 @@ search:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
poster:
selector: meta.poster
filters:
@@ -199,4 +197,4 @@ search:
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 9.0.6
# json UNIT3D 9.1.7

View File

@@ -9,38 +9,38 @@ type: semi-private
encoding: windows-1251
followredirect: true
links:
- https://sep08.rudub.bet/
- https://sep28.rudub.bet/
legacylinks:
- https://aug24.rudub.buzz/
- http://aug25.rudub.buzz/
- https://aug25.rudub.buzz/
- http://aug26.rudub.buzz/
- https://aug26.rudub.buzz/
- http://aug27.rudub.buzz/
- https://aug27.rudub.buzz/
- http://aug28.rudub.buzz/
- https://aug28.rudub.buzz/
- http://aug29.rudub.buzz/
- https://aug29.rudub.buzz/
- http://aug30.rudub.buzz/
- https://aug30.rudub.buzz/
- http://aug31.rudub.buzz/
- https://aug31.rudub.buzz/
- http://sep01.rudub.buzz/
- https://sep01.rudub.buzz/
- http://sep02.rudub.buzz/
- https://sep02.rudub.buzz/
- http://sep03.rudub.bet/
- https://sep03.rudub.bet/
- http://sep04.rudub.bet/
- https://sep04.rudub.bet/
- http://sep05.rudub.bet/
- https://sep05.rudub.bet/
- http://sep06.rudub.bet/
- https://sep06.rudub.bet/
- http://sep07.rudub.bet/
- https://sep07.rudub.bet/
- http://sep08.rudub.bet/
- https://sep13.rudub.bet/
- http://sep14.rudub.bet/
- https://sep14.rudub.bet/
- http://sep15.rudub.bet/
- https://sep15.rudub.bet/
- http://sep16.rudub.bet/
- https://sep16.rudub.bet/
- http://sep17.rudub.bet/
- https://sep17.rudub.bet/
- http://sep18.rudub.bet/
- https://sep18.rudub.bet/
- http://sep19.rudub.bet/
- https://sep19.rudub.bet/
- http://sep20.rudub.bet/
- https://sep20.rudub.bet/
- http://sep21.rudub.bet/
- https://sep21.rudub.bet/
- http://sep22.rudub.bet/
- https://sep22.rudub.bet/
- http://sep23.rudub.bet/
- https://sep23.rudub.bet/
- http://sep24.rudub.bet/
- https://sep24.rudub.bet/
- http://sep25.rudub.bet/
- https://sep25.rudub.bet/
- http://sep26.rudub.bet/
- https://sep26.rudub.bet/
- http://sep27.rudub.bet/
- https://sep27.rudub.bet/
- http://sep28.rudub.bet/
caps:
categorymappings:
- {id: 1, cat: TV, desc: "TV"}

View File

@@ -0,0 +1,195 @@
# SexTorrent uses the Luminance code, which is based on gazelle
# ajax.php API additionally needs the auth=$authkey argument
# Because the API is e.g. missing poster images we use screen scraping instead of the generic gazelle based approach
---
id: sextorrent
name: SexTorrent
description: "SexTorrent is a Private Torrent Tracker for 3X"
language: en-US
type: private
encoding: UTF-8
links:
- https://sextorrent.eu/
caps:
categorymappings:
- {id: 63, cat: XXX, desc: "Hairy"}
- {id: 64, cat: XXX, desc: "Voyeur"}
- {id: 30, cat: XXX, desc: "Amateur"}
- {id: 29, cat: XXX, desc: "Anal"}
- {id: 27, cat: XXX, desc: "Asian"}
- {id: 26, cat: XXX, desc: "BBW"}
- {id: 44, cat: XXX, desc: "BDSM"}
- {id: 25, cat: XXX, desc: "Big Ass"}
- {id: 24, cat: XXX, desc: "Big Tits"}
- {id: 34, cat: XXX, desc: "Black"}
- {id: 66, cat: XXX, desc: "Busty"}
- {id: 23, cat: XXX, desc: "Classic"}
- {id: 33, cat: XXX, desc: "Creampie"}
- {id: 22, cat: XXX, desc: "Cumshot"}
- {id: 62, cat: XXX/DVD, desc: "DVD-R"}
- {id: 21, cat: XXX, desc: "Fetish"}
- {id: 19, cat: XXX, desc: "Gay / Bi"}
- {id: 18, cat: XXX, desc: "Hardcore"}
- {id: 32, cat: XXX, desc: "HD porn"}
- {id: 28, cat: XXX, desc: "Hentai / 3D"}
- {id: 17, cat: XXX, desc: "Homemade"}
- {id: 38, cat: XXX, desc: "Interracial"}
- {id: 48, cat: XXX, desc: "Latina"}
- {id: 16, cat: XXX, desc: "Lesbian"}
- {id: 61, cat: XXX, desc: "Lingerie"}
- {id: 56, cat: XXX/Other, desc: "Magazines"}
- {id: 60, cat: XXX/Other, desc: "Manga / Comic"}
- {id: 15, cat: XXX, desc: "Masturbation"}
- {id: 14, cat: XXX, desc: "Mature"}
- {id: 13, cat: XXX/Pack, desc: "Megapack"}
- {id: 55, cat: XXX, desc: "Milf"}
- {id: 49, cat: XXX, desc: "Natural Tits"}
- {id: 12, cat: XXX, desc: "Oral"}
- {id: 20, cat: XXX, desc: "Orgia / Gang Bang"}
- {id: 42, cat: XXX/Other, desc: "Other"}
- {id: 50, cat: XXX, desc: "Parody"}
- {id: 41, cat: XXX/WEB-DL, desc: "Paysite"}
- {id: 11, cat: XXX/ImageSet, desc: "Picture set"}
- {id: 40, cat: XXX, desc: "Piss"}
- {id: 43, cat: XXX/Other, desc: "Porn Music Videos"}
- {id: 67, cat: XXX, desc: "POV"}
- {id: 45, cat: XXX, desc: "Pregnant / Preggo"}
- {id: 57, cat: XXX, desc: "Scat/Puke"}
- {id: 10, cat: XXX, desc: "Shemale / TS"}
- {id: 51, cat: XXX/WEB-DL, desc: "Siterip"}
- {id: 52, cat: XXX, desc: "Softcore"}
- {id: 53, cat: XXX, desc: "Squirt"}
- {id: 9, cat: XXX, desc: "Straight"}
- {id: 8, cat: XXX, desc: "Tini"}
- {id: 65, cat: XXX, desc: "Virtual Reality"}
- {id: 7, cat: XXX/Other, desc: "XXX Games / Program"}
modes:
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: 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: "After 4 months of no activity (no login) your account will be disabled."
login:
path: login
method: form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
cinfo: "2550|1350|24|-60"
keeplogged: 1
selectorinputs:
token:
selector: input[name="token"]
attribute: value
error:
# invalid credentials error is added by JS, this is the IP ban error
- selector: div.thin > div > h2
test:
path: index.php
selector: "#nav_userinfo"
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
title: "{{ .Keywords }}"
order_by: "{{ .Config.sort }}"
order_way: "{{ .Config.type }}"
action: advanced
filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
rows:
selector: table#torrent_table > tbody > tr[class^="torrent row"]:has(a[href*="action=download"])
fields:
download:
selector: a[href^="/torrents.php?action=download&id="]
attribute: href
description_tags:
selector: div.tags
description:
case:
span.icon[title*="okay"]: "Verified: {{ .Result.description_tags }}"
"*": "Unverified: {{ .Result.description_tags }}"
title:
selector: a[href^="/torrents.php?id="]
category:
selector: a[href*="filter_cat"]
attribute: href
filters:
- name: regexp
args: "(\\d+)]=1"
details:
selector: a[href^="/torrents.php?id="]
attribute: href
poster:
selector: td:nth-child(2) > script
filters:
- name: regexp
args: "src=(.*?)>"
- name: re_replace
args: ["[\\\\\"]", ""]
- name: replace
args: ["/static/common/noartwork/noimage.png", ""]
files:
selector: td:nth-child(3)
date:
selector: td:nth-child(5) > span
attribute: title
# auto adjusted by site account profile
filters:
- name: dateparse
args: "MMM dd yyyy, HH:mm"
size:
selector: td:nth-child(6)
grabs:
selector: td:nth-child(7)
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9)
downloadvolumefactor:
case:
i.unlimited_leech: 0
i.sitewide_leech: 0
img[alt="Freeleech"]: 0
"*": 1
uploadvolumefactor:
case:
span.icon[title*="DoubleSeed"]: 2
img[alt="DoubleSeed"]: 2
"*": 1
minimumratio:
text: 0.5
# luminance

View File

@@ -105,6 +105,10 @@ caps:
book-search: [q]
settings:
- name: info_novpn
type: info
label: VPN Not Allowed
default: "You may be banned if you use a VPN, proxy, TOR or data center to access the TeamOS web site. This mean all brands of VPNS, no exceptions!!"
# using cookie method because login page is dynamically generated using JS #5572
- name: cookie
type: text

View File

@@ -60,7 +60,8 @@ caps:
- {id: 130, cat: Books, desc: "E-Books FSK 18"}
- {id: 159, cat: Movies/Other, desc: "Anime Movies HD"}
- {id: 160, cat: Movies/Other, desc: "Anime Movies SD"}
- {id: 128, cat: TV/Anime, desc: "Anime Serien"}
- {id: 168, cat: TV/Anime, desc: "Anime Serien HD"}
- {id: 169, cat: TV/Anime, desc: "Anime Serien SD"}
- {id: 129, cat: TV/Anime, desc: "Anime Sonstiges"}
- {id: 118, cat: Other, desc: "Other Mobile"}
- {id: 119, cat: Other, desc: "Other Hörbücher"}

View File

@@ -1,159 +0,0 @@
---
id: torlock
name: Torlock
description: "Torlock is a torrent search site that lists verified torrents only for TV series and movies"
language: en-US
type: public
encoding: UTF-8
requestDelay: 2
links:
- https://www.torlock.com/
legacylinks:
- https://torlock.com/
- https://www.torlock.icu/
- https://torlock.nocensor.cloud/
- https://torlock.mrunblock.bond/
- https://torlock.unblockit.download/
- https://www.torlock2.com/ # 400 Bad Request No required SSL certificate was sent
caps:
# dont forget to update the search fields category case block
categorymappings:
- {id: TELEVISION, cat: TV, desc: "TV Shows"}
- {id: MOVIES, cat: Movies, desc: "Movies"}
- {id: MUSIC, cat: Audio, desc: "Music"}
- {id: GAMES, cat: PC/Games, desc: "Games"}
- {id: SOFTWARE, cat: PC, desc: "Software"}
- {id: ANIME, cat: TV/Anime, desc: "Anime"}
- {id: EBOOKS, cat: Books/EBook, desc: "Books"}
- {id: OTHER, cat: Other, desc: "Other"}
- {id: ADULT, cat: XXX, desc: "Adult"}
- {id: AUDIOBOOK, cat: Audio/Audiobook, desc: "Audiobook"}
- {id: IMAGES, cat: Other/Misc, desc: "Images"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: sort
type: select
label: Sort requested from site (only works for search with keywords)
default: added
options:
added: created
seeds: seeders
size: size
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
search:
paths:
- path: "/all/torrents/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}"
categories: ["!", TELEVISION, MOVIES, MUSIC, GAMES, SOFTWARE, ANIME, EBOOKS, OTHER, ADULT, AUDIOBOOK, IMAGES]
- path: "{{ if .Keywords }}/television/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/television/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [TELEVISION]
- path: "{{ if .Keywords }}/movie/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/movies/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [MOVIES]
- path: "{{ if .Keywords }}/music/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/music/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [MUSIC]
- path: "{{ if .Keywords }}/game/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/games/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [GAMES]
- path: "{{ if .Keywords }}/software/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/software/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [SOFTWARE]
- path: "{{ if .Keywords }}/anime/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/anime/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [ANIME]
- path: "{{ if .Keywords }}/ebook/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/ebooks/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [EBOOKS]
- path: "{{ if .Keywords }}/unknown/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/unknown.html{{end}}" # sorting is broken for unknown
categories: [OTHER]
- path: "{{ if .Keywords }}/adult/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/adult/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [ADULT]
- path: "{{ if .Keywords }}/audiobook/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/audiobook/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [AUDIOBOOK]
- path: "{{ if .Keywords }}/image/torrents/{{ .Keywords }}.html?sort={{ .Config.sort }}&order={{ .Config.type }}{{else}}/images/1/{{ .Config.sort }}/{{ .Config.type }}.html{{end}}"
categories: [IMAGES]
keywordsfilters:
- name: tolower
- name: re_replace
args: ["[^a-zA-Z0-9]+", "-"]
rows:
selector: table > tbody > tr:has(td:has(div:has(a[href^="/torrent/"])))
filters:
- name: andmatch
fields:
category:
selector: span[class^="tv"]
attribute: class
case:
span.tv0: OTHER
span.tv1: MOVIES
span.tv2: MUSIC
span.tv3: TELEVISION
span.tv4: GAMES
span.tv5: SOFTWARE
span.tv6: ANIME
span.tv7: ADULT
span.tv8: EBOOKS
span.tv9: IMAGES
span.tv10: EBOOKS
span.tv12: AUDIOBOOK
"*": OTHER # some torrents have invalid categories
title:
selector: td:nth-child(1) > div > a
details:
selector: td:nth-child(1) > div > a[href^="/torrent/"]
attribute: href
download:
selector: td:nth-child(1) > div > a[href^="/torrent/"]
attribute: href
filters:
- name: replace
args: ["/torrent/", "/tor/"]
- name: regexp
args: (^/tor/\d*)
- name: append
args: ".torrent"
date_year:
selector: td:nth-child(2):contains("/")
optional: true
filters:
- name: append
args: " -07:00" # PDT
- name: dateparse
args: "M/d/yyyy zzz"
date_day:
selector: td:nth-child(2):contains("Today"), td:nth-child(2):contains("Yesterday")
optional: true
filters:
- name: fuzzytime
date_ago:
selector: td:nth-child(2):not(:contains("Today")):not(:contains("Yesterday")):not(:contains("/"))
optional: true
filters:
- name: re_replace
args: ["(min|mins)", "minutes"]
- name: timeago
date:
text: "{{ if or .Result.date_year .Result.date_ago .Result.date_day }}{{ or .Result.date_year .Result.date_ago .Result.date_day }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(3)
seeders:
selector: td:nth-child(4)
leechers:
selector: td:nth-child(5)
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -7,15 +7,9 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentqq384.com/
- https://torrentegg74.com/
- https://torrentqq387.com/
- https://torrentegg77.com/
legacylinks:
- https://torrentegg60.com/
- https://torrentqq369.com/
- https://torrentegg61.com/
- https://torrentqq370.com/
- https://torrentegg62.com/
- https://torrentqq371.com/
- https://torrentegg63.com/
- https://torrentqq372.com/
- https://torrentegg64.com/
@@ -39,6 +33,12 @@ legacylinks:
- https://torrentegg72.com/
- https://torrentegg73.com/
- https://torrentqq383.com/
- https://torrentqq384.com/
- https://torrentegg74.com/
- https://torrentqq385.com/
- https://torrentegg75.com/
- https://torrentqq386.com/
- https://torrentegg76.com/
caps:
categorymappings:

View File

@@ -9,11 +9,8 @@ followredirect: true
requestDelay: 2
# to fetch current domain use https://tzip.top/
links:
- https://torrentsome211.com/
- https://torrentsome214.com/
legacylinks:
- https://torrentsome196.com/
- https://torrentsome197.com/
- https://torrentsome198.com/
- https://torrentsome199.com/
- https://torrentsome200.com/
- https://torrentsome201.com/
@@ -26,6 +23,9 @@ legacylinks:
- https://torrentsome208.com/
- https://torrentsome209.com/
- https://torrentsome210.com/
- https://torrentsome211.com/
- https://torrentsome212.com/
- https://torrentsome213.com/
caps:
categorymappings:
@@ -48,7 +48,9 @@ caps:
movie-search: [q]
music-search: [q]
settings: []
settings:
- name: info_flaresolverr
type: info_flaresolverr
download:
infohash:

View File

@@ -9,11 +9,8 @@ followredirect: true
requestDelay: 2
# to fetch current domain use https://tzip.top/
links:
- https://torrenttip192.top/
- https://torrenttip195.top/
legacylinks:
- https://torrenttip177.com/
- https://torrenttip178.com/
- https://torrenttip179.com/
- https://torrenttip180.top/
- https://torrenttip181.top/
- https://torrenttip182.top/
@@ -26,6 +23,9 @@ legacylinks:
- https://torrenttip189.top/
- https://torrenttip190.top/
- https://torrenttip191.top/
- https://torrenttip192.top/
- https://torrenttip193.top/
- https://torrenttip194.top/
caps:
categorymappings:
@@ -55,7 +55,9 @@ caps:
music-search: [q]
book-search: [q]
settings: []
settings:
- name: info_flaresolverr
type: info_flaresolverr
download:
infohash:

View File

@@ -187,4 +187,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -90,8 +90,9 @@ caps:
- {id: 124, cat: Audio, desc: " |- Фольклор, Народная и Этническая музыка"}
- {id: 231, cat: Audio, desc: " |- Сборники и альбомы выходившие неофициальными изданиями."}
- {id: 144, cat: Audio, desc: "♫ ROCK & METAL ♫"}
- {id: 201, cat: Audio, desc: " |- Русский Rock, Metal"}
- {id: 202, cat: Audio, desc: " |- Сборники Русского рока"}
- {id: 201, cat: Audio, desc: " |- Русский Rock, Metal (mp3)"}
- {id: 202, cat: Audio, desc: " |- Сборники Русского рока (mp3)"}
- {id: 323, cat: Audio, desc: " |- Русский Rock, Metal (Lossless)"}
- {id: 214, cat: Audio, desc: " |- Soft & Pop-Rock"}
- {id: 156, cat: Audio, desc: " |- Progressive, Art, Classic & Hard Rock"}
- {id: 213, cat: Audio, desc: " |- Melodic & Folk Rock"}
@@ -127,10 +128,11 @@ caps:
- {id: 238, cat: Audio, desc: " |- ♫ Электронная музыка Hi-Res"}
- {id: 237, cat: Audio, desc: " |- ♫ Рок-музыка Hi-Res"}
- {id: 236, cat: Audio, desc: " |- ♫ Джаз и Блюз Hi-Res"}
- {id: 247, cat: Audio, desc: " |- ♫ Rock (оцифровки)"}
- {id: 317, cat: Audio, desc: " |- Советская и Российская эстрада (оцифровки)"}
- {id: 240, cat: Audio, desc: " |- Зарубежная поп музыка (оцифровки)"}
- {id: 249, cat: Audio, desc: " |- ♫ Электронная музыка (оцифрофки)"}
- {id: 324, cat: Audio, desc: "Оцифровки с аналоговых носителей"}
- {id: 328, cat: Audio, desc: " |- Советская и Российская эстрада (оцифровки)"}
- {id: 327, cat: Audio, desc: " |- Зарубежная поп музыка (оцифровки)"}
- {id: 326, cat: Audio, desc: " |- ♫ Rock (оцифровки)"}
- {id: 325, cat: Audio, desc: " |- ♫ Электронная музыка (оцифрофки)"}
- {id: 133, cat: Audio, desc: "♫ Музыка в формате ♫ (lossless)"}
- {id: 203, cat: Audio, desc: " |- Музыка России и стран бывшего СССР (lossless)"}
- {id: 139, cat: Audio, desc: " |- Поп музыка, Eurodance, Disco (lossless)"}

View File

@@ -119,8 +119,6 @@ search:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
poster:
selector: meta.poster
filters:
@@ -189,4 +187,4 @@ search:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
minimumratio:
text: 0.5
# json UNIT3D 9.1.2
# json UNIT3D 9.1.7

View File

@@ -1,111 +0,0 @@
---
id: yourbittorrent
name: YourBittorrent
description: "YourBittorrent is a Public torrent index"
language: en-US
type: public
encoding: UTF-8
links:
- https://yourbittorrent.com/
- https://yourbittorrent2.com/
legacylinks:
- https://yourbittorrent.host/
- https://yourbittorrent.nocensor.cloud/
- https://yourbittorrent.mrunblock.bond/
caps:
categorymappings:
- {id: anime, cat: TV/Anime, desc: Anime}
- {id: software, cat: PC, desc: Software}
- {id: ebooks, cat: Books, desc: Ebooks}
- {id: adult, cat: XXX, desc: Adult}
- {id: games, cat: PC/Games, desc: Games}
- {id: movies, cat: Movies, desc: Movies}
- {id: music, cat: Audio, desc: Music}
- {id: television, cat: TV, desc: TV}
- {id: other, cat: Other, desc: Other}
- {id: photos, cat: Other, desc: Photos}
- {id: pictures, cat: Other, desc: Pictures}
- {id: unknown, cat: Other, desc: Unknown}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings: []
search:
paths:
- path: /
inputs:
q: "{{ .Keywords }}"
allowEmptyInputs: true
keywordsfilters:
- name: re_replace
args: ["[\\s]+", "-"]
- name: tolower
rows:
selector: tr.table-default:has(a[href^="/torrent/"])
filters:
- name: andmatch
fields:
category:
selector: td:nth-child(1)
attribute: onclick
filters:
- name: regexp
args: "href='/(.+?).html"
title:
selector: td:nth-child(2) a
details:
selector: td:nth-child(2) a
attribute: href
download:
selector: td:nth-child(2) a
attribute: href
# turn /torrent/25778710/have-i-got-news-for-you-s59e02-720p-britishb00bseztv.html
# into /down/25778710.torrent
filters:
- name: split
args: ["/", 2]
- name: prepend
args: "/down/"
- name: append
args: ".torrent"
size:
selector: td:nth-child(3)
date_day:
selector: td:nth-child(4):not(:contains("/")):not(:contains("-"))
optional: true
filters:
- name: replace
args: ["Today", "now"]
- name: replace
args: ["Yesterday", "1 day"]
- name: timeago
date_year:
selector: td:nth-child(4):contains("/"), td:nth-child(4):contains("-")
optional: true
filters:
- name: replace
args: ["-", "/"]
- name: append
args: " -07:00" # PDT
- name: dateparse
args: "dd/MM/yy zzz"
date:
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
seeders:
selector: td:nth-child(5)
leechers:
selector: td:nth-child(6)
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -198,4 +198,4 @@ search:
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 9.1.6
# json UNIT3D 9.1.7

View File

@@ -7,7 +7,7 @@ type: public
encoding: UTF-8
# to fetch current domain use https://www.rantop.my/
links:
- https://www.zetorrents1.com/
- https://www.zetorrents.diy/
legacylinks:
# latest domains list
- https://www.rantop.my/
@@ -22,7 +22,6 @@ legacylinks:
- https://www.rantop.org/
- https://www.site-torrent.com/
# actual legacylinks
- https://www.zetorrents.cc/
- https://www.zetorrents.tv/
- https://www.zetorrents.bz/
- https://www.zetorrents.nl/
@@ -39,6 +38,7 @@ legacylinks:
- https://www.zetorrents.my/
- https://wvw-zetorrents.com/
- https://www-zetorrents.com/
- https://www.zetorrents1.com/
caps:
categories:

View File

@@ -7,9 +7,11 @@ description: "ZkTorrent is a FRENCH Public site for MOVIES / TV / GENERAL"
language: fr-FR
type: public
encoding: UTF-8
certificates:
- 6daab5aed021a47614f439584fc450bde16cb528 # cloudflare
# to fetch current domain use https://www.rantop.my/
links:
- https://www.zktorrent5.com/
- https://www.zktorrent.net/
legacylinks:
# latest domains list
- https://www.rantop.my/
@@ -25,7 +27,6 @@ legacylinks:
- https://gktorrent.news/
- https://www.site-torrent.com/
# actual legacylinks
- https://www.gktorrent.sk/
- https://www.gktorrent.uno/
- https://www.gktorrent.gy/
- https://www.gktorrent.si/
@@ -40,6 +41,7 @@ legacylinks:
- https://www.zktorrent2.com/
- https://www.zktorrent3.com/
- https://www.zktorrent4.com/
- https://www.zktorrent5.com/
caps:
categorymappings:

View File

@@ -1,303 +0,0 @@
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Net;
using System.Threading.Tasks;
using AngleSharp.Dom;
using AngleSharp.Html.Parser;
using Jackett.Common.Models;
using Jackett.Common.Models.IndexerConfig;
using Jackett.Common.Services.Interfaces;
using Jackett.Common.Utils;
using Newtonsoft.Json.Linq;
using NLog;
using static Jackett.Common.Models.IndexerConfig.ConfigurationData;
namespace Jackett.Common.Indexers.Definitions
{
[ExcludeFromCodeCoverage]
public class Anidex : IndexerBase
{
public override string Id => "anidex";
public override string Name => "Anidex";
public override string Description => "Anidex is a Public torrent tracker and indexer, primarily for English fansub groups of anime";
public override string SiteLink { get; protected set; } = "https://anidex.info/";
public override string Language => "en-US";
public override string Type => "public";
public override TorznabCapabilities TorznabCaps => SetCapabilities();
public Anidex(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
IProtectionService ps, ICacheService cs)
: base(configService: configService,
client: wc,
logger: l,
p: ps,
cacheService: cs,
configData: new ConfigurationData())
{
configData.AddDynamic("DDoS-Guard", new DisplayInfoConfigurationItem("DDoS-Guard", "This site may use DDoS-Guard Protection, therefore Jackett requires <a href='https://github.com/Jackett/Jackett#configuring-flaresolverr' target='_blank'>FlareSolverr</a> to access it."));
AddLanguageConfiguration();
// Configure the sort selects
var sortBySelect = new SingleSelectConfigurationItem("Sort by", new Dictionary<string, string>
{
{"upload_timestamp", "created"},
{"seeders", "seeders"},
{"size", "size"},
{"filename", "title"}
})
{ Value = "upload_timestamp" };
configData.AddDynamic("sortrequestedfromsite", sortBySelect);
var orderSelect = new SingleSelectConfigurationItem("Order", new Dictionary<string, string>
{
{"desc", "Descending"},
{"asc", "Ascending"}
})
{ Value = "desc" };
configData.AddDynamic("orderrequestedfromsite", orderSelect);
EnableConfigurableRetryAttempts();
}
private TorznabCapabilities SetCapabilities()
{
var caps = new TorznabCapabilities
{
TvSearchParams = new List<TvSearchParam>
{
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep
},
MusicSearchParams = new List<MusicSearchParam>
{
MusicSearchParam.Q,
},
BookSearchParams = new List<BookSearchParam>
{
BookSearchParam.Q,
}
};
// Configure the category mappings
caps.Categories.AddCategoryMapping(1, TorznabCatType.TVAnime, "Anime - Sub");
caps.Categories.AddCategoryMapping(2, TorznabCatType.TVAnime, "Anime - Raw");
caps.Categories.AddCategoryMapping(3, TorznabCatType.TVAnime, "Anime - Dub");
caps.Categories.AddCategoryMapping(4, TorznabCatType.TVAnime, "LA - Sub");
caps.Categories.AddCategoryMapping(5, TorznabCatType.TVAnime, "LA - Raw");
caps.Categories.AddCategoryMapping(6, TorznabCatType.BooksEBook, "Light Novel");
caps.Categories.AddCategoryMapping(7, TorznabCatType.BooksComics, "Manga - TLed");
caps.Categories.AddCategoryMapping(8, TorznabCatType.BooksComics, "Manga - Raw");
caps.Categories.AddCategoryMapping(9, TorznabCatType.AudioMP3, "♫ - Lossy");
caps.Categories.AddCategoryMapping(10, TorznabCatType.AudioLossless, "♫ - Lossless");
caps.Categories.AddCategoryMapping(11, TorznabCatType.AudioVideo, "♫ - Video");
caps.Categories.AddCategoryMapping(12, TorznabCatType.PCGames, "Games");
caps.Categories.AddCategoryMapping(13, TorznabCatType.PC0day, "Applications");
caps.Categories.AddCategoryMapping(14, TorznabCatType.XXXImageSet, "Pictures");
caps.Categories.AddCategoryMapping(15, TorznabCatType.XXX, "Adult Video");
caps.Categories.AddCategoryMapping(16, TorznabCatType.Other, "Other");
return caps;
}
private void AddLanguageConfiguration()
{
// Configure the language select option
var languageSelect = new MultiSelectConfigurationItem("Language (None ticked = ALL)", new Dictionary<string, string>
{
{"1", "English"},
{"2", "Japanese"},
{"3", "Polish"},
{"4", "Serbo-Croatian"},
{"5", "Dutch"},
{"6", "Italian"},
{"7", "Russian"},
{"8", "German"},
{"9", "Hungarian"},
{"10", "French"},
{"11", "Finnish"},
{"12", "Vietnamese"},
{"13", "Greek"},
{"14", "Bulgarian"},
{"15", "Spanish (Spain)"},
{"16", "Portuguese (Brazil)"},
{"17", "Portuguese (Portugal)"},
{"18", "Swedish"},
{"19", "Arabic"},
{"20", "Danish"},
{"21", "Chinese (Simplified)"},
{"22", "Bengali"},
{"23", "Romanian"},
{"24", "Czech"},
{"25", "Mongolian"},
{"26", "Turkish"},
{"27", "Indonesian"},
{"28", "Korean"},
{"29", "Spanish (LATAM)"},
{"30", "Persian"},
{"31", "Malaysian"}
})
{ Values = new[] { "" } };
configData.AddDynamic("languageid", languageSelect);
}
private string GetSortBy => ((SingleSelectConfigurationItem)configData.GetDynamic("sortrequestedfromsite")).Value;
private string GetOrder => ((SingleSelectConfigurationItem)configData.GetDynamic("orderrequestedfromsite")).Value;
private Uri GetAbsoluteUrl(string relativeUrl) => new Uri(SiteLink + relativeUrl.TrimStart('/'));
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
{
LoadValuesFromJson(configJson);
var releases = await PerformQuery(new TorznabQuery());
await ConfigureIfOK(string.Empty, releases.Any(), () => throw new Exception("Could not find releases from this URL"));
return IndexerConfigurationStatus.Completed;
}
/// <summary>
/// Returns the selected languages, formatted so that they can be used in a query string.
/// </summary>
private string GetLanguagesForQuery()
{
var languagesConfig = (MultiSelectConfigurationItem)configData.GetDynamic("languageid");
return string.Join(",", languagesConfig.Values);
}
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
{
// Prepare the search query
var queryParameters = new NameValueCollection
{
{ "page", "search" },
{ "s", GetSortBy },
{ "o", GetOrder },
{ "group_id", "0" }, // No group
{ "q", query.GetQueryString() ?? string.Empty }
};
// Get specified categories
// AniDex throws errors when categories are url encoded. See issue #9727
var searchCategories = MapTorznabCapsToTrackers(query);
var catString = "";
if (searchCategories.Any() && GetAllTrackerCategories().Except(searchCategories).Any())
{
catString = "&id=" + string.Join(",", searchCategories);
}
// Get Selected Languages
// AniDex throws errors when the commas between language IDs are url encoded.
var langIds = "&lang_id=" + GetLanguagesForQuery();
// Make search request
var searchUri = GetAbsoluteUrl("?" + queryParameters.GetQueryString() + catString + langIds);
var response = await RequestWithCookiesAndRetryAsync(searchUri.AbsoluteUri);
if (response.Status != HttpStatusCode.OK)
throw new WebException($"Anidex search returned unexpected result. Expected 200 OK but got {response.Status}.", WebExceptionStatus.ProtocolError);
// Search seems to have been a success so parse it
return ParseResult(response.ContentString);
}
private IEnumerable<ReleaseInfo> ParseResult(string response)
{
try
{
var resultParser = new HtmlParser();
using var resultDocument = resultParser.ParseDocument(response);
IEnumerable<IElement> rows = resultDocument.QuerySelectorAll("div#content table > tbody > tr");
var releases = new List<ReleaseInfo>();
foreach (var r in rows)
try
{
var language = "";
var release = new ReleaseInfo();
release.Category = ParseValueFromRow(r, nameof(release.Category), "td:nth-child(1) a", (e) => MapTrackerCatToNewznab(e.Attributes["href"].Value.Substring(5)));
language = ParseValueFromRow(r, nameof(language), "td:nth-child(1) img", (e) => e.Attributes["title"].Value);
release.Title = ParseStringValueFromRow(r, nameof(release.Title), "td:nth-child(3) span") + " " + language;
release.Link = ParseValueFromRow(r, nameof(release.Link), "a[href^=\"/dl/\"]", (e) => GetAbsoluteUrl(e.Attributes["href"].Value));
release.MagnetUri = ParseValueFromRow(r, nameof(release.MagnetUri), "a[href^=\"magnet:?\"]", (e) => new Uri(e.Attributes["href"].Value));
release.Size = ParseValueFromRow(r, nameof(release.Size), "td:nth-child(7)", (e) => ParseUtil.GetBytes(e.Text()));
release.PublishDate = ParseValueFromRow(r, nameof(release.PublishDate), "td:nth-child(8)", (e) => DateTime.ParseExact(e.Attributes["title"].Value, "yyyy-MM-dd HH:mm:ss UTC", CultureInfo.InvariantCulture));
release.Seeders = ParseIntValueFromRow(r, nameof(release.Seeders), "td:nth-child(9)");
release.Peers = ParseIntValueFromRow(r, nameof(release.Peers), "td:nth-child(10)") + release.Seeders;
release.Grabs = ParseIntValueFromRow(r, nameof(release.Grabs), "td:nth-child(11)");
release.Details = ParseValueFromRow(r, nameof(release.Details), "td:nth-child(3) a", (e) => GetAbsoluteUrl(e.Attributes["href"].Value));
release.Guid = release.Details;
release.DownloadVolumeFactor = 0;
release.UploadVolumeFactor = 1;
releases.Add(release);
}
catch (Exception ex)
{
logger.Error($"Anidex: Error parsing search result row '{r.ToHtmlPretty()}':\n\n{ex}");
}
return releases;
}
catch (Exception ex)
{
throw new IOException($"Error parsing search result page: {ex}");
}
}
private static TResult ParseValueFromRow<TResult>(IElement row, string propertyName, string selector,
Func<IElement, TResult> parseFunction)
{
try
{
var selectedElement = row.QuerySelector(selector);
if (selectedElement == null)
throw new IOException($"Unable to find '{selector}'.");
return parseFunction(selectedElement);
}
catch (Exception ex)
{
throw new IOException($"Error parsing for property '{propertyName}': {ex.Message}");
}
}
private static string ParseStringValueFromRow(IElement row, string propertyName, string selector)
{
try
{
var selectedElement = row.QuerySelector(selector);
if (selectedElement == null)
throw new IOException($"Unable to find '{selector}'.");
return selectedElement.Text();
}
catch (Exception ex)
{
throw new IOException($"Error parsing for property '{propertyName}': {ex.Message}");
}
}
private static int ParseIntValueFromRow(IElement row, string propertyName, string selector)
{
try
{
var text = ParseStringValueFromRow(row, propertyName, selector);
if (!int.TryParse(text, out var value))
throw new IOException($"Could not convert '{text}' to int.");
return value;
}
catch (Exception ex)
{
throw new IOException($"Error parsing for property '{propertyName}': {ex.Message}");
}
}
}
}

View File

@@ -645,7 +645,7 @@ namespace Jackett.Common.Indexers.Definitions
{
var advancedSeasonRegex = new Regex(@"\b(?:(?<season>\d+)(?:st|nd|rd|th) Season|Season (?<season>\d+))\b", RegexOptions.Compiled | RegexOptions.IgnoreCase);
var seasonCharactersRegex = new Regex(@"(I{2,})$", RegexOptions.Compiled);
var seasonNumberRegex = new Regex(@"\b(?<!Part[- ._])(?<!\d[/])(?:S)?(?<season>[2-9])$", RegexOptions.Compiled);
var seasonNumberRegex = new Regex(@"\b(?<!(Part|No\.)[- ._])(?<!\d[/])(?<!\#)(?:S)?(?<season>[2-9])$", RegexOptions.Compiled);
foreach (var title in titles)
{

View File

@@ -19,7 +19,11 @@ namespace Jackett.Common.Indexers.Definitions
{
public override string Id => "bludv";
public override string Name => "BluDV";
public override string SiteLink { get; protected set; } = "https://bludv.xyz/";
public override string SiteLink { get; protected set; } = "https://bludv.org/";
public override string[] LegacySiteLinks { get; protected set; } = {
"https://bludv.xyz/",
};
public BluDV(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps, ICacheService cs)
: base(configService, wc, l, ps, cs)

View File

@@ -1,53 +0,0 @@
using System.Diagnostics.CodeAnalysis;
using Jackett.Common.Indexers.Definitions.Abstract;
using Jackett.Common.Models;
using Jackett.Common.Services.Interfaces;
using Jackett.Common.Utils.Clients;
using NLog;
namespace Jackett.Common.Indexers.Definitions
{
[ExcludeFromCodeCoverage]
public class CGPeers : GazelleTracker
{
public override string Id => "cgpeers";
public override string Name => "CGPeers";
public override string Description => "CGPeers is a Private Torrent Tracker for GRAPHICS SOFTWARE / TUTORIALS / ETC";
public override string SiteLink { get; protected set; } = "https://cgpeers.to/";
public override string[] LegacySiteLinks => new[]
{
"https://www.cgpeers.com/"
};
public override string Language => "en-US";
public override string Type => "private";
public override TorznabCapabilities TorznabCaps => SetCapabilities();
public CGPeers(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
ICacheService cs)
: base(configService: configService,
client: wc,
logger: l,
p: ps,
cs: cs,
supportsFreeleechTokens: true,
has2Fa: true)
{
}
private TorznabCapabilities SetCapabilities()
{
var caps = new TorznabCapabilities();
caps.Categories.AddCategoryMapping(1, TorznabCatType.PCISO, "Full Applications");
caps.Categories.AddCategoryMapping(2, TorznabCatType.PC0day, "Plugins");
caps.Categories.AddCategoryMapping(3, TorznabCatType.Other, "Tutorials");
caps.Categories.AddCategoryMapping(4, TorznabCatType.Other, "Models");
caps.Categories.AddCategoryMapping(5, TorznabCatType.Other, "Materials");
caps.Categories.AddCategoryMapping(6, TorznabCatType.OtherMisc, "Misc");
caps.Categories.AddCategoryMapping(7, TorznabCatType.Other, "GameDev");
return caps;
}
}
}

View File

@@ -29,10 +29,10 @@ namespace Jackett.Common.Indexers.Definitions
public override string Name => "DonTorrent";
public override string Description => "DonTorrent is a SPANISH Public tracker for MOVIES / TV / GENERAL";
// in the event the redirect is inactive https://t.me/s/dontorrent should have the latest working domain
public override string SiteLink { get; protected set; } = "https://dontorrent.lighting/";
public override string SiteLink { get; protected set; } = "https://dontorrent.istanbul/";
public override string[] AlternativeSiteLinks => new[]
{
"https://dontorrent.lighting/",
"https://dontorrent.istanbul/",
"https://todotorrents.org/",
"https://tomadivx.net/",
"https://seriesblanco.one/",
@@ -41,7 +41,6 @@ namespace Jackett.Common.Indexers.Definitions
};
public override string[] LegacySiteLinks => new[]
{
"https://dontorrent.stream/",
"https://dontorrent.website/",
"https://dontorrent.group/",
"https://dontorrent.download/",
@@ -56,6 +55,7 @@ namespace Jackett.Common.Indexers.Definitions
"https://dontorrent.graphics/",
"https://dontorrent.international/",
"https://dontorrent.irish/",
"https://dontorrent.lighting/",
};
public override string Language => "es-ES";
public override string Type => "public";

View File

@@ -19,7 +19,7 @@ namespace Jackett.Common.Indexers.Definitions
{
public override string Id => "filmeshdtorrent";
public override string Name => "Filmes HD Torrent";
public override string SiteLink { get; protected set; } = "https://www.filmeshdtorrent.vip/";
public override string SiteLink { get; protected set; } = "https://www.limontorrents.vip/";
public override string[] LegacySiteLinks { get; protected set; } = {
"https://baixarfilmestorrents.net/",
@@ -29,6 +29,7 @@ namespace Jackett.Common.Indexers.Definitions
"https://filmetorrent.org/x/",
"https://bludvfilmes.org/",
"https://bludvfilmes.org/rarbg/",
"https://www.filmeshdtorrent.vip/",
};
public FilmesHdTorrent(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps, ICacheService cs) : base(configService, wc, l, ps, cs)

View File

@@ -27,10 +27,9 @@ namespace Jackett.Common.Indexers.Definitions
public override string Id => "mejortorrent";
public override string Name => "MejorTorrent";
public override string Description => "MejorTorrent is a Public site - Hay veces que un torrent viene mejor! :)";
public override string SiteLink { get; protected set; } = "https://www36.mejortorrent.eu/";
public override string SiteLink { get; protected set; } = "https://www37.mejortorrent.eu/";
public override string[] LegacySiteLinks => new[]
{
"https://www19.mejortorrent.zip/",
"https://www20.mejortorrent.zip/",
"https://www21.mejortorrent.zip/",
"https://www22.mejortorrent.zip/",
@@ -46,6 +45,7 @@ namespace Jackett.Common.Indexers.Definitions
"https://www32.mejortorrent.eu/",
"https://www34.mejortorrent.eu/",
"https://www35.mejortorrent.eu/",
"https://www36.mejortorrent.eu/",
};
public override string Language => "es-ES";
public override string Type => "public";

View File

@@ -24,7 +24,7 @@ namespace Jackett.Common.Indexers.Definitions
{
public override string Id => "passthepopcorn";
public override string Name => "PassThePopcorn";
public override string Description => "PassThePopcorn (PTP) is a Private site for MOVIES / TV";
public override string Description => "PassThePopcorn (PTP) is a Private site for MOVIES";
// Status: https://ptp.trackerstatus.info/
public override string SiteLink { get; protected set; } = "https://passthepopcorn.me/";
public override string Language => "en-US";
@@ -61,10 +61,6 @@ namespace Jackett.Common.Indexers.Definitions
{
LimitsDefault = 50,
LimitsMax = 50,
TvSearchParams = new List<TvSearchParam>
{
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep, TvSearchParam.ImdbId
},
MovieSearchParams = new List<MovieSearchParam>
{
MovieSearchParam.Q, MovieSearchParam.ImdbId
@@ -73,7 +69,7 @@ namespace Jackett.Common.Indexers.Definitions
caps.Categories.AddCategoryMapping(1, TorznabCatType.Movies, "Feature Film");
caps.Categories.AddCategoryMapping(2, TorznabCatType.Movies, "Short Film");
caps.Categories.AddCategoryMapping(3, TorznabCatType.TV, "Miniseries");
caps.Categories.AddCategoryMapping(3, TorznabCatType.Movies, "Miniseries");
caps.Categories.AddCategoryMapping(4, TorznabCatType.Movies, "Stand-up Comedy");
caps.Categories.AddCategoryMapping(5, TorznabCatType.Movies, "Live Performance");
caps.Categories.AddCategoryMapping(6, TorznabCatType.Movies, "Movie Collection");

View File

@@ -21,15 +21,17 @@ namespace Jackett.Common.Indexers.Definitions
{
public override string Id => "torrentdosfilmes";
public override string Name => "TorrentDosFilmes";
public override string SiteLink { get; protected set; } = "https://torrentsdosfilmes.to/";
public override string SiteLink { get; protected set; } = "https://torrentdosfilmes.net/";
public override string[] AlternativeSiteLinks { get; protected set; } = {
"https://torrentsdosfilmes.to/",
"https://ComandoFilmes.xyz/"
"https://torrentdosfilmes.net/",
"https://comando4kfilmes.xyz/",
};
public override string[] LegacySiteLinks { get; protected set; } = {
"https://torrentdosfilmes.site/"
"https://torrentdosfilmes.site/",
"https://torrentsdosfilmes.to/",
"https://ComandoFilmes.xyz/",
};
public TorrentDosFilmes(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,

View File

@@ -21,14 +21,14 @@
<PackageReference Include="Microsoft.AspNetCore.WebUtilities" Version="2.3.0" />
<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />
<PackageReference Include="MimeMapping" Version="1.0.1.50" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.4" />
<PackageReference Include="NLog" Version="5.4.0" />
<PackageReference Include="Polly" Version="8.6.1" />
<PackageReference Include="Polly" Version="8.6.3" />
<PackageReference Include="SharpZipLib" Version="1.4.2" />
<PackageReference Include="System.IO.FileSystem.AccessControl" Version="5.0.0" />
<PackageReference Include="System.ServiceProcess.ServiceController" Version="8.0.1" />
<PackageReference Include="System.Text.Encoding.CodePages" Version="8.0.0" />
<PackageReference Include="System.Text.Json" Version="8.0.5" />
<PackageReference Include="System.Text.Json" Version="8.0.6" />
<PackageReference Include="YamlDotNet" Version="16.3.0" />
</ItemGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net462</TargetFrameworks>
<TargetFrameworks>net8.0;net471</TargetFrameworks>
<IsPackable>false</IsPackable>
<NoWarn />
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
@@ -9,9 +9,9 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
<PackageReference Include="MSTest.TestAdapter" Version="3.0.2" />
<PackageReference Include="MSTest.TestFramework" Version="3.0.2" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
<PackageReference Include="MSTest.TestAdapter" Version="3.10.4" />
<PackageReference Include="MSTest.TestFramework" Version="3.10.4" />
<PackageReference Include="Selenium.Chrome.WebDriver" Version="85.0.0" />
<PackageReference Include="Selenium.WebDriver" Version="4.35.0" />
</ItemGroup>

View File

@@ -3,7 +3,7 @@ using Jackett.Common.Models.Config;
using Jackett.Common.Services.Interfaces;
using Microsoft.AspNetCore.Hosting;
using NLog;
#if !NET462
#if !NET471
using Microsoft.Extensions.Hosting;
#endif
@@ -13,7 +13,7 @@ namespace Jackett.Server
{
public static IContainer ApplicationContainer { get; set; }
#if NET462
#if NET471
public static IApplicationLifetime applicationLifetime;
#else
public static IHostApplicationLifetime applicationLifetime;

View File

@@ -2,7 +2,7 @@
<PropertyGroup>
<PackageId>$(MSBuildProjectName)</PackageId>
<TargetFrameworks>net8.0;net462</TargetFrameworks>
<TargetFrameworks>net8.0;net471</TargetFrameworks>
<ApplicationIcon>jackett.ico</ApplicationIcon>
<OutputType>Exe</OutputType>
<NoWarn></NoWarn>
@@ -21,7 +21,7 @@
</PropertyGroup>
<Choose>
<When Condition="'$(TargetFramework)' != 'net462' and $(RuntimeIdentifier.Contains('win')) == 'false'">
<When Condition="'$(TargetFramework)' != 'net471' and $(RuntimeIdentifier.Contains('win')) == 'false'">
<PropertyGroup>
<AssemblyName>jackett</AssemblyName>
</PropertyGroup>
@@ -35,13 +35,13 @@
<!-- Conditionally obtain references for the .NET 8.0 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net8.0' ">
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.17" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="8.0.20" />
<PackageReference Include="Microsoft.Extensions.Configuration" Version="8.0.0" />
<PackageReference Include="System.Security.Cryptography.ProtectedData" Version="8.0.0" />
</ItemGroup>
<!-- Conditionally obtain references for the .NET462 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<!-- Conditionally obtain references for the .NET471 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net471' ">
<PackageReference Include="Microsoft.AspNetCore" Version="2.3.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication" Version="2.3.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="2.3.0" />

View File

@@ -22,7 +22,7 @@ using Microsoft.AspNetCore.Rewrite;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Newtonsoft.Json.Serialization;
#if !NET462
#if !NET471
using Microsoft.Extensions.Hosting;
#endif
@@ -66,7 +66,7 @@ namespace Jackett.Server
options.KnownProxies.Clear();
});
#if NET462
#if NET471
services.AddMvc(
config => config.Filters.Add(
new AuthorizeFilter(
@@ -118,7 +118,7 @@ namespace Jackett.Server
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
#if NET462
#if NET471
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IApplicationLifetime applicationLifetime)
{
applicationLifetime.ApplicationStarted.Register(OnStarted);

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net462</TargetFrameworks>
<TargetFrameworks>net8.0;net471</TargetFrameworks>
<NoWarn />
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningsAsErrors />
@@ -25,10 +25,10 @@
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="FluentAssertions" Version="6.12.1" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection" Version="8.0.11" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
<PackageReference Include="MSTest.TestAdapter" Version="3.0.2" />
<PackageReference Include="MSTest.TestFramework" Version="3.0.2" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection" Version="8.0.20" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
<PackageReference Include="MSTest.TestAdapter" Version="3.10.4" />
<PackageReference Include="MSTest.TestFramework" Version="3.10.4" />
<PackageReference Include="NUnit" Version="3.14.0" />
<PackageReference Include="NUnit.ConsoleRunner" Version="3.17.0" />
<PackageReference Include="NUnit3TestAdapter" Version="4.5.0" />
@@ -45,8 +45,8 @@
<ProjectReference Include="..\Jackett.Server\Jackett.Server.csproj" />
</ItemGroup>
<!-- Conditionally obtain references for the .NET462 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<!-- Conditionally obtain references for the .NET471 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net471' ">
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" />
<Reference Include="System.Web" />
</ItemGroup>

View File

@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>net8.0;net462</TargetFrameworks>
<TargetFrameworks>net8.0;net471</TargetFrameworks>
<ApplicationIcon>jackett.ico</ApplicationIcon>
<AssemblyName>JackettUpdater</AssemblyName>
<OutputType>Exe</OutputType>
@@ -13,8 +13,8 @@
<DefineConstants Condition="'$(RuntimeIdentifier)' == 'linux-musl-x64' or '$(RuntimeIdentifier)' == 'linux-musl-arm' or '$(RuntimeIdentifier)' == 'linux-musl-arm64'">ISLINUXMUSL</DefineConstants>
</PropertyGroup>
<!-- Conditionally obtain references for the .NET462 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net462' ">
<!-- Conditionally obtain references for the .NET471 target -->
<ItemGroup Condition=" '$(TargetFramework)' == 'net471' ">
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.3" />
</ItemGroup>

View File

@@ -404,6 +404,7 @@ namespace Jackett.Updater
"Definitions/epizod.yml",
"Definitions/erzsebet.yml",
"Definitions/erzsebetpl.yml",
"Definitions/esharenet.yml",
"Definitions/estrenosdtl.yml",
"Definitions/ethor.yml",
"Definitions/ettv.yml",
@@ -509,6 +510,7 @@ namespace Jackett.Updater
"Definitions/inperil.yml",
"Definitions/irishtv.yml",
"Definitions/isohunt.yml",
"Definitions/itorrent.yml",
"Definitions/iv-torrents.yml",
"Definitions/jme-reunit3d.yml", // switch to -API #13043
"Definitions/jav-torrent.yml",
@@ -743,6 +745,7 @@ namespace Jackett.Updater
"Definitions/tntvillage.yml",
"Definitions/toonsforme.yml",
"Definitions/topnow.yml",
"Definitions/torlock.yml",
"Definitions/torlook.yml",
"Definitions/toros.yml", // renamed to bulltorrent
"Definitions/torrent-explosiv.yml", // renamed to explosiv-world #6183
@@ -841,6 +844,7 @@ namespace Jackett.Updater
"Definitions/xxxtorrents.yml",
"Definitions/ydypt.yml",
"Definitions/yingk.yml",
"Definitions/yourbittorrent.yml",
"Definitions/yourexotic.yml", // renamed to exoticaz
"Definitions/zomb.yml",
"Definitions/zooqle.yml",