mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-12 23:14:08 +02:00
Compare commits
237 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
b343276603 | ||
![]() |
eb74a450e4 | ||
![]() |
bd11cd9f59 | ||
![]() |
652ff788cf | ||
![]() |
48a40f7155 | ||
![]() |
46bb3bbe67 | ||
![]() |
f7b60376af | ||
![]() |
f355db6788 | ||
![]() |
c528fc0f98 | ||
![]() |
d18927e4b3 | ||
![]() |
68c946d8f1 | ||
![]() |
8d8622479d | ||
![]() |
dd8556d21d | ||
![]() |
4c4f1af5c2 | ||
![]() |
ef5fbc844d | ||
![]() |
47bafe2a52 | ||
![]() |
bcc3a2c576 | ||
![]() |
b8c364aea4 | ||
![]() |
e4083c3aa6 | ||
![]() |
96eba3fe7d | ||
![]() |
937aa6b370 | ||
![]() |
3010f795fd | ||
![]() |
7059584157 | ||
![]() |
c6ddf4ac87 | ||
![]() |
9aae1a628a | ||
![]() |
7736e2f87d | ||
![]() |
208ca3b065 | ||
![]() |
4686f8ee5f | ||
![]() |
4368d14e0b | ||
![]() |
97948cc574 | ||
![]() |
fe3ebd6528 | ||
![]() |
bea75c8647 | ||
![]() |
a5ed8c079b | ||
![]() |
0d0b6afb5f | ||
![]() |
ac61c4d0ad | ||
![]() |
7727c82bea | ||
![]() |
fc88e0f547 | ||
![]() |
ea0325a173 | ||
![]() |
d15d4fb433 | ||
![]() |
e511191544 | ||
![]() |
4f42af2a97 | ||
![]() |
f049d7ce97 | ||
![]() |
6dc00de864 | ||
![]() |
4f9670413d | ||
![]() |
1c34303f58 | ||
![]() |
3cd459ef32 | ||
![]() |
cf9a517c8c | ||
![]() |
ec3a56ad6f | ||
![]() |
fecd91d19c | ||
![]() |
3a513da0ea | ||
![]() |
783aa104c4 | ||
![]() |
f8595bf59e | ||
![]() |
fe9671d309 | ||
![]() |
88d6e570a1 | ||
![]() |
23e76cf621 | ||
![]() |
d660bbc25c | ||
![]() |
5ce6a77d3a | ||
![]() |
3dcfd990cb | ||
![]() |
f9cb1d6823 | ||
![]() |
7dedeae827 | ||
![]() |
13fb25478f | ||
![]() |
f16ee42f7d | ||
![]() |
16a59b8abd | ||
![]() |
45e5d032f7 | ||
![]() |
4fa14efc89 | ||
![]() |
ada079dba7 | ||
![]() |
484cc35577 | ||
![]() |
983e7954da | ||
![]() |
3e082137b0 | ||
![]() |
46a37e5b6c | ||
![]() |
e7050767fe | ||
![]() |
4d058ef8b1 | ||
![]() |
4741902ade | ||
![]() |
b2390bb954 | ||
![]() |
933f983fdf | ||
![]() |
e1c15f82d2 | ||
![]() |
4dce8f61d9 | ||
![]() |
fc74b9ebcf | ||
![]() |
84204f43e9 | ||
![]() |
3ef950ac64 | ||
![]() |
0004b900d0 | ||
![]() |
ef82fc136b | ||
![]() |
5cfa72361b | ||
![]() |
db37b42b86 | ||
![]() |
72e64b41a1 | ||
![]() |
09df00aae5 | ||
![]() |
76cbae8da5 | ||
![]() |
76b6b3e5d7 | ||
![]() |
964803d170 | ||
![]() |
a08ad7e16d | ||
![]() |
ec175fb31b | ||
![]() |
2e61ec23a6 | ||
![]() |
3e438c9a56 | ||
![]() |
cfee3e79d2 | ||
![]() |
8e64ecb027 | ||
![]() |
e7e1014759 | ||
![]() |
d7bc256c49 | ||
![]() |
8f1ae194d1 | ||
![]() |
30eb7ea088 | ||
![]() |
466c7ddb73 | ||
![]() |
6727b28cf1 | ||
![]() |
2672ade767 | ||
![]() |
fcbd644c2b | ||
![]() |
4a232b1b25 | ||
![]() |
e92bef31ef | ||
![]() |
06449160b6 | ||
![]() |
99d3aad60a | ||
![]() |
aef52b694a | ||
![]() |
8c5a4c9f5c | ||
![]() |
b601b41932 | ||
![]() |
2608a4cd44 | ||
![]() |
729edfa262 | ||
![]() |
e808df2e53 | ||
![]() |
96d1d4eee7 | ||
![]() |
27a7ce8d3f | ||
![]() |
e6a56a0cbb | ||
![]() |
73fb71507c | ||
![]() |
ba3dbcc5dc | ||
![]() |
206529a7a4 | ||
![]() |
42ae10d71e | ||
![]() |
2e69af5e40 | ||
![]() |
ff3f3b9765 | ||
![]() |
c30a8656f5 | ||
![]() |
2920cf7d20 | ||
![]() |
1c42d741a5 | ||
![]() |
06315470c4 | ||
![]() |
5806ec4b94 | ||
![]() |
e88c49ac8c | ||
![]() |
b5a6aab894 | ||
![]() |
12e55828f0 | ||
![]() |
ea2c4d4c71 | ||
![]() |
dc530f5abb | ||
![]() |
8dff433d2e | ||
![]() |
c6f9927afa | ||
![]() |
fa9db90d56 | ||
![]() |
8fbcbf25c3 | ||
![]() |
707298b0d7 | ||
![]() |
8de87f4b23 | ||
![]() |
281977a5e9 | ||
![]() |
6c64f68360 | ||
![]() |
fc8ebdca92 | ||
![]() |
c249c2ef12 | ||
![]() |
d7dddf6009 | ||
![]() |
c18c0d574f | ||
![]() |
3257c8e759 | ||
![]() |
105d1b669a | ||
![]() |
98d1f579ee | ||
![]() |
40705eebde | ||
![]() |
f3c35b2d6f | ||
![]() |
684b664aa7 | ||
![]() |
62b568e004 | ||
![]() |
939572100b | ||
![]() |
2f23844edc | ||
![]() |
90fb780560 | ||
![]() |
3cca3b2e38 | ||
![]() |
ef73523c8e | ||
![]() |
79105d9750 | ||
![]() |
79a2c79e47 | ||
![]() |
47b80b1c10 | ||
![]() |
91812d94b9 | ||
![]() |
955bca06da | ||
![]() |
2cc43ff634 | ||
![]() |
fb34e6fd54 | ||
![]() |
c78cd997ee | ||
![]() |
b9e7bb5261 | ||
![]() |
a97dbedc99 | ||
![]() |
6f33737eb9 | ||
![]() |
47e2ab3a56 | ||
![]() |
2b68356431 | ||
![]() |
7a35701d12 | ||
![]() |
1b0888028f | ||
![]() |
c2ef2517c3 | ||
![]() |
ff4ce78db0 | ||
![]() |
38fddab2ad | ||
![]() |
6eaaa419f6 | ||
![]() |
d84a18700a | ||
![]() |
9e499379ff | ||
![]() |
39a3157d75 | ||
![]() |
3139a2cd1d | ||
![]() |
5978eb7263 | ||
![]() |
2c1fdf0824 | ||
![]() |
15d3d08be7 | ||
![]() |
c4b77eafb6 | ||
![]() |
f2bf84a8d9 | ||
![]() |
149171d60b | ||
![]() |
9e30f24025 | ||
![]() |
d013fa04b6 | ||
![]() |
809a24f486 | ||
![]() |
3f01a61510 | ||
![]() |
1b6cc7740d | ||
![]() |
03b686ae59 | ||
![]() |
99411e1ed9 | ||
![]() |
67d01d4abc | ||
![]() |
3c6f55b65e | ||
![]() |
916f4756ef | ||
![]() |
401c3a3f41 | ||
![]() |
6f854d0d99 | ||
![]() |
7c33c536bc | ||
![]() |
3d6da64973 | ||
![]() |
be8dfd7ad6 | ||
![]() |
60da4948fa | ||
![]() |
b2040d3a5b | ||
![]() |
869b09f574 | ||
![]() |
aac2e42f9e | ||
![]() |
2ad340f1bc | ||
![]() |
943ddba22b | ||
![]() |
79fa4da2bf | ||
![]() |
da7589838f | ||
![]() |
2a4be14998 | ||
![]() |
c81a2163ce | ||
![]() |
d3ada91c3a | ||
![]() |
653dcca2af | ||
![]() |
c2a24cae22 | ||
![]() |
babd49c082 | ||
![]() |
1007366471 | ||
![]() |
e747d4e2fa | ||
![]() |
efab277714 | ||
![]() |
7f8cfa7eca | ||
![]() |
6abc8adcd1 | ||
![]() |
8e1d171937 | ||
![]() |
9f433dd0de | ||
![]() |
65da3e83af | ||
![]() |
21250c275f | ||
![]() |
e612c111c6 | ||
![]() |
e24c95d4e2 | ||
![]() |
2920caf7c0 | ||
![]() |
f73a047ed9 | ||
![]() |
313ade66f4 | ||
![]() |
392a0d7b7e | ||
![]() |
324afbcd0f | ||
![]() |
7f003427fd | ||
![]() |
a89246c9a7 | ||
![]() |
69b01c34f8 | ||
![]() |
a41bf6ebe4 | ||
![]() |
5bf224d84d | ||
![]() |
03af2a6d1d | ||
![]() |
aee7bba3ce |
@@ -40,7 +40,7 @@ resharper_csharp_keep_blank_lines_in_declarations=1
|
||||
resharper_csharp_max_line_length=125
|
||||
resharper_csharp_stick_comment=false
|
||||
resharper_csharp_wrap_after_invocation_lpar=true
|
||||
resharper_force_attribute_style=join
|
||||
resharper_force_attribute_style=separate
|
||||
resharper_indent_invocation_pars=outside
|
||||
resharper_indent_method_decl_pars=outside
|
||||
resharper_indent_preprocessor_region=no_indent
|
||||
|
30
README.md
30
README.md
@@ -19,7 +19,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
|
||||
#### Supported Systems
|
||||
* Windows 7SP1 or greater
|
||||
* Linux [supported operating systems here](https://github.com/dotnet/core/blob/master/release-notes/2.1/2.1-supported-os.md#linux)
|
||||
* Linux [supported operating systems here](https://github.com/dotnet/core/blob/master/release-notes/3.1/3.1-supported-os.md#linux)
|
||||
* macOS 10.13 or greater
|
||||
|
||||
<details> <summary> <b> Supported Public Trackers </b> </summary>
|
||||
@@ -36,7 +36,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* Badass Torrents
|
||||
* BigFANGroup
|
||||
* BitRu
|
||||
* BitTorrent.AM
|
||||
* BT.etree
|
||||
* BTDB
|
||||
* BTDIGG
|
||||
@@ -94,6 +93,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* OneJAV
|
||||
* OxTorrent
|
||||
* ParnuXi
|
||||
* PC-torrent
|
||||
* PiratBit
|
||||
* Pirateiro
|
||||
* PornLeech
|
||||
@@ -103,10 +103,10 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* ProStyleX
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTor
|
||||
* Rus-media
|
||||
* RuTor
|
||||
* RuTracker.RU
|
||||
* Seedpeer
|
||||
* shokweb
|
||||
* ShowRSS
|
||||
* SkyTorrentsClone
|
||||
@@ -114,12 +114,13 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* sosulki
|
||||
* sukebei-Pantsu
|
||||
* sukebei.Nyaa.si
|
||||
* TFile
|
||||
* The Pirate Bay (TPB)
|
||||
* TNTVillage
|
||||
* Tokyo Tosho
|
||||
* TopNow
|
||||
* Torlock
|
||||
* TOROS
|
||||
* Torrent Bomb (토렌트봄)
|
||||
* Torrent Downloads (TD)
|
||||
* Torrent Oyun indir
|
||||
* torrent-pirat
|
||||
@@ -129,6 +130,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* TorrentDownload
|
||||
* TorrentFunk
|
||||
* TorrentGalaxy (TGx)
|
||||
* TorrentHane
|
||||
* TorrentKitty
|
||||
* TorrentParadise
|
||||
* TorrentProject2
|
||||
@@ -136,7 +138,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* TorrentQuest
|
||||
* Torrents.csv
|
||||
* Torrentv
|
||||
* TorrentView
|
||||
* TorrentView (토렌트뷰)
|
||||
* Torrentz2
|
||||
* Underverse
|
||||
* UnionDHT
|
||||
@@ -152,12 +154,14 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* AlexFilm
|
||||
* AniDUB
|
||||
* ArenaBG
|
||||
* BaibaKo
|
||||
* BookTracker
|
||||
* CasStudioTV
|
||||
* Crazy's Corner
|
||||
* CzTorrent
|
||||
* DXP (Deaf Experts)
|
||||
* Deildu
|
||||
* DimeADozen (EzTorrent)
|
||||
* EniaHD
|
||||
* Erzsebet
|
||||
* ExKinoRay
|
||||
@@ -169,6 +173,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* HamsterStudio
|
||||
* IV-Torrents
|
||||
* KinoNaVse100
|
||||
* Kaztorka
|
||||
* Kinozal
|
||||
* Korsar
|
||||
* LostFilm.tv
|
||||
@@ -179,6 +184,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* MuziekFrabriek
|
||||
* NetHD (VietTorrent)
|
||||
* Pornolab
|
||||
* PussyTorrents
|
||||
* RiperAM
|
||||
* RockBox
|
||||
* RuTracker
|
||||
@@ -199,6 +205,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
|
||||
* 0day.kiev
|
||||
* 2 Fast 4 You
|
||||
* 3ChangTrai (3CT)
|
||||
* 3D Torrents (3DT)
|
||||
* 3evils
|
||||
* 4thD (4th Dimension)
|
||||
@@ -220,7 +227,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* Audiobook Torrents (ABT)
|
||||
* Avistaz (AsiaTorrents)
|
||||
* Awesome-HD (AHD)
|
||||
* BaibaKo
|
||||
* BIGTorrent
|
||||
* BIT-HDTV
|
||||
* BJ-Share (BJ)
|
||||
@@ -256,6 +262,8 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* CartoonChaos (CC)
|
||||
* CasaTorrent
|
||||
* ChannelX
|
||||
* ChileBT
|
||||
* Cinecalidad
|
||||
* CinemaMovies
|
||||
* CinemaZ (EuTorrents)
|
||||
* Cinemageddon
|
||||
@@ -267,8 +275,10 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* CrnaBerza
|
||||
* DXDHD
|
||||
* DanishBits (DB)
|
||||
* Dark-Shadow
|
||||
* Das Unerwartete
|
||||
* DataScene (DS)
|
||||
* Demon-Site
|
||||
* DesiReleasers
|
||||
* DesiTorrents
|
||||
* Diablo Torrent
|
||||
@@ -290,10 +300,10 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* ExtremeTorrents
|
||||
* FANO.IN
|
||||
* Fantastic Heaven
|
||||
* FeedUrNeed (FuN)
|
||||
* Femdomcult
|
||||
* FileList (FL)
|
||||
* Film-Paleis
|
||||
* FinElite (FE)
|
||||
* FinVip
|
||||
* FocusX
|
||||
* FreeTorrent
|
||||
@@ -337,6 +347,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* HacheDe
|
||||
* Hebits
|
||||
* Hon3y HD
|
||||
* Horror Site
|
||||
* HuSh
|
||||
* ICE Torrent
|
||||
* IPTorrents (IPT)
|
||||
@@ -398,7 +409,10 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* PrivateHD (PHD)
|
||||
* ProAudioTorrents (PAT)
|
||||
* Psytorrents
|
||||
* PTerClub
|
||||
* PTSBAO
|
||||
* PuntoTorrent
|
||||
* PuroVicio
|
||||
* R3V WTF!
|
||||
* RPTorrents
|
||||
* Racing4Everyone (R4E)
|
||||
@@ -427,6 +441,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* SnowPT (SSPT)
|
||||
* SpaceTorrent
|
||||
* SpeedCD
|
||||
* Speedmaster HD
|
||||
* SpeedTorrent Reloaded
|
||||
* Spirit of Revolution
|
||||
* SportHD
|
||||
@@ -480,6 +495,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
|
||||
* TotallyKids (TK)
|
||||
* TranceTraffic
|
||||
* Trezzor
|
||||
* TurkSeed
|
||||
* TurkTorrent (TT)
|
||||
* Twilight Torrents
|
||||
* Twilights Zoom
|
||||
|
@@ -1,7 +1,7 @@
|
||||
name: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
variables:
|
||||
majorVersion: 0
|
||||
minorVersion: 14
|
||||
minorVersion: 15
|
||||
patchVersion: $[counter(variables['minorVersion'], 1)] #this will reset when we bump minor
|
||||
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
buildConfiguration: Release
|
||||
@@ -9,11 +9,15 @@ variables:
|
||||
netCoreSdkVersion: 3.1.x
|
||||
system.debug: true
|
||||
|
||||
pr:
|
||||
autoCancel: true
|
||||
|
||||
trigger:
|
||||
batch: true
|
||||
branches:
|
||||
include:
|
||||
- '*'
|
||||
|
||||
pr:
|
||||
branches:
|
||||
include:
|
||||
- '*'
|
||||
|
||||
stages:
|
||||
- stage: BuildJackett
|
||||
@@ -250,13 +254,107 @@ stages:
|
||||
inputs:
|
||||
pathtoPublish: '$(Build.ArtifactStagingDirectory)'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Unit Tests (Windows only)
|
||||
condition: and(succeeded(), startsWith(variables['runtime'], 'win'))
|
||||
- stage: CodeStyle
|
||||
displayName: Code Style Compliance
|
||||
dependsOn: []
|
||||
jobs:
|
||||
- job: Linting
|
||||
pool:
|
||||
vmImage: ubuntu-latest
|
||||
workspace:
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
inputs:
|
||||
command: test
|
||||
packageType: sdk
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Install Dotnet Format
|
||||
inputs:
|
||||
command: custom
|
||||
custom: tool
|
||||
arguments: update -g dotnet-format
|
||||
|
||||
- task: Bash@3
|
||||
displayName: Lint Dotnet
|
||||
inputs:
|
||||
workingDirectory: $(Build.SourcesDirectory)
|
||||
targetType: inline
|
||||
failOnStderr: true
|
||||
script: |
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/DateTimeRoutines
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Common
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.IntegrationTests
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Server
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Service
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Test
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Tray
|
||||
dotnet-format --dry-run --check --verbosity diagnostic --folder ./src/Jackett.Updater
|
||||
|
||||
|
||||
- stage: UnitTestJackett
|
||||
displayName: Unit Tests
|
||||
dependsOn: CodeStyle
|
||||
jobs:
|
||||
- job: UnitTest
|
||||
workspace:
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-latest
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
Windows:
|
||||
buildDescription: Windows
|
||||
imageName: windows-latest
|
||||
framework: $(netCoreFramework)
|
||||
runtime: win-x86
|
||||
macOS:
|
||||
buildDescription: macOS
|
||||
imageName: macOS-latest
|
||||
framework: $(netCoreFramework)
|
||||
runtime: osx-x64
|
||||
LinuxAmdx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-latest
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
LinuxARM32:
|
||||
buildDescription: Linux ARM32
|
||||
imageName: ubuntu-latest
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm
|
||||
LinuxARM64:
|
||||
buildDescription: Linux ARM64
|
||||
imageName: ubuntu-latest
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
inputs:
|
||||
packageType: sdk
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Build Test Project
|
||||
inputs:
|
||||
command: build
|
||||
projects: '**/*.Test*/*.csproj'
|
||||
arguments: '--configuration $(buildConfiguration) --framework $(framework)'
|
||||
arguments: '--configuration $(buildConfiguration) --runtime $(runtime) --framework $(framework)'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Unit Tests (Mono, Linux and macOS)
|
||||
@@ -265,7 +363,39 @@ stages:
|
||||
command: test
|
||||
projects: '**/*.Test*/*.csproj'
|
||||
arguments: '--configuration $(buildConfiguration) --framework $(framework) --runtime $(runtime)'
|
||||
testRunTitle: 'Unit - $(buildDescription) - $(Build.BuildId)'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Unit Tests & Code Coverage (Windows only)
|
||||
condition: and(succeeded(), startsWith(variables['runtime'], 'win'))
|
||||
inputs:
|
||||
command: test
|
||||
projects: '**/*.Test*/*.csproj'
|
||||
arguments: '--configuration $(buildConfiguration) --framework $(framework) /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura'
|
||||
testRunTitle: 'Unit - $(buildDescription) - $(Build.BuildId)'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Install Coverage ReportGenerator Tool (Windows only)
|
||||
condition: and(succeeded(), startsWith(variables['runtime'], 'win'))
|
||||
inputs:
|
||||
command: custom
|
||||
custom: tool
|
||||
arguments: install --tool-path . dotnet-reportgenerator-globaltool
|
||||
|
||||
- task: PowerShell@2
|
||||
displayName: Generate Coverage Report (Windows only)
|
||||
condition: and(succeeded(), startsWith(variables['runtime'], 'win'))
|
||||
inputs:
|
||||
targetType: inline
|
||||
script: ./reportgenerator -reports:$(Build.SourcesDirectory)/src/*.Test*/coverage.*.cobertura.xml -targetdir:$(Build.SourcesDirectory)/coverlet/reports -reporttypes:"Cobertura"
|
||||
|
||||
- task: PublishCodeCoverageResults@1
|
||||
displayName: Publish Code Coverage (Windows only)
|
||||
condition: and(succeeded(), startsWith(variables['runtime'], 'win'))
|
||||
inputs:
|
||||
codeCoverageTool: Cobertura
|
||||
summaryFileLocation: $(Build.SourcesDirectory)/coverlet/reports/Cobertura.xml
|
||||
|
||||
|
||||
- stage: Integration
|
||||
displayName: Integration Tests
|
||||
@@ -284,11 +414,10 @@ stages:
|
||||
buildDescription: Windows
|
||||
imageName: windows-latest
|
||||
artifactName: Jackett.Binaries.Windows.zip
|
||||
# Enable once ChromeDriver is deployed to macOS image https://github.com/actions/virtual-environments/issues/7
|
||||
# macOS:
|
||||
# buildDescription: macOS
|
||||
# imageName: macOS-latest
|
||||
# artifactName: Jackett.Binaries.macOS.tar.gz
|
||||
macOS:
|
||||
buildDescription: macOS
|
||||
imageName: macOS-latest
|
||||
artifactName: Jackett.Binaries.macOS.tar.gz
|
||||
LinuxAmdx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-latest
|
||||
@@ -325,7 +454,7 @@ stages:
|
||||
cd Jackett
|
||||
if [[ "$(artifactName)" == *"Mono"* ]]; then mono --version; fi
|
||||
if [[ "$(artifactName)" == *"Mono"* ]]; then sudo ./install_service_systemd_mono.sh; fi
|
||||
if [[ "$(artifactName)" == *"macOS"* ]]; then sudo ./install_service_macos; fi
|
||||
if [[ "$(artifactName)" == *"macOS"* ]]; then ./install_service_macos; fi
|
||||
if [[ "$(artifactName)" == *"LinuxAMDx64"* ]]; then sudo ./install_service_systemd.sh; fi
|
||||
|
||||
- task: UseDotNet@2
|
||||
@@ -340,11 +469,14 @@ stages:
|
||||
inputs:
|
||||
command: test
|
||||
projects: '**/*IntegrationTest*/*.csproj'
|
||||
testRunTitle: 'Integration - $(buildDescription) - $(Build.BuildId)'
|
||||
|
||||
|
||||
- stage: PublishGithub
|
||||
displayName: Publish to Github
|
||||
dependsOn: Integration
|
||||
dependsOn:
|
||||
- UnitTestJackett
|
||||
- Integration
|
||||
condition: and(succeeded(), ne(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.SourceBranch'], 'refs/heads/master'))
|
||||
jobs:
|
||||
- job: Publish
|
||||
@@ -362,7 +494,7 @@ stages:
|
||||
- task: GitHubRelease@1
|
||||
displayName: Create Github release
|
||||
inputs:
|
||||
gitHubConnection: github.com_jackett
|
||||
gitHubConnection: JackettPublish
|
||||
repositoryName: '$(Build.Repository.Name)'
|
||||
action: create
|
||||
target: $(Build.SourceVersion)
|
||||
|
@@ -467,9 +467,9 @@ function testIndexer(id, notifyResult) {
|
||||
updateTestState(id, "error", data.error, indexers);
|
||||
if(data.responseJSON.error !== undefined && notifyResult) {
|
||||
var indexEnd = 2048 - "https://github.com/Jackett/Jackett/issues/new?title=[".length - id.length - "] ".length - " (Test)".length; // keep url <= 2k #5104
|
||||
doNotify("An error occured while testing this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + id + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Test)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
doNotify("An error occurred while testing this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + id + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Test)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occured while testing indexers, please take a look at indexers with failed test for more informations.", "danger", "glyphicon glyphicon-alert");
|
||||
doNotify("An error occurred while testing indexers, please take a look at indexers with failed test for more informations.", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -679,9 +679,9 @@ function populateSetupForm(indexerId, name, config, caps, link, alternativesitel
|
||||
}).fail(function (data) {
|
||||
if(data.responseJSON.error !== undefined) {
|
||||
var indexEnd = 2048 - "https://github.com/Jackett/Jackett/issues/new?title=[".length - indexerId.length - "] ".length - " (Config)".length; // keep url <= 2k #5104
|
||||
doNotify("An error occured while updating this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
doNotify("An error occurred while updating this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/Jackett/Jackett/issues/new?title=[" + indexerId + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for this indexer.</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occured while updating this indexer, request to Jackett server failed, is server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
doNotify("An error occurred while updating this indexer, request to Jackett server failed, is server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
}).always(function () {
|
||||
$goButton.html(originalBtnText);
|
||||
@@ -870,7 +870,7 @@ function showSearch(selectedIndexer, query, category) {
|
||||
$('#jackett-search-perform').html($('#search-button-ready').html());
|
||||
var searchResults = $('#searchResults');
|
||||
searchResults.empty();
|
||||
var datatable = updateSearchResultTable(searchResults, data).search('').columns().search('').draw();
|
||||
updateSearchResultTable(searchResults, data).search('').columns().search('').draw();
|
||||
searchResults.find('div.dataTables_filter input').focusWithoutScrolling();
|
||||
}).fail(function () {
|
||||
$('#jackett-search-perform').html($('#search-button-ready').html());
|
||||
@@ -879,7 +879,7 @@ function showSearch(selectedIndexer, query, category) {
|
||||
});
|
||||
|
||||
var searchTracker = releaseDialog.find("#searchTracker");
|
||||
var searchCategory = releaseDialog.find('#searchCategory')
|
||||
var searchCategory = releaseDialog.find('#searchCategory');
|
||||
searchCategory.multiselect({
|
||||
maxHeight: 400,
|
||||
enableFiltering: true,
|
||||
@@ -927,7 +927,7 @@ $.fn.dataTable.ext.search = [
|
||||
function (settings, data, dataIndex) {
|
||||
if (settings.sInstance != "jackett-search-results-datatable")
|
||||
return true;
|
||||
var deadfiltercheckbox = $(settings.nTableWrapper).find(".dataTables_deadfilter input")
|
||||
var deadfiltercheckbox = $(settings.nTableWrapper).find(".dataTables_deadfilter input");
|
||||
if (!deadfiltercheckbox.length) {
|
||||
return true;
|
||||
}
|
||||
@@ -936,7 +936,7 @@ $.fn.dataTable.ext.search = [
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
]
|
||||
];
|
||||
|
||||
function updateSearchResultTable(element, results) {
|
||||
var resultsTemplate = Handlebars.compile($("#jackett-search-results").html());
|
||||
@@ -990,6 +990,34 @@ function updateSearchResultTable(element, results) {
|
||||
],
|
||||
fnPreDrawCallback: function () {
|
||||
var table = this;
|
||||
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
if (!inputSearch.attr("custom")) {
|
||||
var newInputSearch = inputSearch.clone();
|
||||
newInputSearch.attr("custom", "true");
|
||||
newInputSearch.attr("data-toggle", "tooltip");
|
||||
newInputSearch.attr("title", "Search query consists of several keywords.\nKeyword starting with \"-\" is considered a negative match.");
|
||||
newInputSearch.on("input", function () {
|
||||
var newKeywords = [];
|
||||
var filterTextKeywords = $(this).val().split(" ");
|
||||
$.each(filterTextKeywords, function(index, keyword) {
|
||||
if (keyword === "" || keyword === "+" || keyword === "-")
|
||||
return;
|
||||
var newKeyword;
|
||||
if (keyword.startsWith("+"))
|
||||
newKeyword = $.fn.dataTable.util.escapeRegex(keyword.substring(1));
|
||||
else if (keyword.startsWith("-"))
|
||||
newKeyword = "^((?!" + $.fn.dataTable.util.escapeRegex(keyword.substring(1)) + ").)*$";
|
||||
else
|
||||
newKeyword = $.fn.dataTable.util.escapeRegex(keyword);
|
||||
newKeywords.push(newKeyword);
|
||||
});
|
||||
var filterText = newKeywords.join(" ");
|
||||
table.api().search(filterText, true, true).draw();
|
||||
});
|
||||
inputSearch.replaceWith(newInputSearch);
|
||||
}
|
||||
|
||||
var deadfilterdiv = element.find(".dataTables_deadfilter");
|
||||
var deadfiltercheckbox = deadfilterdiv.find("input");
|
||||
if (!deadfiltercheckbox.length) {
|
||||
|
@@ -691,6 +691,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20200316"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20200410"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -5,6 +5,7 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://1337x.to/
|
||||
- https://1337x.gd/
|
||||
@@ -13,7 +14,17 @@
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.one/
|
||||
- https://1337.root.yt/
|
||||
- https://1337x.unblockninja.com/
|
||||
- https://1337x.black-mirror.xyz/
|
||||
- https://1337x.unblocked.casa/
|
||||
- https://1337x.proxyportal.fun/
|
||||
- https://1337x.uk-unblock.xyz/
|
||||
- https://1337x.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://1337x.unblocked.earth/
|
||||
- https://1337x.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -44,12 +55,12 @@
|
||||
- {id: 3, cat: Movies, desc: "Movies/SVCD/VCD"}
|
||||
- {id: 4, cat: Movies/Foreign, desc: "Movies/Dubs/Dual Audio"}
|
||||
- {id: 42, cat: Movies/HD, desc: "Movies/HD"}
|
||||
- {id: 54, cat: Movies, desc: "Movies/h.264/x264"}
|
||||
- {id: 54, cat: Movies/HD, desc: "Movies/h.264/x264"}
|
||||
- {id: 55, cat: Movies, desc: "Movies/Mp4"}
|
||||
- {id: 66, cat: Movies/3D, desc: "Movies/3D"}
|
||||
- {id: 70, cat: Movies, desc: "Movies/HEVC/x265"}
|
||||
- {id: 70, cat: Movies/HD, desc: "Movies/HEVC/x265"}
|
||||
- {id: 73, cat: Movies, desc: "Movies/Bollywood"}
|
||||
- {id: 76, cat: Movies, desc: "Movies/UHD"}
|
||||
- {id: 76, cat: Movies/UHD, desc: "Movies/UHD"}
|
||||
|
||||
#TV
|
||||
- {id: 5, cat: TV, desc: "TV/DVD"}
|
||||
@@ -138,7 +149,7 @@
|
||||
"asc": "asc"
|
||||
|
||||
download:
|
||||
# the .torrent url is on the on the details page
|
||||
# the .torrent url is on the on the details page
|
||||
selector: ul li a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
|
||||
@@ -148,7 +159,7 @@
|
||||
- path: "{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}sort-search{{else}}cat/Movies{{end}}{{if or (.Query.Album) (.Query.Artist) }}/{{ or (.Query.Album) (.Query.Artist) }}{{else}}/{{ .Keywords }}{{end}}{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}/{{else}}{{end}}{{ .Config.sort }}/{{ .Config.type }}/1/"
|
||||
- path: "{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}sort-search{{else}}cat/TV{{end}}{{if or (.Query.Album) (.Query.Artist) }}/{{ or (.Query.Album) (.Query.Artist) }}{{else}}/{{ .Keywords }}{{end}}{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}/{{else}}{{end}}{{ .Config.sort }}/{{ .Config.type }}/{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}2{{else}}1{{end}}/"
|
||||
- path: "{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}sort-search{{else}}cat/Music{{end}}{{if or (.Query.Album) (.Query.Artist) }}/{{ or (.Query.Album) (.Query.Artist) }}{{else}}/{{ .Keywords }}{{end}}{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}/{{else}}{{end}}{{ .Config.sort }}/{{ .Config.type }}/{{if or (.Query.Album) (.Query.Artist) (.Keywords) }}3{{else}}1{{end}}/"
|
||||
keywordsfilters:
|
||||
keywordsfilters:
|
||||
- name: replace # use this as a workaround till #893 is implemented
|
||||
args: ["Greys Anatomy", "Grey's Anatomy"]
|
||||
|
||||
@@ -157,13 +168,21 @@
|
||||
|
||||
fields:
|
||||
title:
|
||||
# the movies, tv and music pages abbreviate the title so we process the href instead. #8137
|
||||
selector: td[class^="coll-1"] a[href^="/torrent/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: ["/", 3]
|
||||
- name: re_replace
|
||||
args: ["(-+)", " "]
|
||||
- name: replace
|
||||
args: ["Grey's Anatomy", "Greys Anatomy"]
|
||||
- name: replace
|
||||
args: ["\u000f", ""] # get rid of unwanted character
|
||||
category:
|
||||
text: 40
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: td[class^="coll-1"] a[href^="/sub/"]
|
||||
attribute: href
|
||||
|
160
src/Jackett.Common/Definitions/3changtrai.yml
Normal file
160
src/Jackett.Common/Definitions/3changtrai.yml
Normal file
@@ -0,0 +1,160 @@
|
||||
---
|
||||
site: 3changtrai
|
||||
name: 3ChangTrai
|
||||
description: "3ChangTrai (3CT) is a VIETNAMESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
language: vi-vn
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://3changtrai.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies"}
|
||||
- {id: 402, cat: TV, desc: "TV Series"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations"}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports"}
|
||||
- {id: 408, cat: Audio, desc: "HQ Audio"}
|
||||
- {id: 410, cat: PC, desc: "Software"}
|
||||
- {id: 411, cat: Books, desc: "Documents"}
|
||||
- {id: 412, cat: PC/Games, desc: "Games"}
|
||||
|
||||
modes:
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"4": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("Đăng nhập thất bại!")) # Login failed!
|
||||
- selector: td.embedded:has(h2:contains("Thất bại")) # Failure (captcha)
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 incldead 1 active 2 dead
|
||||
incldead: 0
|
||||
# 0 all 1 normal 2 free 3 2x 4 2xfree 5 50% 6 2x50% 7 30%
|
||||
spstate: 0
|
||||
# 0 title 1 descr 3 uploader 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
|
||||
# 0 AND 1 OR 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
date:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +07:00"
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date:
|
||||
# time added
|
||||
selector: td:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +07:00"
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
@@ -92,7 +92,7 @@
|
||||
tags_type: 0
|
||||
|
||||
rows:
|
||||
selector: table#torrent_table > tbody > tr.torrent
|
||||
selector: table#torrent_table > tbody > tr.torrent:has(a[href^="torrents.php?action=download&id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -35,7 +35,7 @@
|
||||
paths:
|
||||
- path: search
|
||||
inputs:
|
||||
query: "{{ if .Keywords }}{{ .Keywords }}{{else}}2020{{end}}"
|
||||
query: "{{ if .Keywords }}{{ .Keywords }}{{else}} {{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
||||
rows:
|
||||
|
@@ -7,6 +7,8 @@
|
||||
followredirect: true
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.36dm.club/
|
||||
legacylinks:
|
||||
- https://www.acgsou.com/
|
||||
|
||||
caps:
|
||||
|
@@ -152,6 +152,5 @@
|
||||
img[src="./styles/images/tor_silver.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
text: 1
|
||||
# engine n/a
|
||||
|
@@ -14,7 +14,7 @@
|
||||
categorymappings:
|
||||
# HRS
|
||||
- {id: 34, cat: Movies/HD, desc: "1080p HRS x264"}
|
||||
- {id: 47, cat: Movies/HD, desc: "2160p 4k UltraHD HRS"}
|
||||
- {id: 47, cat: Movies/UHD, desc: "2160p 4k UltraHD HRS"}
|
||||
- {id: 35, cat: TV, desc: "Serie TV HRS"}
|
||||
- {id: 36, cat: Movies/SD, desc: "DVDRip HRS"}
|
||||
- {id: 41, cat: Movies/SD, desc: "BDRip 576p HRS"}
|
||||
@@ -38,7 +38,7 @@
|
||||
- {id: 42, cat: TV, desc: "Serie Tv Sub Ita"}
|
||||
- {id: 15, cat: TV/Documentary, desc: "documentaries"}
|
||||
- {id: 33, cat: TV, desc: "mp4"}
|
||||
- {id: 40, cat: TV/HD, desc: "2160p 4K UltraHD"}
|
||||
- {id: 40, cat: TV/UHD, desc: "2160p 4K UltraHD"}
|
||||
- {id: 38, cat: XXX, desc: "xXx"}
|
||||
- {id: 43, cat: Other, desc: "Arabic for social"}
|
||||
|
||||
|
@@ -6,6 +6,8 @@
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://arenabg.ch/
|
||||
legacylinks:
|
||||
- https://arenabg.com/
|
||||
|
||||
caps:
|
||||
|
@@ -46,17 +46,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -65,13 +68,9 @@
|
||||
- name: regexp
|
||||
args: "Ratio : (\\d+)"
|
||||
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: filterTorrents
|
||||
- path: torrents/filter
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
@@ -81,6 +80,7 @@
|
||||
tvdb: ""
|
||||
tmdb: ""
|
||||
mal: ""
|
||||
igdb: ""
|
||||
sorting: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
@@ -95,11 +95,11 @@
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "/categories/.*?\\.(\\d+)"
|
||||
args: "/categories/(\\d+)"
|
||||
title:
|
||||
selector: a.view-torrent
|
||||
download:
|
||||
selector: a[href*="/download_check/"]
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
details:
|
||||
selector: a.view-torrent
|
||||
@@ -134,7 +134,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
@@ -179,4 +179,4 @@
|
||||
i[class*="fa-globe text-green"]: 2 # Global Double Upload
|
||||
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
|
||||
"*": 1
|
||||
# UNIT3D 1.9.3
|
||||
# UNIT3D 2.2.7
|
||||
|
@@ -97,6 +97,8 @@
|
||||
filters:
|
||||
- name: regexp
|
||||
args: Tip\('<b>(.*?)</b>
|
||||
- name: replace
|
||||
args: ["\\", ""]
|
||||
details:
|
||||
selector: a[href^="details.php?id="][onmouseover]
|
||||
attribute: href
|
||||
|
@@ -1,101 +0,0 @@
|
||||
---
|
||||
site: awesomehd
|
||||
name: Awesome-HD
|
||||
description: "An HD tracker"
|
||||
language: en-us
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://awesome-hd.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/HD, desc: "Movies"}
|
||||
- {id: 2, cat: TV/HD, desc: "TV-Shows"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- 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_login
|
||||
type: info
|
||||
label: "Password Changes"
|
||||
default: "This site forces you to change your <b>Password</b> every <b>90 days</b>.<br/>If you get a <b>Login Failed, got redirected</b> error, then access the site with your browser and check if you need to change your password. Logout after saving, and update this config to login."
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form#loginform
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
keeplogged: 1
|
||||
error:
|
||||
- selector: form#loginform .warning
|
||||
test:
|
||||
path: torrents.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
|
||||
searchstr: "{{ .Keywords }}"
|
||||
page: torrents
|
||||
order_by: "{{ .Config.sort }}"
|
||||
order_way: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table#torrent_table > tbody > tr.group, tr.torrent, tr.group_torrent:not(.edition_info)
|
||||
|
||||
fields:
|
||||
download:
|
||||
selector: a[href^="torrents.php?action=download&id="]
|
||||
attribute: href
|
||||
optional: true
|
||||
details:
|
||||
selector: a[href^="torrents.php?id="]
|
||||
attribute: href
|
||||
title:
|
||||
selector: td:nth-child(3) > a
|
||||
category:
|
||||
selector: td:nth-child(2)
|
||||
date:
|
||||
selector: td:nth-last-child(5)
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
grabs:
|
||||
selector: td:nth-last-child(3)
|
||||
seeders:
|
||||
selector: td:nth-last-child(2)
|
||||
leechers:
|
||||
selector: td:nth-last-child(1)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
@@ -57,15 +57,15 @@
|
||||
selector: a[href*="/torrent/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(3)
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: timeago
|
||||
size:
|
||||
selector: td:nth-child(4)
|
||||
seeders:
|
||||
selector: td:nth-child(5)
|
||||
leechers:
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -1,9 +1,9 @@
|
||||
---
|
||||
site: baibako
|
||||
name: BaibaKo
|
||||
description: "BaibaKo is a RUSSIAN Private Torrent Tracker for TV"
|
||||
description: "BaibaKo is a RUSSIAN Semi-Private Torrent Tracker for TV"
|
||||
language: ru-ru
|
||||
type: private
|
||||
type: semi-private
|
||||
encoding: windows-1251
|
||||
links:
|
||||
- http://baibako.tv/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID
|
||||
|
@@ -71,8 +71,8 @@
|
||||
incldead: 0
|
||||
# 0 all 1 normal 2 free 3 2x 4 2xfree 5 50% 6 2x50% 7 30%
|
||||
spstate: 0
|
||||
# 0 title 1 descr 3 uploaded 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
|
||||
# 0 title 1 descr 3 uploaded 4 imdburl (searching imdburl does not work with tt1234567, but descr is good)
|
||||
search_area: "{{ if .Query.IMDBID }}1{{else}}0{{end}}"
|
||||
# 0 AND 1 OR 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
@@ -45,6 +45,7 @@
|
||||
login:
|
||||
path: login
|
||||
method: form
|
||||
form: form[action$="/login"]
|
||||
captcha:
|
||||
type: text
|
||||
selector: div[style*="#999999;"]
|
||||
@@ -53,10 +54,17 @@
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
remember: on
|
||||
selectorinputs:
|
||||
_token:
|
||||
selector: input[name="_token"]
|
||||
attribute: value
|
||||
error:
|
||||
- selector: div.has-error
|
||||
test:
|
||||
path: torrents
|
||||
- selector: form[action$="/login"] .text-red
|
||||
- selector: script:contains("toastr.error")
|
||||
message:
|
||||
selector: script:contains("toastr.error")
|
||||
# test:
|
||||
# path: torrents
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -88,7 +88,7 @@
|
||||
|
||||
search:
|
||||
# https://bigfangroup.org/browse.php?search=black+lightning&cat=0&incldead=0&year=0&format=0
|
||||
#
|
||||
#
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
@@ -184,10 +184,7 @@
|
||||
- name: dateparse
|
||||
args: "2 January 2006 15:04:05"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
img[src="pic/silverdown.gif"]: 0
|
||||
"*": 1
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
|
@@ -56,13 +56,17 @@
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: info_alert
|
||||
type: info
|
||||
label: Alert about Cookie
|
||||
default: "If during your cookie save you get the following error:</br><b>The 'Value'='xzlogin,xzrecover,xzsignup' part of the cookie is invalid.</b></br>Then remove <b>acopendivids=xzlogin,xzrecover,xzsignup; </b> from the cookie string before proceeding to save."
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
@@ -1,83 +0,0 @@
|
||||
---
|
||||
site: bittorrentam
|
||||
name: Bittorrent.AM
|
||||
description: "Bittorrent.AM is a Public torrent index"
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.bittorrent.am/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 0, cat: XXX, desc: "Adult"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Anime / Hentai"}
|
||||
- {id: 2, cat: PC, desc: "Apps"}
|
||||
- {id: 3, cat: Console, desc: "Games"}
|
||||
- {id: 4, cat: Movies, desc: "Movies"}
|
||||
- {id: 5, cat: Audio, desc: "Music"}
|
||||
- {id: 6, cat: Other, desc: "Other"}
|
||||
- {id: 7, cat: TV, desc: "Series / TV Shows"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "pdd"
|
||||
options:
|
||||
"pdd": "created desc"
|
||||
"pd": "created asc"
|
||||
"sdsd": "seeders desc"
|
||||
"sds": "seeders asc"
|
||||
"szd": "size desc"
|
||||
"sz": "size asc"
|
||||
"td": "title desc"
|
||||
"t": "title asc"
|
||||
|
||||
download:
|
||||
selector: a[ href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search.php?kwds={{ .Keywords }}&ord={{ .Config.sort }}&cat=100{{else}}/{{end}}"
|
||||
rows:
|
||||
selector: table.torrentsTable:has(tr.r) tbody tr.r
|
||||
fields:
|
||||
category:
|
||||
text: 6
|
||||
title:
|
||||
selector: td:nth-child(3) a
|
||||
details:
|
||||
selector: td:nth-child(3) a
|
||||
attribute: href
|
||||
download:
|
||||
selector: td:nth-child(3) a
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(1)
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "02 Jan 2006"
|
||||
size:
|
||||
selector: td:nth-child(4)
|
||||
seeders:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["-", "1"]
|
||||
leechers:
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["-", "0"]
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -22,13 +22,12 @@
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
- name: username
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -47,12 +46,22 @@
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
path: login
|
||||
method: form
|
||||
form: form[action$="/login"]
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
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"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -127,7 +136,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -26,7 +26,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
@@ -5,12 +5,20 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://btdb.io/
|
||||
- https://btdb.io/
|
||||
- https://btdb.unblockit.one/ # redirects to btdb.io in browser but appears to have no issue in Jackett
|
||||
- https://btdb.black-mirror.xyz/
|
||||
- https://btdb.unblocked.casa/
|
||||
- https://btdb.proxyportal.fun/
|
||||
- https://btdb.uk-unblock.xyz/
|
||||
- https://btdb.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://btdb.to/
|
||||
- https://btdb.unblocked.app/
|
||||
- https://btdb.eu/
|
||||
- https://btdb.to/
|
||||
- https://btdb.unblocked.app/
|
||||
- https://btdb.eu/
|
||||
- https://btdb.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -7,6 +7,17 @@
|
||||
encoding: ISO-8859-2
|
||||
links:
|
||||
- https://btgigs.info/
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: lang
|
||||
type: checkbox
|
||||
label: Add POLISH to title if is in polish category
|
||||
default: false
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -30,6 +41,7 @@
|
||||
- {id: 26, cat: Other, desc: "Rozne"}
|
||||
- {id: 30, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 6, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 37, cat: TV/UHD, desc: "TV/UHD"}
|
||||
- {id: 29, cat: PC, desc: "Witaminki"}
|
||||
- {id: 9, cat: XXX, desc: "XXX"}
|
||||
|
||||
@@ -49,11 +61,13 @@
|
||||
- selector: td.embedded:has(h2:contains("Error"))
|
||||
test:
|
||||
selector: a[href^="logout.php"]
|
||||
path: browse.php
|
||||
|
||||
path: index.php?news=1
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
error:
|
||||
- selector: a.altlink
|
||||
inputs:
|
||||
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Query.Keywords }}"
|
||||
@@ -64,8 +78,21 @@
|
||||
rows:
|
||||
selector: table[border="1"][cellpadding=5] > tbody > tr:has(a[href^="details.php?id="])
|
||||
fields:
|
||||
title:
|
||||
is_polish: #Workaround: https://github.com/Jackett/Jackett/issues/8068#issuecomment-610222414
|
||||
text: ""
|
||||
is_polish:
|
||||
optional: true
|
||||
selector: img[src*="cat_pl"]
|
||||
attribute: src
|
||||
title_phase1:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_polish:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: append
|
||||
args: " POLISH"
|
||||
title:
|
||||
text: "{{ if and (.Config.lang) (.Result.is_polish) }}{{ .Result.title_polish }}{{else}}{{ .Result.title_phase1 }}{{end}}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -77,7 +104,7 @@
|
||||
args: cat
|
||||
download:
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
attribute: href
|
||||
description:
|
||||
optional: true
|
||||
selector: img[src^="/pic/cat_pl/"]
|
||||
|
@@ -24,7 +24,10 @@
|
||||
- {id: 16, cat: Movies/SD, desc: "Movies CAM"}
|
||||
- {id: 74, cat: Movies/DVD, desc: "Movies DvD-R"}
|
||||
- {id: 76, cat: Movies, desc: "Movies Packs"}
|
||||
- {id: 91, cat: Movies/Other, desc: "Movies Kids"}
|
||||
- {id: 115, cat: Movies/Other, desc: "Movies Kids"}
|
||||
- {id: 91, cat: Movies/Other, desc: "Movies Kids Inglês"}
|
||||
- {id: 113, cat: Movies/Other, desc: "Movies Kids PT-BR"}
|
||||
- {id: 114, cat: Movies/Other, desc: "Movies Kids PT-PT"}
|
||||
- {id: 77, cat: Movies/WEBDL, desc: "Movies WEB-DL"}
|
||||
- {id: 85, cat: Movies/DVD, desc: "Movies Custom-DVDR"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Movies DVDRip/XViD"}
|
||||
@@ -49,13 +52,14 @@
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music MVideo"}
|
||||
- {id: 21, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 33, cat: Audio/Other, desc: "Music MP4"}
|
||||
- {id: 33, cat: Audio/Video, desc: "Music MP4"}
|
||||
- {id: 32, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 2, cat: Console, desc: "Games"}
|
||||
- {id: 78, cat: PC/Games, desc: "Games Linux"}
|
||||
- {id: 79, cat: PC/Mac, desc: "Games MacOSX"}
|
||||
- {id: 28, cat: Console/NDS, desc: "Games Nintendo DS"}
|
||||
- {id: 27, cat: PC/Games, desc: "Games PC/Windows"}
|
||||
- {id: 111, cat: Console, desc: "Games Nintendo Sw"}
|
||||
- {id: 80, cat: Console/PS3, desc: "Games PS2"}
|
||||
- {id: 81, cat: Console/PS3, desc: "Games PS3"}
|
||||
- {id: 82, cat: Console/PS4, desc: "Games PS4"}
|
||||
@@ -70,10 +74,10 @@
|
||||
- {id: 34, cat: PC/ISO, desc: "Applications Linux"}
|
||||
- {id: 44, cat: Other, desc: "Miscellaneous"}
|
||||
- {id: 54, cat: Audio/Audiobook, desc: "Books Audiobook"}
|
||||
- {id: 57, cat: Books, desc: "Books E-Books"}
|
||||
- {id: 57, cat: Books/Ebook, desc: "Books E-Books"}
|
||||
- {id: 58, cat: Books/Comics, desc: "Books Comics"}
|
||||
- {id: 59, cat: Books, desc: "Books Educational"}
|
||||
- {id: 60, cat: Books, desc: "Books Magazines/Journals"}
|
||||
- {id: 60, cat: Books/Magazines, desc: "Books Magazines/Journals"}
|
||||
- {id: 61, cat: Other, desc: "Pics/Wallpapers"}
|
||||
- {id: 62, cat: PC/Phone-Android, desc: "Android"}
|
||||
- {id: 63, cat: PC/Phone-IOS, desc: "iOS"}
|
||||
@@ -92,9 +96,9 @@
|
||||
- {id: 69, cat: XXX/Imageset, desc: "XXX-Pics/Wallpapers"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -122,6 +126,10 @@
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
- name: info_results
|
||||
type: info
|
||||
label: Search results
|
||||
default: "If you get 0 results check the log for error: <b>An error has occurred!You can't view this page unless you read all your unread messages</b>, then access the site with your browser and <b>mark as read</b> all PMs."
|
||||
|
||||
login:
|
||||
path: ?p=home&pid=1
|
||||
@@ -155,9 +163,9 @@
|
||||
p: torrents
|
||||
pid: 32
|
||||
$raw: "{{ range .Categories }}cid[]={{.}}&{{end}}"
|
||||
keywords: "{{ .Keywords }}"
|
||||
search_type: name
|
||||
searchin: title
|
||||
keywords: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# name , description , both , uploader
|
||||
search_type: "{{ if .Query.IMDBID }}description{{else}}name{{end}}"
|
||||
"sortOptions[sortBy]": "{{ .Config.sort }}"
|
||||
"sortOptions[sortOrder]": "{{ .Config.type }}"
|
||||
error:
|
||||
@@ -193,28 +201,62 @@
|
||||
selector: a[rel="fancybox"]
|
||||
optional: true
|
||||
attribute: href
|
||||
imdb:
|
||||
# a href="http://tracker.btnext.com/data/torrents/imdb/tt0249677.jpg"
|
||||
optional: true
|
||||
selector: a[href*="/imdb/tt"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "imdb/(.+?).jpg"
|
||||
- name: prepend
|
||||
args: "https://www.imdb.com/title/"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"img[title=\"FREE!\"]": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
text: 1
|
||||
date:
|
||||
selector: td.torrent_name > abbr.timeago
|
||||
optional: true
|
||||
attribute: data-time
|
||||
date:
|
||||
selector: td.torrent_name:not(:has(abbr.timeago))
|
||||
selector: td.torrent_name:not(:has(abbr.timeago)):not(:contains("day")):not(:contains("Domingo")):not(:contains("Sábado")):not(:contains("Sexta")):not(:contains("Quinta")):not(:contains("Quarta")):not(:contains("Terça")):not(:contains("Segunda")):not(:contains("ontem")):not(:contains("Hoje"))
|
||||
optional: true
|
||||
remove: span, a, br
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Enviado ", ""] # Uploaded
|
||||
- name: replace
|
||||
args: ["Uploaded ", ""]
|
||||
- name: replace
|
||||
args: [" por", ""] # by
|
||||
- name: replace
|
||||
args: [" by", ""]
|
||||
- name: replace
|
||||
args: ["às ", ""] # at
|
||||
- name: replace
|
||||
args: ["at ", ""]
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
date:
|
||||
selector: td.torrent_name:not(:has(abbr.timeago)):contains("day"), td.torrent_name:not(:has(abbr.timeago)):contains("Domingo"), td.torrent_name:not(:has(abbr.timeago)):contains("Sábado"), td.torrent_name:not(:has(abbr.timeago)):contains("Quinta"), td.torrent_name:not(:has(abbr.timeago)):contains("Sexta"), td.torrent_name:not(:has(abbr.timeago)):contains("Quarta"), td.torrent_name:not(:has(abbr.timeago)):contains("Terça"), td.torrent_name:not(:has(abbr.timeago)):contains("Segunda"), td.torrent_name:not(:has(abbr.timeago)):contains("ontem"), td.torrent_name:not(:has(abbr.timeago)):contains("Hoje")
|
||||
optional: true
|
||||
remove: span, a, br
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Enviado ", ""] # Uploaded
|
||||
- name: replace
|
||||
args: ["Uploaded ", ""]
|
||||
- name: replace
|
||||
args: [" por", ""] # by
|
||||
- name: replace
|
||||
args: [" by", ""]
|
||||
- name: replace
|
||||
args: ["às ", ""] # at
|
||||
- name: replace
|
||||
args: ["at ", ""]
|
||||
- name: replace
|
||||
args: ["Hoje", "Today"]
|
||||
- name: replace
|
||||
@@ -233,6 +275,5 @@
|
||||
args: ["Sábado", "Saturday"]
|
||||
- name: replace
|
||||
args: ["Domingo", "Sunday"]
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
- name: fuzzytime
|
||||
# TSUE 2.2
|
||||
|
@@ -34,7 +34,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
|
@@ -38,9 +38,33 @@
|
||||
- {id: 110, cat: XXX, desc: "XXX"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "5"
|
||||
options:
|
||||
"5": "created"
|
||||
"8": "seeders"
|
||||
"6": "size"
|
||||
"2": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -55,13 +79,18 @@
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}https://www.imdb.com/title/{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 both 1 only active 2 only dead
|
||||
incldead: 0
|
||||
onlyname: 1
|
||||
onlyname2: true
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table[id!="torrent_ajanlo"] > tbody > tr[id]
|
||||
|
||||
fields:
|
||||
download:
|
||||
selector: a[href^="download.php/"]
|
||||
@@ -84,7 +113,7 @@
|
||||
selector: a[id][href^="details.php?"]
|
||||
attribute: href
|
||||
imdb:
|
||||
selector: a[href*="https://www.imdb.com/title/"]
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
optional: true
|
||||
attribute: href
|
||||
banner:
|
||||
@@ -99,7 +128,7 @@
|
||||
selector: td:nth-child(7)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([\d\.]+)
|
||||
args: (\d+)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
@@ -123,9 +152,10 @@
|
||||
args: ["hete", "week"]
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"*": "1"
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src="pic/double.png"]: "2"
|
||||
"*": "1"
|
||||
img[src="pic/double.png"]: 2
|
||||
img[src="pic/doubledouble2.png"]: 4
|
||||
"*": 1
|
||||
# TBDev & XBTT
|
||||
|
@@ -6,10 +6,11 @@
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://teamctgame.xyz/
|
||||
- https://tctg.in/
|
||||
legacylinks:
|
||||
- https://teamctgame.co/
|
||||
- http://teamctgame.xyz/
|
||||
- https://teamctgame.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -162,7 +163,7 @@
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "le: </b>(.*?)<br"
|
||||
args: "le: </b>(.*?)<br"
|
||||
- name: dateparse
|
||||
args: "02-01-2006"
|
||||
downloadvolumefactor:
|
||||
|
@@ -49,17 +49,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -134,7 +137,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
@@ -179,4 +182,4 @@
|
||||
i[class*="fa-globe text-green"]: 2 # Global Double Upload
|
||||
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
|
||||
"*": 1
|
||||
# UNIT3D 2.2.5
|
||||
# UNIT3D 2.2.7
|
||||
|
191
src/Jackett.Common/Definitions/chilebt.yml
Normal file
191
src/Jackett.Common/Definitions/chilebt.yml
Normal file
@@ -0,0 +1,191 @@
|
||||
---
|
||||
site: chilebt
|
||||
name: ChileBT
|
||||
description: "ChileBT is a CHILEAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: es-419
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://chilebt.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 10, cat: Movies, desc: "Movies"}
|
||||
- {id: 11, cat: TV, desc: "TV"}
|
||||
- {id: 9, cat: Audio, desc: "Music"}
|
||||
- {id: 7, cat: Other, desc: "Cultura / Educativos"}
|
||||
- {id: 8, cat: PC/Games, desc: "Juegos"}
|
||||
- {id: 6, cat: Books, desc: "EBook"}
|
||||
- {id: 4, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 5, cat: PC/0day, desc: "Aplicaciones / Programas"}
|
||||
- {id: 14, cat: Movies, desc: "Infantil"}
|
||||
- {id: 12, cat: Other/Misc, desc: "VIP"}
|
||||
- {id: 13, cat: XXX, desc: "XXX"}
|
||||
|
||||
modes:
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- 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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
selector: li:has(i.fa-sync-alt)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Ratio : (\\d+)"
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: filterTorrents
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
description: ""
|
||||
uploader: ""
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
tvdb: ""
|
||||
tmdb: ""
|
||||
mal: ""
|
||||
sorting: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
qty: 100
|
||||
|
||||
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
|
||||
banner:
|
||||
optional: true
|
||||
selector: div.torrent-poster img
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/600x900", ""]
|
||||
comments:
|
||||
selector: a[href*="#comments"]
|
||||
attribute: href
|
||||
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)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
imdb:
|
||||
optional: true
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "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)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时)", " hour"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen)", "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)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周)", " 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)", "months"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月)", " 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"]
|
||||
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
|
||||
# UNIT3D 1.9.3
|
@@ -42,7 +42,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
@@ -50,15 +50,21 @@
|
||||
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: form[action$="/login"] .text-red
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
selector: span:has(i.fa-percent)
|
||||
|
@@ -51,7 +51,28 @@
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings: []
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
default: "<ol><li>From the same place you fetched the cookie,<li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
user-agent: "[ .Config.useragent ]"
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
@@ -59,8 +80,11 @@
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://vww.cpasbien-fr.fr/index.php?do=search&subaction=search&story=dickinson%20s01e10
|
||||
- path: "{{ if .Keywords }}index.php?do=search&subaction=search&story={{ .Keywords }}{{else}}{{end}}"
|
||||
- path: "{{ if .Keywords }}index.php?do=search&subaction=search{{else}}{{end}}"
|
||||
method: post
|
||||
inputs:
|
||||
story: "{{ if .Keywords }}{{ .Keywords }}{{else}}{{end}}"
|
||||
# does not support imdbid search and does not return imdb link in results.
|
||||
|
||||
rows:
|
||||
selector: div#gauche > table > tbody > tr:has(a)
|
||||
|
@@ -7,11 +7,17 @@
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www1.cpasbiens.cm/
|
||||
- https://cpasbien.to/
|
||||
- https://cpasbiens.black-mirror.xyz/
|
||||
- https://cpasbiens.unblocked.casa/
|
||||
- https://cpasbiens.proxyportal.fun/
|
||||
- https://cpasbiens.uk-unblock.xyz/
|
||||
- https://cpasbiens.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://www1.cpasbiens.ws/
|
||||
- https://www2.cpasbiens.ws/
|
||||
- https://cpasbiens.cm/
|
||||
- https://www1.cpasbiens.cm/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -45,7 +51,7 @@
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ .Config.sort }}{{else}}{{end}}"
|
||||
- path: "{{ if .Keywords }}search_torrent/{{ .Keywords }}{{ .Config.sort }}{{else}}{{end}}"
|
||||
|
||||
rows:
|
||||
selector: table.table-corps > tbody > tr:has(a)
|
||||
@@ -56,9 +62,9 @@
|
||||
site_date:
|
||||
selector: a
|
||||
filters:
|
||||
# date is at the end of the title, so we get it and name it site_date
|
||||
# year can be at the end of the title, so we get it and name it site_date
|
||||
- name: regexp
|
||||
args: "(\\w+)$"
|
||||
args: "(\\d{4})$"
|
||||
title:
|
||||
selector: a
|
||||
filters:
|
||||
@@ -73,7 +79,7 @@
|
||||
args: ["VOSTFR", "{{ .Result.site_date }} VOSTFR"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(\\w+)$", ""]
|
||||
args: ["(\\d{4})$", ""]
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
|
@@ -129,6 +129,7 @@
|
||||
details:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
# rows have download but site requires thanks so we use dl from details
|
||||
download:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
@@ -153,6 +154,7 @@
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="_flags/freedownload.gif"]: 0
|
||||
img[src$="_flags/silverdownload.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
|
@@ -108,7 +108,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
275
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
275
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
@@ -0,0 +1,275 @@
|
||||
---
|
||||
site: dark-shadow
|
||||
name: Dark-Shadow
|
||||
description: "Dark-Shadow is a German Private site for TV / MOVIES / GENERAL"
|
||||
language: de-de
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://dark-shadow.me/
|
||||
legacylinks:
|
||||
- https://dark-shadow.ml/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Film
|
||||
- {id: 32, cat: Movies/HD, desc: "Film HD"}
|
||||
- {id: 28, cat: Movies/SD, desc: "Film SD"}
|
||||
- {id: 119, cat: Movies/DVD, desc: "Film DVD"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Film 4K/2160p"}
|
||||
- {id: 26, cat: Movies/3D, desc: "Film 3D"}
|
||||
# Serien
|
||||
- {id: 57, cat: TV/HD, desc: "Serien HD"}
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 59, cat: TV, desc: "Serien Pack"}
|
||||
- {id: 122, cat: TV, desc: "Serien Show"}
|
||||
- {id: 123, cat: TV/Documentary, desc: "Serien Doku"}
|
||||
# Doku
|
||||
- {id: 14, cat: TV/Documentary, desc: "Doku HD"}
|
||||
- {id: 15, cat: TV/Documentary, desc: "Doku SD"}
|
||||
# Spiele
|
||||
- {id: 17, cat: PC/Games, desc: "Spiele PC"}
|
||||
- {id: 24, cat: Console, desc: "Spiele Konsole"}
|
||||
- {id: 121, cat: Console, desc: "Spiele Wimmelbild"}
|
||||
- {id: 126, cat: Console/Other, desc: "Spiele Mobil"}
|
||||
# Musik
|
||||
- {id: 110, cat: Audio/MP3, desc: "Musik MP3"}
|
||||
- {id: 52, cat: Audio, desc: "Musik Pack"}
|
||||
- {id: 48, cat: Audio/Lossless, desc: "Musik Flac"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Musik Video"}
|
||||
# App
|
||||
- {id: 12, cat: PC/0day, desc: "App PC"}
|
||||
- {id: 125, cat: PC/Mac, desc: "App MacOS"}
|
||||
- {id: 11, cat: PC/Phone-Other, desc: "App Mobil"}
|
||||
# Sport
|
||||
- {id: 61, cat: TV/Sport, desc: "Sport HD"}
|
||||
- {id: 62, cat: TV/Sport, desc: "Sport SD"}
|
||||
# Internal
|
||||
- {id: 128, cat: Movies/HD, desc: "Internal Film HD"}
|
||||
- {id: 129, cat: Movies/SD, desc: "Internal Film SD"}
|
||||
- {id: 130, cat: TV/HD, desc: "Internal Serien HD"}
|
||||
- {id: 131, cat: TV/SD, desc: "Internal Serien SD"}
|
||||
- {id: 132, cat: Other, desc: "Internal Sonstiges"}
|
||||
# Sonstiges
|
||||
- {id: 64, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 96, cat: Books/Ebook, desc: "e-Book"}
|
||||
- {id: 63, cat: Audio/Audiobook, desc: "Hörbuch"}
|
||||
- {id: 71, cat: Other, desc: "Anderes"}
|
||||
# XXX
|
||||
- {id: 73, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 75, cat: XXX/Packs, desc: "XXX Pack"}
|
||||
- {id: 76, cat: XXX/XviD, desc: "XXX SD"}
|
||||
- {id: 124, cat: XXX/Other, desc: "XXX Clips"}
|
||||
|
||||
modes:
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: info_pin
|
||||
type: info
|
||||
label: About Pin
|
||||
default: If you have not set a Pin for your account then leave this box empty.
|
||||
- name: pin
|
||||
type: text
|
||||
label: Pin
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "added"
|
||||
options:
|
||||
"added": "created"
|
||||
"seeds": "seeders"
|
||||
"size": "size"
|
||||
"name": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="cap/captcha_math.php"]
|
||||
input: stringCaptcha
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
pin: "{{ .Config.pin }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: selection.php
|
||||
|
||||
download:
|
||||
before:
|
||||
path: ajax_det_poll.php
|
||||
method: "post"
|
||||
inputs:
|
||||
set_thanks: "thanks"
|
||||
det_id: "{{ .DownloadUri.Query.torrent }}"
|
||||
ajax: "yes"
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 name 1 descr 2 both 4 imdb
|
||||
blah: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: div.selection_wrap
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div.kat_cat_pic
|
||||
case:
|
||||
# Movies
|
||||
":has(div.kat_cat_pic_name:contains(\"Movie\")):has(div.kat_cat_pic_name_b:contains(\"4K/2160p\"))": "114"
|
||||
":has(div.kat_cat_pic_name:contains(\"Movie\")):has(div.kat_cat_pic_name_b:contains(\"DVD\"))": "119"
|
||||
":has(div.kat_cat_pic_name:contains(\"Movie\")):has(div.kat_cat_pic_name_b:contains(\"HD\"))": "32"
|
||||
":has(div.kat_cat_pic_name:contains(\"Movie\")):has(div.kat_cat_pic_name_b:contains(\"SD\"))": "28"
|
||||
":has(div.kat_cat_pic_name:contains(\"Movie\")):has(div.kat_cat_pic_name_b:contains(\"3D\"))": "26"
|
||||
# Serien
|
||||
":has(div.kat_cat_pic_name:contains(\"Serien\")):has(div.kat_cat_pic_name_b:contains(\"SD\"))": "60"
|
||||
":has(div.kat_cat_pic_name:contains(\"Serien\")):has(div.kat_cat_pic_name_b:contains(\"HD\"))": "57"
|
||||
":has(div.kat_cat_pic_name:contains(\"Serien\")):has(div.kat_cat_pic_name_b:contains(\"Pack\"))": "59"
|
||||
":has(div.kat_cat_pic_name:contains(\"Serien\")):has(div.kat_cat_pic_name_b:contains(\"Show\"))": "122"
|
||||
":has(div.kat_cat_pic_name:contains(\"Serien\")):has(div.kat_cat_pic_name_b:contains(\"Doku\"))": "123"
|
||||
# Musik
|
||||
":has(div.kat_cat_pic_name:contains(\"Music\")):has(div.kat_cat_pic_name_b:contains(\"Flac\"))": "48"
|
||||
":has(div.kat_cat_pic_name:contains(\"Music\")):has(div.kat_cat_pic_name_b:contains(\"MP3\"))": "110"
|
||||
":has(div.kat_cat_pic_name:contains(\"Music\")):has(div.kat_cat_pic_name_b:contains(\"Pack\"))": "52"
|
||||
":has(div.kat_cat_pic_name:contains(\"Music\")):has(div.kat_cat_pic_name_b:contains(\"Videos\"))": "120"
|
||||
# Doku
|
||||
":has(div.kat_cat_pic_name:contains(\"Doku\")):has(div.kat_cat_pic_name_b:contains(\"SD\"))": "15"
|
||||
":has(div.kat_cat_pic_name:contains(\"Doku\")):has(div.kat_cat_pic_name_b:contains(\"HD\"))": "14"
|
||||
# Games
|
||||
":has(div.kat_cat_pic_name:contains(\"Game\")):has(div.kat_cat_pic_name_b:contains(\"PC\"))": "17"
|
||||
":has(div.kat_cat_pic_name:contains(\"Game\")):has(div.kat_cat_pic_name_b:contains(\"Wimmelbild\"))": "121"
|
||||
":has(div.kat_cat_pic_name:contains(\"Game\")):has(div.kat_cat_pic_name_b:contains(\"Konsole\"))": "24"
|
||||
":has(div.kat_cat_pic_name:contains(\"Game\")):has(div.kat_cat_pic_name_b:contains(\"Mobil\"))": "126"
|
||||
# App
|
||||
":has(div.kat_cat_pic_name:contains(\"App\")):has(div.kat_cat_pic_name_b:contains(\"PC\"))": "12"
|
||||
":has(div.kat_cat_pic_name:contains(\"App\")):has(div.kat_cat_pic_name_b:contains(\"MacOS\"))": "125"
|
||||
":has(div.kat_cat_pic_name:contains(\"App\")):has(div.kat_cat_pic_name_b:contains(\"Mobil\"))": "11"
|
||||
# Sport
|
||||
":has(div.kat_cat_pic_name:contains(\"Sport\")):has(div.kat_cat_pic_name_b:contains(\"SD\"))": "62"
|
||||
":has(div.kat_cat_pic_name:contains(\"Sport\")):has(div.kat_cat_pic_name_b:contains(\"HD\"))": "61"
|
||||
# Sonstiges
|
||||
":has(div.kat_cat_pic_name:contains(\"Sonstiges\")):has(div.kat_cat_pic_name_b:contains(\"Anime\"))": "64"
|
||||
":has(div.kat_cat_pic_name:contains(\"Sonstiges\")):has(div.kat_cat_pic_name_b:contains(\"E-Book\"))": "96"
|
||||
":has(div.kat_cat_pic_name:contains(\"Sonstiges\")):has(div.kat_cat_pic_name_b:contains(\"Hörbuch\"))": "63"
|
||||
":has(div.kat_cat_pic_name:contains(\"Sonstiges\")):has(div.kat_cat_pic_name_b:contains(\"Other\"))": "71"
|
||||
# XXX
|
||||
":has(div.kat_cat_pic_name:contains(\"XXX\")):has(div.kat_cat_pic_name_b:contains(\"SD\"))": "76"
|
||||
":has(div.kat_cat_pic_name:contains(\"XXX\")):has(div.kat_cat_pic_name_b:contains(\"HD\"))": "73"
|
||||
":has(div.kat_cat_pic_name:contains(\"XXX\")):has(div.kat_cat_pic_name_b:contains(\"Pack\"))": "75"
|
||||
":has(div.kat_cat_pic_name:contains(\"XXX\")):has(div.kat_cat_pic_name_b:contains(\"Clips\"))": "124"
|
||||
# Internal
|
||||
":has(div.kat_cat_pic_name:contains(\"Internal\")):has(div.kat_cat_pic_name_b:contains(\"Film HD\"))": "128"
|
||||
":has(div.kat_cat_pic_name:contains(\"Internal\")):has(div.kat_cat_pic_name_b:contains(\"Film SD\"))": "129"
|
||||
":has(div.kat_cat_pic_name:contains(\"Internal\")):has(div.kat_cat_pic_name_b:contains(\"Serien HD\"))": "130"
|
||||
":has(div.kat_cat_pic_name:contains(\"Internal\")):has(div.kat_cat_pic_name_b:contains(\"Serien SD\"))": "131"
|
||||
":has(div.kat_cat_pic_name:contains(\"Internal\")):has(div.kat_cat_pic_name_b:contains(\"Sonstiges\"))": "132"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
details:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["details.php?id=", "download.php?torrent="]
|
||||
banner:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
optional: true
|
||||
imdb:
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
optional: true
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
filters:
|
||||
- name: trim
|
||||
args: "x"
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
# 2 flavours of dates
|
||||
date:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
date:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: dateparse
|
||||
args: "02.01.2006 15:04:05"
|
||||
description:
|
||||
selector: selection_unter_af
|
||||
optional: true
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
text: 172800 # 2 day (48h)
|
||||
# Engine tbd
|
@@ -5,13 +5,22 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.demonoid.is/
|
||||
- https://dnoid.black-mirror.xyz/
|
||||
- https://dnoid.unblocked.casa/
|
||||
- https://dnoid.proxyportal.fun/
|
||||
- https://dnoid.uk-unblock.xyz/
|
||||
- https://dnoid.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.to/
|
||||
- https://demonoid.unblockit.pro/
|
||||
- https://demonoid.unblockit.one/ # currently down
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# fetch these from https://www.demonoid.is/cached/torrent_categories_script.js?v5
|
||||
# Applications
|
||||
- {id: 1, cat: PC/Phone-Android, desc: "Applications Android"}
|
||||
- {id: 2, cat: PC/Phone-IOS, desc: "Applications Iphone / Ipod touch"}
|
||||
@@ -129,6 +138,7 @@
|
||||
- {id: 108, cat: TV/Anime, desc: "Anime Horror"}
|
||||
- {id: 109, cat: TV/Anime, desc: "Anime Other"}
|
||||
- {id: 157, cat: TV/Anime, desc: "Anime Romance"}
|
||||
- {id: 158, cat: TV/Anime, desc: "Anime Sci-Fi"}
|
||||
# Movies
|
||||
- {id: 151, cat: Movies, desc: "Movies Action"}
|
||||
- {id: 110, cat: Movies, desc: "Movies Adventure"}
|
||||
@@ -258,14 +268,21 @@
|
||||
- {id: 233, cat: TV, desc: "TV Trailers"}
|
||||
- {id: 234, cat: TV, desc: "TV War"}
|
||||
- {id: 235, cat: TV, desc: "TV Western"}
|
||||
# cat misc has no subcats
|
||||
# cat 7 misc has no subcats
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Access this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -282,14 +299,19 @@
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
test:
|
||||
path: files/
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://www.demonoid.is/files/?c154&language=0&quality=0&seeded=2&query=world&to=on&sort=
|
||||
# https://www.demonoid.is/files/?seeded=2&language=0&quality=0&to=on&query=world
|
||||
# https://www.demonoid.is/files/?c154&language=0&quality=0&seeded=2&query=world&to=1&sort=
|
||||
# https://www.demonoid.is/files/?seeded=2&language=0&quality=0&to=1&query=world
|
||||
- path: files/
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}&{{end}}"
|
||||
@@ -300,10 +322,11 @@
|
||||
# 0 all
|
||||
quality: 0
|
||||
# search in titles only
|
||||
to: on
|
||||
query: "{{ .Keywords }}"
|
||||
to: "{{ if .Query.IMDBID }}{{else}}1{{end}}"
|
||||
query: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.font_12px tr:has(td[class^="tone_1"])
|
||||
@@ -324,7 +347,7 @@
|
||||
optional: true
|
||||
attribute: title
|
||||
category:
|
||||
selector: a[href*="&subcategory="]
|
||||
selector: span > a[href*="&subcategory="]
|
||||
attribute: href
|
||||
optional: true
|
||||
filters:
|
||||
|
169
src/Jackett.Common/Definitions/demonsite.yml
Normal file
169
src/Jackett.Common/Definitions/demonsite.yml
Normal file
@@ -0,0 +1,169 @@
|
||||
---
|
||||
site: demonsite
|
||||
name: Demon-Site
|
||||
description: "Demon-Site is a HUNGARIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: hu
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://demon-site.eu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 6, cat: Movies/BluRay, desc: "Film/BDRip/Eng"}
|
||||
- {id: 5, cat: Movies/BluRay, desc: "Film/BDRip/Hun"}
|
||||
- {id: 4, cat: Movies/SD, desc: "Film/Cam/Eng"}
|
||||
- {id: 3, cat: Movies/SD, desc: "Film/Cam/Hun"}
|
||||
- {id: 8, cat: Movies/DVD, desc: "Film/DVD/Eng"}
|
||||
- {id: 7, cat: Movies/DVD, desc: "Film/DVD/Hun"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "Film/DVD9/Eng"}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Film/DVD9/Hun"}
|
||||
- {id: 12, cat: Movies/HD, desc: "Film/HD/Eng"}
|
||||
- {id: 11, cat: Movies/HD, desc: "Film/HD/Hun"}
|
||||
- {id: 2, cat: Movies/SD, desc: "Film/XviD/Eng"}
|
||||
- {id: 1, cat: Movies/SD, desc: "Film/XviD/Hun"}
|
||||
- {id: 18, cat: PC/Games, desc: "Játék/ISO"}
|
||||
- {id: 19, cat: PC/Games, desc: "Játék/Rip"}
|
||||
- {id: 23, cat: Books, desc: "Könyv/Eng"}
|
||||
- {id: 22, cat: Books, desc: "Könyv/Hun"}
|
||||
- {id: 24, cat: Other, desc: "Képek"}
|
||||
- {id: 20, cat: Console, desc: "Konzol"}
|
||||
- {id: 21, cat: PC/Phone-Other, desc: "Mobil"}
|
||||
- {id: 16, cat: Audio, desc: "Mp3/Eng"}
|
||||
- {id: 15, cat: Audio, desc: "Mp3/Hun"}
|
||||
- {id: 17, cat: PC/0day, desc: "Program"}
|
||||
- {id: 14, cat: TV, desc: "Sorozat/Eng"}
|
||||
- {id: 13, cat: TV, desc: "Sorozat/Hun"}
|
||||
- {id: 25, cat: XXX, desc: "XXX/Film"}
|
||||
- {id: 26, cat: XXX, desc: "XXX/Kép"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the Demon-Site Web Site. Otherwise just leave it empty."
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"1": "name"
|
||||
"5": "size"
|
||||
"4": "added"
|
||||
"7": "seeders"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
code: "{{ .Config.2facode }}"
|
||||
error:
|
||||
- selector: td.embedded:contains("Hiba")
|
||||
message:
|
||||
selector: table[cellpadding="5"] tr:last-child td
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?k="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://demon-site.eu/browse.php?c25=1&c26=1&search=&incldead=1
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active 1 both 2 dead 3 myupload 4 notseeded
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not support imdbid searches
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr:has(a[href^="download.php?torrent="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Név:\\s*(.+?)\\s*Első név:"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
banner:
|
||||
selector: a.preview
|
||||
attribute: href
|
||||
imdb:
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(3)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
selector: td:nth-child(7)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
optional: true
|
||||
selector: img[src="skin/sotet/arrowdown.png"] ~ span
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
optional: true
|
||||
selector: img[src="skin/sotet/arrowup.png"] ~ span
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
# engine n/a
|
@@ -48,17 +48,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -133,7 +136,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
163
src/Jackett.Common/Definitions/dimeadozen.yml
Normal file
163
src/Jackett.Common/Definitions/dimeadozen.yml
Normal file
@@ -0,0 +1,163 @@
|
||||
---
|
||||
site: dimeadozen
|
||||
name: DimeADozen
|
||||
description: "DimeADozen (EzTorrent) is a Semi-Private Torrent Tracker for BOOTLEG MUSIC"
|
||||
language: en
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.dimeadozen.org/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 51, cat: Audio, desc: "Acoustic"}
|
||||
- {id: 4, cat: Audio, desc: "Alternate"}
|
||||
- {id: 47, cat: Audio, desc: "Alternate Country"}
|
||||
- {id: 7, cat: Audio, desc: "Americana"}
|
||||
- {id: 45, cat: Audio, desc: "Avantgarde"}
|
||||
- {id: 23, cat: Audio, desc: "Bluegrass"}
|
||||
- {id: 10, cat: Audio, desc: "Blues"}
|
||||
- {id: 17, cat: Audio, desc: "Brit Pop"}
|
||||
- {id: 42, cat: Audio, desc: "Celtic Soul"}
|
||||
- {id: 24, cat: Audio, desc: "Chanson"}
|
||||
- {id: 25, cat: Audio, desc: "Classic"}
|
||||
- {id: 55, cat: Audio, desc: "Classical"}
|
||||
- {id: 44, cat: Audio, desc: "Club Rock"}
|
||||
- {id: 3, cat: Audio, desc: "Country"}
|
||||
- {id: 41, cat: Audio, desc: "Dancefloor"}
|
||||
- {id: 49, cat: Audio, desc: "Desert Surf"}
|
||||
- {id: 48, cat: Audio, desc: "Drum'n'Bass"}
|
||||
- {id: 53, cat: Audio, desc: "Electronica"}
|
||||
- {id: 26, cat: Audio, desc: "Ethno"}
|
||||
- {id: 9, cat: Audio, desc: "Folk"}
|
||||
- {id: 12, cat: Audio, desc: "Funk"}
|
||||
- {id: 19, cat: Audio, desc: "Garage Rock"}
|
||||
- {id: 27, cat: Audio, desc: "Gospel"}
|
||||
- {id: 28, cat: Audio, desc: "Gothic Rock"}
|
||||
- {id: 40, cat: Audio, desc: "Grunge"}
|
||||
- {id: 61, cat: Audio, desc: "Hard Rock"}
|
||||
- {id: 59, cat: Audio, desc: "Hardcore"}
|
||||
- {id: 34, cat: Audio, desc: "Heavy Metal"}
|
||||
- {id: 29, cat: Audio, desc: "HipHop"}
|
||||
- {id: 30, cat: Audio, desc: "House"}
|
||||
- {id: 31, cat: Audio, desc: "Industrial"}
|
||||
- {id: 57, cat: Audio, desc: "Irish Folk"}
|
||||
- {id: 50, cat: Audio, desc: "Jam Bands"}
|
||||
- {id: 2, cat: Audio, desc: "Jazz"}
|
||||
- {id: 60, cat: Audio, desc: "Jazz Fusion"}
|
||||
- {id: 18, cat: Audio, desc: "Kraut Rock"}
|
||||
- {id: 32, cat: Audio, desc: "Latin Music"}
|
||||
- {id: 33, cat: Audio, desc: "Mainstream"}
|
||||
- {id: 46, cat: Audio, desc: "New German Wave"}
|
||||
- {id: 5, cat: Audio, desc: "New Wave"}
|
||||
- {id: 14, cat: Audio, desc: "Pop"}
|
||||
- {id: 13, cat: Audio, desc: "Progressive Rock"}
|
||||
- {id: 58, cat: Audio, desc: "Psychedelic"}
|
||||
- {id: 6, cat: Audio, desc: "Punk"}
|
||||
- {id: 35, cat: Audio, desc: "Rap"}
|
||||
- {id: 36, cat: Audio, desc: "Rave"}
|
||||
- {id: 21, cat: Audio, desc: "Reggae"}
|
||||
- {id: 1, cat: Audio, desc: "Rock"}
|
||||
- {id: 20, cat: Audio, desc: "Rock'n'Roll"}
|
||||
- {id: 8, cat: Audio, desc: "Singer/Songwriter"}
|
||||
- {id: 22, cat: Audio, desc: "Ska"}
|
||||
- {id: 37, cat: Audio, desc: "Skiffle"}
|
||||
- {id: 11, cat: Audio, desc: "Soul"}
|
||||
- {id: 54, cat: Audio, desc: "Southern Rock"}
|
||||
- {id: 38, cat: Audio, desc: "Swing"}
|
||||
- {id: 39, cat: Audio, desc: "Techno"}
|
||||
- {id: 43, cat: Audio, desc: "Tin Pan Alley"}
|
||||
- {id: 52, cat: Audio, desc: "Unplugged"}
|
||||
- {id: 15, cat: Audio, desc: "West Coast"}
|
||||
- {id: 16, cat: Audio, desc: "World Music"}
|
||||
- {id: 56, cat: Audio, desc: "Zydeco"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
|
||||
login:
|
||||
path: take-login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: "index.php"
|
||||
logout: ""
|
||||
error:
|
||||
- selector: table.message:contains("Error")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
# download.php/673256/Talk%20Talk%20-%201986-07-05%20Paris.torrent
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# http://www.dimeadozen.org/torrents-browse.php?search=%2Btalk+%2Bparis&cat=0&incldead=1&searchscope=1
|
||||
- path: torrents-browse.php
|
||||
inputs:
|
||||
search: "{{ .Keywords }}"
|
||||
# (empty) active only, 1 incldead
|
||||
incldead: 1
|
||||
# (empty) search in title & filename & descr, 1 title & filename only
|
||||
searchscope: 1
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
# does not support multi category filtering
|
||||
# does not support imdbid searches, does not return imdb link in results
|
||||
# does not support sorting
|
||||
|
||||
rows:
|
||||
selector: table.torrent > tbody > tr:has(a[href^="torrents-details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="torrents-browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
selector: td:nth-child(7)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# EzTorrent 0.7
|
@@ -63,7 +63,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
@@ -14,70 +14,70 @@
|
||||
categorymappings:
|
||||
# Films
|
||||
- {id: 1, cat: Movies, desc: "Films"}
|
||||
- {id: 13, cat: Movies, desc: "Films BD-Rip / BRRip"}
|
||||
- {id: 15, cat: Movies, desc: "Films DVD-Rip"}
|
||||
- {id: 18, cat: Movies, desc: "Films HD 720p"}
|
||||
- {id: 19, cat: Movies, desc: "Films WEB-DL / WEB-Rip"}
|
||||
- {id: 20, cat: Movies, desc: "Films HD 1080p"}
|
||||
- {id: 26, cat: Movies, desc: "Films mHD 720p"}
|
||||
- {id: 27, cat: Movies, desc: "Films mHD 1080p"}
|
||||
- {id: 28, cat: Movies, desc: "Films x265"}
|
||||
- {id: 30, cat: Movies, desc: "Films Blu-Ray (complet)"}
|
||||
- {id: 31, cat: Movies, desc: "Films 3D"}
|
||||
- {id: 32, cat: Movies, desc: "Films 4K UHD"}
|
||||
- {id: 33, cat: Movies, desc: "Films Québécois SD"}
|
||||
- {id: 34, cat: Movies, desc: "Films Québécois HD"}
|
||||
- {id: 35, cat: Movies, desc: "Films Québécois DVD-R"}
|
||||
- {id: 37, cat: Movies, desc: "Films DVD-R"}
|
||||
- {id: 38, cat: Movies, desc: "Films V.O.S.T. SD"}
|
||||
- {id: 39, cat: Movies, desc: "Films V.O.S.T. HD"}
|
||||
- {id: 40, cat: Movies, desc: "Films V.O. SD"}
|
||||
- {id: 41, cat: Movies, desc: "Films V.O. HD"}
|
||||
- {id: 13, cat: Movies/BluRay, desc: "Films BD-Rip / BRRip"}
|
||||
- {id: 15, cat: Movies/DVD, desc: "Films DVD-Rip"}
|
||||
- {id: 18, cat: Movies/HD, desc: "Films HD 720p"}
|
||||
- {id: 19, cat: Movies/WEBDL, desc: "Films WEB-DL / WEB-Rip"}
|
||||
- {id: 20, cat: Movies/HD, desc: "Films HD 1080p"}
|
||||
- {id: 26, cat: Movies/HD, desc: "Films mHD 720p"}
|
||||
- {id: 27, cat: Movies/HD, desc: "Films mHD 1080p"}
|
||||
- {id: 28, cat: Movies/HD, desc: "Films x265"}
|
||||
- {id: 30, cat: Movies/BluRay, desc: "Films Blu-Ray (complet)"}
|
||||
- {id: 31, cat: Movies/3D, desc: "Films 3D"}
|
||||
- {id: 32, cat: Movies/UHD, desc: "Films 4K UHD"}
|
||||
- {id: 33, cat: Movies/SD, desc: "Films Québécois SD"}
|
||||
- {id: 34, cat: Movies/HD, desc: "Films Québécois HD"}
|
||||
- {id: 35, cat: Movies/DVD, desc: "Films Québécois DVD-R"}
|
||||
- {id: 37, cat: Movies/DVD, desc: "Films DVD-R"}
|
||||
- {id: 38, cat: Movies/SD, desc: "Films V.O.S.T. SD"}
|
||||
- {id: 39, cat: MovieS/HD, desc: "Films V.O.S.T. HD"}
|
||||
- {id: 40, cat: Movies/SD, desc: "Films V.O. SD"}
|
||||
- {id: 41, cat: Movies/HD, desc: "Films V.O. HD"}
|
||||
- {id: 42, cat: Movies, desc: "Films TV-Rip"}
|
||||
# 4K LIGHT
|
||||
- {id: 95, cat: Movies, desc: "4K LIGHT"}
|
||||
# Séries-Télé
|
||||
- {id: 16, cat: TV, desc: "Séries-Télé"}
|
||||
- {id: 17, cat: TV, desc: "Séries-Télé TV Pack SD"}
|
||||
- {id: 21, cat: TV, desc: "Séries-Télé SD"}
|
||||
- {id: 22, cat: TV, desc: "Séries-Télé HD"}
|
||||
- {id: 23, cat: TV, desc: "Séries-Télé TV Pack HD"}
|
||||
- {id: 45, cat: TV, desc: "Séries-Télé Québécois SD"}
|
||||
- {id: 46, cat: TV, desc: "Séries-Télé Québécois HD"}
|
||||
- {id: 47, cat: TV, desc: "Séries-Télé V.O.S.T. SD"}
|
||||
- {id: 48, cat: TV, desc: "Séries-TéléV.O.S.T. HD"}
|
||||
- {id: 49, cat: TV, desc: "Séries-Télé Émissions TV SD"}
|
||||
- {id: 50, cat: TV, desc: "Séries-Télé Émissions TV HD"}
|
||||
- {id: 17, cat: TV/SD, desc: "Séries-Télé TV Pack SD"}
|
||||
- {id: 21, cat: TV/SD, desc: "Séries-Télé SD"}
|
||||
- {id: 22, cat: TV/HD, desc: "Séries-Télé HD"}
|
||||
- {id: 23, cat: TV/HD, desc: "Séries-Télé TV Pack HD"}
|
||||
- {id: 45, cat: TV/SD, desc: "Séries-Télé Québécois SD"}
|
||||
- {id: 46, cat: TV/HD, desc: "Séries-Télé Québécois HD"}
|
||||
- {id: 47, cat: TV/SD, desc: "Séries-Télé V.O.S.T. SD"}
|
||||
- {id: 48, cat: TV/HD, desc: "Séries-TéléV.O.S.T. HD"}
|
||||
- {id: 49, cat: TV/SD, desc: "Séries-Télé Émissions TV SD"}
|
||||
- {id: 50, cat: TV/HD, desc: "Séries-Télé Émissions TV HD"}
|
||||
- {id: 51, cat: TV, desc: "Séries-Télé Blu-Ray"}
|
||||
- {id: 52, cat: TV, desc: "Séries-Télé DVD-R"}
|
||||
- {id: 94, cat: TV, desc: "Séries-Télé x265 - TV"}
|
||||
- {id: 94, cat: TV/HD, desc: "Séries-Télé x265 - TV"}
|
||||
# Musique
|
||||
- {id: 2, cat: Audio, desc: "Musique"}
|
||||
- {id: 54, cat: Audio, desc: "Musique MP3"}
|
||||
- {id: 55, cat: Audio, desc: "Musique FLAC"}
|
||||
- {id: 54, cat: Audio/MP3, desc: "Musique MP3"}
|
||||
- {id: 55, cat: Audio/Lossless, desc: "Musique FLAC"}
|
||||
- {id: 56, cat: Audio, desc: "Musique DSD"}
|
||||
- {id: 57, cat: Audio, desc: "Musique Karaoke"}
|
||||
- {id: 58, cat: Audio, desc: "Musique Autres"}
|
||||
# Jeux
|
||||
- {id: 3, cat: PC/Games, desc: "Jeux"}
|
||||
- {id: 59, cat: PC/Games, desc: "Jeux PC"}
|
||||
- {id: 60, cat: PC/Games, desc: "Jeux Consoles"}
|
||||
- {id: 60, cat: Console, desc: "Jeux Consoles"}
|
||||
- {id: 84, cat: PC/Games, desc: "Jeux Android"}
|
||||
# Livres
|
||||
- {id: 6, cat: Books, desc: "Livres"}
|
||||
- {id: 61, cat: Books, desc: "Livres epub"}
|
||||
- {id: 61, cat: Books/Ebook, desc: "Livres epub"}
|
||||
- {id: 62, cat: Books, desc: "Livres pdf"}
|
||||
- {id: 63, cat: Books, desc: "Livres Journaux"}
|
||||
- {id: 64, cat: Books, desc: "Livres Magazines"}
|
||||
- {id: 64, cat: Books/Magazines, desc: "Livres Magazines"}
|
||||
- {id: 65, cat: Books, desc: "Livres Bandes Dessinées"}
|
||||
- {id: 66, cat: Books, desc: "Livres Multi-Format"}
|
||||
- {id: 85, cat: Books, desc: "Livres Audio"}
|
||||
- {id: 85, cat: Audio/Audiobook, desc: "Livres Audio"}
|
||||
# Logiciels
|
||||
- {id: 67, cat: PC, desc: "Logiciels"}
|
||||
- {id: 68, cat: PC, desc: "Logiciels Windows"}
|
||||
- {id: 69, cat: PC, desc: "Logiciels Mac"}
|
||||
- {id: 68, cat: PC/0day, desc: "Logiciels Windows"}
|
||||
- {id: 69, cat: PC/Mac, desc: "Logiciels Mac"}
|
||||
- {id: 86, cat: PC, desc: "Logiciels Linux"}
|
||||
- {id: 87, cat: PC, desc: "Logiciels Android"}
|
||||
- {id: 87, cat: PC/Phone-Android, desc: "Logiciels Android"}
|
||||
# Spectacles
|
||||
- {id: 70, cat: TV/Other, desc: "Spectacles"}
|
||||
- {id: 71, cat: TV/Other, desc: "Spectacles Humour"}
|
||||
|
@@ -55,17 +55,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -140,7 +143,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -283,6 +283,10 @@
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
- name: info_results
|
||||
type: info
|
||||
label: Search results
|
||||
default: "If you are not getting results, then access the site with your browser and mark as read all PMs."
|
||||
|
||||
login:
|
||||
path: account-login.php
|
||||
|
@@ -63,7 +63,7 @@
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
tv-search: [q]
|
||||
movie-search: [q]
|
||||
|
||||
login:
|
||||
|
@@ -72,6 +72,8 @@
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -180,7 +182,7 @@
|
||||
attribute: href
|
||||
magnet:
|
||||
optional: true
|
||||
selector: a[href^="magnet:?xt="]
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(6) > u
|
||||
|
@@ -72,17 +72,22 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -157,7 +162,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -81,11 +81,16 @@
|
||||
|
||||
search:
|
||||
paths:
|
||||
# http://estone.cc/letoltes.php?kereses_nev=wide&miben=0&cimke=&cat=0&submit.x=40&submit.y=9
|
||||
- path: letoltes.php
|
||||
method: get
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}kat[]={{.}}&{{end}}{{ .Config.sort }}={{ .Config.type }}"
|
||||
kereses_nev: "{{ .Keywords }}"
|
||||
# 0 name 1 performer 2 director
|
||||
miben: 0
|
||||
# genre
|
||||
cimke: ""
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: body > div[id^="torrent_"]
|
||||
|
@@ -10,30 +10,31 @@
|
||||
|
||||
caps:
|
||||
categories:
|
||||
"1080p": Movies/HD
|
||||
"720p": Movies/HD
|
||||
"1080P": Movies/HD
|
||||
"720P": Movies/HD
|
||||
"BR-RIP": Movies/BluRay
|
||||
"BR-SCREENER": Movies/Other
|
||||
"DVDRip": Movies/DVD
|
||||
"DVDScreener": Movies/Other
|
||||
"HC HDRip": Movies/HD
|
||||
"DVDRIP": Movies/DVD
|
||||
"DVDSCREENER": Movies/Other
|
||||
"HC HDRIP": Movies/HD
|
||||
"HD-RIP": Movies/HD
|
||||
"HD-TC": Movies/HD
|
||||
"HD-TS": Movies/HD
|
||||
"HDRip": Movies/HD
|
||||
"HDRIP": Movies/HD
|
||||
"HDTC-SCREENER": Movies/Other
|
||||
"HDTV-SCREENER": Movies/Other
|
||||
"HQ-TC": Movies
|
||||
"MKV": Movies
|
||||
"TeleCine": Movies
|
||||
"TELECINE": Movies
|
||||
"TS-HQ": Movies
|
||||
"TS-Screener": Movies/Other
|
||||
"V.O. Subtituladas": Movies
|
||||
"VHS-Screener": Movies/Other
|
||||
"TS-SCREENER": Movies/Other
|
||||
"V.O. SUBTITULADAS": Movies
|
||||
"VHS-SCREENER": Movies/Other
|
||||
"Web DL": Movies/WEBDL
|
||||
"WEB-RIP": Movies/WEBDL
|
||||
"WEB-Screener": Movies/Other
|
||||
"WEB-SCREENER": Movies/Other
|
||||
"WEB-SCREENER HC": Movies/Other
|
||||
"NOCAT": Movies/Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -65,8 +66,12 @@
|
||||
selector: div.nombre_big1 a
|
||||
attribute: href
|
||||
category:
|
||||
text: NOCAT
|
||||
category|noappend:
|
||||
selector: div.nombre_big1 p b
|
||||
optional: true
|
||||
filters:
|
||||
- name: toupper
|
||||
download:
|
||||
selector: div.nombre_big1 a
|
||||
attribute: href
|
||||
|
@@ -5,10 +5,21 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.ettv.to/
|
||||
- https://www.ettvdl.com/
|
||||
- https://ettv.unblockit.one/
|
||||
- https://ettv.unblockninja.com/
|
||||
- https://ettv.root.yt/
|
||||
- https://ettv.black-mirror.xyz/
|
||||
- https://ettv.unblocked.casa/
|
||||
- https://ettv.proxyportal.fun/
|
||||
- https://ettv.uk-unblock.xyz/
|
||||
- https://ettv.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://www.ettv.tv/
|
||||
- https://www.ettv.to/
|
||||
- https://ettv.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -70,13 +81,6 @@
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: downloadlink
|
||||
type: select
|
||||
label: Download link
|
||||
default: "magnet:"
|
||||
options:
|
||||
"https://etorrent.click/" : "eTorrent.click"
|
||||
"magnet:": "magnet"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -93,9 +97,9 @@
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
|
||||
download:
|
||||
selector: a[href^="{{ .Config.downloadlink }}"]
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
@@ -132,12 +136,8 @@
|
||||
- name: re_replace
|
||||
args: ["( torrent)$", ""]
|
||||
category:
|
||||
optional: true
|
||||
selector: td:nth-child(1):contains("-")
|
||||
filters:
|
||||
- name: replace #7110 provide default for missing category
|
||||
args: ["-", "78"]
|
||||
category:
|
||||
text: 78 #7110
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: a[href^="/torrents.php?cat="]
|
||||
attribute: href
|
||||
|
@@ -5,8 +5,12 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://extratorrent.si/
|
||||
- https://extratorrent.unblockit.one/
|
||||
legacylinks:
|
||||
- https://extratorrent.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -946,11 +950,11 @@
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/category/"], a[href="#"]
|
||||
text: 9 #7108
|
||||
category|noappend:
|
||||
selector: a[href*="/category/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace #7108 provide default for missing category
|
||||
args: ["#", "/category/9/"]
|
||||
- name: regexp
|
||||
args: "/category/(\\d+)/"
|
||||
title:
|
||||
|
@@ -10,24 +10,25 @@
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 10, cat: Movies/DVD, desc: "Dvd rip"}
|
||||
- {id: 111, cat: Movies/DVD, desc: "DVD Promo"}
|
||||
- {id: 118, cat: Movies, desc: "Kids"}
|
||||
- {id: 113, cat: XXX, desc: "DVD xxx"}
|
||||
- {id: 129, cat: Movies/HD, desc: "Hd DVD"}
|
||||
- {id: 130, cat: Movies/UHD, desc: "4K Films"}
|
||||
- {id: 143, cat: Movies/HD, desc: "Divx 720P"}
|
||||
- {id: 114, cat: Audio, desc: "Muziek"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "Film DVD"}
|
||||
- {id: 111, cat: Movies/DVD, desc: "DVD Promo/R5"}
|
||||
- {id: 118, cat: Movies/DVD, desc: "Kids DVD"}
|
||||
- {id: 113, cat: XXX, desc: "DVD XXX"}
|
||||
- {id: 108, cat: XXX, desc: "Xvid XXX"}
|
||||
- {id: 129, cat: Movies/HD, desc: "HD DVD"}
|
||||
- {id: 130, cat: Movies/UHD, desc: "Films 4K"}
|
||||
- {id: 143, cat: Movies/HD, desc: "DivX 720P"}
|
||||
- {id: 114, cat: Audio/MP3, desc: "Muziek MP3"}
|
||||
- {id: 140, cat: Books, desc: "E-Book"}
|
||||
- {id: 105, cat: TV/Documentary, desc: "Documentaire"}
|
||||
- {id: 115, cat: PC, desc: "pc apps"}
|
||||
- {id: 120, cat: PC/Games, desc: "Pc Games"}
|
||||
- {id: 115, cat: PC, desc: "PC apps"}
|
||||
- {id: 120, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 106, cat: Other, desc: "Overig"}
|
||||
- {id: 131, cat: Console/NDS, desc: "Nintendo Ds"}
|
||||
- {id: 132, cat: TV/HD, desc: "HD Serie"}
|
||||
- {id: 116, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 125, cat: Movies, desc: "Xvid rip"}
|
||||
- {id: 123, cat: Movies, desc: "Xvid Tc"}
|
||||
- {id: 116, cat: PC/Mac, desc: "Mac Software"}
|
||||
- {id: 125, cat: Movies, desc: "DiVX Rip"}
|
||||
- {id: 123, cat: Movies/SD, desc: "DiVX Cam"}
|
||||
- {id: 108, cat: XXX, desc: "18+"}
|
||||
- {id: 142, cat: XXX, desc: "HD XXX"}
|
||||
- {id: 139, cat: TV, desc: "TV Series"}
|
||||
@@ -85,6 +86,7 @@
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: 1
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.mainouter
|
||||
@@ -108,7 +110,7 @@
|
||||
attribute: href
|
||||
banner:
|
||||
selector: div[id^="Style"] img
|
||||
attribute: src
|
||||
attribute: src
|
||||
size:
|
||||
selector: a[href^="details_bestanden.php?torrent_id="]
|
||||
filters:
|
||||
|
@@ -7,6 +7,9 @@
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://ext.to/
|
||||
- https://t.extto.com/
|
||||
legacylinks:
|
||||
- https://ext.unblockninja.com/ # currently redirects to https://ext.to/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -8,11 +8,20 @@
|
||||
followredirect: true
|
||||
links:
|
||||
- https://eztv.io/
|
||||
- https://eztv.root.yt/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.black-mirror.xyz/
|
||||
- https://eztv.unblocked.casa/
|
||||
- https://eztv.proxyportal.fun/
|
||||
- https://eztv.uk-unblock.xyz/
|
||||
- https://eztv.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .io
|
||||
- https://eztv.re/ # redirects to .io
|
||||
- https://eztv.it/ # redirects to .io
|
||||
- https://eztv.ch/ # redirects to .io
|
||||
- https://eztv.ag/ # redirects to .io
|
||||
- https://eztv.re/ # redirects to .io
|
||||
- https://eztv.it/ # redirects to .io
|
||||
- https://eztv.ch/ # redirects to .io
|
||||
- https://eztv.unblockit.pro/
|
||||
- https://eztv.unblockit.one/ # currently down
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -26,7 +35,7 @@
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search/{{ .Keywords }}{{else}}/{{end}}"
|
||||
keywordsfilters:
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["S[0-9]{2}([^E]|$)", ""] # remove season tag without episode (search doesn't support it)
|
||||
rows:
|
||||
|
@@ -49,10 +49,36 @@
|
||||
- {id: 23, cat: TV/Sport, desc: "TV/Sport"}
|
||||
- {id: 51, cat: Console, desc: "Games/Misc"}
|
||||
- {id: 1, cat: PC/0day, desc: "Appz/PC ISO"}
|
||||
- {id: 55, cat: Movies/UHD, desc: "Movies/4K"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"4": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -64,7 +90,7 @@
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
test:
|
||||
path: browse_old.php
|
||||
|
||||
|
||||
ratio:
|
||||
path: browse_old.php
|
||||
selector: img[title="Reitings:"]+font
|
||||
@@ -73,13 +99,16 @@
|
||||
paths:
|
||||
- path: browse_old.php
|
||||
inputs:
|
||||
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Query.Keywords }}"
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 active 1 incldead 2 onlydead
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: tr.browse_actions
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
@@ -113,7 +142,7 @@
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
date:
|
||||
selector: td:nth-child(2) > small:nth-last-child(2)
|
||||
selector: td:nth-child(2) > small:nth-last-child(2), td:nth-child(2) > small
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Šodien", "Today"]
|
||||
@@ -121,12 +150,13 @@
|
||||
args: ["Vakar", "Yesterday"]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[alt="Free"]: "0"
|
||||
"*": "1"
|
||||
img[alt="Free"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[alt="x2"]: "2"
|
||||
"*": "1"
|
||||
img[alt="x2"]: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2) > small:nth-last-child(1)
|
||||
remove: a[href^="details.php?id="]
|
||||
# engine n/a
|
||||
|
@@ -1,188 +0,0 @@
|
||||
---
|
||||
site: feedurneed
|
||||
name: FeedUrNeed
|
||||
description: "FeedUrNeed (FuN) is a ratioless Private Torrent Tracker for MOVIES / TV"
|
||||
language: en-us
|
||||
type: private
|
||||
encoding: utf-8
|
||||
links:
|
||||
- https://feedurneed.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 60, cat: Books, desc: "BOOKS"}
|
||||
- {id: 59, cat: Audio, desc: "MUSIC"}
|
||||
- {id: 58, cat: PC, desc: "APPZ"}
|
||||
- {id: 57, cat: PC/Games, desc: "GAMES"}
|
||||
- {id: 56, cat: TV, desc: "TV"}
|
||||
- {id: 55, cat: Movies, desc: "Movies"}
|
||||
- {id: 24, cat: Books/Ebook, desc: "BOOKS :: Book"}
|
||||
- {id: 43, cat: Audio/Video, desc: "MUSIC :: Music Videos"}
|
||||
- {id: 26, cat: Audio/Lossless, desc: "MUSIC :: FLAC"}
|
||||
- {id: 19, cat: Audio/MP3, desc: "MUSIC :: MP3 Music Packs"}
|
||||
- {id: 10, cat: Audio/MP3, desc: "MUSIC :: MP3 Music"}
|
||||
- {id: 1, cat: PC, desc: "APPZ :: Apps"}
|
||||
- {id: 47, cat: PC/Games, desc: "GAMES :: PC Games"}
|
||||
- {id: 33, cat: Console/PS3, desc: "GAMES :: Games PS3"}
|
||||
- {id: 8, cat: Console/PSP, desc: "GAMES :: Games/PSP"}
|
||||
- {id: 7, cat: Console/Xbox 360, desc: "GAMES :: Games X-Box360"}
|
||||
- {id: 46, cat: TV, desc: "TV :: Tv Packs"}
|
||||
- {id: 45, cat: TV/HD, desc: "TV :: Tv/X264"}
|
||||
- {id: 36, cat: TV/SD, desc: "TV :: TV/SD/x264"}
|
||||
- {id: 54, cat: Movies/UHD, desc: "Movies :: 4K UHD"}
|
||||
- {id: 32, cat: Movies, desc: "Movies :: Movies MP4"}
|
||||
- {id: 31, cat: Movies, desc: "Movies :: FooKaS RG"}
|
||||
- {id: 30, cat: Movies, desc: "Movies :: Movies Cam/Ts"}
|
||||
- {id: 29, cat: Movies, desc: "Movies :: Movie Packs"}
|
||||
- {id: 28, cat: Movies/3D, desc: "Movies :: 3D Movies"}
|
||||
- {id: 23, cat: Movies/BluRay, desc: "Movies :: BluRay/Remux"}
|
||||
- {id: 22, cat: Movies/BluRay, desc: "Movies :: BD/BRRip"}
|
||||
- {id: 21, cat: Movies/HD, desc: "Movies :: 1080p"}
|
||||
- {id: 20, cat: Movies/HD, desc: "Movies :: 720p"}
|
||||
- {id: 18, cat: Movies/HD, desc: "Movies :: Movie/X264"}
|
||||
- {id: 17, cat: XXX, desc: "Movies :: XXX"}
|
||||
- {id: 15, cat: Movies/DVD, desc: "Movies :: Movies DVDR"}
|
||||
- {id: 13, cat: Movies/SD, desc: "Movies :: Movies/XviD"}
|
||||
- {id: 12, cat: TV/Anime, desc: "Movies :: Anime"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: info
|
||||
type: info
|
||||
label: "About the Username field"
|
||||
default: "Enter your <b>Email address</b> in the username field."
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "2"
|
||||
options:
|
||||
"2": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form#site_login
|
||||
inputs:
|
||||
email: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
remember: 1
|
||||
submit: Login
|
||||
error:
|
||||
- selector: div.padding20:has(h2:contains("Error"))
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cats[]={{.}}&{{end}}"
|
||||
sns: "{{ .Keywords }}"
|
||||
# 0 active 1 incldead 2 onlydead
|
||||
incldead: 1
|
||||
|
||||
rows:
|
||||
selector: table.table-bordered > tbody > tr
|
||||
|
||||
fields:
|
||||
title:
|
||||
selector: a[href*="/details.php?id="]
|
||||
details:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download.php?torrent="]
|
||||
attribute: href
|
||||
banner:
|
||||
selector: img[alt="Poster"]
|
||||
attribute: data-src
|
||||
seeders:
|
||||
selector: a[href$="#seeders"]
|
||||
leechers:
|
||||
selector: a[href$="#leechers"]
|
||||
files:
|
||||
selector: a[href*="/filelist.php?id="]
|
||||
size:
|
||||
selector: div.level-left:contains("Size:")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Size:\xA0(.+?)$"
|
||||
grabs:
|
||||
selector: a[href*="/snatches.php?id="]
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[data-src="./images/gold.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[data-src="./images/doubleseed.gif"]: 2
|
||||
"*": 1
|
||||
category:
|
||||
selector: img[data-src^="./images/caticons/"]
|
||||
case:
|
||||
img[title="BOOKS"]: 60
|
||||
img[title="MUSIC"]: 59
|
||||
img[title="APPZ"]: 58
|
||||
img[title="GAMES"]: 57
|
||||
img[title="TV"]: 56
|
||||
img[title="Movies"]: 55
|
||||
img[title$="Book"]: 24
|
||||
img[title$="Music Videos"]: 43
|
||||
img[title$="FLAC"]: 26
|
||||
img[title$="MP3 Music Packs"]: 19
|
||||
img[title$="MP3 Music"]: 10
|
||||
img[title$="Apps"]: 1
|
||||
img[title$="PC Games"]: 47
|
||||
img[title$="Games PS3"]: 33
|
||||
img[title$="Games/PSP"]: 8
|
||||
img[title$="Games X-Box360"]: 7
|
||||
img[title$="Tv Packs"]: 46
|
||||
img[title$="Tv/X264"]: 45
|
||||
img[title$="TV/SD/x264"]: 36
|
||||
img[title$="4K UHD"]: 54
|
||||
img[title$="Movies MP4"]: 32
|
||||
img[title$="FooKaS RG"]: 31
|
||||
img[title$="Movies Cam/Ts"]: 30
|
||||
img[title$="Movie Packs"]: 29
|
||||
img[title$="3D Movies"]: 28
|
||||
img[title$="BluRay/Remux"]: 23
|
||||
img[title$="BD/BRRip"]: 22
|
||||
img[title$="1080p"]: 21
|
||||
img[title$="720p"]: 20
|
||||
img[title$="Movie/X264"]: 18
|
||||
img[title$="XXX"]: 17
|
||||
img[title$="Movies DVDR"]: 15
|
||||
img[title$="Movies/XviD"]: 13
|
||||
img[title$="Anime"]: 12
|
||||
date:
|
||||
selector: div.padding10 > div:contains("Uploaded")
|
||||
remove: span
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: re_replace
|
||||
args: ["(?i)(Monday, |Tuesday, |Wednesday, |Thursday, |Friday, |Saturday, |Sunday, )", ""]
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 3:04:05 pm"
|
||||
# Pu-239
|
@@ -31,13 +31,13 @@
|
||||
- {id: 24, cat: Books/Ebook, desc: " E-Books"}
|
||||
- {id: 26, cat: Audio/Other, desc: " Cabaret"}
|
||||
- {id: 27, cat: TV/Documentary, desc: " Documentaire"}
|
||||
- {id: 31, cat: Movies/HD, desc: " HD 265"}
|
||||
- {id: 31, cat: Movies/HD, desc: " FP-release"}
|
||||
- {id: 32, cat: Audio/Audiobook, desc: " Luister Boeken"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -83,8 +83,9 @@
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
incldead: 1
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.mainouter
|
||||
@@ -94,6 +95,13 @@
|
||||
fields:
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["([Ss]eizoen|[Ss]eizoen )(\\d{1,2})", "S$2"]
|
||||
- name: re_replace
|
||||
args: ["([Aa]fl.|[Aa]fl. | [Aa]fl. |[Aa]flevering|[Aa]flevering | [Aa]flevering )(\\d{1,2})", "E$2"]
|
||||
- name: re_replace
|
||||
args: ["[Cc]ompleet", "Complete"]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -106,6 +114,9 @@
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
banner:
|
||||
selector: img[src*="/covers/"]
|
||||
attribute: src
|
||||
size:
|
||||
selector: td:nth-child(4) table tr td:nth-child(2)
|
||||
filters:
|
||||
@@ -163,7 +174,9 @@
|
||||
optional: true
|
||||
selector: td:nth-child(4) table tr:nth-child(3) td:nth-child(5) font font b
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
case:
|
||||
img[src="pic/freedlfsu.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
|
136
src/Jackett.Common/Definitions/finelite.yml
Normal file
136
src/Jackett.Common/Definitions/finelite.yml
Normal file
@@ -0,0 +1,136 @@
|
||||
---
|
||||
site: finelite
|
||||
name: FinElite
|
||||
description: "FinElite (FE) is a FINNISH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: fi-fi
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://finelite.org/
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"4": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 8, cat: PC/0day, desc: "0day/Apps"}
|
||||
- {id: 29, cat: TV/Documentary, desc: "Documentary"}
|
||||
- {id: 24, cat: Books/Ebook, desc: "Ebooks"}
|
||||
- {id: 28, cat: Movies, desc: "FE-INT"}
|
||||
- {id: 10, cat: Console, desc: "Games - Console"}
|
||||
- {id: 11, cat: PC/Games, desc: "Games - PC"}
|
||||
- {id: 26, cat: Movies, desc: "Kids"}
|
||||
- {id: 9, cat: PC/Phone-Other, desc: "Mobile"}
|
||||
- {id: 12, cat: Movies, desc: "Movie Pack"}
|
||||
- {id: 13, cat: Movies/DVD, desc: "Movies DVD-r"}
|
||||
- {id: 14, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 15, cat: Movies/SD, desc: "Movies SD"}
|
||||
- {id: 22, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 23, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 19, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 16, cat: TV, desc: "TV Pack"}
|
||||
- {id: 17, cat: TV/SD, desc: "TV SD"}
|
||||
- {id: 31, cat: Movies/UHD, desc: "Ultra HD"}
|
||||
- {id: 20, cat: XXX, desc: "XXX HD"}
|
||||
- {id: 21, cat: XXX, desc: "XXX SD"}
|
||||
|
||||
modes:
|
||||
search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form#login
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.embedded:contains("Virhe") # error
|
||||
- selector: td.embedded:contains("epäonnistui") # falied
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="ulos.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://finelite.org/selaa.php?c14=1&c15=1&c31=1&search=tt6591554&hae=1&type=desc&cat=0&incldead=1&sort=4
|
||||
- path: selaa.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 name&descr 1 name 2 descr 3 tags
|
||||
hae: 1
|
||||
# 0 active 1 incldead 2 deadonly
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.main > tbody > tr:has(a[href^="/lataa.php/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="julkaisu.php?id="]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="julkaisu.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/lataa.php/"]
|
||||
attribute: href
|
||||
imdb:
|
||||
optional: true
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-last-child(6)
|
||||
date:
|
||||
# 26.03.2020 <br/>3:53
|
||||
selector: td:nth-last-child(4)
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: [" (\\d{1}):(\\d{2})", " 0$1:$2"]
|
||||
- name: dateparse
|
||||
args: "2.01.2006 15:04"
|
||||
size:
|
||||
selector: td:nth-last-child(3)
|
||||
seeders:
|
||||
selector: td:nth-last-child(2)
|
||||
leechers:
|
||||
selector: td:nth-last-child(1)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
span.label-free: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# custom 3.1.4
|
@@ -28,7 +28,9 @@
|
||||
"Игры": PC/Games
|
||||
"Фильмы": Movies
|
||||
"Видео": Movies
|
||||
"Музыка": Audio
|
||||
"Музыка": Audio
|
||||
"Фильмы Музыка Видео": Audio/Video
|
||||
"Музыка Видео": Audio/Video
|
||||
"Другие категории": Other
|
||||
"Сериалы": TV
|
||||
|
||||
@@ -46,8 +48,8 @@
|
||||
# http://firebit.net/%D1%84%D0%B8%D0%BB%D1%8C%D0%BC/ # movies
|
||||
# http://firebit.net/%D1%81%D0%B5%D1%80%D0%B8%D0%B0%D0%BB/ # tv
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}{{ else }}%D1%84%D0%B8%D0%BB%D1%8C%D0%BC/{{ end }}"
|
||||
- path: "{{ if .Keywords }}{{ else }}%D1%81%D0%B5%D1%80%D0%B8%D0%B0%D0%BB/{{ end }}"
|
||||
- path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}{{else}}%D1%84%D0%B8%D0%BB%D1%8C%D0%BC/{{end}}"
|
||||
- path: "{{ if .Keywords }}index.php?do=search&type=simple&q=abcd1234{{else}}%D1%81%D0%B5%D1%80%D0%B8%D0%B0%D0%BB/{{end}}"
|
||||
|
||||
rows:
|
||||
selector: "{{ if .Keywords }}table.torrents tbody tr{{ else }}div[id^=\"post-id-\"]{{ end }}"
|
||||
@@ -56,11 +58,11 @@
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td:nth-child(1), div.article-indent div b a
|
||||
selector: td:nth-child(1), div.article-indent div b
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Новинки", ""]
|
||||
- name: replace
|
||||
- name: re_replace
|
||||
args: [",", ""]
|
||||
- name: trim
|
||||
title:
|
||||
|
@@ -18,6 +18,9 @@
|
||||
- {id: 200, cat: Movies, desc: "Основные принципы ухода"}
|
||||
- {id: 201, cat: Movies, desc: "Быстрая, как ветер"}
|
||||
- {id: 202, cat: Movies, desc: "Визит инспектора"}
|
||||
- {id: 206, cat: Movies, desc: "Брачная история"}
|
||||
- {id: 207, cat: Movies, desc: "Кафе Голубая сойка"}
|
||||
- {id: 208, cat: Movies, desc: "Наши души по ночам"}
|
||||
- {id: 10, cat: Movies, desc: "Мёд в голове"}
|
||||
- {id: 16, cat: Movies, desc: "Малыш"}
|
||||
- {id: 18, cat: Movies, desc: "Копенгаген"}
|
||||
@@ -51,7 +54,6 @@
|
||||
- {id: 100, cat: TV, desc: "Смертельное оружие"}
|
||||
- {id: 101, cat: TV, desc: "Гавайи 5-0"}
|
||||
- {id: 102, cat: TV, desc: "Черный Список"}
|
||||
- {id: 103, cat: TV, desc: "Нелюди"}
|
||||
- {id: 106, cat: TV, desc: "Одаренные"}
|
||||
- {id: 107, cat: TV, desc: "Теория большого взрыва"}
|
||||
- {id: 108, cat: TV, desc: "Ходячие мертвецы"}
|
||||
@@ -100,7 +102,6 @@
|
||||
- {id: 175, cat: TV, desc: "Каратель"}
|
||||
- {id: 176, cat: TV, desc: "Матрёшка"}
|
||||
- {id: 177, cat: TV, desc: "Берлинская резидентура"}
|
||||
- {id: 178, cat: TV, desc: "Настоящий Детектив"}
|
||||
- {id: 179, cat: TV, desc: "Половое Просвещение"}
|
||||
- {id: 180, cat: TV, desc: "АКАДЕМИЯ АМБРЕЛЛА"}
|
||||
- {id: 181, cat: TV, desc: "Сорвиголова"}
|
||||
@@ -111,8 +112,12 @@
|
||||
- {id: 186, cat: TV, desc: "Изгнание"}
|
||||
- {id: 187, cat: TV, desc: "Крупный Город"}
|
||||
- {id: 190, cat: TV, desc: "Кобра Кай"}
|
||||
- {id: 191, cat: TV, desc: "Студия 60 на Сансет Стрип"}
|
||||
- {id: 197, cat: TV, desc: "Западное крыло"}
|
||||
- {id: 199, cat: TV, desc: "Семь миров, одна планета"}
|
||||
- {id: 203, cat: TV, desc: "Книга Рабов"}
|
||||
- {id: 204, cat: TV, desc: "Ведьмак"}
|
||||
- {id: 205, cat: TV, desc: "Из Ларк Райз в Кэндлфорд"}
|
||||
- {id: 9, cat: TV, desc: "Иерихон"}
|
||||
- {id: 11, cat: TV, desc: "11-22-63"}
|
||||
- {id: 12, cat: TV, desc: "Апокалипсис: Первая мировая война"}
|
||||
@@ -246,11 +251,11 @@
|
||||
selector: div.size
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
args: [",", "."]
|
||||
- name: replace
|
||||
args: ["ТБ", "TB"]
|
||||
args: ["ТБ", "TB"]
|
||||
- name: replace
|
||||
args: ["ГБ", "GB"]
|
||||
- name: replace
|
||||
|
@@ -59,17 +59,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -144,7 +147,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -93,12 +93,12 @@
|
||||
attribute: href
|
||||
category:
|
||||
text: Anime
|
||||
category:
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: td.tit span
|
||||
date:
|
||||
# 1d
|
||||
# 2d
|
||||
# 2d
|
||||
# 1d 3h
|
||||
# 3 dias
|
||||
# 3h 14m
|
||||
|
@@ -260,6 +260,7 @@
|
||||
langue: "{{ .Config.torrentlanguage }}"
|
||||
# freeleech oui (yes) non (no) peuimporte (ignore)
|
||||
tl: "peuimporte"
|
||||
# does bot support imdbid search and does not return imdb link in results.
|
||||
|
||||
rows:
|
||||
selector: table.sortable tbody tr
|
||||
@@ -322,6 +323,5 @@
|
||||
img[src$="/images/Torrents/TLibre.png"]: "0"
|
||||
"*": "1"
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": "1"
|
||||
text: 1
|
||||
# TT3.00 FRENCH
|
||||
|
@@ -28,6 +28,7 @@
|
||||
- {id: 117, cat: PC, desc: "Applications: Appli-autre"}
|
||||
- {id: 67, cat: TV/OTHER, desc: "Autres: Emission TV"}
|
||||
- {id: 141, cat: TV/OTHER, desc: "Autres: Noel"}
|
||||
- {id: 142, cat: TV/Sport, desc: "Autres: Emission sport"}
|
||||
- {id: 90, cat: Books/Ebook, desc: "BD: Livres"}
|
||||
- {id: 132, cat: TV/Documentary, desc: "Documentaires: BluRay"}
|
||||
- {id: 133, cat: TV/Documentary, desc: "Documentaires: 4k"}
|
||||
@@ -35,7 +36,6 @@
|
||||
- {id: 15, cat: TV/Documentary, desc: "Documentaires: HD"}
|
||||
- {id: 14, cat: TV/Documentary, desc: "Documentaires: DivX"}
|
||||
- {id: 76, cat: TV/Documentary, desc: "Documentaires: TVRip/HDTV"}
|
||||
- {id: 118, cat: TV/Documentary, desc: "Documentaires: Sport"}
|
||||
- {id: 139, cat: TV/Documentary, desc: "Documentaires: Noel"}
|
||||
- {id: 138, cat: Books/Ebook, desc: "E-Books: Noel"}
|
||||
- {id: 53, cat: Books/Ebook, desc: "E-Books: Livre Anglais"}
|
||||
@@ -63,8 +63,8 @@
|
||||
- {id: 71, cat: Movies/WEBDL, desc: "Films: WEB-DL"}
|
||||
- {id: 69, cat: Movies/3D, desc: "Films: Film 3D"}
|
||||
- {id: 65, cat: Movies, desc: "Films: VO"}
|
||||
- {id: 1, cat: Movies/HD, desc: "Films: Remux Bluray 4K"}
|
||||
- {id: 130, cat: Movies/UHD, desc: "Films: HD720P"}
|
||||
- {id: 1, cat: Movies/UHD, desc: "Films: Remux Bluray 4K"}
|
||||
- {id: 130, cat: Movies/HD, desc: "Films: HD720P"}
|
||||
- {id: 102, cat: Movies/WEBDL, desc: "Films: WEB-DL 720P"}
|
||||
- {id: 103, cat: Movies/HD, desc: "Films: Film-HDRIP"}
|
||||
- {id: 111, cat: Movies/WEBDL, desc: "Films: WEBRip-720P"}
|
||||
@@ -172,11 +172,10 @@
|
||||
|
||||
download:
|
||||
before:
|
||||
path: "list_thanks.php"
|
||||
method: "get"
|
||||
path: list_thanks.php
|
||||
inputs:
|
||||
id: "{{ .DownloadUri.Query.id }}"
|
||||
to: "give"
|
||||
to: give
|
||||
torrent: "{{ .DownloadUri.Query.id }}"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
@@ -192,12 +191,15 @@
|
||||
# multi cats unsupported, defaulting to all
|
||||
cat: 0
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active 1 incldead 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all 1 notfree 2 freeonly
|
||||
freeleech: 0
|
||||
inclexternal: 0
|
||||
# 0 all 1 French 2 English 3 etc
|
||||
lang: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner > tbody > tr.t-row
|
||||
@@ -239,6 +241,5 @@
|
||||
img[src="images/fl.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
text: 1
|
||||
# engine n/a
|
||||
|
@@ -27,15 +27,15 @@
|
||||
# VIDEOTECA
|
||||
- {id: 22, cat: Movies/SD, desc: "Movie BDRip"}
|
||||
- {id: 23, cat: Movies/SD, desc: "Movie DvdRip"}
|
||||
- {id: 23, cat: Movies/SD, desc: "Movie WEBRip"}
|
||||
- {id: 95, cat: Movies/SD, desc: "Movie WEBRip"}
|
||||
- {id: 24, cat: Movies/DVD, desc: "Movie DVD-R 5"}
|
||||
- {id: 25, cat: Movies/DVD, desc: "Movie DVD-R 9"}
|
||||
- {id: 26, cat: Movies/HD, desc: "Movie Blu-Ray HD"}
|
||||
- {id: 27, cat: Movies/3D, desc: "Movie 3D-SBS"}
|
||||
- {id: 96, cat: Movies/HD, desc: "Movie x265 HEVC"}
|
||||
- {id: 28, cat: Movies/Foreign, desc: "Movie Subbet-ita"}
|
||||
- {id: 27, cat: Movies/UHD, desc: "Movie 4K Ultra HD"}
|
||||
- {id: 96, cat: Movies/HD, desc: "Movie HD Hevc"}
|
||||
- {id: 28, cat: Movies/Foreign, desc: "Movie Subbed-ita"}
|
||||
- {id: 73, cat: Movies/SD, desc: "Movie MP4"}
|
||||
- {id: 29, cat: Movies/Foreign, desc: "Movie Ligua Originale"}
|
||||
- {id: 29, cat: Movies/Foreign, desc: "Movie Lingua Originale"}
|
||||
# ANIMAZIONE
|
||||
- {id: 32, cat: TV/Anime, desc: "Anime Disney"}
|
||||
- {id: 33, cat: TV/Anime, desc: "Anime"}
|
||||
@@ -56,11 +56,13 @@
|
||||
- {id: 45, cat: Audio, desc: "Musica Compilation"}
|
||||
- {id: 46, cat: Audio/Video, desc: "Musica Video Clip"}
|
||||
- {id: 58, cat: Audio, desc: "Musica Discografie"}
|
||||
- {id: 97, cat: Audio/Lossless, desc: "Musica Flac"}
|
||||
# SALA GIOCHI
|
||||
- {id: 47, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 48, cat: Console/PS3, desc: "PC Giochi PS2-PS3"}
|
||||
- {id: 49, cat: Console/Wii, desc: "PC Giochi Nintendo Wii"}
|
||||
- {id: 50, cat: Console/Xbox, desc: "PC Giochi Xbox"}
|
||||
- {id: 51, cat: Console/PSP, desc: "PC Giochi PSP"}
|
||||
- {id: 52, cat: Console/3DS, desc: "PC Giochi DS-DS3"}
|
||||
# SOFTWARE
|
||||
- {id: 54, cat: PC, desc: "PC Programmi Windows"}
|
||||
@@ -117,10 +119,10 @@
|
||||
download:
|
||||
before:
|
||||
path: thanks.php
|
||||
method: "post"
|
||||
method: post
|
||||
inputs:
|
||||
infohash: "{{ .DownloadUri.Query.id }}"
|
||||
thanks: "1"
|
||||
thanks: 1
|
||||
rndval: "1487013827343"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
@@ -160,6 +162,7 @@
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "$1"]
|
||||
- name: re_replace # S01E01 to 1 1
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1 $2"]
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: div.b-content > table > tbody > tr > td > table.lista > tbody > tr:has(a[href^="index.php?page=torrent-details&id="])
|
||||
|
@@ -50,7 +50,7 @@
|
||||
label: Download link
|
||||
default: "magnet:?xt="
|
||||
options:
|
||||
"/get_torrents/" : ".torrent"
|
||||
"/telecharger/" : ".torrent"
|
||||
"magnet:?xt=": "magnet"
|
||||
|
||||
download:
|
||||
@@ -62,7 +62,7 @@
|
||||
- path: "{{if .Keywords}}recherche/{{.Keywords}}{{else}}{{end}}"
|
||||
|
||||
rows:
|
||||
selector: div.listing-torrent > table > tbody > tr:has(a)
|
||||
selector: table.table-hover > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -79,9 +79,9 @@
|
||||
site_date:
|
||||
selector: td:nth-child(1) a
|
||||
filters:
|
||||
# date is at the end of the title, so we get it and name it site_date
|
||||
# year is at the end of the title, so we get it and name it site_date
|
||||
- name: regexp
|
||||
args: "(\\w+)$"
|
||||
args: "(\\d{4})$"
|
||||
title:
|
||||
selector: td:nth-child(1) a
|
||||
filters:
|
||||
@@ -96,7 +96,7 @@
|
||||
args: ["VOSTFR", "{{ .Result.site_date }} VOSTFR"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(\\w+)$", ""]
|
||||
args: ["(\\d{4})$", ""]
|
||||
details:
|
||||
selector: td:nth-child(1) a
|
||||
attribute: href
|
||||
|
@@ -5,9 +5,19 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://gtdb.to/
|
||||
- https://glodls.to/
|
||||
- https://glotorrents.unblockit.one/
|
||||
- https://glodls.black-mirror.xyz/
|
||||
- https://glodls.unblocked.casa/
|
||||
- https://glodls.proxyportal.fun/
|
||||
- https://glodls.uk-unblock.xyz/
|
||||
- https://glodls.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://glotorrents.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -78,12 +88,8 @@
|
||||
|
||||
fields:
|
||||
category:
|
||||
optional: true
|
||||
selector: td:nth-child(1):contains("-")
|
||||
filters:
|
||||
- name: replace #7113 provide default for missing category
|
||||
args: ["-", "33"]
|
||||
category:
|
||||
text: 33 #7113
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: a[href^="/search.php?cat="]
|
||||
attribute: href
|
||||
|
@@ -98,7 +98,7 @@
|
||||
- {id: 130, cat: Movies/3D, desc: "H265 3D"}
|
||||
- {id: 128, cat: Movies/HD, desc: "H265 Animación"}
|
||||
- {id: 129, cat: Movies/HD, desc: "H265 Documentales"}
|
||||
- {id: 125, cat: Movies, desc: "UHD"}
|
||||
- {id: 125, cat: Movies/UHD, desc: "UHD"}
|
||||
- {id: 131, cat: Movies/UHD, desc: "UHD Películas"}
|
||||
- {id: 132, cat: TV/UHD, desc: "UHD Series"}
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
@@ -51,7 +51,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
|
@@ -179,7 +179,7 @@
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " [Spanish]"
|
||||
args: " [Spanish] [English]"
|
||||
- name: re_replace
|
||||
args: ["(?i)T[\\s-_]?(\\d{1,2})\\b", " S$1 "]
|
||||
- name: re_replace
|
||||
|
@@ -75,7 +75,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
|
@@ -10,33 +10,33 @@
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 24, cat: TV/Anime , desc: "Anime"}
|
||||
- {id: 25, cat: PC/0day , desc: "Appz"}
|
||||
- {id: 47, cat: Movies/HD , desc: "AVCHD"}
|
||||
- {id: 24, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 25, cat: PC/0day, desc: "Appz"}
|
||||
- {id: 47, cat: Movies/HD, desc: "AVCHD"}
|
||||
- {id: 26, cat: Movies/BluRay , desc: "Bluray"}
|
||||
- {id: 54, cat: Movies/HD , desc: "dbREMUX"}
|
||||
- {id: 41, cat: Movies/HD , desc: "Documentaries"}
|
||||
- {id: 50, cat: Movies/HD , desc: "FourGHD"}
|
||||
- {id: 44, cat: Movies/HD , desc: "HDME"}
|
||||
- {id: 54, cat: Movies/HD, desc: "dbREMUX"}
|
||||
- {id: 41, cat: Movies/HD, desc: "Documentaries"}
|
||||
- {id: 50, cat: Movies/HD, desc: "FourGHD"}
|
||||
- {id: 44, cat: Movies/HD, desc: "HDME"}
|
||||
- {id: 28, cat: Audio/Lossless, desc: "HQ Music"}
|
||||
- {id: 48, cat: Movies/HD , desc: "iCandy"}
|
||||
- {id: 45, cat: Movies/HD , desc: "INtL"}
|
||||
- {id: 29, cat: Other , desc: "Misc"}
|
||||
- {id: 48, cat: Movies/HD, desc: "iCandy"}
|
||||
- {id: 45, cat: Movies/HD, desc: "INtL"}
|
||||
- {id: 29, cat: Other, desc: "Misc"}
|
||||
- {id: 49, cat: PC/Phone-Other, desc: "Mobile"}
|
||||
- {id: 30, cat: Movies/HD , desc: "Movie 1080i"}
|
||||
- {id: 31, cat: Movies/HD , desc: "Movie 1080p"}
|
||||
- {id: 32, cat: Movies/HD , desc: "Movie 720p"}
|
||||
- {id: 33, cat: Audio/Video , desc: "Music Videos"}
|
||||
- {id: 34, cat: TV , desc: "Packs"}
|
||||
- {id: 53, cat: Movies/HD , desc: "Remux"}
|
||||
- {id: 56, cat: Movies/HD , desc: "RUXi"}
|
||||
- {id: 55, cat: Movies/HD , desc: "SiNiSteR"}
|
||||
- {id: 36, cat: TV/Sport , desc: "Sports"}
|
||||
- {id: 37, cat: TV/HD , desc: "TV Series 1080i"}
|
||||
- {id: 38, cat: TV/HD , desc: "TV Series 1080p"}
|
||||
- {id: 39, cat: TV/HD , desc: "TV Series 720p"}
|
||||
- {id: 57, cat: Movies , desc: "UHD 2160p"}
|
||||
- {id: 40, cat: XXX , desc: "XXX"}
|
||||
- {id: 30, cat: Movies/HD, desc: "Movie 1080i"}
|
||||
- {id: 31, cat: Movies/HD, desc: "Movie 1080p"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Movie 720p"}
|
||||
- {id: 33, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 34, cat: TV, desc: "Packs"}
|
||||
- {id: 53, cat: Movies/HD, desc: "Remux"}
|
||||
- {id: 56, cat: Movies/HD, desc: "RUXi"}
|
||||
- {id: 55, cat: Movies/HD, desc: "SiNiSteR"}
|
||||
- {id: 36, cat: TV/Sport, desc: "Sports"}
|
||||
- {id: 37, cat: TV/HD, desc: "TV Series 1080i"}
|
||||
- {id: 38, cat: TV/HD, desc: "TV Series 1080p"}
|
||||
- {id: 39, cat: TV/HD, desc: "TV Series 720p"}
|
||||
- {id: 57, cat: Movies/UHD, desc: "UHD 2160p"}
|
||||
- {id: 40, cat: XXX, desc: "XXX"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -14,7 +14,7 @@
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2001, cat: Movies/HD, desc: "Кино HD"}
|
||||
- {id: 5006, cat: Movies/HD, desc: "Кино 4K"}
|
||||
- {id: 5006, cat: Movies/UHD, desc: "Кино 4K"}
|
||||
- {id: 2007, cat: Movies/Other, desc: "Анимация"}
|
||||
- {id: 2006, cat: TV/HD, desc: "Сериалы"}
|
||||
- {id: 5005, cat: TV/Sport, desc: "Спорт"}
|
||||
|
@@ -33,7 +33,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
|
@@ -79,8 +79,8 @@
|
||||
incldead: 0
|
||||
# 0 all 1 normal 2 free 3 2x 4 2xfree 5 50% 6 2x50% 7 30%
|
||||
spstate: 0
|
||||
# 0 title 1 descr 3 uploaded 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
|
||||
# 0 title 1 descr 3 uploaded 4 imdburl (searching imdburl does not work with tt1234567, but descr is good)
|
||||
search_area: "{{ if .Query.IMDBID }}1{{else}}0{{end}}"
|
||||
# 0 AND 1 OR 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
@@ -73,7 +73,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
|
153
src/Jackett.Common/Definitions/horrorsite.yml
Normal file
153
src/Jackett.Common/Definitions/horrorsite.yml
Normal file
@@ -0,0 +1,153 @@
|
||||
---
|
||||
site: horrorsite
|
||||
name: Horror Site
|
||||
description: "Horror Site is a Hungarian Private site for MOVIES / TV"
|
||||
language: hu-hu
|
||||
type: private
|
||||
encoding: iso-8859-1
|
||||
links:
|
||||
- https://horror-site.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 76, cat: PC/Phone-Android, desc: "Android"}
|
||||
- {id: 81, cat: Movies/BluRay, desc: "BDRip"}
|
||||
- {id: 82, cat: Movies/SD, desc: "Cam"}
|
||||
- {id: 61, cat: Books, desc: "eBook/Hun"}
|
||||
- {id: 80, cat: Movies, desc: "Film /PACK"}
|
||||
- {id: 38, cat: Movies/DVD, desc: "Film/DVD-R/Hun"}
|
||||
- {id: 71, cat: Movies/HD, desc: "Film/HD/Hun"}
|
||||
- {id: 40, cat: Movies/SD, desc: "Film/XviD/Eng"}
|
||||
- {id: 39, cat: Movies/SD, desc: "Film/XviD/Hun"}
|
||||
- {id: 59, cat: XXX, desc: "Film/XXX"}
|
||||
- {id: 52, cat: PC/Games, desc: "Játék/RIP/ISO"}
|
||||
- {id: 75, cat: Other, desc: "Képek"}
|
||||
- {id: 74, cat: XXX, desc: "Képek/XXX"}
|
||||
- {id: 47, cat: Audio/Video, desc: "Klip"}
|
||||
- {id: 50, cat: Audio/MP3, desc: "Mp3/Eng"}
|
||||
- {id: 49, cat: Audio/MP3, desc: "Mp3/Hun"}
|
||||
- {id: 45, cat: PC, desc: "Program ISO /RIP"}
|
||||
- {id: 43, cat: TV, desc: "Rajzfilm/Hun"}
|
||||
- {id: 57, cat: TV, desc: "Sorozat/Eng"}
|
||||
- {id: 58, cat: TV, desc: "Sorozat/Hun"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"4": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "2"
|
||||
options:
|
||||
"2": "desc"
|
||||
"1": "asc"
|
||||
- name: info
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
post_kuldes: engedelyezve
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: table.browse:contains("hiba")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="/logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active 1 active&dead 2 dead 3 recomended 4 double 5 free
|
||||
incldead: 1
|
||||
# 0 name 1 descr 2 both
|
||||
blah: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not support imdbid search
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr.sor:has(a[href^="/download.php/"])
|
||||
# error:
|
||||
# - selector: div.content:contains("Meg van vonva a letöltési jogod")
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/download.php/"]
|
||||
attribute: href
|
||||
imdb:
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
optional: true
|
||||
attribute: href
|
||||
banner:
|
||||
selector: a[onmouseover]
|
||||
optional: true
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.+?) "
|
||||
files:
|
||||
selector: td:nth-last-child(8)
|
||||
date:
|
||||
selector: td:nth-last-child(6)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2})
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05"
|
||||
size:
|
||||
selector: td:nth-last-child(5) > u
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="../pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
# img[src="../pic/????????.gif"]: 2 # there is a double (according to incldead=4) but not found at this time.
|
||||
"*": 1
|
||||
# engine n/a
|
@@ -25,17 +25,22 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -109,7 +114,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -6,48 +6,55 @@
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://icetorrent.org/
|
||||
legacylinks:
|
||||
- https://www.icetorrent.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: PC/0day , desc: "Appz"}
|
||||
- {id: 85, cat: Audio/Audiobook, desc: "AudioBooks"}
|
||||
- {id: 68, cat: Books, desc: "Carti/Reviste"}
|
||||
- {id: 23, cat: Books, desc: "Cartoons"}
|
||||
- {id: 73, cat: Audio/Video, desc: "Concert/Videoclip"}
|
||||
- {id: 75, cat: Other, desc: "Diverse"}
|
||||
- {id: 69, cat: TV/Documentary, desc: "Docs RO"}
|
||||
- {id: 51, cat: TV/Documentary, desc: "Docs"}
|
||||
- {id: 43, cat: Books, desc: "eBooks"}
|
||||
- {id: 63, cat: Movies/DVD, desc: "Filme DVD"}
|
||||
- {id: 65, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 64, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 40, cat: Console, desc: "Games/Console"}
|
||||
- {id: 26, cat: PC/Games, desc: "Games/PC"}
|
||||
- {id: 38, cat: PC/Phone-Other, desc: "Mobile"}
|
||||
- {id: 59, cat: Movies/3D, desc: "Movies/3D"}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Movies/4K-UHD"}
|
||||
- {id: 32, cat: Movies/BluRay, desc: "Movies/Blu-Ray"}
|
||||
- {id: 28, cat: Movies/DVD, desc: "Movies/DVD"}
|
||||
- {id: 42, cat: Movies/HD, desc: "Movies/HD-x264"}
|
||||
- {id: 91, cat: Movies/HD, desc: "Movies/HEVC-x265"}
|
||||
- {id: 79, cat: Movies/HD, desc: "Movies/microHD"}
|
||||
- {id: 29, cat: Movies/SD, desc: "Movies/SD"}
|
||||
- {id: 72, cat: Audio/Lossless, desc: "Music/FLAC"}
|
||||
- {id: 6, cat: Audio/MP3, desc: "Music/MP3"}
|
||||
- {id: 37, cat: Audio/Video, desc: "Music/Video"}
|
||||
- {id: 70, cat: Audio/Lossless, desc: "Muzica FLAC"}
|
||||
- {id: 71, cat: Audio/MP3, desc: "Muzica MP3"}
|
||||
- {id: 74, cat: Other, desc: "Other"}
|
||||
- {id: 41, cat: Other, desc: "Pictures"}
|
||||
- {id: 67, cat: TV, desc: "Seriale TV"}
|
||||
- {id: 48, cat: TV/Sport, desc: "Sports"}
|
||||
- {id: 87, cat: Other, desc: "TUTS"}
|
||||
- {id: 33, cat: TV/SD, desc: "TV Episodes"}
|
||||
- {id: 34, cat: TV/HD, desc: "TVHD Episodes"}
|
||||
- {id: 9, cat: XXX, desc: "XXX Video"}
|
||||
- {id: 11, cat: XXX, desc: "XXX Magazine"}
|
||||
- {id: 58, cat: XXX, desc: "XXX Pictures"}
|
||||
- {id: 38, cat: Movies, desc: "Movie Packs"}
|
||||
- {id: 10, cat: Movies/SD, desc: "Movies: SD"}
|
||||
- {id: 35, cat: Movies/SD, desc: "Movies: SD Ro"}
|
||||
- {id: 8, cat: Movies/HD, desc: "Movies: HD"}
|
||||
- {id: 29, cat: Movies/HD, desc: "Movies: HD Ro"}
|
||||
- {id: 7, cat: Movies/DVD, desc: "Movies: DVD"}
|
||||
- {id: 2, cat: Movies/DVD, desc: "Movies: DVD Ro"}
|
||||
- {id: 17, cat: Movies/BluRay, desc: "Movies: BluRay"}
|
||||
- {id: 24, cat: Movies/BluRay, desc: "Movies: BluRay Ro"}
|
||||
- {id: 59, cat: Movies, desc: "Movies: Ro"}
|
||||
- {id: 57, cat: Movies/UHD, desc: "Movies: 4K (2160p) Ro"}
|
||||
- {id: 61, cat: Movies/UHD, desc: "Movies: 4K (2160p)"}
|
||||
- {id: 41, cat: TV, desc: "TV Packs"}
|
||||
- {id: 66, cat: TV, desc: "TV Packs Ro"}
|
||||
- {id: 45, cat: TV, desc: "TV Episodes"}
|
||||
- {id: 46, cat: TV, desc: "TV Episodes Ro"}
|
||||
- {id: 43, cat: TV/HD, desc: "TV Episodes HD"}
|
||||
- {id: 44, cat: TV/HD, desc: "TV Episodes HD Ro"}
|
||||
- {id: 60, cat: TV, desc: "TV Ro"}
|
||||
- {id: 11, cat: PC/Games, desc: "Games: PC-ISO"}
|
||||
- {id: 52, cat: Console, desc: "Games: Console"}
|
||||
- {id: 1, cat: PC/0day, desc: "Applications"}
|
||||
- {id: 14, cat: PC, desc: "Applications: Linux"}
|
||||
- {id: 37, cat: PC/Mac, desc: "Applications: Mac"}
|
||||
- {id: 19, cat: PC/Phone-Other, desc: "Applications: Mobile"}
|
||||
- {id: 62, cat: TV, desc: "TV Cartoons"}
|
||||
- {id: 3, cat: TV/Anime, desc: "TV Anime / Hentai"}
|
||||
- {id: 6, cat: Books/Ebook, desc: "E-books"}
|
||||
- {id: 5, cat: Audio, desc: "Music"}
|
||||
- {id: 64, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 18, cat: Other, desc: "Images"}
|
||||
- {id: 22, cat: TV/Sport, desc: "TV Sports"}
|
||||
- {id: 58, cat: TV/Sport, desc: "TV Sports Ro"}
|
||||
- {id: 9, cat: TV/Documentary, desc: "TV Documentary"}
|
||||
- {id: 63, cat: TV/Documentary, desc: "TV Documentary Ro"}
|
||||
- {id: 65, cat: Other, desc: "Tutorial"}
|
||||
- {id: 67, cat: Other, desc: "Miscellaneous"}
|
||||
- {id: 15, cat: XXX, desc: "XXX Movies"}
|
||||
- {id: 47, cat: XXX, desc: "XXX DVD"}
|
||||
- {id: 48, cat: XXX, desc: "XXX HD"}
|
||||
- {id: 49, cat: XXX, desc: "XXX Images"}
|
||||
- {id: 50, cat: XXX, desc: "XXX Packs"}
|
||||
- {id: 51, cat: XXX, desc: "XXX SD"}
|
||||
|
||||
modes:
|
||||
search: [q, imdbid]
|
||||
@@ -61,30 +68,33 @@
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
# causes server 500 errors
|
||||
# - name: sort
|
||||
# type: select
|
||||
# label: Sort requested from site
|
||||
# default: "date"
|
||||
# options:
|
||||
# "date": "created"
|
||||
# "seeders": "seeders"
|
||||
# "size": "size"
|
||||
# - name: type
|
||||
# type: select
|
||||
# label: Order requested from site
|
||||
# default: "DESC"
|
||||
# options:
|
||||
# "DESC": "desc"
|
||||
# "ASC": "asc"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "refreshAt"
|
||||
options:
|
||||
"refreshAt": "created"
|
||||
"seeders": "seeders"
|
||||
"size": "size"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
- name: browseadult
|
||||
type: checkbox
|
||||
label: Use the BrowseAdult search engine
|
||||
label: Use the Adult search engine
|
||||
default: false
|
||||
- name: info_browseadult
|
||||
type: info
|
||||
label: "About the BrowseAdult search engine"
|
||||
default: "The regular <b>Browse</b> search engine does not return <i>Adult category</i> results.</br>The <b>BrowseAdult</b> search engine can return <i>all category</i> results, but without the <i>imdb tags</i>, and also does not support <i>imdbid</i> searches."
|
||||
label: "About the Adult search engine"
|
||||
default: "The <b>Adult</b> search engine only returns <i>Adult category</i> results.</br>And Vice Versa."
|
||||
- name: info_Search
|
||||
type: info
|
||||
label: "About Search results"
|
||||
default: "This indexer supports only the <b>English</b> language. Choosing <i>non-English languages</i> will cause incorrect dates to be returned.</br>For best results edit your profile and set your <b>Torrents per page</b> to <b>100</b>. The Default is <i>50</i>."
|
||||
|
||||
login:
|
||||
path: login
|
||||
@@ -94,85 +104,82 @@
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
_remember_me: on
|
||||
selectorinputs:
|
||||
_csrf_token:
|
||||
selector: input[name="_csrf_token"]
|
||||
attribute: value
|
||||
error:
|
||||
- selector: span:contains("Error")
|
||||
- selector: div.alert:contains("failed")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="/logout?_csrf_token="]
|
||||
selector: a[href*="/logout?_csrf_token="]
|
||||
|
||||
ratio:
|
||||
text: -1
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Config.browseadult }}browseadult.php{{else}}browse.php{{end}}"
|
||||
# https://icetorrent.org/browse?search=&submit=&sort=torrent.size&direction=desc&page=1
|
||||
- path: "{{ if .Config.browseadult }}adult{{else}}browse{{end}}"
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
# 0 onlyalive 3 rosubbed 4 requested
|
||||
incldead: 1
|
||||
# name, descrname, genre, imdb
|
||||
search_by: "{{ if .Query.IMDBID }}imdb{{else}}name{{end}}"
|
||||
# by: "{{ .Config.sort }}"
|
||||
# ord: "{{ .Config.type }}"
|
||||
sort: "torrent.{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.table-striped > tbody > tr:has(a[href^="/details.php?id="])
|
||||
selector: div.kt-portlet--mobile > div.kt-portlet__body--fit > div.mr-0
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
selector: a[href^="/browse?categories"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
- name: regexp
|
||||
args: (\d+)$
|
||||
title:
|
||||
selector: a[href^="/details.php?id="]
|
||||
selector: a[href^="/browse/"]
|
||||
details:
|
||||
selector: a[href^="/details.php?id="]
|
||||
attribute: href
|
||||
banner:
|
||||
attribute: rel
|
||||
imdb:
|
||||
selector: a[href*="www.imdb.com"]
|
||||
optional: true
|
||||
selector: a[href^="/browse/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/download.php"]
|
||||
selector: a[href^="/torrents/"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: a[href$="#filelist"]
|
||||
imdb:
|
||||
optional: true
|
||||
selector: a[href*="www.imdb.com/title/tt"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: div[data-toggle="kt-tooltip"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2, 2006, 3:04:05 PM"
|
||||
size:
|
||||
selector: div[data-toggle="kt-tooltip"] + div + div
|
||||
grabs:
|
||||
selector: div[data-toggle="kt-tooltip"] + div
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
size: # some users's have an extra column after the size/files and before the seeders column (Issue #2243)
|
||||
selector: td:has(a[href$="#filelist"])
|
||||
remove: a
|
||||
date:
|
||||
selector: td > small:has(i.fa-clock), td > span.small:has(i.fa-clock)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: replace
|
||||
args: ["st ", " "]
|
||||
- name: replace
|
||||
args: ["nd ", " "]
|
||||
- name: replace
|
||||
args: ["rd ", " "]
|
||||
- name: replace
|
||||
args: ["th ", " "]
|
||||
- name: regexp
|
||||
args: "(.+?) by"
|
||||
- name: append
|
||||
args: " +02:00"
|
||||
- name: dateparse
|
||||
args: "2 Jan 2006 15:04:05 -07:00"
|
||||
seeders:
|
||||
selector: td:nth-last-child(2)
|
||||
selector: div[data-toggle="kt-tooltip"] + div + div + div > div div:nth-child(1)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
leechers:
|
||||
selector: td:nth-last-child(1)
|
||||
selector: div[data-toggle="kt-tooltip"] + div + div + div > div div:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
case:
|
||||
"span.kt-badge--success:contains(\"free\")": 0
|
||||
"span.kt-badge--dark:contains(\"half\")": 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
case:
|
||||
"span.kt-badge--info:contains(\"double\")": 2
|
||||
"*": 1
|
||||
# engine n/a
|
||||
|
@@ -7,6 +7,11 @@
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://idope.se/
|
||||
- https://idope.black-mirror.xyz/
|
||||
- https://idope.unblocked.casa/
|
||||
- https://idope.proxyportal.fun/
|
||||
- https://idope.uk-unblock.xyz/
|
||||
- https://idope.ind-unblock.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -61,6 +66,8 @@
|
||||
title:
|
||||
selector: div.resultdivtop a div.resultdivtopname
|
||||
category:
|
||||
text: 0
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: div.resultdivbotton div.resultdivbottoncategory
|
||||
case:
|
||||
|
@@ -133,6 +133,7 @@
|
||||
active: 0
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
# does not support imdbid searches and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: div.b-content > table > tbody > tr > td > table.lista > tbody > tr:has(a[href^="index.php?page=torrents&category="])
|
||||
|
@@ -5,8 +5,9 @@
|
||||
language: it-it
|
||||
type: public
|
||||
encoding: Windows-1252
|
||||
followredirect: true
|
||||
links:
|
||||
- https://ilcorsaronero.pw/
|
||||
- https://ilcorsaronero.xyz/
|
||||
- https://ilcorsaronero.fun/
|
||||
- https://ilcorsaronero.pro/
|
||||
legacylinks:
|
||||
@@ -16,17 +17,28 @@
|
||||
- https://ilcorsaronero.ch/
|
||||
- https://ilcorsaronero.cc/
|
||||
- https://ilcorsaronero.pizza/
|
||||
- https://ilcorsaronero.pw/
|
||||
- https://ilcorsaronero.unblockit.pro/
|
||||
- https://ilcorsaronero.unblockit.one/ # test and empty search fails, redirects to ilcorsaronero.fun
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/HD, desc: "BDRiP", default: true}
|
||||
- {id: 1, cat: Movies/HD, desc: "Movies BDRiP", default: true}
|
||||
- {id: 2, cat: Audio, desc: "Music", default: true}
|
||||
- {id: 2, cat: PC/Games, desc: "Games", default: true}
|
||||
- {id: 3, cat: PC/Games, desc: "Games PC", default: true}
|
||||
- {id: 4, cat: Other, desc: "Other", default: true}
|
||||
- {id: 5, cat: TV/Anime, desc: "Anime", default: true}
|
||||
- {id: 7, cat: PC/0day, desc: "App", default: true}
|
||||
- {id: 6, cat: Books/Ebook, desc: "Ebooks", default: true}
|
||||
- {id: 7, cat: PC/0day, desc: "App Windows", default: true}
|
||||
- {id: 8, cat: PC, desc: "App Linux", default: true}
|
||||
- {id: 9, cat: PC/Mac, desc: "App Mac", default: true}
|
||||
- {id: 13, cat: Console/PSP, desc: "Games Playstation", default: true}
|
||||
- {id: 14, cat: Console/Xbox, desc: "Games Xbox", default: true}
|
||||
- {id: 15, cat: TV, desc: "TV Series", default: true}
|
||||
- {id: 19, cat: Movies/SD, desc: "Screener", default: true}
|
||||
- {id: 20, cat: Movies/SD, desc: "Full DVD", default: true}
|
||||
- {id: 16, cat: Other, desc: "Other", default: true}
|
||||
- {id: 18, cat: Audio/Audiobook, desc: "Audio Book", default: true}
|
||||
- {id: 19, cat: Movies/SD, desc: "Movies Screener", default: true}
|
||||
- {id: 20, cat: Movies/DVD, desc: "Movies DVD", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -94,6 +106,14 @@
|
||||
filters:
|
||||
- name: split
|
||||
args: [ "/", -1 ]
|
||||
description:
|
||||
selector: td:nth-child(1) a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: [ "/", -1 ]
|
||||
- name: prepend
|
||||
args: "cat="
|
||||
details:
|
||||
selector: td:nth-child(4) a
|
||||
attribute: href
|
||||
|
@@ -30,17 +30,22 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -53,8 +58,8 @@
|
||||
paths:
|
||||
- path: filterTorrents
|
||||
inputs:
|
||||
$raw: "{{range .Categories}}categories[]={{.}}&{{end}}"
|
||||
search: "{{if .Query.IMDBID}}{{else}}{{ .Keywords }}{{end}}"
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
description: ""
|
||||
uploader: ""
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
@@ -64,8 +69,10 @@
|
||||
sort: created_at
|
||||
direction: desc
|
||||
qty: 100
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/categories/"]
|
||||
@@ -111,7 +118,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -15,26 +15,26 @@
|
||||
- {id: 41, cat: Movies/SD, desc: "Film/Hun/SD"}
|
||||
- {id: 15, cat: Movies/DVD, desc: "Film/Hun/DVD-R"}
|
||||
- {id: 27, cat: Movies/HD, desc: "Film/Hun/HD"}
|
||||
- {id: 44, cat: Movies/HD, desc: "Film/Hun/UHD"}
|
||||
- {id: 44, cat: Movies/UHD, desc: "Film/Hun/UHD"}
|
||||
- {id: 2, cat: Books, desc: "eBook/Hun"}
|
||||
- {id: 7, cat: TV/SD, desc: "Sorozat/Eng"}
|
||||
- {id: 39, cat: TV/HD, desc: "Sorozat/Eng/HD"}
|
||||
- {id: 42, cat: Movies/SD, desc: "Film/Eng/SD"}
|
||||
- {id: 14, cat: Movies/DVD, desc: "Film/Eng/DVD-R"}
|
||||
- {id: 25, cat: Movies/HD, desc: "Film/Eng/HD"}
|
||||
- {id: 45, cat: Movies/HD, desc: "Film/Eng/UHD"}
|
||||
- {id: 45, cat: Movies/UHD, desc: "Film/Eng/UHD"}
|
||||
- {id: 1, cat: Books, desc: "eBook/Eng"}
|
||||
- {id: 38, cat: Audio/Audiobook, desc: "Hangoskönyv"}
|
||||
- {id: 21, cat: XXX, desc: "XXX"}
|
||||
- {id: 4, cat: PC/ISO, desc: "Program/ISO"}
|
||||
- {id: 19, cat: Audio/Other, desc: "Zene/Hun"}
|
||||
- {id: 19, cat: Audio/MP3, desc: "Zene/Hun"}
|
||||
- {id: 37, cat: Audio/Lossless, desc: "Lossless/Hun"}
|
||||
- {id: 9, cat: PC/Games, desc: "Játék/ISO"}
|
||||
- {id: 43, cat: Console, desc: "Játék/Konzol"}
|
||||
- {id: 29, cat: Other, desc: "Képek"}
|
||||
- {id: 28, cat: XXX/Imageset, desc: "XXX Képek"}
|
||||
- {id: 3, cat: PC/0day, desc: "Program/Egyéb"}
|
||||
- {id: 18, cat: Audio/Other, desc: "Zene/Eng"}
|
||||
- {id: 18, cat: Audio/MP3, desc: "Zene/Eng"}
|
||||
- {id: 26, cat: Audio/Lossless, desc: "Lossless/Eng"}
|
||||
- {id: 11, cat: PC/Games, desc: "Játék/Rip"}
|
||||
- {id: 13, cat: PC/Phone-Other, desc: "Mobil"}
|
||||
@@ -45,13 +45,37 @@
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "4"
|
||||
options:
|
||||
"4": "created"
|
||||
"7": "seeders"
|
||||
"5": "size"
|
||||
"1": "title"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
notsecure: "1"
|
||||
notsecure: 1
|
||||
error:
|
||||
- selector: div.login_error_content_text
|
||||
test:
|
||||
@@ -63,7 +87,10 @@
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
|
||||
t: all
|
||||
# 0 active 1 both 2 dead
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrenttable > tbody > tr:has(td.torrentmain)
|
||||
@@ -123,8 +150,9 @@
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [" ", ""]
|
||||
remove: div.uploader, div.moderation, a.leftborder
|
||||
|
||||
date:
|
||||
selector: td.center.date
|
||||
filters:
|
||||
@@ -142,5 +170,6 @@
|
||||
"*" : 1
|
||||
description:
|
||||
selector: div.contenttext
|
||||
optional: true
|
||||
remove: div.contenttitle
|
||||
# engine tbd
|
||||
# custom v2.0b
|
||||
|
@@ -7,6 +7,7 @@
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://isohunt2.net/
|
||||
- https://isohunt.nz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -5,8 +5,12 @@
|
||||
language: hu
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://itorrent.ws/
|
||||
- https://itorrent.unblockit.one/
|
||||
legacylinks:
|
||||
- https://itorrent.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
554
src/Jackett.Common/Definitions/kaztorka.yml
Normal file
554
src/Jackett.Common/Definitions/kaztorka.yml
Normal file
@@ -0,0 +1,554 @@
|
||||
---
|
||||
site: kaztorka
|
||||
name: Kaztorka
|
||||
description: "Kaztorka is a RUSSIAN Semi-Private Torrent Tracker for 0DAY / GENERAL"
|
||||
language: ru-ru
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://kaztorka.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# films
|
||||
- {id: 13, cat: Movies, desc: "Фильмы"}
|
||||
- {id: 68, cat: Movies, desc: "Новинки кинопроката"}
|
||||
- {id: 670, cat: Movies, desc: "Авторские переводы"}
|
||||
- {id: 100, cat: Movies, desc: "Арт-хаус / Авторское кино"}
|
||||
- {id: 541, cat: Movies, desc: "Азиатские фильмы"}
|
||||
- {id: 20, cat: Movies, desc: "Боевик"}
|
||||
- {id: 30, cat: Movies, desc: "Вестерн"}
|
||||
- {id: 28, cat: Movies, desc: "Детектив"}
|
||||
- {id: 23, cat: Movies, desc: "Детский / Семейный"}
|
||||
- {id: 26, cat: Movies, desc: "Драма"}
|
||||
- {id: 288, cat: Movies, desc: "Индийские фильмы"}
|
||||
- {id: 256, cat: Movies, desc: "Казахстанское кино"}
|
||||
- {id: 243, cat: Movies, desc: "Классика мирового кинематографа"}
|
||||
- {id: 241, cat: Movies, desc: "Классика советского кино"}
|
||||
- {id: 19, cat: Movies, desc: "Комедия"}
|
||||
- {id: 29, cat: Movies, desc: "Мелодрама"}
|
||||
- {id: 617, cat: Movies, desc: "Мюзикл"}
|
||||
- {id: 25, cat: Movies, desc: "Приключения / Исторический"}
|
||||
- {id: 24, cat: Movies, desc: "Триллер"}
|
||||
- {id: 31, cat: Movies, desc: "Ужасы"}
|
||||
- {id: 22, cat: Movies, desc: "Фантастика"}
|
||||
- {id: 339, cat: Movies, desc: "Фильмы о спорте"}
|
||||
- {id: 500, cat: Movies, desc: "Фильмы со смешным переводом"}
|
||||
- {id: 21, cat: Movies, desc: "Фэнтези"}
|
||||
- {id: 69, cat: Movies, desc: "На иностранном языке (Фильмы)"}
|
||||
- {id: 145, cat: Movies, desc: "Трейлеры и доп.материалы (Ф)"}
|
||||
- {id: 178, cat: Movies, desc: "Звуковые дорожки и субтитры"}
|
||||
# hd video
|
||||
- {id: 470, cat: Movies/HD, desc: "HD Video"}
|
||||
- {id: 476, cat: Movies/HD, desc: "Новинки кинопроката (HD Video)"}
|
||||
- {id: 481, cat: Movies/HD, desc: "Зарубежное кино (HD Video)"}
|
||||
- {id: 482, cat: Movies/HD, desc: "Классика зарубежного кино (HD Video)"}
|
||||
- {id: 483, cat: Movies/HD, desc: "Мультфильмы (HD Video)"}
|
||||
- {id: 484, cat: Movies/HD, desc: "Российское/Бл. зарубежья кино (HD Video)"}
|
||||
- {id: 489, cat: Movies/HD, desc: "Советское кино (HD Video)"}
|
||||
- {id: 662, cat: Movies/HD, desc: "Ultra HD Video (4k)"}
|
||||
- {id: 684, cat: Movies/HD, desc: "HEVC (H.265)"}
|
||||
- {id: 533, cat: Movies/HD, desc: "Бюджетные сцен-рипы (HD Video)"}
|
||||
# 3D video
|
||||
- {id: 528, cat: Movies/3D, desc: "3D Video"}
|
||||
- {id: 529, cat: Movies/3D, desc: "3D Кинофильмы"}
|
||||
- {id: 530, cat: Movies/3D, desc: "3D Мультфильмы"}
|
||||
- {id: 531, cat: Movies/3D, desc: "3D Документальные фильмы"}
|
||||
- {id: 532, cat: Movies/3D, desc: "3D Спорт"}
|
||||
- {id: 439, cat: Movies/3D, desc: "3D Разное"}
|
||||
# DVD
|
||||
- {id: 469, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 475, cat: Movies/DVD, desc: "Новинки кинопроката (DVD)"}
|
||||
- {id: 487, cat: Movies/DVD, desc: "Документальное кино (DVD)"}
|
||||
- {id: 477, cat: Movies/DVD, desc: "Зарубежное кино (DVD)"}
|
||||
- {id: 478, cat: Movies/DVD, desc: "Классика зарубежного кино (DVD)"}
|
||||
- {id: 479, cat: Movies/DVD, desc: "Мультфильмы (DVD)"}
|
||||
- {id: 480, cat: Movies/DVD, desc: "Российское и казахстанское кино (DVD)"}
|
||||
- {id: 486, cat: Movies/DVD, desc: "Советское кино (DVD)"}
|
||||
# cartoons
|
||||
- {id: 246, cat: Movies, desc: "Мультфильмы"}
|
||||
- {id: 248, cat: Movies, desc: "Зарубежные мультфильмы"}
|
||||
- {id: 247, cat: Movies, desc: "Отечественные мультфильмы"}
|
||||
# doc movies and tv shows
|
||||
- {id: 351, cat: TV/Documentary, desc: "Док. фильмы и телепередачи"}
|
||||
- {id: 352, cat: TV/Documentary, desc: "BBC, Discovery, NG, AP"}
|
||||
- {id: 283, cat: TV/Documentary, desc: "Авторские работы"}
|
||||
- {id: 361, cat: TV/Documentary, desc: "Военное дело"}
|
||||
- {id: 644, cat: TV/Documentary, desc: "Вторая Мировая война"}
|
||||
- {id: 353, cat: TV/Documentary, desc: "Космос, Живая природа"}
|
||||
- {id: 360, cat: TV/Documentary, desc: "Криминальный мир"}
|
||||
- {id: 358, cat: TV/Documentary, desc: "Культурно-исторические"}
|
||||
- {id: 356, cat: TV/Documentary, desc: "Личности и кумиры"}
|
||||
- {id: 354, cat: TV/Documentary, desc: "Научно-популярные"}
|
||||
- {id: 355, cat: TV/Documentary, desc: "Непознанное"}
|
||||
- {id: 357, cat: TV/Documentary, desc: "Общественно-политические"}
|
||||
- {id: 362, cat: TV/Documentary, desc: "Путешествия и туризм"}
|
||||
- {id: 359, cat: TV/Documentary, desc: "Развлекательные"}
|
||||
- {id: 455, cat: TV/Documentary, desc: "На ин. языке (Документалистика)"}
|
||||
- {id: 363, cat: TV/Documentary, desc: "Разное (Документалистика)"}
|
||||
- {id: 383, cat: TV/Documentary, desc: "Документальное кино (HD Video)"}
|
||||
# comedy, fun, tv shows
|
||||
- {id: 214, cat: TV, desc: "Юмор, приколы, ТВ-шоу"}
|
||||
- {id: 215, cat: TV, desc: "Юмористические программы"}
|
||||
- {id: 216, cat: TV, desc: "Юмористы"}
|
||||
- {id: 81, cat: TV, desc: "Comedy Club"}
|
||||
- {id: 82, cat: TV, desc: "КВН"}
|
||||
- {id: 350, cat: TV, desc: "Интеллектуальные"}
|
||||
- {id: 218, cat: TV, desc: "Аудио и видео (приколы)"}
|
||||
- {id: 219, cat: TV, desc: "ТВ-шоу"}
|
||||
- {id: 569, cat: TV, desc: "Юмор, приколы, ТВ-шоу (HD VIDEO)"}
|
||||
# Sports
|
||||
- {id: 131, cat: TV/Sport, desc: "Спортивные передачи"}
|
||||
- {id: 132, cat: TV/Sport, desc: "Авто / Мото"}
|
||||
- {id: 133, cat: TV/Sport, desc: "Баскетбол"}
|
||||
- {id: 136, cat: TV/Sport, desc: "Бодибилдинг"}
|
||||
- {id: 135, cat: TV/Sport, desc: "Бокс"}
|
||||
- {id: 386, cat: TV/Sport, desc: "Единоборства"}
|
||||
- {id: 203, cat: TV/Sport, desc: "Олимпиады"}
|
||||
- {id: 467, cat: TV/Sport, desc: "Покер"}
|
||||
- {id: 385, cat: TV/Sport, desc: "Реслинг"}
|
||||
- {id: 384, cat: TV/Sport, desc: "Смешанные единоборства"}
|
||||
- {id: 138, cat: TV/Sport, desc: "Футбол"}
|
||||
- {id: 139, cat: TV/Sport, desc: "Хоккей"}
|
||||
- {id: 140, cat: TV/Sport, desc: "Другие спортивные передачи"}
|
||||
- {id: 570, cat: TV/Sport, desc: "Спортивные передачи (HD VIDEO)"}
|
||||
# foreign series
|
||||
- {id: 16, cat: TV, desc: "Зарубежные сериалы"}
|
||||
- {id: 623, cat: TV, desc: "100 (Сотня) / The Hundred (The 100)"}
|
||||
- {id: 576, cat: TV, desc: "Американская История Ужасов"}
|
||||
- {id: 196, cat: TV, desc: "Анатомия страсти / Grey's anatomy"}
|
||||
- {id: 577, cat: TV, desc: "Белый воротничок / White Collar"}
|
||||
- {id: 578, cat: TV, desc: "Бесстыжие / Shameless"}
|
||||
- {id: 625, cat: TV, desc: "В поле зрения (Подозреваемый)"}
|
||||
- {id: 579, cat: TV, desc: "Викинги / Vikings"}
|
||||
- {id: 403, cat: TV, desc: "Во все тяжкие / Breaking Bad"}
|
||||
- {id: 622, cat: TV, desc: "Ганнибал / Hannibal"}
|
||||
- {id: 54, cat: TV, desc: "Герои / Heroes"}
|
||||
- {id: 580, cat: TV, desc: "Гримм / Grimm"}
|
||||
- {id: 275, cat: TV, desc: "Два с половиной человека"}
|
||||
- {id: 447, cat: TV, desc: "Дневники вампира / Древние"}
|
||||
- {id: 285, cat: TV, desc: "Доктор Кто / Doctor Who"}
|
||||
- {id: 122, cat: TV, desc: "Доктор Хаус / House M.D."}
|
||||
- {id: 148, cat: TV, desc: "Звёздные врата / Stargate"}
|
||||
- {id: 492, cat: TV, desc: "Игра престолов / Game of Thrones"}
|
||||
- {id: 426, cat: TV, desc: "Касл / Castle"}
|
||||
- {id: 326, cat: TV, desc: "Кости / Bones"}
|
||||
- {id: 539, cat: TV, desc: "Менталист / The Mentalist"}
|
||||
- {id: 149, cat: TV, desc: "Место преступления / CSI"}
|
||||
- {id: 624, cat: TV, desc: "Однажды в Сказке"}
|
||||
- {id: 55, cat: TV, desc: "Остаться в живых / Lost"}
|
||||
- {id: 587, cat: TV, desc: "Родина / Homeland"}
|
||||
- {id: 75, cat: TV, desc: "Сверхъестественное / Supernatural"}
|
||||
- {id: 663, cat: TV, desc: "Секретные материалы / The X-Files"}
|
||||
- {id: 491, cat: TV, desc: "Сыны Анархии / Sons of Anarchy"}
|
||||
- {id: 401, cat: TV, desc: "Теория большого взрыва"}
|
||||
- {id: 590, cat: TV, desc: "Форс-мажоры (Костюмы в законе)"}
|
||||
- {id: 538, cat: TV, desc: "Ходячие мертвецы / The Walking Dead"}
|
||||
- {id: 536, cat: TV, desc: "Шерлок (Шерлок Холмс) / Sherlock"}
|
||||
- {id: 592, cat: TV, desc: "Элементарно / Elementary"}
|
||||
- {id: 646, cat: TV, desc: "Вселенная DC Comics"}
|
||||
- {id: 647, cat: TV, desc: "Вселенная Marvel Comics"}
|
||||
- {id: 333, cat: TV, desc: "Латиноамериканские сериалы"}
|
||||
- {id: 593, cat: TV, desc: "Турецкие сериалы / Turkish serials"}
|
||||
- {id: 648, cat: TV, desc: "Сериалы о космосе"}
|
||||
- {id: 58, cat: TV, desc: "Другие заруб. сериалы"}
|
||||
- {id: 565, cat: TV, desc: "Другие заруб. сериалы (HD Video)"}
|
||||
- {id: 382, cat: TV, desc: "Трейлеры и доп. материалы (ЗС)"}
|
||||
# russian tv series
|
||||
- {id: 387, cat: TV, desc: "Сериалы России и ближнего зарубежья"}
|
||||
- {id: 594, cat: TV, desc: "Классика сериалов СССР"}
|
||||
- {id: 568, cat: TV, desc: "Восьмидесятые"}
|
||||
- {id: 450, cat: TV, desc: "Глухарь / Пятницкий / Карпов"}
|
||||
- {id: 573, cat: TV, desc: "Деффчонки"}
|
||||
- {id: 501, cat: TV, desc: "Закрытая школа"}
|
||||
- {id: 395, cat: TV, desc: "Интерны"}
|
||||
- {id: 396, cat: TV, desc: "Кадетство / Кремлевские курсанты"}
|
||||
- {id: 567, cat: TV, desc: "Кухня"}
|
||||
- {id: 626, cat: TV, desc: "Ментовские войны"}
|
||||
- {id: 461, cat: TV, desc: "Реальные пацаны"}
|
||||
- {id: 572, cat: TV, desc: "Сваты"}
|
||||
- {id: 78, cat: TV, desc: "Солдаты"}
|
||||
- {id: 664, cat: TV, desc: "Тайны следствия"}
|
||||
- {id: 411, cat: TV, desc: "Универ"}
|
||||
- {id: 618, cat: TV, desc: "Физрук"}
|
||||
- {id: 627, cat: TV, desc: "Чужой район "}
|
||||
- {id: 79, cat: TV, desc: "Др. сериалы России и бл. зарубежья"}
|
||||
- {id: 566, cat: TV, desc: "Др. сериалы России и бл. зарубежья HD"}
|
||||
- {id: 412, cat: TV, desc: "Трейлеры и доп. материалы (РС)"}
|
||||
# Asian tv shows
|
||||
- {id: 542, cat: TV, desc: "Азиатские сериалы"}
|
||||
- {id: 543, cat: TV, desc: "Корейские сериалы"}
|
||||
- {id: 544, cat: TV, desc: "Японские сериалы"}
|
||||
- {id: 545, cat: TV, desc: "Другие азиатские сериалы"}
|
||||
- {id: 546, cat: TV, desc: "VMV и другие ролики"}
|
||||
# cartoons
|
||||
- {id: 166, cat: TV, desc: "Мультсериалы"}
|
||||
- {id: 324, cat: TV, desc: "Walt Disney"}
|
||||
- {id: 176, cat: TV, desc: "Аватар / Avatar"}
|
||||
- {id: 502, cat: TV, desc: "Гриффины / Family Guy"}
|
||||
- {id: 322, cat: TV, desc: "Звёздные Войны"}
|
||||
- {id: 325, cat: TV, desc: "Лунтик"}
|
||||
- {id: 540, cat: TV, desc: "Маша и Медведь"}
|
||||
- {id: 323, cat: TV, desc: "Пингвины Мадагаскара"}
|
||||
- {id: 167, cat: TV, desc: "Симпсоны / The Simpsons"}
|
||||
- {id: 240, cat: TV, desc: "Смешарики"}
|
||||
- {id: 169, cat: TV, desc: "Спанч боб / Spongebob Squarepants"}
|
||||
- {id: 170, cat: TV, desc: "Том и Джерри / Tom & Jerry"}
|
||||
- {id: 346, cat: TV, desc: "Трансформеры"}
|
||||
- {id: 171, cat: TV, desc: "Футурама / Futurama"}
|
||||
- {id: 168, cat: TV, desc: "Южный парк / South Park"}
|
||||
- {id: 177, cat: TV, desc: "Другие заруб. мультсериалы"}
|
||||
- {id: 571, cat: TV, desc: "Другие мультсериалы СНГ"}
|
||||
# anime and manga
|
||||
- {id: 85, cat: TV/Anime, desc: "Anime & Manga"}
|
||||
- {id: 86, cat: TV/Anime, desc: "Полнометражное аниме"}
|
||||
- {id: 380, cat: TV/Anime, desc: "Онгоинги"}
|
||||
- {id: 87, cat: TV/Anime, desc: "Аниме-Сериалы"}
|
||||
- {id: 381, cat: TV/Anime, desc: "OVA / ONA"}
|
||||
- {id: 368, cat: TV/Anime, desc: "Bleach"}
|
||||
- {id: 367, cat: TV/Anime, desc: "Naruto"}
|
||||
- {id: 369, cat: TV/Anime, desc: "One Piece"}
|
||||
- {id: 88, cat: TV/Anime, desc: "Манга"}
|
||||
- {id: 89, cat: TV/Anime, desc: "Саундтреки из аниме (OST)"}
|
||||
- {id: 245, cat: TV/Anime, desc: "AMV-клипы"}
|
||||
# music mp3
|
||||
- {id: 14, cat: Audio/MP3, desc: "Музыка (mp3)"}
|
||||
- {id: 37, cat: Audio/MP3, desc: "Зарубежный Rap / Hip-Hop (mp3)"}
|
||||
- {id: 365, cat: Audio/MP3, desc: "Русский Rap / Hip-Hop (mp3)"}
|
||||
- {id: 38, cat: Audio/MP3, desc: "Зарубежный рок (mp3)"}
|
||||
- {id: 490, cat: Audio/MP3, desc: "Post-Hardcore (mp3)"}
|
||||
- {id: 205, cat: Audio/MP3, desc: "Панк рок (mp3)"}
|
||||
- {id: 204, cat: Audio/MP3, desc: "Русский рок (mp3)"}
|
||||
- {id: 172, cat: Audio/MP3, desc: "Метал (mp3)"}
|
||||
- {id: 464, cat: Audio/MP3, desc: "Indie (mp3)"}
|
||||
- {id: 348, cat: Audio/MP3, desc: "Drum & Bass (mp3)"}
|
||||
- {id: 527, cat: Audio/MP3, desc: "Dubstep (mp3)"}
|
||||
- {id: 36, cat: Audio/MP3, desc: "R & B (mp3)"}
|
||||
- {id: 40, cat: Audio/MP3, desc: "Электронная музыка (mp3)"}
|
||||
- {id: 97, cat: Audio/MP3, desc: "House (mp3)"}
|
||||
- {id: 200, cat: Audio/MP3, desc: "Ambient / Chillout / NewAge (mp3)"}
|
||||
- {id: 454, cat: Audio/MP3, desc: "Trance (mp3)"}
|
||||
- {id: 39, cat: Audio/MP3, desc: "Pop / Disco / Eurodance (mp3)"}
|
||||
- {id: 108, cat: Audio/MP3, desc: "Шансон (mp3)"}
|
||||
- {id: 164, cat: Audio/MP3, desc: "Авторская песня (mp3)"}
|
||||
- {id: 106, cat: Audio/MP3, desc: "Джаз / Блюз (mp3)"}
|
||||
- {id: 547, cat: Audio/MP3, desc: "Блюз-рок (mp3)"}
|
||||
- {id: 109, cat: Audio/MP3, desc: "Инструментальная музыка (mp3)"}
|
||||
- {id: 208, cat: Audio/MP3, desc: "Казахстанская музыка (mp3)"}
|
||||
- {id: 561, cat: Audio/MP3, desc: "Восточноазиатская Pop музыка (MP3)"}
|
||||
- {id: 562, cat: Audio/MP3, desc: "Восточноазиатская Rock музыка (MP3)"}
|
||||
- {id: 110, cat: Audio/MP3, desc: "Классическая музыка (mp3)"}
|
||||
- {id: 107, cat: Audio/MP3, desc: "Саундтреки (OST) (mp3)"}
|
||||
- {id: 466, cat: Audio/MP3, desc: "Фольклорная / Этническая музыка (mp3)"}
|
||||
- {id: 41, cat: Audio/MP3, desc: "Другая музыка (mp3)"}
|
||||
- {id: 465, cat: Audio/MP3, desc: "Неофициальные сборники (mp3)"}
|
||||
# music lossless
|
||||
- {id: 289, cat: Audio/Lossless, desc: "Музыка (lossless)"}
|
||||
- {id: 378, cat: Audio/Lossless, desc: "Зарубежный Rap/Hip-Hop (lossless)"}
|
||||
- {id: 291, cat: Audio/Lossless, desc: "Русский Rap/Hip-Hop (lossless)"}
|
||||
- {id: 293, cat: Audio/Lossless, desc: "Зарубежный рок (lossless)"}
|
||||
- {id: 295, cat: Audio/Lossless, desc: "Панк рок (lossless)"}
|
||||
- {id: 292, cat: Audio/Lossless, desc: "Русский рок (lossless)"}
|
||||
- {id: 294, cat: Audio/Lossless, desc: "Метал (lossless)"}
|
||||
- {id: 349, cat: Audio/Lossless, desc: "Drum & Bass (lossless)"}
|
||||
- {id: 290, cat: Audio/Lossless, desc: "R & B (lossless)"}
|
||||
- {id: 297, cat: Audio/Lossless, desc: "Электронная музыка (lossless)"}
|
||||
- {id: 299, cat: Audio/Lossless, desc: "House (lossless)"}
|
||||
- {id: 298, cat: Audio/Lossless, desc: "Meditative/Trance/NewAge (lossless)"}
|
||||
- {id: 296, cat: Audio/Lossless, desc: "Pop (lossless)"}
|
||||
- {id: 340, cat: Audio/Lossless, desc: "Шансон (lossless)"}
|
||||
- {id: 302, cat: Audio/Lossless, desc: "Авторская песня (lossless)"}
|
||||
- {id: 300, cat: Audio/Lossless, desc: "Джаз/Блюз (lossless)"}
|
||||
- {id: 548, cat: Audio/Lossless, desc: "Блюз-рок (lossless)"}
|
||||
- {id: 305, cat: Audio/Lossless, desc: "Инструментальная музыка (lossless)"}
|
||||
- {id: 303, cat: Audio/Lossless, desc: "Казахстанская музыка (lossless)"}
|
||||
- {id: 306, cat: Audio/Lossless, desc: "Классическая музыка (lossless)"}
|
||||
- {id: 304, cat: Audio/Lossless, desc: "Саундтреки (OST) (lossless)"}
|
||||
- {id: 307, cat: Audio/Lossless, desc: "Другая музыка (lossless)"}
|
||||
- {id: 377, cat: Audio/Lossless, desc: "Многоканальная музыка"}
|
||||
- {id: 549, cat: Audio/Lossless, desc: "Собственные оцифровки (lossless)"}
|
||||
# music misc
|
||||
- {id: 336, cat: Audio, desc: "Музыка (разное)"}
|
||||
- {id: 338, cat: Audio, desc: "Авторские раздачи"}
|
||||
- {id: 337, cat: Audio, desc: "Караоке и минусовки"}
|
||||
# music video
|
||||
- {id: 42, cat: Audio/Video, desc: "Клипы"}
|
||||
- {id: 62, cat: Audio/Video, desc: "R & B (Клипы)"}
|
||||
- {id: 63, cat: Audio/Video, desc: "Rap/Hip-Hop (Клипы)"}
|
||||
- {id: 64, cat: Audio/Video, desc: "Рок, Панк, Метал (Клипы)"}
|
||||
- {id: 65, cat: Audio/Video, desc: "Pop (Клипы)"}
|
||||
- {id: 66, cat: Audio/Video, desc: "Электронная музыка (Клипы)"}
|
||||
- {id: 126, cat: Audio/Video, desc: "House (Клипы)"}
|
||||
- {id: 127, cat: Audio/Video, desc: "Dance/Trance (Клипы)"}
|
||||
- {id: 128, cat: Audio/Video, desc: "Шансон (Клипы)"}
|
||||
- {id: 129, cat: Audio/Video, desc: "Инструментальная музыка (Клипы)"}
|
||||
- {id: 209, cat: Audio/Video, desc: "Казахстанские клипы"}
|
||||
- {id: 564, cat: Audio/Video, desc: "Восточноазиатская Pop музыка (Клипы)"}
|
||||
- {id: 616, cat: Audio/Video, desc: "Саундтреки (OST) (Клипы) "}
|
||||
- {id: 99, cat: Audio/Video, desc: "Концерты, музшоу, выступления"}
|
||||
- {id: 67, cat: Audio/Video, desc: "Другие клипы"}
|
||||
- {id: 308, cat: Audio/Video, desc: "DVD-клипы"}
|
||||
- {id: 495, cat: Audio/Video, desc: "HD Video - клипы"}
|
||||
- {id: 496, cat: Audio/Video, desc: "HD Video - концерты"}
|
||||
# pc games
|
||||
- {id: 15, cat: PC/Games, desc: "Игры для PC"}
|
||||
- {id: 645, cat: PC/Games, desc: "GOG-релизы"}
|
||||
- {id: 255, cat: PC/Games, desc: "Горячие новинки (License)"}
|
||||
- {id: 629, cat: PC/Games, desc: "Горячие новинки (Repack / Rip)"}
|
||||
- {id: 43, cat: PC/Games, desc: "Action/FPS"}
|
||||
- {id: 48, cat: PC/Games, desc: "Adventure & Quest"}
|
||||
- {id: 150, cat: PC/Games, desc: "Demo версии"}
|
||||
- {id: 94, cat: PC/Games, desc: "Fighting - Драки"}
|
||||
- {id: 49, cat: PC/Games, desc: "MMORPG - Онлайн игры"}
|
||||
- {id: 144, cat: PC/Games, desc: "Racing - Гонки"}
|
||||
- {id: 46, cat: PC/Games, desc: "RPG"}
|
||||
- {id: 45, cat: PC/Games, desc: "RTS - Стратегии"}
|
||||
- {id: 50, cat: PC/Games, desc: "Simulators - Симуляторы"}
|
||||
- {id: 93, cat: PC/Games, desc: "Sports - Спортивные игры"}
|
||||
- {id: 526, cat: PC/Games, desc: "Steam"}
|
||||
- {id: 51, cat: PC/Games, desc: "TBS - Пошаговые стратегии"}
|
||||
- {id: 429, cat: PC/Games, desc: "Аниме-игры"}
|
||||
- {id: 52, cat: PC/Games, desc: "Аркады и другие игры"}
|
||||
- {id: 334, cat: PC/Games, desc: "Игры для *nix/Mac OS"}
|
||||
- {id: 95, cat: PC/Games, desc: "Игры для детей"}
|
||||
- {id: 458, cat: PC/Games, desc: "Казуальные игры"}
|
||||
- {id: 142, cat: PC/Games, desc: "Старые игры (До 2005-го года)"}
|
||||
- {id: 143, cat: PC/Games, desc: "Патчи, моды и русификаторы"}
|
||||
- {id: 104, cat: PC/Games, desc: "Игровое видео"}
|
||||
# console
|
||||
- {id: 188, cat: Console, desc: "Игры для других платформ"}
|
||||
- {id: 669, cat: Console/PS4, desc: "PS4"}
|
||||
- {id: 157, cat: Console/PS3, desc: "PS3"}
|
||||
- {id: 158, cat: Console/PSP, desc: "PS1 / PS2"}
|
||||
- {id: 159, cat: Console/Xbox, desc: "XBOX / XBOX360"}
|
||||
- {id: 61, cat: Console/PSP, desc: "PSP"}
|
||||
- {id: 189, cat: Console/PSP, desc: "Видео для PSP"}
|
||||
- {id: 453, cat: Console/Wii, desc: "Nintendo Wii"}
|
||||
- {id: 242, cat: Console, desc: "Другие платформы"}
|
||||
# software
|
||||
- {id: 18, cat: PC, desc: "Софт"}
|
||||
- {id: 272, cat: PC, desc: "Drivers / Драйверы"}
|
||||
- {id: 117, cat: PC, desc: "Для работы с CD/DVD/HD-DV"}
|
||||
- {id: 116, cat: PC, desc: "Безопасность"}
|
||||
- {id: 118, cat: PC, desc: "Утилиты"}
|
||||
- {id: 113, cat: PC, desc: "Интернет"}
|
||||
- {id: 112, cat: PC, desc: "Офисные редакторы"}
|
||||
- {id: 114, cat: PC, desc: "Мультимедиа"}
|
||||
- {id: 665, cat: PC, desc: "Оригинальные образы Windows"}
|
||||
- {id: 666, cat: PC/0day, desc: "Сборки Windows все в одном"}
|
||||
- {id: 462, cat: PC/0day, desc: "Сборки Windows 10 / 8.1 / 8 / 7 / Vista"}
|
||||
- {id: 111, cat: PC/0day, desc: "Windows XP / 2000"}
|
||||
- {id: 463, cat: PC/0day, desc: "Windows Server"}
|
||||
- {id: 667, cat: PC, desc: "WPI / Сборники программы"}
|
||||
- {id: 668, cat: PC, desc: "Live / Boot CD"}
|
||||
- {id: 60, cat: PC, desc: "Linux / Unix OS"}
|
||||
- {id: 91, cat: PC/Mac, desc: "Mac OS"}
|
||||
- {id: 103, cat: PC, desc: "Графические редакторы"}
|
||||
- {id: 121, cat: PC, desc: "Программирование"}
|
||||
- {id: 257, cat: PC, desc: "Проектирование / САПР"}
|
||||
- {id: 320, cat: PC, desc: "Все для веб-разработки"}
|
||||
- {id: 335, cat: PC, desc: "Программы для *nix/Mac OS"}
|
||||
- {id: 389, cat: PC, desc: "Работа с жёстким диском"}
|
||||
- {id: 390, cat: PC, desc: "Словари. Переводчики"}
|
||||
# for multimedia and design
|
||||
- {id: 371, cat: PC, desc: "Для мультимедиа и дизайна"}
|
||||
- {id: 253, cat: PC, desc: "2D-Дизайн"}
|
||||
- {id: 258, cat: PC, desc: "3D-Дизайн"}
|
||||
- {id: 223, cat: PC, desc: "Видеомонтаж"}
|
||||
- {id: 254, cat: PC, desc: "Звукорежиссура"}
|
||||
# books
|
||||
- {id: 101, cat: Books, desc: "Книги и обучающие материалы"}
|
||||
- {id: 120, cat: Books, desc: "Всё для авто и мото"}
|
||||
- {id: 499, cat: Books, desc: "Всё для детей"}
|
||||
- {id: 227, cat: Books, desc: "Досуг и Хобби"}
|
||||
- {id: 228, cat: Books, desc: "Здоровье и Спорт"}
|
||||
- {id: 229, cat: Books, desc: "Изучение языков"}
|
||||
- {id: 230, cat: Books, desc: "Культура и Искусство"}
|
||||
- {id: 535, cat: Books, desc: "Комиксы"}
|
||||
- {id: 231, cat: Books, desc: "Наука и Техника"}
|
||||
- {id: 232, cat: Books, desc: "Образование и Общество"}
|
||||
- {id: 233, cat: Books, desc: "ПК, ОС и программы"}
|
||||
- {id: 234, cat: Books, desc: "Психология, саморазвитие"}
|
||||
- {id: 370, cat: Books, desc: "Технология и Производство"}
|
||||
- {id: 235, cat: Books, desc: "Художественные произведения"}
|
||||
- {id: 237, cat: Books, desc: "Экономика и Право"}
|
||||
- {id: 238, cat: Books, desc: "Другие книги и материалы"}
|
||||
# books by interest
|
||||
- {id: 83, cat: Books, desc: "По интересам"}
|
||||
- {id: 84, cat: Books, desc: "Всё о рыбалке"}
|
||||
- {id: 92, cat: Books, desc: "Всё об охоте"}
|
||||
- {id: 416, cat: Books, desc: "Кулинария, домоводство"}
|
||||
- {id: 421, cat: Books, desc: "Медицина"}
|
||||
- {id: 418, cat: Books, desc: "Рукоделие, моделирование"}
|
||||
- {id: 420, cat: Books, desc: "Сад и огород"}
|
||||
- {id: 422, cat: Books, desc: "Строительство и дизайн"}
|
||||
# audiobooks
|
||||
- {id: 611, cat: Audio/Audiobook, desc: "Аудиокниги"}
|
||||
- {id: 612, cat: Audio/Audiobook, desc: "Научно-образовательные произведения"}
|
||||
- {id: 613, cat: Audio/Audiobook, desc: "Фантастика, мистика, детектив, юмор"}
|
||||
- {id: 614, cat: Audio/Audiobook, desc: "Художественная литература"}
|
||||
- {id: 615, cat: Audio/Audiobook, desc: "Прочие аудиокниги"}
|
||||
# wallpaper, pictures
|
||||
- {id: 179, cat: Other, desc: "Обои / Рисунки / Картинки"}
|
||||
- {id: 388, cat: Other, desc: "Обои / Рисунки / Картинки"}
|
||||
- {id: 415, cat: Other, desc: "Аватары, иконки, юзербары"}
|
||||
- {id: 485, cat: Other, desc: "Юмор и приколы"}
|
||||
# mobiles
|
||||
- {id: 180, cat: PC/Phone-Other, desc: "Всё для мобильных телефонов и КПК"}
|
||||
- {id: 207, cat: PC/Phone-Other, desc: "Темы для мобильных и КПК"}
|
||||
- {id: 70, cat: PC/Phone-Other, desc: "Видео для мобильных и КПК"}
|
||||
- {id: 183, cat: PC/Phone-Other, desc: "Игры для мобильных и КПК"}
|
||||
- {id: 182, cat: PC/Phone-Other, desc: "Картинки для мобильных и КПК"}
|
||||
- {id: 184, cat: PC/Phone-Other, desc: "Софт для мобильных и КПК"}
|
||||
- {id: 181, cat: PC/Phone-Other, desc: "Мелодии для мобильных и КПК"}
|
||||
- {id: 185, cat: PC/Phone-Other, desc: "Прошивки для мобильных и КПК"}
|
||||
- {id: 98, cat: PC/Phone-Other, desc: "Системы навигации и карты для мобильных и КПК"}
|
||||
# apple
|
||||
- {id: 516, cat: PC/Phone-IOS, desc: "Apple"}
|
||||
- {id: 518, cat: PC/Phone-IOS, desc: "Аудио для iPhone, iPod, iPad"}
|
||||
- {id: 519, cat: PC/Phone-IOS, desc: "Видео для iPhone, iPod, iPad"}
|
||||
- {id: 520, cat: PC/Phone-IOS, desc: "Игры для iPhone, iPod, iPad"}
|
||||
- {id: 521, cat: PC/Phone-IOS, desc: "Софт для iPhone, iPod, iPad"}
|
||||
- {id: 522, cat: PC/Phone-IOS, desc: "Другое для iPhone, iPod, iPad"}
|
||||
- {id: 523, cat: PC/Mac, desc: "Игры для Mac OS"}
|
||||
- {id: 524, cat: PC/Mac, desc: "Софт для Mac OS"}
|
||||
- {id: 525, cat: PC/Mac, desc: "Другое для Mac OS"}
|
||||
# erotica
|
||||
- {id: 460, cat: XXX, desc: "Эротика"}
|
||||
- {id: 376, cat: XXX, desc: "Эротика (Видео)"}
|
||||
- {id: 414, cat: XXX, desc: "Эротика (Картинки)"}
|
||||
- {id: 310, cat: XXX, desc: "Эротические игры"}
|
||||
# violations
|
||||
- {id: 119, cat: Other, desc: "Нарушения"}
|
||||
- {id: 211, cat: Other, desc: "Повторы"}
|
||||
- {id: 212, cat: Other, desc: "Недооформленные торренты"}
|
||||
- {id: 213, cat: Other, desc: "Архив"}
|
||||
- {id: 373, cat: Other, desc: "Поглощенные"}
|
||||
- {id: 425, cat: Other, desc: "Запрет от правообладателя"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: striprussian
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: "data"
|
||||
options:
|
||||
"data": "created"
|
||||
"seeds": "seeders"
|
||||
"size": "size"
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: "desc"
|
||||
options:
|
||||
"desc": "desc"
|
||||
"asc": "asc"
|
||||
|
||||
login:
|
||||
path: auth/login
|
||||
method: form
|
||||
form: form#loginForm
|
||||
inputs:
|
||||
referer: "{{ .Config.sitelink }}"
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
rememberme: 1
|
||||
error:
|
||||
- selector: div#authError:contains("Неправильный")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="/auth/logout?s="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# find/376,414,310/vienna%20blood/all/desc/data/search//all/1
|
||||
# find/<category>/<title>/<all|active|dead>/<desc|asc>/<data|seeds|size>/search/<uploader>/<all|gold|silver|both|1.5x|2x|2.5x|3x|bothx>/<page>
|
||||
- path: "find/{{ range .Categories }}{{.}},{{end}}/{{ .Keywords }}/all/{{ .Config.type }}/{{ .Config.sort }}/search//all/1"
|
||||
method: post
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace # S01 to Сезон 1
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "Сезон $1"]
|
||||
- name: re_replace # S01E01 to Сезон 1 Эпизоды с 1
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "Сезон $1 Эпизоды с $2"]
|
||||
|
||||
rows:
|
||||
selector: table#searchTable > tbody > tr:has(a[href^="/torrent/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="/find/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: ["/", 2]
|
||||
title:
|
||||
selector: a[href^="/torrent/"]
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["[\\.\\,\\:\\-\\/\\|\\[\\]\\(\\)«»\\+]", " "]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s*(\\d+)\\s*[Ээ]пизоды с\\s*(\\d+)\\s*по\\s*(\\d+)(.*)", "$1 S$2E$3-$4 rus $5"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[Ээ]пизоды с\\s*(\\d+)\\s*по\\s*(\\d+)(.*)", "$1 S$2-$3 rus $4"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: replace
|
||||
args: ["WEBRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEB DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["/torrent/", "/download/"]
|
||||
date:
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="/images/torrents/gold.gif"]: 0
|
||||
img[src="/images/torrents/silver.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src="/images/torrents/15.gif"]: 1.5
|
||||
img[src="/images/torrents/2.gif"]: 2
|
||||
img[src="/images/torrents/25.gif"]: 2.5
|
||||
img[src="/images/torrents/3.gif"]: 3
|
||||
"*": 1
|
||||
# engine n/a
|
@@ -5,15 +5,21 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://kickass.ws/
|
||||
- https://kickass.unblockit.one/
|
||||
legacylinks:
|
||||
- https://kickass.gg/
|
||||
- https://katcr.io/
|
||||
- https://thekat.nz/
|
||||
- https://thekat.nz/
|
||||
- https://thekat.se/
|
||||
- https://kat.how/
|
||||
- https://kat.li/
|
||||
- https://kickasstorrents.unblockninja.com/ # kickasstorrent proxy, not kickasstorrent-kathow
|
||||
- https://katcr.to/ # possible 3rd kickasstorrent site/clone?
|
||||
- https://kickasstorrent.cr/ # possible 3rd kickasstorrent site/clone?
|
||||
- https://kickass.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -21,10 +27,14 @@
|
||||
tv: TV
|
||||
music: Audio
|
||||
books: Books
|
||||
Games: Console
|
||||
games: Console
|
||||
applications: PC
|
||||
xxx: XXX
|
||||
other: Other
|
||||
# additional from proxy
|
||||
video: TV # ,Movies
|
||||
porn: XXX
|
||||
audio: Audio
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -58,23 +68,40 @@
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: other
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: span[id^="cat_"] > strong > a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: tolower
|
||||
- name: trim
|
||||
args: /
|
||||
# proxy uses Video for both TV and Movies
|
||||
category:
|
||||
optional: true
|
||||
selector: span[id^="cat_"] > strong > a:contains("Video")
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Video", "movies"]
|
||||
title:
|
||||
selector: td:nth-child(1) > div > div > a[class="cellMainLink"]
|
||||
details:
|
||||
selector: td:nth-child(1) > div > div > a[class="cellMainLink"]
|
||||
attribute: href
|
||||
download:
|
||||
optional: true
|
||||
# the official site delivers mylink so we skip to the magnet URI
|
||||
selector: td:nth-child(1) > div > a[data-download=""]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: url
|
||||
download:
|
||||
optional: true
|
||||
# the proxy delivers magnet URI
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(2)
|
||||
filters:
|
||||
@@ -90,6 +117,10 @@
|
||||
- name: replace
|
||||
args: ["N/A", "0"]
|
||||
leechers:
|
||||
# default for proxy which has an empty leechers selector
|
||||
text: 0
|
||||
leechers:
|
||||
optional: true
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: replace
|
||||
|
@@ -5,8 +5,20 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://katcr.co/
|
||||
- https://kat.root.yt/
|
||||
- https://kat.unblockit.one/ # searching redirects to katcr.co in browser but appears to have no issue in Jackett
|
||||
- https://kickasstorrents.unblockninja.com/
|
||||
- https://katcr.black-mirror.xyz/
|
||||
- https://katcr.unblocked.casa/
|
||||
- https://katcr.proxyportal.fun/
|
||||
- https://katcr.uk-unblock.xyz/
|
||||
- https://katcr.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://kickasstorrent.cr/ # possible 3rd kickasstorrent site/clone?
|
||||
- https://katcr.to/ # possible 3rd kickasstorrent site/clone?
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -44,7 +44,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
default: "<ol><li>Access to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -68,7 +68,6 @@
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href*="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -149,7 +149,7 @@
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
@@ -174,10 +174,11 @@
|
||||
type: tout
|
||||
# searchin nomtorrent (name) or desctorrent (descr)
|
||||
endroit: nomtorrent
|
||||
# language 0 all 2 english
|
||||
# language 0 all 2 english
|
||||
langue: 0
|
||||
# freeleech oui (yes) non (no) peuimporte (ignore)
|
||||
tl: peuimporte
|
||||
# does not support imdbid searches and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: tr:has(a[onmouseover])
|
||||
@@ -186,7 +187,7 @@
|
||||
category:
|
||||
selector: a[href*="/SousCategories/"]
|
||||
attribute: href
|
||||
filters:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)$
|
||||
title:
|
||||
@@ -211,7 +212,7 @@
|
||||
selector: a[onmouseover] font[color="#F2F2F2"]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Il y a (.*?)\\s-"
|
||||
args: "Il y a (.*?)\\s-"
|
||||
- name: replace
|
||||
args: ["heures", "hours"]
|
||||
- name: replace
|
||||
|
@@ -52,17 +52,20 @@
|
||||
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: script[nonce]:contains("Error")
|
||||
message:
|
||||
selector: script[nonce]:contains("Error")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout"]
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
ratio:
|
||||
path: /
|
||||
@@ -137,7 +140,7 @@
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten)", "minutes"]
|
||||
- name: re_replace
|
||||
|
@@ -14,7 +14,7 @@
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
tv-search: [q]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -5,17 +5,26 @@
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.limetorrents.info/
|
||||
- https://www.limetorrents.asia/
|
||||
- https://www.limetorrents.co/
|
||||
- https://limetor.com/
|
||||
- https://www.limetor.pro/
|
||||
- https://limetorrents.unblockit.one/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.black-mirror.xyz/
|
||||
- https://limetorrents.unblocked.casa/
|
||||
- https://limetorrents.proxyportal.fun/
|
||||
- https://limetorrents.uk-unblock.xyz/
|
||||
- https://limetorrents.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- https://www.limetorrents.io/
|
||||
- https://www.limetorrents.cc/
|
||||
- https://www.limetorrents.me/
|
||||
- https://www.limetorrents.zone/ # redirects to .info
|
||||
- https://limetorrents.unblockit.pro/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -89,6 +98,8 @@
|
||||
selector: div.tt-name > a[href^="/"]
|
||||
attribute: href
|
||||
category:
|
||||
text: Other
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: td:nth-child(2)
|
||||
filters:
|
||||
|
@@ -10,6 +10,7 @@
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 0, cat: Other, desc: "Other"}
|
||||
- {id: 2002, cat: PC/ISO, desc: "4MLinux"}
|
||||
- {id: 2004, cat: PC/ISO, desc: "ALT Linux"}
|
||||
- {id: 2289, cat: PC/ISO, desc: "APODIO"}
|
||||
@@ -102,6 +103,7 @@
|
||||
- {id: 197, cat: PC/ISO, desc: "Freespire"}
|
||||
- {id: 1210, cat: PC/ISO, desc: "Fuduntu"}
|
||||
- {id: 2046, cat: PC/ISO, desc: "FuguIta"}
|
||||
- {id: 2290, cat: PC/ISO, desc: "FuryBSD"}
|
||||
- {id: 2256, cat: PC/ISO, desc: "G4L"}
|
||||
- {id: 2235, cat: PC/ISO, desc: "GALPon MiniNo"}
|
||||
- {id: 1212, cat: PC/ISO, desc: "GParted"}
|
||||
@@ -388,7 +390,7 @@
|
||||
selector: td:nth-child(2)
|
||||
remove: table
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# xbtit 2.3.0
|
||||
|
@@ -7,6 +7,11 @@
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://magnet4you.me/
|
||||
- https://magnet4you.black-mirror.xyz/
|
||||
- https://magnet4you.unblocked.casa/
|
||||
- https://magnet4you.proxyportal.fun/
|
||||
- https://magnet4you.uk-unblock.xyz/
|
||||
- https://magnet4you.ind-unblock.xyz/
|
||||
legacylinks:
|
||||
- http://magnet4you.me/
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user