mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-10 13:48:02 +02:00
Compare commits
193 Commits
v0.17.1036
...
v0.18.403
Author | SHA1 | Date | |
---|---|---|---|
![]() |
7a27bb6eb4 | ||
![]() |
30c73f12c1 | ||
![]() |
53ca1f5a2d | ||
![]() |
41070c2935 | ||
![]() |
30b8c8d779 | ||
![]() |
c854cd6614 | ||
![]() |
0fbd88f879 | ||
![]() |
eb45f05a7f | ||
![]() |
d3d62ab7ca | ||
![]() |
01ce1174f2 | ||
![]() |
5bef058afd | ||
![]() |
f69362dbd7 | ||
![]() |
ced9a79ff4 | ||
![]() |
11422f7625 | ||
![]() |
2e4a164f08 | ||
![]() |
5648fe8257 | ||
![]() |
4981fc31e9 | ||
![]() |
cfcca03470 | ||
![]() |
4524c18d39 | ||
![]() |
045352c20f | ||
![]() |
b9c3f593da | ||
![]() |
e1704e6037 | ||
![]() |
4ddaf2ba0c | ||
![]() |
d448ef6a60 | ||
![]() |
3c3dbf414f | ||
![]() |
e8a7c5cadf | ||
![]() |
10c7d932d3 | ||
![]() |
72c396f32c | ||
![]() |
8f0f0c0b55 | ||
![]() |
542a905f0e | ||
![]() |
64a05162c4 | ||
![]() |
9e512fddcb | ||
![]() |
f832337d85 | ||
![]() |
0ac99cbe08 | ||
![]() |
6aca3ff059 | ||
![]() |
494331b5fd | ||
![]() |
e347d38fc0 | ||
![]() |
3b5ae2c279 | ||
![]() |
77abcf2be7 | ||
![]() |
0b376faf2d | ||
![]() |
044cfa851c | ||
![]() |
04ee81430e | ||
![]() |
f8fc1b986b | ||
![]() |
b26b4717ef | ||
![]() |
c9e6015e99 | ||
![]() |
131c7fea94 | ||
![]() |
94a1381572 | ||
![]() |
313a2fd784 | ||
![]() |
7a28412d22 | ||
![]() |
caa9b85a53 | ||
![]() |
33e22f8636 | ||
![]() |
48e85564c8 | ||
![]() |
d4c0bbab9f | ||
![]() |
7b316bc27d | ||
![]() |
0958df5ee5 | ||
![]() |
76c4fbd456 | ||
![]() |
2bd485b0c3 | ||
![]() |
111d280b6c | ||
![]() |
7394d512ad | ||
![]() |
aba27773d1 | ||
![]() |
5dfad729a6 | ||
![]() |
fea8bca388 | ||
![]() |
cf620c2f30 | ||
![]() |
e090a0ade6 | ||
![]() |
d952679313 | ||
![]() |
3c920f528e | ||
![]() |
91bfb1adaa | ||
![]() |
c1322b07ca | ||
![]() |
8152587147 | ||
![]() |
c5283113c5 | ||
![]() |
1b2e772413 | ||
![]() |
8d6c2d50c0 | ||
![]() |
2a38d5f640 | ||
![]() |
c29c63af18 | ||
![]() |
bd464beb7d | ||
![]() |
26100576ff | ||
![]() |
54bb45567e | ||
![]() |
66001256f3 | ||
![]() |
670cbfdf68 | ||
![]() |
8f649dc9d2 | ||
![]() |
f322c0ed94 | ||
![]() |
a537018fcc | ||
![]() |
ce258f712c | ||
![]() |
2903a292b4 | ||
![]() |
596b46e61b | ||
![]() |
f47c216348 | ||
![]() |
f47f8a3407 | ||
![]() |
90c775f496 | ||
![]() |
3aee17d668 | ||
![]() |
bb5ba9436d | ||
![]() |
73afb5cb95 | ||
![]() |
be38259e9b | ||
![]() |
cd2c7a49b4 | ||
![]() |
87dacdeae0 | ||
![]() |
1f1f42cf59 | ||
![]() |
3ad2dd8b47 | ||
![]() |
e86eda9ea3 | ||
![]() |
e8f05ccf4a | ||
![]() |
816ba17902 | ||
![]() |
e1c007b9cf | ||
![]() |
ea917e3cef | ||
![]() |
5ca84bd064 | ||
![]() |
c9f74ad4f9 | ||
![]() |
93ad748719 | ||
![]() |
7d0267fe61 | ||
![]() |
b626e6dbaa | ||
![]() |
91c70c88ec | ||
![]() |
2ee6104c46 | ||
![]() |
e7dcdf4001 | ||
![]() |
1a40830123 | ||
![]() |
577b8361e5 | ||
![]() |
4694f9fed7 | ||
![]() |
abbfeea7f0 | ||
![]() |
eba319c4d8 | ||
![]() |
ee06a72ef2 | ||
![]() |
27e902025d | ||
![]() |
dbbfde938b | ||
![]() |
da9a221c3d | ||
![]() |
e15ce4de4a | ||
![]() |
02ac98beaa | ||
![]() |
de3c93d429 | ||
![]() |
f74f1ab816 | ||
![]() |
44b43e458e | ||
![]() |
bae83f34f0 | ||
![]() |
1b3821c40a | ||
![]() |
22d0bfa0b0 | ||
![]() |
67da517e13 | ||
![]() |
290456ea03 | ||
![]() |
9a974ccd5a | ||
![]() |
253164c7b9 | ||
![]() |
114e4d86a2 | ||
![]() |
0549daaa36 | ||
![]() |
0c2c2c1ef8 | ||
![]() |
1079b99e8f | ||
![]() |
ed9c2e60bc | ||
![]() |
6c741acd45 | ||
![]() |
aee777ad40 | ||
![]() |
2a3ec65668 | ||
![]() |
be117c1819 | ||
![]() |
7d9eea0355 | ||
![]() |
37cd1126b6 | ||
![]() |
177d6b3bdd | ||
![]() |
0d04461ec2 | ||
![]() |
ecac923daa | ||
![]() |
ff78a5da8a | ||
![]() |
f47f1a7ed5 | ||
![]() |
d2dffba25c | ||
![]() |
8591196344 | ||
![]() |
8e6d556cae | ||
![]() |
f5ae9c0384 | ||
![]() |
8d550c4c3e | ||
![]() |
2a39390e85 | ||
![]() |
bb144ac281 | ||
![]() |
f1942036e1 | ||
![]() |
d980cec45d | ||
![]() |
55aa5d4c23 | ||
![]() |
cb9ce8f9d8 | ||
![]() |
7304ec222b | ||
![]() |
d499e2ad78 | ||
![]() |
aca4a16bae | ||
![]() |
519d1ea929 | ||
![]() |
1671d872ac | ||
![]() |
6dab689533 | ||
![]() |
51f7d6c306 | ||
![]() |
bbf9d86b21 | ||
![]() |
50a0bb5270 | ||
![]() |
ee8e105b94 | ||
![]() |
2b1db11b83 | ||
![]() |
65c022dcd0 | ||
![]() |
8427feaa2d | ||
![]() |
1ca5e23dd2 | ||
![]() |
5f5c3b18dd | ||
![]() |
70c802e46a | ||
![]() |
b20981b552 | ||
![]() |
d35c2a0150 | ||
![]() |
01ff410e62 | ||
![]() |
25942ab7f5 | ||
![]() |
f8ff98ed4c | ||
![]() |
4761718ce3 | ||
![]() |
b80d7c97e6 | ||
![]() |
f0eb037dc7 | ||
![]() |
f86acd2721 | ||
![]() |
56a7e432d4 | ||
![]() |
fbad508789 | ||
![]() |
e1511de04b | ||
![]() |
0a5582a323 | ||
![]() |
66bec102db | ||
![]() |
b07543bff6 | ||
![]() |
83c7028a95 | ||
![]() |
1a89baa9a1 | ||
![]() |
75e2f22eb7 | ||
![]() |
67ab3b8a10 | ||
![]() |
2e7813ecfa |
100
README.md
100
README.md
@@ -36,6 +36,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* AniRena
|
||||
* AniSource
|
||||
* AudioBook Bay (ABB)
|
||||
* Badass Torrents
|
||||
* BigFANGroup
|
||||
* BitRu
|
||||
* BT.etree
|
||||
@@ -50,10 +51,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* cpasbien
|
||||
* cpasbienClone
|
||||
* Demonoid
|
||||
* DivxTotal
|
||||
* dmhy
|
||||
* E-Hentai
|
||||
* elitetorrent
|
||||
* emtrek
|
||||
* Epizod
|
||||
* EpubLibre
|
||||
* Erai-Raws
|
||||
* ETTV
|
||||
* EXT Torrents
|
||||
@@ -149,7 +152,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentMafya
|
||||
* TorrentMax (토렌트맥스)
|
||||
* TorrentParadise
|
||||
* TorrentProject
|
||||
* TorrentProject2
|
||||
* TorrentQQ (토렌트큐큐)
|
||||
* Torrents.csv
|
||||
@@ -158,6 +160,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentView (토렌트뷰)
|
||||
* TorrentWhiz ( 토렌트위즈)
|
||||
* truPornolabs
|
||||
* ttobogo
|
||||
* Underverse
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
@@ -186,11 +189,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* DimeADozen (EzTorrent)
|
||||
* DXP (Deaf Experts)
|
||||
* EniaHD
|
||||
* Erzsebet
|
||||
* Erzsebet.pl
|
||||
* ExKinoRay
|
||||
* Fou-Du-Cinema
|
||||
* FreeTorrent
|
||||
* Gay-Torrents.net
|
||||
* Genesis-Movement
|
||||
* HamsterStudio
|
||||
* HD-CzTorrent
|
||||
* HunTorrent
|
||||
* IV-Torrents
|
||||
* KinoNaVse100
|
||||
@@ -207,6 +213,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PornoLab
|
||||
* PussyTorrents
|
||||
* Rainbow Tracker
|
||||
* RGFootball
|
||||
* RiperAM
|
||||
* RockBox
|
||||
* RuTracker
|
||||
@@ -229,13 +236,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
|
||||
* 0day.kiev
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3D Torrents (3DT) [![(invite needed)][inviteneeded]](#)
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* 720pier
|
||||
* Abnormal [![(invite needed)][inviteneeded]](#)
|
||||
* Abnormal
|
||||
* ABtorrents (ABT + RNS)
|
||||
* Acid Lounge (A-L) [![(invite needed)][inviteneeded]](#)
|
||||
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
|
||||
@@ -247,7 +254,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* anasch.cc
|
||||
* AnimeBytes (AB)
|
||||
* AnimeTorrents (AnT)
|
||||
* AnimeWorld (AST4u) [![(invite needed)][inviteneeded]](#)
|
||||
* AnimeWorld [![(invite needed)][inviteneeded]](#)
|
||||
* Anthelion
|
||||
* Araba Fenice (Phoenix) [![(invite needed)][inviteneeded]](#)
|
||||
* ArabP2P
|
||||
@@ -256,7 +263,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* AudioNews (AN)
|
||||
* Aussierul.es [![(invite needed)][inviteneeded]](#)
|
||||
* AvistaZ (AsiaTorrents)
|
||||
* Borgzelle
|
||||
* Back-ups
|
||||
* bB
|
||||
* BakaBT
|
||||
@@ -275,21 +281,22 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BJ-Share (BJ)
|
||||
* BlueBird [![(invite needed)][inviteneeded]](#)
|
||||
* Blutopia (BLU)
|
||||
* Borgzelle
|
||||
* Boxing Torrents
|
||||
* Brasil Tracker
|
||||
* BroadCity [![(invite needed)][inviteneeded]](#)
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BTNext (BTNT)
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
* CCFBits
|
||||
* CGPeers
|
||||
* CHDBits
|
||||
* Carp-Hunter
|
||||
* Carpathians
|
||||
* CartoonChaos (CC)
|
||||
* CasaTorrent [![(invite needed)][inviteneeded]](#)
|
||||
* CCFBits
|
||||
* CGPeers
|
||||
* CHDBits
|
||||
* ChileBT
|
||||
* Cinecalidad
|
||||
* CinemaMovieS_ZT
|
||||
@@ -314,13 +321,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* DICMusic
|
||||
* DigitalCore
|
||||
* DivTeam
|
||||
* DivxTotal
|
||||
* Dragonworld Reloaded [![(invite needed)][inviteneeded]](#)
|
||||
* EbookParadijs
|
||||
* Ebooks-Shares
|
||||
* EfectoDoppler
|
||||
* Empornium (EMP)
|
||||
* EpubLibre
|
||||
* Empornium (EMP) [![(invite needed)][inviteneeded]](#)
|
||||
* eShareNet
|
||||
* eStone (XiDER, BeLoad)
|
||||
* ExoticaZ (YourExotic)
|
||||
@@ -334,26 +339,21 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Film-Paleis
|
||||
* FinElite (FE)
|
||||
* FinVip
|
||||
* FocusX
|
||||
* Fou-Du-Cinema
|
||||
* FreeTorrent
|
||||
* FunFile (FF)
|
||||
* FunkyTorrents (FT) [![(invite needed)][inviteneeded]](#)
|
||||
* FunkyTorrents (FT)
|
||||
* Fuzer (FZ)
|
||||
* GFXPeers
|
||||
* Galeriens (LaPauseTorrents)
|
||||
* Gay-Torrents.net
|
||||
* Gay-Torrents.org [![(invite needed)][inviteneeded]](#)
|
||||
* GAYtorrent.ru
|
||||
* GazelleGames (GGn) [![(invite needed)][inviteneeded]](#)
|
||||
* Generation-Free
|
||||
* GFXPeers
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT)
|
||||
* GiroTorrent
|
||||
* GreekDiamond
|
||||
* Greek Team
|
||||
* HaiDan
|
||||
* HD Dolby [![(invite needed)][inviteneeded]](#)
|
||||
* HD Dolby
|
||||
* HD-Bits.com
|
||||
* HD-Forever (HDF)
|
||||
* HD-Olimpo
|
||||
@@ -365,9 +365,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDArea (HDA)
|
||||
* HDAtmos
|
||||
* HDBits
|
||||
* HDC (HDCiTY)
|
||||
* HDCenter [![(invite needed)][inviteneeded]](#)
|
||||
* HDChina (HDWing)
|
||||
* HDC (HDCiTY)
|
||||
* HDCity
|
||||
* HDHome (HDBigger)
|
||||
* HDME
|
||||
@@ -375,8 +375,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDSky
|
||||
* HDTime
|
||||
* HDTorrents.it
|
||||
* HDTurk [![(invite needed)][inviteneeded]](#)
|
||||
* HDU [![(invite needed)][inviteneeded]](#)
|
||||
* HDTurk
|
||||
* HDU
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasTZ
|
||||
@@ -395,16 +395,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* LastFiles
|
||||
* LatinoP2P
|
||||
* Le Saloon
|
||||
* LeChaudron
|
||||
* LemonHD
|
||||
* LearnFlakes
|
||||
* LegacyHD (HD4Free)
|
||||
* LemonHD
|
||||
* Libble
|
||||
* LibraNet (LN)
|
||||
* LinkoManija
|
||||
* LosslessClub
|
||||
* M-Team TP (MTTP)
|
||||
* MaDs Revolution
|
||||
* MaDs Revolution [![(invite needed)][inviteneeded]](#)
|
||||
* magic-heaven
|
||||
* Magico (Trellas)
|
||||
* Majomparádé (TurkDepo)
|
||||
@@ -425,14 +424,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* NorBits
|
||||
* Nordic+
|
||||
* Oasis
|
||||
* Obscure
|
||||
* oMg[WtF]trackr
|
||||
* OpenCD
|
||||
* Oppaitime [![(invite needed)][inviteneeded]](#)
|
||||
* Orpheus
|
||||
* OshenPT
|
||||
* Ourbits (HDPter)
|
||||
* P2PBG
|
||||
* P2PElite
|
||||
* Partis [![(invite needed)][inviteneeded]](#)
|
||||
* PassThePopcorn (PTP)
|
||||
* Peers.FM
|
||||
* Pirata Digital
|
||||
@@ -476,11 +476,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* Secret Cinema
|
||||
* SeedFile (SF)
|
||||
* ShareFiles
|
||||
* Shareisland
|
||||
* Shazbat
|
||||
* SiamBIT
|
||||
* SnowPT (SSPT)
|
||||
* SoulVoice [![(invite needed)][inviteneeded]](#)
|
||||
* SoulVoice
|
||||
* SpeedApp (SceneFZ, XtreMeZone / MYXZ, ICE Torrent)
|
||||
* SpeedCD
|
||||
* Speedmaster HD
|
||||
@@ -508,7 +509,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* The Show [![(invite needed)][inviteneeded]](#)
|
||||
* The Vault [![(invite needed)][inviteneeded]](#)
|
||||
* TheAudioScene
|
||||
* TheEmpire (TE) [![(invite needed)][inviteneeded]](#)
|
||||
* TheEmpire (TE)
|
||||
* TheLeachZone
|
||||
* TheScenePlace (TSP)
|
||||
* TJUPT
|
||||
@@ -525,16 +526,16 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentCCF (TCCF)
|
||||
* TorrentDay (TD)
|
||||
* TorrentDB
|
||||
* Torrentech (TTH)
|
||||
* TorrentFactory
|
||||
* TorrentHR
|
||||
* TorrentHeaven [![(invite needed)][inviteneeded]](#)
|
||||
* TorrentHR
|
||||
* Torrenting (TT) [![(invite needed)][inviteneeded]](#)
|
||||
* TotallyKids (TK)
|
||||
* Torrentland
|
||||
* TorrentLeech (TL)
|
||||
* TorrentLeech.pl
|
||||
* TorrentSeeds (TS)
|
||||
* Torrentech (TTH)
|
||||
* Torrenting (TT) [![(invite needed)][inviteneeded]](#)
|
||||
* Torrentland
|
||||
* TotallyKids (TK)
|
||||
* Trackeros
|
||||
* TranceTraffic [![(invite needed)][inviteneeded]](#)
|
||||
* Trezzor
|
||||
@@ -552,7 +553,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* UnlimitZ
|
||||
* Vizuk
|
||||
* WDT (Wrestling Desires Torrents / Ultimate Wrestling Torrents)
|
||||
* Witch-Hunter (Demon-Site)
|
||||
* wOOt [![(invite needed)][inviteneeded]](#)
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
* x-ite.me (XM) [![(invite needed)][inviteneeded]](#)
|
||||
@@ -584,6 +584,32 @@ Using the all indexer has no advantages (besides reduced management overhead), o
|
||||
|
||||
To get all Jackett indexers including their capabilities you can use `t=indexers` on the all indexer. To get only configured/unconfigured indexers you can also add `configured=true/false` as a query parameter.
|
||||
|
||||
### Filter indexers
|
||||
|
||||
Another special "filter" indexer is available at `/api/v2.0/indexers/<filter>/results/torznab`
|
||||
It will query the configured indexers that match the `<filter>` expression criterias and return the combined results as "all".
|
||||
|
||||
Supported filters
|
||||
Filter | Condition
|
||||
-|-
|
||||
`type:<type>` | where the indexer type is equal to `<type>`
|
||||
`tag:<tag>` | where the indexer tags contains `<tag>`
|
||||
`lang:<tag>` | where the indexer language start with `<lang>`
|
||||
`test:{passed\|failed}` | where the last indexer test performed `passed` or `failed`
|
||||
`status:{healthy\|failing\|unknown}` | where the indexer state is `healthy` (succesfully operates in the last minutes), `failing` (generates errors in the recent call) or `unknown` (unused for a while)
|
||||
|
||||
Supported operators
|
||||
Operator | Condition
|
||||
-|-
|
||||
`!<expr>` | where not `<expr>`
|
||||
`<expr1>+<expr2>[+<expr3>...]` | where `<expr1>` and `<expr2>` [and `<expr3>`...]
|
||||
`<expr1>,<expr2>[,<expr3>...]` | where `<expr1>` or `<expr2>` [or `<expr3>`...]
|
||||
|
||||
Example 1:
|
||||
The "filter" indexer at `/api/v2.0/indexers/tag:group1,!type:private+lang:en/results/torznab` will query all the configured indexers tagged with `group1` or all the indexers not private and with `en` language (`en-en`,`en-us`,...)
|
||||
|
||||
Example 2:
|
||||
The "filter" indexer at `/api/v2.0/indexers/!status:failing,test:passed` will query all the configured indexers not `failing` or which `passed` its last test.
|
||||
|
||||
## Installation on Windows
|
||||
We recommend you install Jackett as a Windows service using the supplied installer. You may also download the zipped version if you would like to configure everything manually.
|
||||
|
@@ -2,7 +2,7 @@
|
||||
name: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
variables:
|
||||
majorVersion: 0
|
||||
minorVersion: 17
|
||||
minorVersion: 18
|
||||
patchVersion: $[counter(variables['minorVersion'], 1)] # this will reset when we bump minor
|
||||
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
buildConfiguration: Release
|
||||
@@ -300,23 +300,9 @@ stages:
|
||||
workingDirectory: $(Build.SourcesDirectory)
|
||||
targetType: inline
|
||||
failOnStderr: true
|
||||
script: |
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/DateTimeRoutines
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Common
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.IntegrationTests
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Server
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Service
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Test
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Tray
|
||||
dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src/Jackett.Updater
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/DateTimeRoutines
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Common
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.IntegrationTests
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Server
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Service
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Test
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Tray
|
||||
dotnet-format --check --verbosity diagnostic --folder ./src/Jackett.Updater
|
||||
# execute this command to format all files:
|
||||
# dotnet-format --fix-whitespace --verbosity diagnostic --folder ./src
|
||||
script: dotnet-format --check --verbosity diagnostic --folder ./src
|
||||
|
||||
- job: Linting_YAML
|
||||
displayName: Linting YAML
|
||||
|
1
src/Jackett.Common/Content/css/tagify.css
Normal file
1
src/Jackett.Common/Content/css/tagify.css
Normal file
File diff suppressed because one or more lines are too long
@@ -76,6 +76,10 @@ body {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
.setup-item-inputtags {
|
||||
max-width: 255px;
|
||||
}
|
||||
|
||||
[data-type=hiddendata]{
|
||||
display: none;
|
||||
}
|
||||
@@ -328,3 +332,21 @@ input#searchquery {
|
||||
#proxy-warning {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.label-tag {
|
||||
text-transform: lowercase;
|
||||
background-color: #777;
|
||||
}
|
||||
|
||||
.tagify {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.tagify .tagify__input {
|
||||
min-width: 0;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
||||
.tagify .tagify__tag-text {
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
@@ -3,6 +3,9 @@ var basePath = '';
|
||||
var indexers = [];
|
||||
var configuredIndexers = [];
|
||||
var unconfiguredIndexers = [];
|
||||
var configuredTags = [];
|
||||
var availableFilters = [];
|
||||
var currentFilter = null;
|
||||
|
||||
$.fn.inView = function () {
|
||||
if (!this.length) return false;
|
||||
@@ -46,27 +49,45 @@ $(document).ready(function () {
|
||||
var pathPrefix = window.location.pathname.substr(0, index);
|
||||
api.root = pathPrefix + api.root;
|
||||
|
||||
const hashArgs = getHashArgs();
|
||||
if ("indexers" in hashArgs)
|
||||
currentFilter = hashArgs.filter
|
||||
bindUIButtons();
|
||||
loadJackettSettings();
|
||||
});
|
||||
|
||||
function openSearchIfNecessary() {
|
||||
const hashArgs = location.hash.substring(1).split('&').reduce((prev, item) =>
|
||||
Object.assign({
|
||||
[item.split('=')[0]]: (item.split('=').length < 2 ?
|
||||
undefined :
|
||||
decodeURIComponent(item.split('=')[1].replace(/\+/g, '%20')))
|
||||
}, prev), {});
|
||||
const hashArgs = getHashArgs();
|
||||
if ("search" in hashArgs) {
|
||||
showSearch(hashArgs.tracker, hashArgs.search, hashArgs.category);
|
||||
showSearch(hashArgs.filter, hashArgs.tracker, hashArgs.search, hashArgs.category);
|
||||
}
|
||||
}
|
||||
|
||||
function getHashArgs() {
|
||||
return location.hash.substring(1).split('&').reduce((prev, item) => Object.assign({
|
||||
[item.split('=')[0]]: (item.split('=').length < 2 ?
|
||||
undefined :
|
||||
decodeURIComponent(item.split('=')[1].replace(/\+/g, '%20')))
|
||||
}, prev), {});
|
||||
}
|
||||
|
||||
function insertWordWrap(str) {
|
||||
// insert optional word wrap after punctuation to avoid overflows on long scene titles
|
||||
return str.replace(/([\.\-_\/\\])/g, "$1\u200B");
|
||||
}
|
||||
|
||||
function type_filter(indexer) {
|
||||
return indexer.type == this.value;
|
||||
}
|
||||
|
||||
function tag_filter(indexer) {
|
||||
return indexer.tags.map(t => t.toLowerCase()).indexOf(this.value.toLowerCase()) > -1;
|
||||
}
|
||||
|
||||
function state_filter(indexer) {
|
||||
return indexer.state == this.value;
|
||||
}
|
||||
|
||||
function getJackettConfig(callback) {
|
||||
api.getServerConfig(callback).fail(function () {
|
||||
doNotify("Error loading Jackett settings, request to Jackett server failed, is server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
@@ -131,11 +152,14 @@ function loadJackettSettings() {
|
||||
}
|
||||
|
||||
function reloadIndexers() {
|
||||
$('#filters').hide();
|
||||
$('#indexers').hide();
|
||||
api.getAllIndexers(function (data) {
|
||||
indexers = data;
|
||||
configuredIndexers = [];
|
||||
unconfiguredIndexers = [];
|
||||
configuredTags = [];
|
||||
availableFilters = [];
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var item = data[i];
|
||||
item.rss_host = resolveUrl(basePath + "/api/v2.0/indexers/" + item.id + "/results/torznab/api?apikey=" + api.key + "&t=search&cat=&q=");
|
||||
@@ -169,7 +193,13 @@ function reloadIndexers() {
|
||||
else
|
||||
unconfiguredIndexers.push(item);
|
||||
}
|
||||
displayConfiguredIndexersList(configuredIndexers);
|
||||
|
||||
configuredTags = configuredIndexers.map(i => i.tags).reduce((a, g) => a.concat(g), []).filter((v, i, a) => a.indexOf(v) === i);
|
||||
|
||||
configureFilters(configuredIndexers);
|
||||
|
||||
displayFilteredIndexersList(configuredIndexers, currentFilter);
|
||||
|
||||
$('#indexers div.dataTables_filter input').focusWithoutScrolling();
|
||||
openSearchIfNecessary();
|
||||
}).fail(function () {
|
||||
@@ -177,6 +207,53 @@ function reloadIndexers() {
|
||||
});
|
||||
}
|
||||
|
||||
function configureFilters(indexers) {
|
||||
function add(f) {
|
||||
if (availableFilters.find(x => x.id == f.id))
|
||||
return;
|
||||
if (!indexers.every(f.apply, f) && indexers.some(f.apply, f))
|
||||
availableFilters.push(f);
|
||||
}
|
||||
|
||||
availableFilters.push({id: "test:passed", apply: state_filter, value: "success" });
|
||||
availableFilters.push({id: "test:failed", apply: state_filter, value: "error" });
|
||||
|
||||
["public", "private", "semi-private"]
|
||||
.map(t => { return { id: "type:" + t, apply: type_filter, value: t } })
|
||||
.forEach(add);
|
||||
|
||||
configuredTags.sort()
|
||||
.map(t => { return { id: "tag:" + t.toLowerCase(), apply: tag_filter, value: t }})
|
||||
.forEach(add);
|
||||
}
|
||||
|
||||
function displayFilteredIndexersList(indexers, filter) {
|
||||
var active = availableFilters.find(x => x.id == filter);
|
||||
if (availableFilters.length > 0) {
|
||||
var filtersTemplate = Handlebars.compile($("#jackett-filters").html());
|
||||
var filters = $(filtersTemplate({
|
||||
filters: availableFilters,
|
||||
active: active ? active.id : null
|
||||
}));
|
||||
|
||||
$("li a", filters).on('click', function(){
|
||||
displayFilteredIndexersList(configuredIndexers, $(this).data("id"));
|
||||
});
|
||||
|
||||
$('#filters').empty();
|
||||
$('#filters').append(filters);
|
||||
$('#filters').fadeIn();
|
||||
}
|
||||
if (active) {
|
||||
indexers = indexers.filter(active.apply, active);
|
||||
currentFilter = active.id;
|
||||
}
|
||||
else {
|
||||
currentFilter = null;
|
||||
}
|
||||
displayConfiguredIndexersList(indexers)
|
||||
}
|
||||
|
||||
function displayConfiguredIndexersList(indexers) {
|
||||
var indexersTemplate = Handlebars.compile($("#configured-indexer-table").html());
|
||||
var indexersTable = $(indexersTemplate({
|
||||
@@ -239,36 +316,7 @@ function displayUnconfiguredIndexersList() {
|
||||
$(btn).click(function () {
|
||||
$('#select-indexer-modal').modal('hide').on('hidden.bs.modal', function (e) {
|
||||
var indexerId = $(btn).attr("data-id");
|
||||
api.getIndexerConfig(indexerId, function (data) {
|
||||
if (data.result !== undefined && data.result == "error") {
|
||||
doNotify("Error: " + data.error, "danger", "glyphicon glyphicon-alert");
|
||||
return;
|
||||
}
|
||||
api.updateIndexerConfig(indexerId, data, function (data) {
|
||||
if (data == undefined) {
|
||||
reloadIndexers();
|
||||
doNotify("Successfully configured " + name, "success", "glyphicon glyphicon-ok");
|
||||
} else if (data.result == "error") {
|
||||
if (data.config) {
|
||||
populateConfigItems(configForm, data.config);
|
||||
}
|
||||
doNotify("Configuration failed: " + data.error, "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
}).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
|
||||
var githubrepo = "Jackett/Jackett";
|
||||
var githubtext = "this indexer";
|
||||
if (data.responseJSON.error.includes("check FlareSolverr logs") || data.responseJSON.error.includes("cookies provided by FlareSolverr are not valid")) {
|
||||
githubrepo = "FlareSolverr/FlareSolverr";
|
||||
githubtext = "FlareSolverr";
|
||||
}
|
||||
doNotify("An error occurred while configuring this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/" + githubrepo + "/issues/new?title=[" + indexerId + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for " + githubtext + ".</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occurred while configuring this indexer, is Jackett server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
});
|
||||
});
|
||||
addIndexer(indexerId, true);
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -311,6 +359,9 @@ function displayUnconfiguredIndexersList() {
|
||||
}
|
||||
});
|
||||
},
|
||||
"drawCallback": function (settings) {
|
||||
addCheckOnCellClick();
|
||||
},
|
||||
"stateSave": true,
|
||||
"stateDuration": 0,
|
||||
"fnStateSaveParams": function (oSettings, sValue) {
|
||||
@@ -323,47 +374,58 @@ function displayUnconfiguredIndexersList() {
|
||||
[10, 20, 50, 100, 250, 500, -1],
|
||||
[10, 20, 50, 100, 250, 500, "All"]
|
||||
],
|
||||
"select": {
|
||||
style: 'os',
|
||||
selector: 'td:first-child'
|
||||
},
|
||||
"order": [
|
||||
[0, "asc"]
|
||||
[1, "asc"]
|
||||
],
|
||||
"columnDefs": [{
|
||||
"name": "name",
|
||||
"name": "select",
|
||||
"targets": 0,
|
||||
"visible": true,
|
||||
"searchable": true,
|
||||
"orderable": true
|
||||
"searchable": false,
|
||||
"orderable": false
|
||||
},
|
||||
{
|
||||
"name": "description",
|
||||
"name": "name",
|
||||
"targets": 1,
|
||||
"visible": true,
|
||||
"searchable": true,
|
||||
"orderable": true
|
||||
},
|
||||
{
|
||||
"name": "type",
|
||||
"name": "description",
|
||||
"targets": 2,
|
||||
"visible": true,
|
||||
"searchable": true,
|
||||
"orderable": true
|
||||
},
|
||||
{
|
||||
"name": "type_string",
|
||||
"name": "type",
|
||||
"targets": 3,
|
||||
"visible": false,
|
||||
"visible": true,
|
||||
"searchable": true,
|
||||
"orderable": true,
|
||||
"orderable": true
|
||||
},
|
||||
{
|
||||
"name": "type_string",
|
||||
"targets": 4,
|
||||
"visible": false,
|
||||
"searchable": false,
|
||||
"orderable": false,
|
||||
},
|
||||
{
|
||||
"name": "language",
|
||||
"targets": 4,
|
||||
"targets": 5,
|
||||
"visible": true,
|
||||
"searchable": true,
|
||||
"orderable": true
|
||||
},
|
||||
{
|
||||
"name": "buttons",
|
||||
"targets": 5,
|
||||
"targets": 6,
|
||||
"visible": true,
|
||||
"searchable": false,
|
||||
"orderable": false
|
||||
@@ -384,9 +446,64 @@ function displayUnconfiguredIndexersList() {
|
||||
|
||||
$("#modals").append(UnconfiguredIndexersDialog);
|
||||
|
||||
$('#add-selected-indexers').click(function () {
|
||||
var selectedIndexers = $('#unconfigured-indexer-datatable').DataTable().$('input[type="checkbox"]');
|
||||
var hasSelectedIndexers = selectedIndexers.is(':checked');
|
||||
if (hasSelectedIndexers) {
|
||||
doNotify("Adding selected Indexers, please wait...", "info", "glyphicon glyphicon-transfer", false);
|
||||
$('#select-indexer-modal button').attr('disabled', true);
|
||||
|
||||
addIndexers(selectedIndexers,
|
||||
addSelectedIndexersSuccess,
|
||||
addSelectedIndexersError);
|
||||
} else {
|
||||
doNotify("Error: You must select more than one indexer", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
});
|
||||
|
||||
UnconfiguredIndexersDialog.modal("show");
|
||||
}
|
||||
|
||||
function addSelectedIndexersSuccess() {
|
||||
$.notifyClose();
|
||||
$('#select-indexer-modal').modal('hide');
|
||||
doNotify("Selected indexers successfully added.", "success", "glyphicon glyphicon-ok");
|
||||
$('#select-indexer-modal button').attr('disabled', false);
|
||||
}
|
||||
|
||||
function addSelectedIndexersError(e, xhr, options, err) {
|
||||
doNotify("Configuration failed", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
|
||||
function addCheckOnCellClick() {
|
||||
$('td.checkboxColumn')
|
||||
.off('click')
|
||||
.on('click', (function (event) {
|
||||
if (!$(event.target).is('input')) {
|
||||
$('input:checkbox', this).prop('checked', function (i, value) {
|
||||
return !value;
|
||||
});
|
||||
}
|
||||
}));
|
||||
}
|
||||
|
||||
function addIndexers(selectedIndexerList, successCallback, errorCallback) {
|
||||
$(document).ajaxStop(function () {
|
||||
if (successCallback == addSelectedIndexersSuccess) {
|
||||
$(document).ajaxStop().unbind(); // Keep future AJAX events from effecting this
|
||||
successCallback();
|
||||
}
|
||||
}).ajaxError(function (e, xhr, options, err) {
|
||||
errorCallback(e, xhr, options, err);
|
||||
});
|
||||
|
||||
selectedIndexerList.each(function () {
|
||||
if (this.checked) {
|
||||
addIndexer($(this).data('id'), false);
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function createDropDownHtml(column, exactMatch) {
|
||||
var select = $('<select><option value="">Show all</option></select>')
|
||||
.appendTo($(column.footer()).empty())
|
||||
@@ -409,6 +526,42 @@ function createDropDownHtml(column, exactMatch) {
|
||||
return select;
|
||||
}
|
||||
|
||||
function addIndexer(indexerId, displayNotification) {
|
||||
api.getIndexerConfig(indexerId, function (data) {
|
||||
if (data.result !== undefined && data.result == "error") {
|
||||
doNotify("Error: " + data.error, "danger", "glyphicon glyphicon-alert");
|
||||
return;
|
||||
}
|
||||
|
||||
api.updateIndexerConfig(indexerId, data, function (data) {
|
||||
if (data == undefined) {
|
||||
reloadIndexers();
|
||||
if (displayNotification) {
|
||||
doNotify("Successfully configured " + indexerId, "success", "glyphicon glyphicon-ok");
|
||||
}
|
||||
} else if (data.result == "error") {
|
||||
if (data.config) {
|
||||
populateConfigItems(configForm, data.config);
|
||||
}
|
||||
doNotify("Configuration failed: " + data.error, "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
}).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
|
||||
var githubrepo = "Jackett/Jackett";
|
||||
var githubtext = "this indexer";
|
||||
if (data.responseJSON.error.includes("check FlareSolverr logs") || data.responseJSON.error.includes("cookies provided by FlareSolverr are not valid")) {
|
||||
githubrepo = "FlareSolverr/FlareSolverr";
|
||||
githubtext = "FlareSolverr";
|
||||
}
|
||||
doNotify("An error occurred while configuring this indexer<br /><b>" + data.responseJSON.error.substring(0, indexEnd) + "</b><br /><i><a href=\"https://github.com/" + githubrepo + "/issues/new?title=[" + indexerId + "] " + data.responseJSON.error.substring(0, indexEnd) + " (Config)\" target=\"_blank\">Click here to open an issue on GitHub for " + githubtext + ".</a><i>", "danger", "glyphicon glyphicon-alert", false);
|
||||
} else {
|
||||
doNotify("An error occurred while configuring this indexer, is Jackett server running ?", "danger", "glyphicon glyphicon-alert");
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function copyToClipboard(text) {
|
||||
// create hidden text element, if it doesn't already exist
|
||||
var targetId = "_hiddenCopyText_";
|
||||
@@ -483,18 +636,21 @@ function prepareSearchButtons(element) {
|
||||
var $btn = $(btn);
|
||||
var id = $btn.data("id");
|
||||
$btn.click(function () {
|
||||
window.location.hash = "search&tracker=" + id;
|
||||
showSearch(id);
|
||||
window.location.hash = "search&tracker=" + id + (currentFilter ? "&filter=" + currentFilter : "");
|
||||
showSearch(currentFilter, id);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
function prepareSetupButtons(element) {
|
||||
element.find('.indexer-setup').each(function (i, btn) {
|
||||
var indexer = configuredIndexers[i];
|
||||
$(btn).click(function () {
|
||||
displayIndexerSetup(indexer.id, indexer.name, indexer.caps, indexer.link, indexer.alternativesitelinks, indexer.description);
|
||||
});
|
||||
var $btn = $(btn);
|
||||
var id = $btn.data("id");
|
||||
var indexer = configuredIndexers.find(i => i.id === id);
|
||||
if (indexer)
|
||||
$btn.click(function () {
|
||||
displayIndexerSetup(indexer.id, indexer.name, indexer.caps, indexer.link, indexer.alternativesitelinks, indexer.description);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@@ -533,6 +689,10 @@ function updateTestState(id, state, message, parent) {
|
||||
}).rows().invalidate('dom');
|
||||
if (state != "inprogres")
|
||||
dt.draw();
|
||||
|
||||
var indexer = configuredIndexers.find(x => x.id == id);
|
||||
if (indexer)
|
||||
indexer.state = state;
|
||||
}
|
||||
|
||||
function testIndexer(id, notifyResult) {
|
||||
@@ -610,11 +770,32 @@ function populateConfigItems(configForm, config) {
|
||||
var item = config[i];
|
||||
var setupValueTemplate = Handlebars.compile($("#setup-item-" + item.type).html());
|
||||
item.value_element = setupValueTemplate(item);
|
||||
var template = setupItemTemplate(item);
|
||||
var template = $(setupItemTemplate(item));
|
||||
$formItemContainer.append(template);
|
||||
setupConfigItem(template, item);
|
||||
}
|
||||
}
|
||||
|
||||
function setupConfigItem(configItem, item) {
|
||||
switch (item.type) {
|
||||
case "inputtags": {
|
||||
configItem.find("input").tagify({
|
||||
dropdown: {
|
||||
enabled: 0,
|
||||
position: "text"
|
||||
},
|
||||
separator: item.separator || ",",
|
||||
whitelist: item.whitelist || [],
|
||||
blacklist: item.blacklist || [],
|
||||
pattern: item.pattern || null,
|
||||
delimiters: item.delimiters || item.separator || ",",
|
||||
originalInputValueFormat: function (values) { return values.map(item => item.value.toLowerCase()).join(this.separator); }
|
||||
});
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function newConfigModal(title, config, caps, link, alternativesitelinks, description) {
|
||||
var configTemplate = Handlebars.compile($("#jackett-config-setup-modal").html());
|
||||
var configForm = $(configTemplate({
|
||||
@@ -638,6 +819,8 @@ function newConfigModal(title, config, caps, link, alternativesitelinks, descrip
|
||||
});
|
||||
}
|
||||
|
||||
$("div[data-id='tags'] input", configForm).data("tagify").settings.whitelist = configuredTags;
|
||||
|
||||
return configForm;
|
||||
}
|
||||
|
||||
@@ -668,9 +851,13 @@ function getConfigModalJson(configForm) {
|
||||
$el.find(".setup-item-inputcheckbox input:checked").each(function () {
|
||||
itemEntry.values.push($(this).val());
|
||||
});
|
||||
break;
|
||||
case "inputselect":
|
||||
itemEntry.value = $el.find(".setup-item-inputselect select").val();
|
||||
break;
|
||||
case "inputtags":
|
||||
itemEntry.value = $el.find(".setup-item-inputtags input").val();
|
||||
break;
|
||||
}
|
||||
configJson.push(itemEntry)
|
||||
});
|
||||
@@ -802,14 +989,15 @@ function updateReleasesRow(row) {
|
||||
}
|
||||
}
|
||||
|
||||
function showSearch(selectedIndexer, query, category) {
|
||||
function showSearch(selectedFilter, selectedIndexer, query, category) {
|
||||
var selectedIndexers = [];
|
||||
if (selectedIndexer)
|
||||
selectedIndexers = selectedIndexer.split(",");
|
||||
selectedIndexers = selectedIndexer.split(",");
|
||||
$('#select-indexer-modal').remove();
|
||||
var releaseTemplate = Handlebars.compile($("#jackett-search").html());
|
||||
var releaseDialog = $(releaseTemplate({
|
||||
indexers: configuredIndexers
|
||||
filters: availableFilters,
|
||||
active: selectedFilter
|
||||
}));
|
||||
|
||||
$("#modals").append(releaseDialog);
|
||||
@@ -820,9 +1008,32 @@ function showSearch(selectedIndexer, query, category) {
|
||||
|
||||
releaseDialog.on('hidden.bs.modal', function (e) {
|
||||
$('#indexers div.dataTables_filter input').focusWithoutScrolling();
|
||||
window.location.hash = '';
|
||||
window.location.hash = currentFilter ? "indexers&filter=" + currentFilter : '';
|
||||
});
|
||||
|
||||
var setTrackers = function (filterId, trackers) {
|
||||
var select = $('#searchTracker');
|
||||
var selected = select.val();
|
||||
var filter = availableFilters.find(f => f.id == filterId);
|
||||
if (filter)
|
||||
trackers = trackers.filter(filter.apply,filter);
|
||||
var options = trackers.map(t => {
|
||||
return {
|
||||
label: t.name,
|
||||
value: t.id
|
||||
}
|
||||
});
|
||||
select.multiselect('dataprovider', options);
|
||||
select.val(selected).multiselect("refresh");
|
||||
};
|
||||
|
||||
$('#searchFilter').change(jQuery.proxy(function () {
|
||||
var filterId = $('#searchFilter').val();
|
||||
setTrackers(filterId, this.items);
|
||||
}, {
|
||||
items: configuredIndexers
|
||||
}));
|
||||
|
||||
var setCategories = function (trackers, items) {
|
||||
var cats = {};
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
@@ -869,6 +1080,7 @@ function showSearch(selectedIndexer, query, category) {
|
||||
return;
|
||||
}
|
||||
var searchString = releaseDialog.find('#searchquery').val();
|
||||
var filterId = releaseDialog.find('#searchFilter').val();
|
||||
var queryObj = {
|
||||
Query: searchString,
|
||||
Category: releaseDialog.find('#searchCategory').val(),
|
||||
@@ -878,14 +1090,15 @@ function showSearch(selectedIndexer, query, category) {
|
||||
window.location.hash = Object.entries({
|
||||
search: encodeURIComponent(queryObj.Query).replace(/%20/g, '+'),
|
||||
tracker: queryObj.Tracker.join(","),
|
||||
category: queryObj.Category.join(",")
|
||||
}).map(([k, v], i) => k + '=' + v).join('&');
|
||||
category: queryObj.Category.join(","),
|
||||
filter: filterId ? encodeURIComponent(filterId) : ""
|
||||
}).filter(([k, v]) => v).map(([k, v], i) => k + '=' + v).join('&');
|
||||
|
||||
$('#jackett-search-perform').html($('#spinner').html());
|
||||
$('#searchResults div.dataTables_filter input').val("");
|
||||
clearSearchResultTable($('#searchResults'));
|
||||
|
||||
var trackerId = "all";
|
||||
var trackerId = filterId || "all";
|
||||
api.resultsForIndexer(trackerId, queryObj, function (data) {
|
||||
for (var i = 0; i < data.Results.length; i++) {
|
||||
var item = data.Results[i];
|
||||
@@ -906,16 +1119,14 @@ function showSearch(selectedIndexer, query, category) {
|
||||
|
||||
var searchTracker = releaseDialog.find("#searchTracker");
|
||||
var searchCategory = releaseDialog.find('#searchCategory');
|
||||
searchCategory.multiselect({
|
||||
var searchFilter = releaseDialog.find('#searchFilter');
|
||||
|
||||
searchFilter.multiselect({
|
||||
maxHeight: 400,
|
||||
enableFiltering: true,
|
||||
includeSelectAllOption: true,
|
||||
enableCaseInsensitiveFiltering: true,
|
||||
nonSelectedText: 'Any'
|
||||
nonSelectedText: 'All'
|
||||
});
|
||||
if (selectedIndexers)
|
||||
searchTracker.val(selectedIndexers);
|
||||
searchTracker.trigger("change");
|
||||
|
||||
updateSearchResultTable($('#searchResults'), []);
|
||||
clearSearchResultTable($('#searchResults'));
|
||||
@@ -928,6 +1139,29 @@ function showSearch(selectedIndexer, query, category) {
|
||||
nonSelectedText: 'All'
|
||||
});
|
||||
|
||||
searchCategory.multiselect({
|
||||
maxHeight: 400,
|
||||
enableFiltering: true,
|
||||
includeSelectAllOption: true,
|
||||
enableCaseInsensitiveFiltering: true,
|
||||
nonSelectedText: 'Any'
|
||||
});
|
||||
|
||||
if (availableFilters.length > 0) {
|
||||
if (selectedFilter) {
|
||||
searchFilter.val(selectedFilter);
|
||||
searchFilter.multiselect("refresh");
|
||||
}
|
||||
searchFilter.trigger("change");
|
||||
}
|
||||
else
|
||||
setTrackers(selectedFilter, configuredIndexers);
|
||||
|
||||
if (selectedIndexers) {
|
||||
searchTracker.val(selectedIndexers);
|
||||
searchTracker.multiselect("refresh");
|
||||
}
|
||||
searchTracker.trigger("change");
|
||||
|
||||
if (category !== undefined) {
|
||||
searchCategory.val(category.split(","));
|
||||
@@ -1116,6 +1350,7 @@ function bindUIButtons() {
|
||||
$('#jackett-add-indexer').click(function () {
|
||||
$("#modals").empty();
|
||||
displayUnconfiguredIndexersList();
|
||||
addCheckOnCellClick();
|
||||
$('#unconfigured-indexer-datatable tfoot tr').insertAfter($('#unconfigured-indexer-datatable thead tr'));
|
||||
$('#unconfigured-indexer-datatable').DataTable().search('').columns().search('').draw();
|
||||
});
|
||||
@@ -1231,8 +1466,8 @@ function bindUIButtons() {
|
||||
});
|
||||
|
||||
$("#jackett-show-search").click(function () {
|
||||
showSearch(null);
|
||||
window.location.hash = "search";
|
||||
showSearch(currentFilter);
|
||||
window.location.hash = "search" + (currentFilter ? "&filter=" + currentFilter : "");
|
||||
});
|
||||
|
||||
$("#view-jackett-logs").click(function () {
|
||||
@@ -1348,4 +1583,4 @@ function proxyWarning(input) {
|
||||
} else {
|
||||
$('#proxy-warning').hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -330,3 +330,21 @@ input#searchquery {
|
||||
#proxy-warning {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.label-tag {
|
||||
text-transform: lowercase;
|
||||
background-color: #777;
|
||||
}
|
||||
|
||||
.tagify {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.tagify .tagify__input {
|
||||
min-width: 0;
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
||||
.tagify .tagify__tag-text {
|
||||
text-transform: lowercase;
|
||||
}
|
||||
|
@@ -22,11 +22,14 @@
|
||||
<script type="text/javascript" src="../bootstrap/bootstrap.min.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-notify.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/tagify.min.js?changed=11662"></script>
|
||||
<script type="text/javascript" src="../libs/jQuery.tagify.min.js?changed=11662"></script>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="../bootstrap/bootstrap.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../animate.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20201208" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20201208" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/tagify.css?changed=11662">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=11662" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=11662" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/jquery.dataTables.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css?changed=2017083001">
|
||||
@@ -51,6 +54,8 @@
|
||||
</div>
|
||||
|
||||
<div class="pull-right">
|
||||
<div id="filters" class="btn-group btn-group-sm">
|
||||
</div>
|
||||
<button id="jackett-add-indexer" class="btn btn-success btn-sm">
|
||||
<span class="glyphicon glyphicon-plus" aria-hidden="true"></span> Add indexer
|
||||
</button>
|
||||
@@ -65,7 +70,7 @@
|
||||
</button>
|
||||
</div>
|
||||
<h3>Configured Indexers</h3>
|
||||
<div id="indexers"> </div>
|
||||
<div id="indexers"></div>
|
||||
<hr />
|
||||
|
||||
<div class="input-area">
|
||||
@@ -213,7 +218,7 @@
|
||||
<div id="modals"></div>
|
||||
|
||||
<script id="setup-item" type="text/x-handlebars-template">
|
||||
<div class="setup-item form-group" data-id="{{id}}" data-value="{{value}}" data-type="{{type}}">
|
||||
<div class="setup-item form-filter" data-id="{{id}}" data-value="{{value}}" data-type="{{type}}">
|
||||
<div class="setup-item-label">{{name}}</div>
|
||||
<div class="setup-item-value">{{{value_element}}}</div>
|
||||
</div>
|
||||
@@ -289,10 +294,14 @@
|
||||
Click on an URL to copy it to the Site Link field.
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script id="setup-item-inputtags" type="text/x-handlebars-template">
|
||||
<div class="setup-item-inputtags">
|
||||
<input class="form-control input-sm" type="text" value="{{{value}}}" {{#if pattern}} pattern="{{pattern}}"{{/if}}/>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script id="configured-indexer-table" type="text/x-handlebars-template">
|
||||
<div class="configured-indexer-div">
|
||||
<div class="tab-content configured-indexer-div">
|
||||
<table id="configured-indexer-datatable" class="indexer-table dataTable compact cell-border hover stripe table table-responsive">
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -303,7 +312,7 @@
|
||||
<tbody>
|
||||
{{#each indexers}}
|
||||
<tr class="configured-indexer-row">
|
||||
<td><a target="_blank" href="{{site_link}}" title="{{description}}">{{name}}</a> <span title="{{type}}" class="label label-{{type_label}}" style="text-transform: capitalize;">{{type}}</span></td>
|
||||
<td><a target="_blank" href="{{site_link}}" title="{{description}}">{{name}}</a> <span title="{{type}}" class="label label-{{type_label}}" style="text-transform: capitalize;">{{type}}</span>{{#each tags}} <span title="{{this}}" class="label label-tag">{{this}}</span>{{/each}}</td>
|
||||
<td class="fit">
|
||||
<div class="indexer-buttons">
|
||||
<a href="{{rss_host}}" title="{{rss_host}}" role="button" class="indexer-button-copy btn btn-xs btn-info">Copy RSS Feed</i></a>
|
||||
@@ -342,10 +351,11 @@
|
||||
<table id="unconfigured-indexer-datatable" class="indexer-table dataTable compact cell-border hover stripe table table-responsive">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>Indexer</th>
|
||||
<th>Categories</th>
|
||||
<th>Type</th>
|
||||
<th>Type string</th>
|
||||
<th data-type="hiddendata">Type string</th>
|
||||
<th>Language</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
@@ -353,10 +363,15 @@
|
||||
<tbody>
|
||||
{{#each indexers}}
|
||||
<tr class="unconfigured-indexer-row">
|
||||
<td class="checkboxColumn">
|
||||
{{#if_eq type "public"}}
|
||||
<input type="checkbox" id="select{{id}}" data-id="{{id}}" />
|
||||
{{/if_eq}}
|
||||
</td>
|
||||
<td><a target="_blank" href="{{site_link}}" title="{{description}}">{{name}}</a></td>
|
||||
<td>{{mains_cats}}</td>
|
||||
<td class="fit"><span title="{{type}}" class="label label-{{type_label}}" style="text-transform: capitalize;">{{type}}</span></td>
|
||||
<td>{{type}}</td>
|
||||
<td data-type="hiddendata">{{type}}</td>
|
||||
<td class="fit">{{language}}</td>
|
||||
<td class="fit">
|
||||
<div class="indexer-buttons">
|
||||
@@ -375,10 +390,11 @@
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>Indexer</th>
|
||||
<th>Categories</th>
|
||||
<th>Type</th>
|
||||
<th>Type string</th>
|
||||
<th data-type="hiddendata">Type string</th>
|
||||
<th>Language</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
@@ -492,12 +508,17 @@
|
||||
<p>You can search all configured indexers from this screen.</p>
|
||||
<label for="text">Query</label>
|
||||
<input class="form-control" type="text" name="query" id="searchquery" />
|
||||
<label for="tracker">Tracker</label>
|
||||
<select name="tracker" id="searchTracker" multiple="multiple">
|
||||
{{#each indexers}}
|
||||
<option value="{{id}}" selected>{{name}}</option>
|
||||
{{/each}}
|
||||
{{#if filters}}
|
||||
<label for="filter">Filter</label>
|
||||
<select name="filter" id="searchFilter">
|
||||
<option value="all">all</option>
|
||||
{{#each filters}}
|
||||
<option value="{{id}}">{{id}}</option>
|
||||
{{/each}}
|
||||
</select>
|
||||
{{/if}}
|
||||
<label for="tracker">Tracker</label>
|
||||
<select name="tracker" id="searchTracker" multiple="multiple"></select>
|
||||
<label for="category">Category</label>
|
||||
<select name="category" id="searchCategory" multiple="multiple"></select>
|
||||
<button id="jackett-search-perform" class="btn btn-success btn-sm"><span class="fa fa-search"></span></button>
|
||||
@@ -604,7 +625,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
|
||||
<button type="button" id="add-selected-indexers" class="btn btn-default">Add Selected</button>
|
||||
<button type="button" id="close-selected-indexers" class="btn btn-default"
|
||||
data-dismiss="modal">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -689,6 +712,17 @@
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script id="jackett-filters" type="text/x-handlebars-template">
|
||||
<button id="jackett-filters-dropdown" type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Filter <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu" aria-labelledby="jackett-filters-dropdown">
|
||||
<li class="{{#if_eq active null}}active{{/if_eq}}"><a href="#">All</a></li>
|
||||
{{#each filters}}
|
||||
<li class="{{#if_eq ../active id}}active{{/if_eq}}"><a href="#indexers&filter={{id}}" data-id="{{id}}">{{id}}</a></li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</script>
|
||||
|
||||
<script id="spinner" type="text/x-handlebars-template">
|
||||
<span class="spinner glyphicon glyphicon-refresh"></span>
|
||||
</script>
|
||||
@@ -698,6 +732,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20210424"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=PR11721"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
18
src/Jackett.Common/Content/libs/jQuery.tagify.min.js
vendored
Normal file
18
src/Jackett.Common/Content/libs/jQuery.tagify.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
src/Jackett.Common/Content/libs/tagify.min.js
vendored
Normal file
1
src/Jackett.Common/Content/libs/tagify.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -25,7 +25,7 @@ namespace Jackett.Common.Converters
|
||||
|
||||
return long.TryParse((string)reader.Value, out var foo)
|
||||
? foo
|
||||
: (long?) null;
|
||||
: (long?)null;
|
||||
}
|
||||
|
||||
public override bool CanConvert(Type objectType) => objectType == typeof(string);
|
||||
|
@@ -14,7 +14,7 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.onl/
|
||||
- https://1337x.unblockit.uno/
|
||||
- https://1337x.nocensor.space/
|
||||
legacylinks:
|
||||
- https://1337x.unblocked.earth/
|
||||
@@ -44,6 +44,8 @@ legacylinks:
|
||||
- https://1337x.unblockit.buzz/
|
||||
- https://1337x.unblocked.monster/
|
||||
- https://1337x.unblockit.club/
|
||||
- https://1337x.unblockit.onl/
|
||||
- https://1337x.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -142,7 +144,22 @@ settings:
|
||||
default: "magnet:"
|
||||
options:
|
||||
"http://itorrents.org/": iTorrents.org
|
||||
"http://torrage.info/": Torrage
|
||||
"http://btcache.me/": BTcache
|
||||
"magnet:": magnet
|
||||
- name: downloadlink2
|
||||
type: select
|
||||
label: Download link (fallback)
|
||||
default: "http://itorrents.org/"
|
||||
options:
|
||||
"http://itorrents.org/": iTorrents.org
|
||||
"http://torrage.info/": Torrage
|
||||
"http://btcache.me/": BTcache
|
||||
"magnet:": magnet
|
||||
- name: info_download
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: As the .torrent download links on this site are known to fail from time to time, you can optionally set as a fallback an automatic alternate link. We suggest using the magnet link as a fallback.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -160,9 +177,12 @@ settings:
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
# the .torrent url is on the on the details page
|
||||
selector: ul li a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
# the .torrent URL and magnet URI are on the details page
|
||||
selectors:
|
||||
- selector: ul li a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
- selector: ul li a[href^="{{ .Config.downloadlink2 }}"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -24,7 +24,7 @@ caps:
|
||||
- {id: 2, cat: TV/Anime, desc: "动画分类 (Anime)"}
|
||||
- {id: 7, cat: TV/Anime, desc: "新番连载 (Anime New Fan Series)"}
|
||||
- {id: 8, cat: TV/Anime, desc: "完整动画 (Anime Collection)"}
|
||||
- {id: 9, cat: TV/Anime, desc: "剧场版 (Anime Movie)"}
|
||||
- {id: 9, cat: Movies/Other, desc: "剧场版 (Anime Movie)"}
|
||||
- {id: 10, cat: TV/Anime, desc: "DVDRIP (Anime DVDRIP)"}
|
||||
- {id: 11, cat: TV/Anime, desc: "BDRIP (Anime BDRIP)"}
|
||||
- {id: 5, cat: TV/Anime, desc: "RAW/ISO"}
|
||||
@@ -51,8 +51,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -76,25 +76,27 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents/filter
|
||||
- path: torrents
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
name: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
description: ""
|
||||
mediainfo: ""
|
||||
keywords: ""
|
||||
uploader: ""
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
tvdb: "{{ .Query.TVDBID }}"
|
||||
tmdb: "{{ .Query.TMDBID }}"
|
||||
mal: ""
|
||||
igdb: ""
|
||||
start_year: ""
|
||||
end_year: ""
|
||||
sorting: "{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
qty: 100
|
||||
page: 0
|
||||
view: list
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
malId: ""
|
||||
startYear: ""
|
||||
endYear: ""
|
||||
playlistId: ""
|
||||
collectionId: ""
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
@@ -119,28 +121,17 @@ search:
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&w=52&h=80", "&w=180&h=270"] # for display on dashboard
|
||||
- name: replace
|
||||
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
selector: td:nth-last-child(3)
|
||||
grabs:
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
imdb:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
attribute: href
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: time
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
|
||||
- name: re_replace
|
||||
@@ -194,9 +185,10 @@ search:
|
||||
i[class*="fa-globe text-green"]: 2 # Global Double Upload
|
||||
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.4
|
||||
# global MR is 0.4 but torrents must be seeded for 3 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# UNIT3D 5.1.0
|
||||
# UNIT3D 5.3.0
|
||||
|
@@ -57,8 +57,9 @@ login:
|
||||
selector: a[href$="/index.php?action=logout"]
|
||||
|
||||
download:
|
||||
selector: a[href*="/engine/download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href*="/engine/download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# https://anime-free.biz/index.php?do=search&subaction=search&search_start=0&full_search=1&result_from=1&story=slaves+to+passion&all_word_seach=1&titleonly=3&searchuser=&replyless=0&replylimit=0&searchdate=0&beforeafter=after&sortby=date&resorder=desc&showposts=0&catlist[]=0
|
||||
@@ -86,6 +87,9 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 54
|
||||
category|noappend:
|
||||
optional: true
|
||||
selector: a[href*="category="]
|
||||
attribute: href
|
||||
case:
|
||||
@@ -130,6 +134,9 @@ search:
|
||||
leechers:
|
||||
text: 1
|
||||
size:
|
||||
text: "0 B"
|
||||
size:
|
||||
optional: true
|
||||
selector: b.file_size
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
|
@@ -1,47 +1,32 @@
|
||||
---
|
||||
id: animeworld
|
||||
name: AnimeWorld
|
||||
description: "AnimeWorld (AST4u) is a GERMAN Private site for TV / MOVIES / ANIME / HENTAI"
|
||||
description: "AnimeWorld (AW) is a GERMAN Private site for ANIME / MANGA / HENTAI"
|
||||
language: de-de
|
||||
type: private
|
||||
encoding: iso-8859-1
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://animeworld.cx/
|
||||
legacylinks:
|
||||
- https://www.ast4u.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 35, cat: TV/Anime, desc: "Anime Movie"}
|
||||
- {id: 36, cat: TV/Anime, desc: "Anime Serie"}
|
||||
- {id: 37, cat: Audio/Foreign, desc: "Anime Musik"}
|
||||
- {id: 41, cat: Books, desc: "Anime Pic & Manga"}
|
||||
- {id: 42, cat: XXX, desc: "Hentai Movie & OVA"}
|
||||
- {id: 43, cat: XXX, desc: "Hentai Serie"}
|
||||
- {id: 44, cat: PC, desc: "Hentai Game"}
|
||||
- {id: 45, cat: Movies, desc: "Cartoon Movie"}
|
||||
- {id: 46, cat: TV, desc: "Cartoon Serie"}
|
||||
- {id: 47, cat: TV, desc: "TV-Serie"}
|
||||
- {id: 49, cat: TV/Documentary, desc: "Sonstiges Doku"}
|
||||
- {id: 50, cat: Audio, desc: "Sonstiges Soundtrack"}
|
||||
- {id: 52, cat: Movies/HD, desc: "Movie HD"}
|
||||
- {id: 53, cat: Other, desc: "Sonstiges"}
|
||||
- {id: 55, cat: Movies/Foreign, desc: "Movie Asia & MartialArts"}
|
||||
- {id: 56, cat: TV/Anime, desc: "Anime OVA"}
|
||||
- {id: 58, cat: Movies, desc: "Movie"}
|
||||
- {id: 59, cat: Audio/Audiobook, desc: "Sonstiges Hoerspiele"}
|
||||
- {id: 62, cat: Console, desc: "Sonstiges Game"}
|
||||
- {id: 65, cat: Movies/BluRay, desc: "Movie BluRay"}
|
||||
- {id: 66, cat: TV, desc: "TV-Serie BluRay"}
|
||||
- {id: 67, cat: TV/HD, desc: "TV-Serie HD"}
|
||||
- {id: 68, cat: TV/Anime, desc: "Anime Movie HD & BD"}
|
||||
- {id: 69, cat: TV/Anime, desc: "Anime OVA HD & BD"}
|
||||
- {id: 70, cat: TV/Anime, desc: "Anime Serie HD & BD"}
|
||||
- {id: 1, cat: Movies/Other, desc: "Anime Movie"}
|
||||
- {id: 2, cat: TV/Anime, desc: "Anime Serie"}
|
||||
- {id: 3, cat: Audio, desc: "Anime Musik/OST"}
|
||||
- {id: 4, cat: PC/Games, desc: "Anime Spiele"}
|
||||
- {id: 5, cat: XXX, desc: "Hentai"}
|
||||
- {id: 6, cat: PC, desc: "Spiele Linux"}
|
||||
- {id: 7, cat: Other, desc: "Sonstiges"}
|
||||
- {id: 8, cat: Movies, desc: "Filme"}
|
||||
- {id: 9, cat: TV, desc: "Serien"}
|
||||
- {id: 10, cat: PC/Games, desc: "Spiele"}
|
||||
- {id: 11, cat: Audio, desc: "Musik"}
|
||||
- {id: 12, cat: Books, desc: "Mangas"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
@@ -52,83 +37,155 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: info
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrentliste</b> setting to <i>Platzsparendes Layout mit PopUp für zusätzliche Informationen</i> in your profile.
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
path: login
|
||||
method: form
|
||||
form: form[action$="/login"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: "/index.php"
|
||||
test:
|
||||
path: browse.php
|
||||
remember: on
|
||||
selectorinputs:
|
||||
_token:
|
||||
selector: input[name="_token"]
|
||||
attribute: value
|
||||
error:
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
- path: torrents
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: 0
|
||||
orderby: added
|
||||
sort: desc
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
name: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
description: ""
|
||||
mediainfo: ""
|
||||
keywords: ""
|
||||
uploader: ""
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
malId: ""
|
||||
startYear: ""
|
||||
endYear: ""
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.tableinborder > tbody > tr:has(a[href^="details.php"])
|
||||
selector: table > tbody > tr
|
||||
|
||||
fields: # note: two alternative layouts available
|
||||
title:
|
||||
selector: a[href^="details.php"]
|
||||
title:
|
||||
optional: true
|
||||
selector: a[href^="details.php"][title]
|
||||
attribute: title
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
selector: a[href*="/categories/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
details:
|
||||
selector: a[href^="details.php"]
|
||||
attribute: href
|
||||
- name: regexp
|
||||
args: "/categories/(\\d+)"
|
||||
title:
|
||||
selector: a.view-torrent
|
||||
download:
|
||||
selector: a[href^=" /gettorrent/"]
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(1) > b:nth-child(2), a[href*="&filelist=1"]
|
||||
grabs:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(3) > b:nth-child(1), a[href*="&tosnatchers=1"]
|
||||
details:
|
||||
selector: a.view-torrent
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div.torrent-poster img
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
size:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(1) > b:nth-child(1), td:nth-child(7):has(br)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(2) > b:nth-child(1), a[href*="&toseeders=1"]
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(2) > b:nth-child(3), a[href*="&todlers=1"]
|
||||
selector: td:nth-last-child(3)
|
||||
grabs:
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2) > td:nth-child(5), td:nth-child(5):has(br)
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" ", ""]
|
||||
- name: append
|
||||
args: " +2:00" # EET
|
||||
- name: replace
|
||||
args: ["\xA0", ""]
|
||||
- name: dateparse
|
||||
args: "02.01.200615:04:05 -07:00"
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"]
|
||||
- name: re_replace
|
||||
args: ["(?i) (ay)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"]
|
||||
- name: re_replace
|
||||
args: ["(?i) (an)", "year"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(För |und)", ""] # Misc removals
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="/pic/free.gif"]: 0
|
||||
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:
|
||||
text: 1
|
||||
# engine tbd
|
||||
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
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# UNIT3D 5.3.0
|
||||
|
@@ -121,8 +121,9 @@ download:
|
||||
infohash: "{{ .DownloadUri.Query.id }}"
|
||||
thanks: 1
|
||||
rndval: "1487013827343"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -92,6 +92,17 @@ settings:
|
||||
options:
|
||||
"/en/torrents/download/?key=": ".torrent"
|
||||
"magnet:?xt=": "magnet"
|
||||
- name: downloadlink2
|
||||
type: select
|
||||
label: Download link (fallback)
|
||||
default: "/en/torrents/download/?key="
|
||||
options:
|
||||
"/en/torrents/download/?key=": ".torrent"
|
||||
"magnet:?xt=": "magnet"
|
||||
- name: info_download
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: You can optionally set as a fallback an automatic alternate link, so if the .torrent download link fails your download will still be successful.
|
||||
|
||||
login:
|
||||
path: en/users/signin/
|
||||
@@ -111,8 +122,11 @@ login:
|
||||
selector: a[href="/en/users/logout/"]
|
||||
|
||||
download:
|
||||
selector: a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
- selector: a[href^="{{ .Config.downloadlink2 }}"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -9,7 +9,7 @@ links:
|
||||
- http://audiobookbay.nl/ # site forces http, does not support https
|
||||
- http://audiobookbay.net/
|
||||
- http://audiobookbayabb.com/
|
||||
- https://audiobookbay.unblockit.onl/
|
||||
- https://audiobookbay.unblockit.uno/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- https://audiobookbay.unblockit.lat/
|
||||
@@ -19,6 +19,8 @@ legacylinks:
|
||||
- https://audiobookbay.unblockit.link/
|
||||
- https://audiobookbay.unblockit.buzz/
|
||||
- https://audiobookbay.unblockit.club/
|
||||
- https://audiobookbay.unblockit.onl/
|
||||
- https://audiobookbay.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -88,12 +90,13 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: td:contains("Info Hash:") ~ td
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "magnet:?xt=urn:btih:"
|
||||
- name: append
|
||||
args: "&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
selectors:
|
||||
- selector: td:contains("Info Hash:") ~ td
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "magnet:?xt=urn:btih:"
|
||||
- name: append
|
||||
args: "&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
107
src/Jackett.Common/Definitions/badasstorrents.yml
Normal file
107
src/Jackett.Common/Definitions/badasstorrents.yml
Normal file
@@ -0,0 +1,107 @@
|
||||
---
|
||||
id: badasstorrents
|
||||
name: Badass Torrents
|
||||
description: "Badass Torrents is a Public torrent site for MOVIES / TV / GENERAL"
|
||||
language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://badasstorrents.com/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Anime: TV/Anime
|
||||
Apps: PC
|
||||
Books: Books
|
||||
Games: PC/Games
|
||||
Movies: Movies
|
||||
Music: Audio
|
||||
Other: Other
|
||||
TV: TV
|
||||
XXX: XXX
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q, album, artist]
|
||||
book-search: [q]
|
||||
settings:
|
||||
- name: downloadlink
|
||||
type: select
|
||||
label: Download link
|
||||
default: "magnet:?xt="
|
||||
options:
|
||||
"/download/": ".torrent"
|
||||
"magnet:?xt=": "magnet"
|
||||
- name: downloadlink2
|
||||
type: select
|
||||
label: Download link (fallback)
|
||||
default: "/download/"
|
||||
options:
|
||||
"/download/": ".torrent"
|
||||
"magnet:?xt=": "magnet"
|
||||
- name: info_download
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: You can optionally set as a fallback an automatic alternate link, so if the .torrent download link fails your download will still be successful.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: date
|
||||
options:
|
||||
date: created
|
||||
seeders: seeds
|
||||
size: size
|
||||
title: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href*="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
- selector: a[href*="{{ .Config.downloadlink2 }}"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "torrents/{{ if .Keywords }}search/{{ .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}"
|
||||
- path: "torrents/{{ if .Keywords }}search/{{ .Keywords }}/{{ else }}{{ end }}26/{{ .Config.sort }}/{{ .Config.type }}"
|
||||
- path: "torrents/{{ if .Keywords }}search/{{ .Keywords }}/{{ else }}{{ end }}51/{{ .Config.sort }}/{{ .Config.type }}"
|
||||
- path: "torrents/{{ if .Keywords }}search/{{ .Keywords }}/{{ else }}{{ end }}76/{{ .Config.sort }}/{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.table-hover > tbody > tr:has(a[href*="/torrent/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/cat/"]
|
||||
title:
|
||||
selector: a[href*="/torrent/"]
|
||||
details:
|
||||
selector: a[href*="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/torrent/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: timeago
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -60,8 +60,9 @@ login:
|
||||
path: index.php
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -124,11 +124,11 @@ settings:
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
form: form[action$="login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="cap/captcha_math.php"]
|
||||
selector: img[src*="captcha_math.php"]
|
||||
input: stringCaptcha
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
@@ -150,7 +150,7 @@ search:
|
||||
allCats: ""
|
||||
search: "{{ .Keywords }}"
|
||||
# 1 25, 2 50, 3 75, 4 100
|
||||
limit: 1
|
||||
limit: 4
|
||||
# searchin: 0 all, 1 active, 2 dead, 3 highlights, 4 bookmarks, 5 uploads, 10 bots, 11 onlyupload, 12 multiplier, 13 %download, 14 freeleech
|
||||
# note: freeleech on this site means download and upload is not counted, whereas OU means download is free and upload is counted
|
||||
# 14 yields no freeleech, but 11 returns results
|
||||
@@ -184,6 +184,9 @@ search:
|
||||
args: (\d+)
|
||||
- name: prepend
|
||||
args: "download.php?torrent="
|
||||
poster:
|
||||
selector: div[data-image]
|
||||
attribute: data-image
|
||||
seeders:
|
||||
selector: td.peers:has(i[title="Seeders"])
|
||||
leechers:
|
||||
@@ -227,9 +230,9 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"span:contains(\"2x\")": 2
|
||||
"span:contains(\"5x\")": 5
|
||||
"span:contains(\"10x\")": 10
|
||||
"span:contains(\"x2\")": 2
|
||||
"span:contains(\"x5\")": 5
|
||||
"span:contains(\"x10\")": 10
|
||||
"span:contains(\"FL\")": 0 # freeleech neither dl or ul is counted
|
||||
"*": 1
|
||||
minimumseedtime:
|
||||
|
@@ -123,13 +123,7 @@ search:
|
||||
size:
|
||||
selector: td:nth-child(6) > u
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
optional: true
|
||||
selector: td:nth-child(6) > nobr > font:contains(" × ")
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["×", ""]
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
|
@@ -21,6 +21,8 @@ caps:
|
||||
- {id: 67, cat: XXX, desc: "XxX"}
|
||||
- {id: 68, cat: Movies, desc: "Dual (TR-~)"}
|
||||
- {id: 71, cat: Movies, desc: "NFLIX"}
|
||||
- {id: 78, cat: TV, desc: "EXXEN"}
|
||||
- {id: 79, cat: TV, desc: "BLUTV"}
|
||||
- {id: 58, cat: Movies, desc: "Film"}
|
||||
- {id: 72, cat: Movies, desc: "Belgesel"}
|
||||
- {id: 60, cat: Movies/3D, desc: "3D"}
|
||||
|
@@ -10,7 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 1, cat: Movies, desc: "Movie"}
|
||||
- {id: 2, cat: TV, desc: "TV"}
|
||||
- {id: 3, cat: Movies/Other, desc: "FANRES"}
|
||||
- {id: 5, cat: Movies/Other, desc: "Trailer"}
|
||||
@@ -68,29 +68,27 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://blutopia.xyz/torrents/filter?
|
||||
# search=&description=&keywords=&uploader=&imdb=&tvdb=&view=list&tmdb=&mal=&igdb=
|
||||
# &start_year=&end_year=&categories%5B%5D=3&sorting=seeders&direction=asc&page=0&qty=25
|
||||
- path: torrents/filter
|
||||
- path: torrents
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
name: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
description: ""
|
||||
mediainfo: ""
|
||||
keywords: ""
|
||||
uploader: ""
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
tvdb: "{{ .Query.TVDBID }}"
|
||||
tmdb: "{{ .Query.TMDBID }}"
|
||||
mal: ""
|
||||
igdb: ""
|
||||
start_year: ""
|
||||
end_year: ""
|
||||
sorting: "{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
qty: 100
|
||||
page: 0
|
||||
view: list
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
malId: ""
|
||||
startYear: ""
|
||||
endYear: ""
|
||||
playlistId: ""
|
||||
collectionId: ""
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
@@ -103,40 +101,29 @@ search:
|
||||
- name: regexp
|
||||
args: "/categories/(\\d+)"
|
||||
title:
|
||||
selector: a[href*="/torrents/"]
|
||||
selector: a.view-torrent
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
details:
|
||||
selector: a[href*="/torrents/"]
|
||||
selector: a.view-torrent
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div.torrent-poster img
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&w=52&h=80", "&w=180&h=270"] # for display on dashboard
|
||||
- name: replace
|
||||
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/52x80&w=180&h=270", ""]
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
selector: td:nth-last-child(3)
|
||||
grabs:
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
imdb:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
attribute: href
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: time
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
|
||||
- name: re_replace
|
||||
@@ -190,7 +177,10 @@ search:
|
||||
i[class*="fa-globe text-green"]: 2 # Global Double Upload
|
||||
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
|
||||
"*": 1
|
||||
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# UNIT3D 5.2.1b
|
||||
# UNIT3D 5.3.1b
|
||||
|
@@ -77,8 +77,9 @@ login:
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -102,7 +102,6 @@ search:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{2}-\d{2}-\d{4} \d{2}:\d{2})
|
||||
filters:
|
||||
- name: append
|
||||
args: " +03:00" # TRT
|
||||
- name: dateparse
|
||||
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
links:
|
||||
# update poster placeholder link too
|
||||
- https://btdb.eu/
|
||||
- https://btdb.unblockit.onl/
|
||||
- https://btdb.unblockit.uno/
|
||||
legacylinks:
|
||||
- https://btdb.to/
|
||||
- https://btdb.unblocked.app/
|
||||
@@ -36,6 +36,8 @@ legacylinks:
|
||||
- https://btdb.unblockit.link/
|
||||
- https://btdb.unblockit.buzz/
|
||||
- https://btdb.unblockit.club/
|
||||
- https://btdb.unblockit.onl/
|
||||
- https://btdb.unblockit.li/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -7,6 +7,9 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btdig.com/
|
||||
- https://btdiggwzoyrwwbiv.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
|
||||
legacylinks:
|
||||
- http://btdiggwzoyrwwbiv.onion.ly/
|
||||
|
||||
caps:
|
||||
@@ -40,7 +43,7 @@ search:
|
||||
paths:
|
||||
- path: search
|
||||
inputs:
|
||||
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}test{{ end }}"
|
||||
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
# 0 relevance 2 age 3 size 4 files
|
||||
order: "{{ .Config.sort }}"
|
||||
|
||||
|
@@ -56,21 +56,21 @@ search:
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "01/02 15:04"
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
selector: td:nth-child(7)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -6,7 +6,7 @@ language: en-us
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btsow.digital
|
||||
- https://btsow.shop/
|
||||
legacylinks:
|
||||
- https://btos.pw/
|
||||
- https://btio.pw/
|
||||
@@ -25,6 +25,7 @@ legacylinks:
|
||||
- https://btsow.surf/
|
||||
- https://btsow.com/
|
||||
- https://btsow.cam/
|
||||
- https://btsow.digital/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -44,8 +45,9 @@ settings:
|
||||
default: BTSOW does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
|
||||
download:
|
||||
selector: a#magnetOpen
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a#magnetOpen
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -67,10 +67,11 @@ caps:
|
||||
- {id: 153, cat: TV, desc: "TV-Star Plus"}
|
||||
- {id: 154, cat: TV, desc: "TV-Zee TV"}
|
||||
- {id: 186, cat: TV, desc: "TV-Dangal Tv"}
|
||||
- {id: 218, cat: TV, desc: "TV-Ishara TV"}
|
||||
- {id: 155, cat: TV/Sport, desc: "TV-Sports"}
|
||||
- {id: 156, cat: TV/Documentary, desc: "TV-Documentaries"}
|
||||
- {id: 198, cat: Movies, desc: "TV-MTV"}
|
||||
- {id: 218, cat: TV, desc: "TV-Ishara TV"}
|
||||
- {id: 219, cat: TV, desc: "TV-Bengali Tv"}
|
||||
- {id: 158, cat: TV, desc: "TV-Other Tv Shows"}
|
||||
- {id: 157, cat: TV, desc: "TV-Hollywood Tv Shows"}
|
||||
- {id: 195, cat: TV, desc: "TV-Tv Packs"}
|
||||
|
@@ -6,6 +6,8 @@ language: ru-ru
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://byrut.org/
|
||||
legacylinks:
|
||||
- https://byrutor.org/
|
||||
|
||||
caps:
|
||||
@@ -258,8 +260,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a.itemtop_game
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a.itemtop_game
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# keywords (article titles only search)
|
||||
@@ -317,8 +320,6 @@ search:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
grabs:
|
||||
selector: li:has(img[alt="Скачиваний"])
|
||||
size:
|
||||
selector: div.shor_subtitles span:nth-child(2)
|
||||
filters:
|
||||
|
@@ -150,7 +150,7 @@ search:
|
||||
args: ["hete", "week"]
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src="pic/double.png"]: 2
|
||||
|
@@ -16,10 +16,6 @@ caps:
|
||||
- {id: 2, 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/DVD5/Eng"}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Film/DVD5/Hun"}
|
||||
- {id: 12, cat: Movies/DVD, desc: "Film/DVD9/Eng"}
|
||||
- {id: 11, cat: Movies/DVD, desc: "Film/DVD9/Hun"}
|
||||
- {id: 16, cat: Movies/HD, desc: "Film/HD1080P/Eng"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Film/HD1080P/Hun"}
|
||||
- {id: 14, cat: Movies/HD, desc: "Film/HD720P/Eng"}
|
||||
@@ -105,14 +101,14 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 both, 2 onlydead, 3 onlyfree, 4 x2 torrents, 6 mytorrents
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
# 0 both, 1 onlyactive, 2 onlydead, 3 onlyfree, 4 x2 torrents, 5 mytorrents, 6 waiting for seeds
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not support imdbid searches
|
||||
|
||||
rows:
|
||||
selector: table[width="800"] > tbody > tr:has(a[href^="details.php?id="])
|
||||
selector: table[width="920px"] > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -82,6 +82,12 @@ search:
|
||||
paths:
|
||||
# http://www.cartoonchaos.org/index.php?page=torrents&search=transformers&category=30;21;20;26;15;16;17&options=0&active=0
|
||||
- path: index.php
|
||||
keywordsfilters:
|
||||
# if searching for season packs switch S01 to season 1 #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(S0)(\\d{1,2})$", "season $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(S)(\\d{1,3})$", "season $2"]
|
||||
inputs:
|
||||
page: torrents
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
@@ -105,6 +111,10 @@ search:
|
||||
args: category
|
||||
title:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
filters:
|
||||
# #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(season )", "S"]
|
||||
details:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
|
@@ -56,8 +56,9 @@ login:
|
||||
selector: a[href$="/index.php?action=logout"]
|
||||
|
||||
download:
|
||||
selector: a[href*="/index.php?do=download&id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href*="/index.php?do=download&id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# https://catorrent.org/index.php?do=search&subaction=search&story=lovelot
|
||||
|
@@ -1,39 +1,13 @@
|
||||
---
|
||||
# Update by LA5T based on the orignial 'cinematik.yml'
|
||||
# 29.07.2018 22:53 UTC+2
|
||||
#
|
||||
id: cinematik
|
||||
name: Cinematik
|
||||
description: "Tracker for non-hollywood movies."
|
||||
description: "A tracker for full BD and DVD discs of non-mainstream movies, niche cinema and arthouse."
|
||||
language: en-us
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.cinematik.net/
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: incldead
|
||||
type: select
|
||||
label: Status
|
||||
default: 1
|
||||
options:
|
||||
0: Active
|
||||
1: "Active and Inactive"
|
||||
2: Inactive
|
||||
- name: srchdtls
|
||||
type: checkbox
|
||||
label: "Detailed search"
|
||||
- name: info_results
|
||||
type: info
|
||||
label: "Search results"
|
||||
default: "You can increase the number of search results in your profile.<br />Default is 15."
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Comedy"}
|
||||
@@ -59,9 +33,34 @@ caps:
|
||||
search: [q]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: incldead
|
||||
type: select
|
||||
label: Status
|
||||
default: 1
|
||||
options:
|
||||
0: Active
|
||||
1: "Active and Inactive"
|
||||
2: Inactive
|
||||
- name: srchdtls
|
||||
type: checkbox
|
||||
label: "Detailed search"
|
||||
- name: info_results
|
||||
type: info
|
||||
label: "Search results"
|
||||
default: "You can increase the number of search results in your profile.<br>Default is 15."
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
method: form
|
||||
path: login.php
|
||||
submitpath: takelogin.php
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
@@ -75,34 +74,36 @@ search:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Query.Keywords }}"
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: "{{ .Config.incldead }}"
|
||||
srchdtls: "{{ if .Config.srchdtls }}1{{ else }}0{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table[border="1"] tr:not(:first-child)
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 1
|
||||
title:
|
||||
selector: td:nth-child(2) a
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["details.php?id=", "download.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([\d,]+)
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
@@ -111,11 +112,12 @@ search:
|
||||
selector: td:nth-child(11) div.addedtor
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"img[title=\"Golden Torrent: No Download Stats are Recorded\"]": 0
|
||||
"img[title=\"Silver Torrent: Download Stats are 25% Recorded\"]": 0.25
|
||||
"img[title=\"Platinum Torrent: No Download Stats are Recorded, Upload Stats are Doubled!\"]": 0
|
||||
img[title^="Golden Torrent"]: 0
|
||||
img[title^="Silver Torrent"]: 0.25
|
||||
img[title^="Platinum Torrent"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"img[title=\"Platinum Torrent: No Download Stats are Recorded, Upload Stats are Doubled!\"]": 2
|
||||
img[title^="Platinum Torrent"]: 2
|
||||
"*": 1
|
||||
# Engine n/a
|
||||
|
@@ -28,8 +28,9 @@ login:
|
||||
path: index.php
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -61,7 +61,6 @@ settings:
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
@@ -101,8 +100,9 @@ login:
|
||||
user-agent: "[ .Config.useragent ]"
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -68,8 +68,9 @@ settings:
|
||||
?trie-nom-a: title asc
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -13,6 +13,10 @@ legacylinks:
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movies
|
||||
- {id: 62, cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: 96, cat: Movies/UHD, desc: "Movies 4k Hindi"}
|
||||
- {id: 94, cat: Movies/UHD, desc: "Movies 4k"}
|
||||
- {id: 64, cat: Movies, desc: "Movies Animated"}
|
||||
- {id: 16, cat: Movies/BluRay, desc: "Movies English Bluray"}
|
||||
- {id: 11, cat: Movies/DVD, desc: "Movies English DVD-RIP"}
|
||||
- {id: 14, cat: Movies, desc: "Movies English CAM"}
|
||||
@@ -25,12 +29,9 @@ caps:
|
||||
- {id: 65, cat: Movies/WEB-DL, desc: "Movies Hindi Webrip/HDrip"}
|
||||
- {id: 24, cat: Movies, desc: "Movies UNRATED"}
|
||||
- {id: 53, cat: Movies/Foreign, desc: "Movies Other Foreign"}
|
||||
- {id: 64, cat: Movies, desc: "Movies Animated"}
|
||||
- {id: 45, cat: Movies, desc: "Movies Trailers"}
|
||||
- {id: 93, cat: Movies, desc: "Movies Dual Movies"}
|
||||
- {id: 59, cat: Movies, desc: "Movies Pack"}
|
||||
- {id: 94, cat: Movies/UHD, desc: "Movies 4k"}
|
||||
- {id: 62, cat: Movies/3D, desc: "Movies 3D"}
|
||||
# TV
|
||||
- {id: 34, cat: TV, desc: "TV English Series"}
|
||||
- {id: 57, cat: TV, desc: "TV Bangla series"}
|
||||
@@ -46,7 +47,7 @@ caps:
|
||||
- {id: 61, cat: PC/Games, desc: "Games trailer"}
|
||||
- {id: 90, cat: Console/PS4, desc: "Games Ps4"}
|
||||
- {id: 86, cat: Console/PS3, desc: "Games xbox / ps3"}
|
||||
- {id: 92, cat: PC/Games, desc: "Games nrated"}
|
||||
- {id: 92, cat: PC/Games, desc: "Games unrated"}
|
||||
# Software
|
||||
- {id: 7, cat: PC/0day, desc: "Software Windows"}
|
||||
- {id: 20, cat: PC/Mobile-Android, desc: "Software Android Apps"}
|
||||
|
@@ -33,6 +33,7 @@ caps:
|
||||
- {id: 65, cat: Movies, desc: "Films FSCR"}
|
||||
- {id: 66, cat: Movies, desc: "Films CamTS"}
|
||||
- {id: 67, cat: Movies, desc: "Films Pack Films"}
|
||||
- {id: 129, cat: Movies, desc: "Films QC~Film"}
|
||||
- {id: 68, cat: Movies, desc: "Films VostFR"}
|
||||
- {id: 69, cat: Movies, desc: "Films VO"}
|
||||
- {id: 70, cat: Movies/WEB-DL, desc: "Films WebRip 1080p"}
|
||||
@@ -40,7 +41,7 @@ caps:
|
||||
- {id: 73, cat: Movies/WEB-DL, desc: "Films Webrip"}
|
||||
- {id: 72, cat: Movies/WEB-DL, desc: "Films WEB DL"}
|
||||
- {id: 99, cat: Movies, desc: "Films Remux"}
|
||||
- {id: 98, cat: TV/Anime, desc: "Films Film Animées"}
|
||||
- {id: 98, cat: Movies/Other, desc: "Films Film Animées"}
|
||||
- {id: 122, cat: Movies/WEB-DL, desc: "Films Web-DL 1080P"}
|
||||
- {id: 123, cat: Movies/WEB-DL, desc: "Films WEB-DL 720p"}
|
||||
- {id: 126, cat: Movies, desc: "Films HDTV"}
|
||||
@@ -71,6 +72,7 @@ caps:
|
||||
- {id: 107, cat: Audio/MP3, desc: "Musiques MP3"}
|
||||
- {id: 108, cat: Audio/Lossless, desc: "Musiques FLAC"}
|
||||
- {id: 109, cat: Audio, desc: "Musiques WMA"}
|
||||
- {id: 132, cat: Audio, desc: "Musiques QC~Musique"}
|
||||
# Séries
|
||||
- {id: 76, cat: TV/HD, desc: "Series Blu-Ray"}
|
||||
- {id: 77, cat: TV/HD, desc: "Series HDTV"}
|
||||
@@ -88,10 +90,13 @@ caps:
|
||||
- {id: 97, cat: TV/Anime, desc: "Series Animée"}
|
||||
- {id: 88, cat: TV, desc: "Series Pack HD"}
|
||||
- {id: 128, cat: TV, desc: "Series Pack SD"}
|
||||
- {id: 130, cat: TV, desc: "SeriesQC~Serie"}
|
||||
# Spéctacle
|
||||
- {id: 131, cat: TV, desc: "SeriesQC~Spectacle"}
|
||||
- {id: 91, cat: TV/Other, desc: "Spectacle 720p"}
|
||||
- {id: 90, cat: TV/Other, desc: "Spectacle 1080p"}
|
||||
# Télévision
|
||||
- {id: 133, cat: TV, desc: "TV QC~Tv"}
|
||||
- {id: 74, cat: TV/HD, desc: "TV TVHD"}
|
||||
- {id: 75, cat: TV, desc: "TV TVRip"}
|
||||
- {id: 92, cat: TV/Other, desc: "TV Spectacles"}
|
||||
@@ -170,8 +175,9 @@ download:
|
||||
id: "{{ .DownloadUri.Query.id }}"
|
||||
to: give
|
||||
torrent: "{{ .DownloadUri.Query.id }}"
|
||||
selector: "a[href^=\"/{{ .DownloadUri.Query.id }}/\"]"
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: "a[href^=\"/{{ .DownloadUri.Query.id }}/\"]"
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -242,11 +248,23 @@ search:
|
||||
- name: regexp
|
||||
args: "src=(.*?)><"
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
selector: a[onmouseover][href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Completé : </b>(\\d+)<"
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
selector: a[onmouseover][href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "=green>(\\d+)<"
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
selector: a[onmouseover][href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "=red>(\\d+)<"
|
||||
size:
|
||||
selector: a[onmouseover][href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
|
@@ -1,203 +0,0 @@
|
||||
---
|
||||
id: danishbytes
|
||||
name: DANISH BYTES
|
||||
description: "DANISH BYTES is a Private Danish Tracker"
|
||||
language: en-us
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://danishbytes.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 2, cat: TV, desc: "TV"}
|
||||
- {id: 5, cat: PC/0day, desc: "Appz"}
|
||||
- {id: 4, cat: PC/Games, desc: "Games"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
- {id: 8, cat: Books, desc: "Bookz"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login
|
||||
method: form
|
||||
form: form[action$="/login"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
remember: on
|
||||
selectorinputs:
|
||||
_token:
|
||||
selector: input[name="_token"]
|
||||
attribute: value
|
||||
error:
|
||||
- selector: div#ERROR_COPY
|
||||
# test:
|
||||
# path: /
|
||||
# selector: a[href$="/logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents/filter
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}categories[]={{.}}&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
|
||||
description: ""
|
||||
keywords: ""
|
||||
uploader: ""
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
tvdb: "{{ .Query.TVDBID }}"
|
||||
tmdb: "{{ .Query.TMDBID }}"
|
||||
mal: ""
|
||||
igdb: ""
|
||||
start_year: ""
|
||||
end_year: ""
|
||||
sorting: "{{ .Config.sort }}"
|
||||
direction: "{{ .Config.type }}"
|
||||
qty: 100
|
||||
page: 0
|
||||
view: list
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
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
|
||||
# tracker has issue with some magnet downloads failing #10758
|
||||
# magnet:
|
||||
# selector: a[href^="magnet"]
|
||||
# attribute: href
|
||||
details:
|
||||
selector: a.view-torrent
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div.torrent-poster img
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&w=52&h=80", "&w=180&h=270"] # for display on dashboard
|
||||
- name: replace
|
||||
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
|
||||
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:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
# translations for Turkish|Estonian|Danish|Italian|Polish|Norwegian|Portuguese|Czech|Russian|Romanian|Spanish|French|German|Bulgarian|Dutch|Chinese|Japanese|Swedish
|
||||
- name: re_replace
|
||||
args: ["(?i)(önce|tagasi|geleden|fa|temu|siden|há|atrás|nazpět|назад|acum|în urmă|hace|il y a|vor|преди|前|sedan)", " ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(saniye|sekundit|sekunder|secondi|sekund|segundos|sekundami|секунд|secunde|secondes|Sekunden|секунди|seconden|秒前)", "seconds"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(minutit|minutter|minuti|minuty|minutos|минуты|минут|Minuten|минути|minuten|minuter)", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(dakika|minut|minuto|minuta|minutt|минута|Minute|minuut|分钟|分)", " minute"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(tundi|timer|ore|godziny|horas|hodiny|hoden|часа|часов|ore|heures|Stunden|timmar)", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(saat|tund|time|ora|godzina|hora|hodina|час|oră|heure|Stunde|uur|小时|時間|timme)", " hour"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(päeva|dage|giorni|dni|dias|dny|дня|дней|zile|días|jours|Tagen|дни|dagen|dagar)", "days"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(gün|päev|dag|giorno|dzień|dia|den|день|zi|día|jour|Tag|ден|天|日)", " day"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(nädalat|uger|settimane|tygodnie|uker|semanas|týdny|недели|недель|săptămâni|semaines|Wochen|седмици|weken|veckor)", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(hafta|nädal|uge|settimana|tydzień|uke|semana|týden|неделю|săptămână|semaine|Woche|седмица|周|週間|vecka)", " week"]
|
||||
- name: re_replace
|
||||
args: ["(?i) (ay)", "month"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden|månader)", "months"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(kuu|måned|mese|miesiąc|mês|měsíc|месяц|lună|mes|Monat|месец|maand|个月|ヶ月|månad)", " month"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(aastat|anni|lata|anos|roky|года|ani|años|ans|Jahren|години)", " years"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(yil|aasta|år|anno|rok|ano|год|año|Jahr|година|jaar|年)", " year"]
|
||||
- name: re_replace
|
||||
args: ["(?i) (an)", "year"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(För |und)", ""] # Misc removals
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
i[class*="fa-id-badge text-orange"]: 0 # 24 Hour FreeLeech From PARA Store
|
||||
i[class*="fa-trophy text-purple"]: 0 # Special FreeLeech For Certain User Groups
|
||||
i[class*="fa-star text-bold"]: 0 # Freeleech From Token
|
||||
i[class*="fa-coins text-bold"]: 0 # Freeleech From Token
|
||||
i[class*="fa-globe text-blue"]: 0 # Global Freeleech
|
||||
i[class*="fa-star text-gold"]: 0 # Freeleech
|
||||
i[class*="fa-certificate text-pink"]: 0 # Featured Torrent
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
i[class*="fa-gem text-green"]: 2 # Single Torrent Double Upload
|
||||
i[class*="fa-globe text-green"]: 2 # Global Double Upload
|
||||
i[class*="fa-certificate text-pink"]: 2 # Featured Torrent
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.1
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# UNIT3D 5.1.0 DB-edition
|
@@ -136,9 +136,9 @@ search:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: "0"
|
||||
blah: 0
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
|
||||
|
@@ -10,7 +10,7 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoid.unblockit.onl/
|
||||
- https://demonoid.unblockit.uno/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.space/
|
||||
legacylinks:
|
||||
@@ -33,6 +33,8 @@ legacylinks:
|
||||
- https://demonoid.unblockit.link/
|
||||
- https://demonoid.unblockit.buzz/
|
||||
- https://demonoid.unblockit.club/
|
||||
- https://demonoid.unblockit.onl/
|
||||
- https://demonoid.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -283,7 +285,7 @@ caps:
|
||||
- {id: 233, cat: TV, desc: "TV Trailers"}
|
||||
- {id: 234, cat: TV, desc: "TV War"}
|
||||
- {id: 235, cat: TV, desc: "TV Western"}
|
||||
# cat 7 misc has no subcats
|
||||
# cat 7 Miscellaneous has no subcats
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -300,6 +302,10 @@ settings:
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Access this tracker with your browser<li>click on the <b>Apply Filter</b> button on the page to invoke the search and solve the challenge<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 (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<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: info_themes
|
||||
type: info
|
||||
label: About themes
|
||||
default: Only the default theme <b>Demonoid - v5</b> is supported. If you are using v3 then change it in your <i>User Control Panel</i> or you will get 0 results.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -317,8 +323,9 @@ login:
|
||||
path: files/
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="/files/download/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -341,10 +348,11 @@ search:
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.font_12px tr:has(td[class^="tone_1"])
|
||||
# only the default theme "Demonoid - v5" is supported
|
||||
selector: table.table:has(td.torrent__table-today) > tbody > tr:has(td[class^="tone_"])
|
||||
after: 1
|
||||
dateheaders:
|
||||
selector: tr td.added_today:not(:contains("Sponsored links"))
|
||||
selector: tr td.torrent__table-today:not(:contains("Sponsored links"))
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Added ", ""]
|
||||
@@ -359,7 +367,7 @@ search:
|
||||
optional: true
|
||||
attribute: title
|
||||
category:
|
||||
selector: span > a[href*="&subcategory="]
|
||||
selector: span.torrent__table-info > a:nth-child(2)
|
||||
attribute: href
|
||||
optional: true
|
||||
filters:
|
||||
@@ -372,15 +380,15 @@ search:
|
||||
selector: a[href^="/files/details/"]
|
||||
attribute: href
|
||||
description:
|
||||
selector: td:nth-last-child(9)
|
||||
selector: td:nth-last-child(7)
|
||||
size:
|
||||
selector: td:nth-last-child(6)
|
||||
selector: td:nth-last-child(5)
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
seeders:
|
||||
selector: td:nth-last-child(2)
|
||||
leechers:
|
||||
selector: td:nth-last-child(1)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -86,22 +86,22 @@ search:
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr:has(a[href^="magnet:?dn="])
|
||||
selector: table > tbody > tr:has(a[href*="/download/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 1
|
||||
title:
|
||||
selector: a[href*="/torrents/"]
|
||||
selector: span[class="name"]
|
||||
details:
|
||||
selector: a[href*="/torrents/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:?dn="]
|
||||
attribute: href
|
||||
# magnet:
|
||||
# selector: a[href^="magnet:?dn="]
|
||||
# attribute: href
|
||||
poster:
|
||||
selector: img.tps
|
||||
attribute: src
|
||||
|
@@ -1,274 +0,0 @@
|
||||
---
|
||||
id: desitorrents
|
||||
name: DesiTorrents
|
||||
description: "Desitorrents is a Private Torrent Tracker for BOLLYWOOD / TOLLYWOOD / GENERAL"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://desitorrents.tv/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# movies
|
||||
- {id: 47, cat: Movies, desc: "Movies/Bollywood"}
|
||||
- {id: 48, cat: Movies, desc: "Movies/Bengali"}
|
||||
- {id: 49, cat: Movies, desc: "Movies/Tamil"}
|
||||
- {id: 51, cat: Movies, desc: "Movies/Punjabi"}
|
||||
- {id: 52, cat: Movies, desc: "Movies/Marathi"}
|
||||
- {id: 53, cat: Movies, desc: "Movies/Malayalam"}
|
||||
- {id: 54, cat: Movies, desc: "Movies/Kannada"}
|
||||
- {id: 55, cat: Movies, desc: "Movies/Gujarati"}
|
||||
- {id: 56, cat: Movies, desc: "Movies/Foreign"}
|
||||
- {id: 57, cat: Movies, desc: "Movies/Lollywood"}
|
||||
- {id: 58, cat: Movies, desc: "Movies/Hollywood"}
|
||||
- {id: 103, cat: Movies, desc: "Movies/Telugu"}
|
||||
- {id: 104, cat: Movies, desc: "Movies/South Dubbed"}
|
||||
- {id: 110, cat: Movies, desc: "Movies/Documentary"}
|
||||
- {id: 117, cat: Movies, desc: "Movies/Bhojpuri"}
|
||||
- {id: 124, cat: Movies, desc: "Movies/Movie Packs"}
|
||||
- {id: 128, cat: Movies, desc: "Movies/Dubbed Audio"}
|
||||
- {id: 129, cat: Movies, desc: "Movies/Animated"}
|
||||
- {id: 140, cat: Movies, desc: "Movies/Short Films"}
|
||||
# tv shows
|
||||
- {id: 59, cat: TV, desc: "TV/Colors"}
|
||||
- {id: 60, cat: TV, desc: "TV/Sony"}
|
||||
- {id: 61, cat: TV, desc: "TV/&TV"}
|
||||
- {id: 62, cat: TV, desc: "TV/StarPlus"}
|
||||
- {id: 63, cat: TV, desc: "TV/ZEE TV"}
|
||||
- {id: 97, cat: TV, desc: "TV/Life OK"}
|
||||
- {id: 98, cat: TV, desc: "TV/Documentary"}
|
||||
- {id: 101, cat: TV/Sport, desc: "TV/Sports"}
|
||||
- {id: 102, cat: TV/Other, desc: "TV/Others"}
|
||||
- {id: 113, cat: TV, desc: "TV/Pak Drama"}
|
||||
- {id: 125, cat: TV, desc: "TV/TV Packs"}
|
||||
- {id: 130, cat: TV, desc: "TV/Star Bharat"}
|
||||
- {id: 132, cat: TV, desc: "TV/Sab TV"}
|
||||
- {id: 139, cat: TV, desc: "TV/Hollywood"}
|
||||
# music
|
||||
- {id: 67, cat: Audio/Video, desc: "Music/Video"}
|
||||
- {id: 68, cat: Audio, desc: "Music/Hindi Soundtrack"}
|
||||
- {id: 70, cat: Audio, desc: "Music/Remix"}
|
||||
- {id: 71, cat: Audio, desc: "Music/Ghazal"}
|
||||
- {id: 72, cat: Audio, desc: "Music/Instrumental"}
|
||||
- {id: 105, cat: Audio, desc: "Music/Telugu"}
|
||||
- {id: 106, cat: Audio, desc: "Music/Tamil"}
|
||||
- {id: 107, cat: Audio, desc: "Music/Punjabi"}
|
||||
- {id: 108, cat: Audio, desc: "Music/Gujarati"}
|
||||
- {id: 109, cat: Audio, desc: "Music/Compilations"}
|
||||
- {id: 118, cat: Audio, desc: "Music/Kannada"}
|
||||
- {id: 126, cat: Audio, desc: "Music/Marathi"}
|
||||
- {id: 127, cat: Audio, desc: "Music/Lollywood"}
|
||||
- {id: 131, cat: Audio, desc: "Music/Classical"}
|
||||
- {id: 134, cat: Audio, desc: "Music/Desi Pop"}
|
||||
- {id: 136, cat: Audio, desc: "Music/Bengali"}
|
||||
- {id: 137, cat: Audio, desc: "Music/Malayalam"}
|
||||
# games
|
||||
- {id: 78, cat: PC/Games, desc: "Games/PC"}
|
||||
- {id: 79, cat: PC/Games, desc: "Games/Mac"}
|
||||
- {id: 80, cat: PC/Games, desc: "Games/IOS"}
|
||||
- {id: 81, cat: PC/Games, desc: "Games/Android"}
|
||||
- {id: 83, cat: PC/Games, desc: "Games/XBOX"}
|
||||
- {id: 86, cat: PC/Games, desc: "Games/Playstation"}
|
||||
# books
|
||||
- {id: 92, cat: Books/Mags, desc: "Books/Magazine"}
|
||||
- {id: 93, cat: Books/EBook, desc: "Books/Novels"}
|
||||
- {id: 95, cat: Books, desc: "Books/Newspapers"}
|
||||
- {id: 133, cat: Audio/Audiobook, desc: "Books/Audiobooks"}
|
||||
# Sport
|
||||
- {id: 114, cat: TV/Sport, desc: "Sport/WWE"}
|
||||
- {id: 115, cat: TV/Sport, desc: "Sport/Cricket"}
|
||||
- {id: 116, cat: TV/Sport, desc: "Sport/Football"}
|
||||
# XXX
|
||||
- {id: 89, cat: XXX, desc: "Adult Videos"}
|
||||
- {id: 90, cat: XXX, desc: "Adult Pics"}
|
||||
# WEB
|
||||
- {id: 135, cat: TV, desc: "Web Series"}
|
||||
# Legact
|
||||
- {id: 30, cat: Other, desc: "Legacy"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: twofa
|
||||
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 Desitorrents Web Site. Otherwise just leave it empty."
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
# while the grabs and date columns are merged due (see #9849), the time sort on the website fails with: "selected sorting wrong: time".
|
||||
# default: time
|
||||
default: relevance
|
||||
options:
|
||||
# time: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
relevance: title
|
||||
|
||||
login:
|
||||
path: login.php?from=index1
|
||||
method: post
|
||||
inputs:
|
||||
action: login
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
twofa: "{{ .Config.twofa }}"
|
||||
error:
|
||||
- selector: form#loginform:has(span.warning)
|
||||
test:
|
||||
path: ajax.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: ajax.php?action=search_torrent_cats
|
||||
method: post
|
||||
inputs:
|
||||
# replace spaces with wildcard (percent symbol) as site's default search is exact string.
|
||||
search_string: "{{ re_replace .Keywords \"[\\s]+\" \"%\" }}"
|
||||
selected_sorting: "{{ .Config.sort }}"
|
||||
selected_group: ""
|
||||
search_username: ""
|
||||
selected_sub[]: "{{ join .Categories \",\" }}"
|
||||
error:
|
||||
- selector: ":contains(\"Something was wrong with your request\")"
|
||||
preprocessingfilters:
|
||||
- name: replace
|
||||
args: ["{\"torrent_html\":\"", ""]
|
||||
- name: replace
|
||||
args: ["\\", ""]
|
||||
- name: re_replace
|
||||
args: ["\",\"paging.*", ""]
|
||||
- name: re_replace
|
||||
args: ["</th<th>", "</th><th>"] # fix for #9849
|
||||
- name: prepend
|
||||
args: "<table>"
|
||||
- name: append
|
||||
args: "</table>"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: th:first-child
|
||||
case:
|
||||
img[src*="Bollywood Movies.png"]: 47
|
||||
img[src*="Bengali Movies.png"]: 48
|
||||
img[src*="Tamil Films.png"]: 49
|
||||
img[src*="Punjabi Movies.png"]: 51
|
||||
img[src*="Marathi Movies.png"]: 52
|
||||
img[src*="Malayalam Movies.png"]: 53
|
||||
img[src*="Kannada Movies.png"]: 54
|
||||
img[src*="Gujarati Movies.png"]: 55
|
||||
img[src*="Foreign Movies.png"]: 56
|
||||
img[src*="Pakistani Movies.png"]: 57
|
||||
img[src*="Hollywood Movies.png"]: 58
|
||||
img[src*="Telugu Movies.png"]: 103
|
||||
img[src*="south-dubbed.png"]: 104
|
||||
img[src*="docmentary.png"]: 110
|
||||
img[src*="Bhojpuri Movies.png"]: 117
|
||||
img[src*="Movie Packs.png"]: 124
|
||||
img[src*="Dubbed Movies.png"]: 128
|
||||
img[src*="Animated Movies.png"]: 129
|
||||
img[src*="Short Films.png"]: 140
|
||||
img[src*="Colors TV.png"]: 59
|
||||
img[src*="Sony TV.png"]: 60
|
||||
img[src*="AndTV.png"]: 61
|
||||
img[src*="Star Plus.png"]: 62
|
||||
img[src*="Zee TV.png"]: 63
|
||||
img[src*="Life OK.png"]: 97
|
||||
img[src*="Documentaries.png"]: 98
|
||||
img[src*="sports.png"]: 101
|
||||
img[src*="Others-png.png"]: 102
|
||||
img[src*="Pak-Drama.png"]: 113
|
||||
img[src*="TV Packs.png"]: 125
|
||||
img[src*="Star Bharat.png"]: 130
|
||||
img[src*="Sab TV.png"]: 132
|
||||
img[src*="Hollywood TV.png"]: 139
|
||||
img[src*="Music Videos.png"]: 67
|
||||
img[src*="Hindi Soundtracks.png"]: 68
|
||||
img[src*="Remix Music.png"]: 70
|
||||
img[src*="Ghazal Music.png"]: 71
|
||||
img[src*="Instrumental Music.png"]: 72
|
||||
img[src*="Telugu Music.png"]: 105
|
||||
img[src*="Tamil Music.png"]: 106
|
||||
img[src*="Punjabi Music.png"]: 107
|
||||
img[src*="Gujarati Music.png"]: 108
|
||||
img[src*="Music Compilations.png"]: 109
|
||||
img[src*="Kannada Music.png"]: 118
|
||||
img[src*="Marathi Gaane.png"]: 126
|
||||
img[src*="Lollywood Music.png"]: 127
|
||||
img[src*="Classical Music.png"]: 131
|
||||
img[src*="Desi Pop Music.png"]: 134
|
||||
img[src*="Bengali Music.png"]: 136
|
||||
img[src*="Malayalam Music.png"]: 137
|
||||
img[src*="PC Games.png"]: 78
|
||||
img[src*="Mac Games.png"]: 79 # unverified
|
||||
img[src*="IOS Games.png"]: 80 # unverified
|
||||
img[src*="Android Games.png"]: 81
|
||||
img[src*="XBOX Games.png"]: 83 # unverified
|
||||
img[src*="Playstation Games.png"]: 86 # unverified
|
||||
img[src*="Magazines.png"]: 92
|
||||
img[src*="Novels.png"]: 93
|
||||
img[src*="Newspapers.png"]: 95
|
||||
img[src*="AudioBooks.png"]: 133
|
||||
img[src*="WWE.png"]: 114
|
||||
img[src*="Cricket.png"]: 115
|
||||
img[src*="Football.png"]: 116
|
||||
img[src*="Adult Videos.png"]: 89 # unverified
|
||||
img[src*="Adult Pics.png"]: 90 # unverified
|
||||
img[src*="Web Series.png"]: 135
|
||||
img[src*="no.png"]: 30
|
||||
title:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrents.php?action=download&id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Config.sitelink }}"
|
||||
size:
|
||||
selector: th:nth-child(7)
|
||||
files:
|
||||
selector: th:nth-child(8)
|
||||
seeders:
|
||||
selector: th:nth-child(9)
|
||||
leechers:
|
||||
selector: th:nth-child(10)
|
||||
grabs:
|
||||
selector: th:nth-child(11)
|
||||
date:
|
||||
selector: th:nth-child(12)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# engine n/a
|
@@ -100,8 +100,9 @@ login:
|
||||
|
||||
download:
|
||||
# download.php/673256/Talk%20Talk%20-%201986-07-05%20Paris.torrent
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -24,6 +24,7 @@ caps:
|
||||
- {id: 89, cat: Movies/HD, desc: "BDRemux"}
|
||||
- {id: 88, cat: Movies/BluRay, desc: "Full HD"}
|
||||
- {id: 90, cat: Movies/BluRay, desc: "UHD Full"}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Web-DL UHD"}
|
||||
- {id: 23, cat: TV/Sport, desc: "Deportes"}
|
||||
- {id: 20, cat: TV/HD, desc: "Series"}
|
||||
- {id: 31, cat: TV/HD, desc: "Series VOSE"}
|
||||
|
@@ -79,8 +79,9 @@ login:
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# https://dxp.ru/torrents.php?search=&sort=4&type=desc
|
||||
|
@@ -79,8 +79,9 @@ download:
|
||||
tid: "{{ .DownloadUri.Query.id }}"
|
||||
text: "{{ .Config.thankyou }}"
|
||||
submit: Opslaan
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -308,8 +308,9 @@ login:
|
||||
selector: a[href^="account-logout.php"]
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -19,8 +19,9 @@ caps:
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
download:
|
||||
selector: a[href*="/get/"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href*="/get/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
147
src/Jackett.Common/Definitions/elitetorrent-biz.yml
Normal file
147
src/Jackett.Common/Definitions/elitetorrent-biz.yml
Normal file
@@ -0,0 +1,147 @@
|
||||
---
|
||||
id: elitetorrent-biz
|
||||
name: EliteTorrent.biz
|
||||
description: "EliteTorrent.biz is a Public torrent site for TV, movies and documentaries"
|
||||
language: es-es
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://elitetorrent.com/
|
||||
legacylinks:
|
||||
- https://www.elitetorrent.biz/
|
||||
- https://www.elitetorrent.io/
|
||||
- https://www.elitetorrent.one/
|
||||
- https://www.elitetorrent.is/
|
||||
- https://www.elitetorrent.nu/
|
||||
- https://www.elitetorrent.tv/
|
||||
- https://www.elitetorrent.li/
|
||||
- https://www.elitetorrent.bz/
|
||||
- https://www.elitetorrent.nl/
|
||||
- https://wwvv.elitetorrent.nl/
|
||||
- https://wvvw.elitetorrent.nl/
|
||||
- https://vvww.elitetorrent.nl/
|
||||
- https://www.elitetorrent.to/
|
||||
- https://www.elitetorrent.se/
|
||||
- https://www.elitetorrent.com/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
"series": TV
|
||||
"peliculas": Movies
|
||||
"other": Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# site returns just 30 results, attempt to fetch upto 90
|
||||
paths:
|
||||
- path: /
|
||||
- path: /page/2/
|
||||
- path: /page/3/
|
||||
keywordsfilters:
|
||||
# most ES/ITA TV torrents are in XXxYY format, so we search without S/E prefixes and filter later
|
||||
- name: re_replace
|
||||
args: ["(?i)S0?(\\d{1,2})", " $1 "]
|
||||
- name: re_replace
|
||||
args: ["(?i)E(\\d{2,3})", " $1 "]
|
||||
inputs:
|
||||
s: "{{ .Keywords }}"
|
||||
$raw: "&x=0&y=0"
|
||||
|
||||
rows:
|
||||
selector: "#principal .miniboxs-ficha li"
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
quality:
|
||||
selector: span:nth-of-type(2) > i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["---", ""]
|
||||
language:
|
||||
selector: span#idiomacio > i > img
|
||||
attribute: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Pelicula en ", ""]
|
||||
- name: replace
|
||||
args: ["Español Latino", "LATiN SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Español Castellano", "SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Ingles", "English"]
|
||||
- name: replace
|
||||
args: ["Subtitulado", " SPASUBS"]
|
||||
- name: replace
|
||||
args: ["VOSE", ""]
|
||||
_title:
|
||||
selector: div.imagen > a
|
||||
attribute: title
|
||||
# normalize to SXXEYY format
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" – ", " "]
|
||||
- name: replace
|
||||
args: ["(", ""]
|
||||
- name: replace
|
||||
args: [")", ""]
|
||||
- name: re_replace
|
||||
args: ["(\\d{2})×(\\d{2})", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(\\d{1})×(\\d{2})", "S0$1E$2"]
|
||||
title:
|
||||
text: "{{ .Result._title}} {{ .Result.language }} {{ .Result.quality }}"
|
||||
details:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
download:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
banner:
|
||||
selector: .imagen img
|
||||
attribute: data-src
|
||||
category_movie:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(peliculas)/.*$"
|
||||
category_tv:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(series)/.*$"
|
||||
category:
|
||||
text: "{{ if or .Result.category_movie .Result.category_tv }}{{ or .Result.category_movie .Result.category_tv }}{{ else }}other{{ end }}"
|
||||
size:
|
||||
text: "0 B"
|
||||
size:
|
||||
# size can be missing
|
||||
optional: true
|
||||
selector: .voto1
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["s", ""]
|
||||
date:
|
||||
text: now
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -1,168 +0,0 @@
|
||||
---
|
||||
id: epizod
|
||||
name: Epizod
|
||||
description: "Epizod is a FRENCH Public tracker for MOVIES / TV"
|
||||
language: fr-fr
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://wwv.epizod.tv/
|
||||
legacylinks:
|
||||
- https://www.epizod.tv/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: series, cat: TV, desc: SÉRIES}
|
||||
- {id: films, cat: Movies, desc: FILMS}
|
||||
- {id: musique, cat: Audio, desc: MUSIQUE}
|
||||
- {id: albums, cat: Audio, desc: ALBUMS}
|
||||
- {id: ebook, cat: Books, desc: EBOOK}
|
||||
- {id: jeux, cat: Console, desc: GAMES}
|
||||
- {id: other, cat: Other, desc: OTHER}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
- name: flaresolverr
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
default: This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href="https://github.com/Jackett/Jackett#configuring-flaresolverr" target="_blank">FlareSolver</a> to access it.
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://www.epizod.tv/?s=
|
||||
- path: /
|
||||
inputs:
|
||||
s: "{{ .Keywords }}"
|
||||
|
||||
headers:
|
||||
# Windows User-Agent is required, Linux is blocked
|
||||
User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36"]
|
||||
|
||||
rows:
|
||||
selector: li[class^="ilovewp-post"]:not(:has(a[title="DMCA"]))
|
||||
|
||||
fields:
|
||||
category1:
|
||||
selector: a[href*="/category/"]
|
||||
attribute: href
|
||||
optional: true
|
||||
filters:
|
||||
- name: split
|
||||
args: ["/", 4]
|
||||
category2:
|
||||
selector: li[class^="ilovewp-post"]
|
||||
attribute: class
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "category-(.+?) "
|
||||
category3:
|
||||
selector: img[src*="img"]
|
||||
attribute: src
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "img/(.+?)_"
|
||||
- name: replace
|
||||
args: ["ebooks", "ebook"]
|
||||
category:
|
||||
text: "{{ if or .Result.category1 .Result.category2 .Result.category3 }}{{ or .Result.category1 .Result.category2 .Result.category3 }}{{ else }}other{{ end }}"
|
||||
sizecat:
|
||||
text: "{{ if or .Result.category1 .Result.category2 .Result.category3 }}{{ or .Result.category1 .Result.category2 .Result.category3 }}{{ else }}other{{ end }}"
|
||||
site_date:
|
||||
selector: time > a
|
||||
filters:
|
||||
# year can be at the end of the title, so we get it and name it site_date
|
||||
- name: regexp
|
||||
args: "(19|20\\d{2})$"
|
||||
title_phase1:
|
||||
selector: time > a
|
||||
attribute: title
|
||||
filters:
|
||||
# now we put the date at the right place according scene naming rules using .Result.site_date
|
||||
- name: re_replace
|
||||
args: ["(?i)( FRENCH)", " {{ .Result.site_date }} FRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( MULTI)", " {{ .Result.site_date }} MULTI"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result.site_date }} TRUEFRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result.site_date }} VOSTFR"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result.site_date }} SUBFRENCH"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: h2.title-post > a
|
||||
attribute: href
|
||||
download:
|
||||
selector: h2.title-post > a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-lazy-src]
|
||||
attribute: data-lazy-src
|
||||
date:
|
||||
selector: time
|
||||
attribute: datetime
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["T", " "]
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05-07:00"
|
||||
size:
|
||||
text: "{{ if eq .Result.sizecat \"ebook\" }}1 MB{{ else }}{{ end }}{{ if or (eq .Result.sizecat \"albums\") (eq .Result.sizecat \"musique\") }}128 MB{{ else }}{{ end }}{{ if or (eq .Result.sizecat \"series\") (eq .Result.sizecat \"other\") }}512 MB{{ else }}{{ end }}{{ if eq .Result.sizecat \"jeux\" }}1 GB{{ else }}{{ end }}{{ if eq .Result.sizecat \"films\" }}2 GB{{ else }}{{ end }}"
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine wordpress
|
@@ -1,205 +0,0 @@
|
||||
---
|
||||
id: erzsebet
|
||||
name: Erzsebet
|
||||
description: "Erzsebet is a RUSSIAN Semi-Private Torrent Tracker for 3X"
|
||||
language: ru-ru
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://erzsebet.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 9, cat: XXX, desc: "Feature, Vignettes, Classic / Фильмы с сюжетом и Классичес..."}
|
||||
- {id: 11, cat: XXX, desc: "Gonzo & All Sex / Гонзо-фильмы и Фильмы без сюжета"}
|
||||
- {id: 13, cat: XXX, desc: "All Girl & Solo / Лесбо-фильмы"}
|
||||
- {id: 12, cat: XXX, desc: "Ethnic-Themed / Этнические фильмы"}
|
||||
- {id: 176, cat: XXX, desc: "Mobile, Pocket РС & Phone / Фильмы для моби..."}
|
||||
- {id: 157, cat: XXX, desc: "Full Length Movies Packs / Паки фильмов"}
|
||||
- {id: 16, cat: XXX, desc: "Feature, Vignettes, Classic (HD) / Фильмы с сюжет..."}
|
||||
- {id: 18, cat: XXX, desc: "Gonzo & All Sex, All Girl & Solo, Ethnic-Themed..."}
|
||||
- {id: 180, cat: XXX, desc: "Full Length Movies (DVD) / Фильмы (DVD)"}
|
||||
- {id: 246, cat: XXX, desc: "Full Length Movies (Blu-Ray) / Фильмы (Blu-Ray)"}
|
||||
- {id: 48, cat: XXX, desc: "Clips (various) / Порно Разное"}
|
||||
- {id: 32, cat: XXX, desc: "SiteRip's & Movie Scenes / Сайтрипы и сцены ..."}
|
||||
- {id: 45, cat: XXX, desc: "SiteRip's & Movie Scenes (HD) / Сайтрипы и сцены..."}
|
||||
- {id: 177, cat: XXX, desc: "3D & Virtual Reality Videos (VR) / Видео в 3D и..."}
|
||||
- {id: 43, cat: XXX, desc: "Actresses Clips Packs / Паки по актрисам"}
|
||||
- {id: 39, cat: XXX, desc: "SiteRip's Packs / Паки сайтрипов"}
|
||||
- {id: 52, cat: XXX, desc: "Russian Clips (various) / Порно Разное с русскими актрисам..."}
|
||||
- {id: 53, cat: XXX, desc: "Russian SiteRip's & Movie Scenes / Сайтрип..."}
|
||||
- {id: 54, cat: XXX, desc: "Russian SiteRip's & Movie Scenes (HD) / Сайтрипы..."}
|
||||
- {id: 56, cat: XXX, desc: "Russian Full Length Movies / Русские полнометражные фильмы"}
|
||||
- {id: 50, cat: XXX, desc: "Russian Clips Packs / Паки русского и по русским актрисам"}
|
||||
- {id: 59, cat: XXX, desc: "Amateur Picture / Любительское фото"}
|
||||
- {id: 58, cat: XXX, desc: "Amateur Video & WebCams / Любительское видео"}
|
||||
- {id: 128, cat: XXX, desc: "Amateur Packs / Паки любительского"}
|
||||
- {id: 129, cat: XXX, desc: "Bukkake, Glory Hole, Cumshot Compilation, BlowGangBang ..."}
|
||||
- {id: 130, cat: XXX, desc: "Squirting & Lesbian Bukkake / Лесбо и соло сквиртинг"}
|
||||
- {id: 120, cat: XXX, desc: "Fisting, Dildo & Toys / Фистинг, фаллоимита..."}
|
||||
- {id: 131, cat: XXX, desc: "LegalPorno.com / Сайтрипы студии Legal Porno "}
|
||||
- {id: 64, cat: XXX, desc: "BDSM / БДСМ"}
|
||||
- {id: 65, cat: XXX, desc: "Fetish / Фетиш"}
|
||||
- {id: 66, cat: XXX, desc: "Peeing / Мочеиспускание"}
|
||||
- {id: 67, cat: XXX, desc: "Pregnant / Беременные"}
|
||||
- {id: 68, cat: XXX, desc: "Femdom & Strapon / Женское доминирование и страпон"}
|
||||
- {id: 71, cat: XXX, desc: "Kaviar Movies / Копрофилия"}
|
||||
- {id: 81, cat: XXX, desc: "Picture Gallery / Порнофотографии"}
|
||||
- {id: 80, cat: XXX, desc: "Misc & Special Interest Picture / Тематичес..."}
|
||||
- {id: 79, cat: XXX, desc: "Magazines, Comix & Artwork / Журналы, ком..."}
|
||||
- {id: 78, cat: XXX, desc: "Picture Packs / Паки фотографий"}
|
||||
- {id: 178, cat: XXX, desc: "Erotic Video Library / Эротические студии (видео)"}
|
||||
- {id: 85, cat: XXX, desc: "Adult Games / Порноигры"}
|
||||
- {id: 83, cat: XXX, desc: "Hentai, Manga & Cartoons / Хентай, Манга и Мультфильм..."}
|
||||
- {id: 252, cat: XXX, desc: "Chinese Porn / Китайское порно"}
|
||||
- {id: 89, cat: XXX, desc: "Japanese Porn / Японское порно"}
|
||||
- {id: 188, cat: XXX, desc: "Erotic Movies, Documentary & Reality / Эротически..."}
|
||||
- {id: 219, cat: XXX, desc: "Cinema / Зарубежный Кинематограф"}
|
||||
- {id: 218, cat: XXX, desc: "Cinema Series / Зарубежные сериалы"}
|
||||
- {id: 217, cat: XXX, desc: "Cinema (Russian) / Кинематограф СССР, России и бы..."}
|
||||
- {id: 216, cat: XXX, desc: "Russian Series / Русские сериалы"}
|
||||
- {id: 215, cat: XXX, desc: "Cartoons & Anime / Мультфильмы и Аниме"}
|
||||
- {id: 214, cat: XXX, desc: "Music (Audio) / Музыка (Аудио)"}
|
||||
- {id: 213, cat: XXX, desc: "Music (Video) / Музыка (Видео)"}
|
||||
- {id: 212, cat: XXX, desc: "Games / Игры"}
|
||||
- {id: 211, cat: XXX, desc: "Soft / Софт"}
|
||||
- {id: 251, cat: XXX, desc: "International Releases / Иностранные релизы"}
|
||||
- {id: 210, cat: XXX, desc: "Various / Разное"}
|
||||
- {id: 250, cat: XXX, desc: "Cinema (LGBT) / Кинематограф (ЛГБТ)"}
|
||||
- {id: 205, cat: XXX, desc: "Shemale Transsexual / Транссексуалы"}
|
||||
- {id: 204, cat: XXX, desc: "Bisexual / Бисексуалы"}
|
||||
- {id: 206, cat: XXX, desc: "Gay Clips & Movie Scenes / Ролики, SiteRip'ы..."}
|
||||
- {id: 208, cat: XXX, desc: "Full Length Gay Movies / Полнометражные гей-фильмы"}
|
||||
- {id: 209, cat: XXX, desc: "Gay Magazines, Photo, Rest / Гей-журналы, фото, разное"}
|
||||
- {id: 125, cat: XXX, desc: "Archive / Архив"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
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: 1
|
||||
options:
|
||||
1: created
|
||||
10: seeders
|
||||
7: size
|
||||
2: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: 2
|
||||
options:
|
||||
2: desc
|
||||
1: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="login.php"]
|
||||
inputs:
|
||||
login_username: "{{ .Config.username }}"
|
||||
login_password: "{{ .Config.password }}"
|
||||
autologin: 1
|
||||
error:
|
||||
- selector: table.error
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="./login.php?logout=1"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: tracker.php
|
||||
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"]
|
||||
inputs:
|
||||
$raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}"
|
||||
prev_allw: 1
|
||||
prev_a: 0
|
||||
prev_dla: 0
|
||||
prev_dlc: 0
|
||||
prev_dld: 0
|
||||
prev_dlw: 0
|
||||
prev_my: 0
|
||||
prev_new: 0
|
||||
prev_sd: 0
|
||||
prev_da: 1
|
||||
prev_dc: 0
|
||||
prev_df: 1
|
||||
prev_ds: 0
|
||||
prev_tor_type: 0
|
||||
o: "{{ .Config.sort }}"
|
||||
s: "{{ .Config.type }}"
|
||||
# show category
|
||||
dc: 0
|
||||
# show forum
|
||||
df: 1
|
||||
# show author
|
||||
da: 1
|
||||
# show speed
|
||||
ds: 0
|
||||
# -1=all time
|
||||
tm: -1
|
||||
# seed not seen -1=disregard
|
||||
sns: -1
|
||||
# group releases -1=not selected
|
||||
srg: -1
|
||||
# title search
|
||||
nm: "{{ .Keywords }}"
|
||||
# find a username
|
||||
pn: ""
|
||||
# search by partial word
|
||||
allw: 0
|
||||
|
||||
rows:
|
||||
selector: tr[id^="tor_"]:has(a[href^="./dl.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a.gen
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: f
|
||||
title:
|
||||
selector: a.tLink
|
||||
details:
|
||||
selector: a.tLink
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="./dl.php?id="]
|
||||
attribute: href
|
||||
magnet:
|
||||
optional: true
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(6) > u
|
||||
seeders:
|
||||
selector: td.seedmed > b
|
||||
leechers:
|
||||
selector: td.leechmed > b
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
date:
|
||||
# unix
|
||||
selector: td:last-child > u
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# TorrentPier
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
links:
|
||||
- https://www.ettvcentral.com/
|
||||
- https://ettv.unblockninja.com/
|
||||
- https://ettv.unblockit.onl/
|
||||
- https://ettv.unblockit.uno/
|
||||
- https://ettv.nocensor.space/
|
||||
legacylinks:
|
||||
- https://www.ettv.tv/
|
||||
@@ -41,6 +41,8 @@ legacylinks:
|
||||
- https://ettv.unblockit.buzz/
|
||||
- https://ettv.unblocked.monster/
|
||||
- https://ettv.unblockit.club/
|
||||
- https://ettv.unblockit.onl/
|
||||
- https://ettv.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -123,8 +125,9 @@ settings:
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
path: "{{ if .Keywords }}torrents-search.php{{ else }}torrents.php{{ end }}"
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrents.it/
|
||||
- https://extratorrent.unblockit.onl/
|
||||
- https://extratorrent.unblockit.uno/
|
||||
- https://extratorrent.nocensor.space/
|
||||
legacylinks:
|
||||
- https://extratorrent.ag/
|
||||
@@ -18,6 +18,8 @@ legacylinks:
|
||||
- https://extratorrent2.unblockninja.com/
|
||||
- https://extratorrent.unblockit.buzz/
|
||||
- https://extratorrent.unblockit.club/
|
||||
- https://extratorrent.unblockit.onl/
|
||||
- https://extratorrent.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -943,7 +945,7 @@ settings: []
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search/?search={{ .Keywords }}{{ else }}/home{{ end }}"
|
||||
- path: "{{ if .Keywords }}search/?search={{ .Keywords }}{{ else }}home{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: tr[class^="tl"]
|
||||
|
@@ -78,8 +78,9 @@ download:
|
||||
tid: "{{ .DownloadUri.Query.id }}"
|
||||
text: "{{ .Config.thankyou }}"
|
||||
submit: Opslaan
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -38,6 +38,7 @@ caps:
|
||||
- {id: "/games/switch/", cat: Console/Other, desc: "Games Switch"}
|
||||
- {id: "/games/wii/", cat: Console/Wii, desc: "Games Wii"}
|
||||
- {id: "/games/xbox360/", cat: Console/XBox 360, desc: "Games Xbox360"}
|
||||
- {id: "/games/mac/", cat: PC/Mac, desc: "Games Mac"}
|
||||
- {id: "/movies/", cat: Movies, desc: Movies}
|
||||
- {id: "/movies/3d-movies/", cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: "/movies/bollywood/", cat: Movies, desc: "Movies Bollywood"}
|
||||
@@ -48,6 +49,8 @@ caps:
|
||||
- {id: "/movies/mp4/", cat: Movies, desc: "Movies MP4"}
|
||||
- {id: "/movies/other-movies/", cat: Movies, desc: "Movies Other Movies"}
|
||||
- {id: "/movies/ultrahd/", cat: Movies/UHD, desc: "Movies UltraHD"}
|
||||
- {id: "/movies/music-videos/", cat: Audio/Video, desc: "Movies Music videos"}
|
||||
- {id: "/movies/movie-clips/", cat: Movies/Other, desc: "Movies Movie clips"}
|
||||
- {id: "/music/", cat: Audio, desc: Music}
|
||||
- {id: "/music/aac/", cat: Audio, desc: "Music AAC"}
|
||||
- {id: "/music/lossless/", cat: Audio/Lossless, desc: "Music Lossless"}
|
||||
@@ -93,8 +96,9 @@ settings:
|
||||
default: This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href="https://github.com/Jackett/Jackett#configuring-flaresolverr" target="_blank">FlareSolver</a> to access it.
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -12,7 +12,7 @@ links:
|
||||
- https://eztv.tf/
|
||||
- https://eztv.yt/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.onl/
|
||||
- https://eztv.unblockit.uno/
|
||||
- https://eztv.nocensor.space/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
@@ -44,6 +44,8 @@ legacylinks:
|
||||
- https://eztv.unblockit.buzz/
|
||||
- https://eztv.unblocked.monster/
|
||||
- https://eztv.unblockit.club/
|
||||
- https://eztv.unblockit.onl/
|
||||
- https://eztv.unblockit.li/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -74,8 +74,9 @@ download:
|
||||
tid: "{{ .DownloadUri.Query.id }}"
|
||||
text: "{{ .Config.thankyou }}"
|
||||
submit: Opslaan
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -96,8 +96,9 @@ login:
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -57,8 +57,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a[href^="/download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="/download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# http://firebit.net/index.php?do=search&type=simple&q=2019
|
||||
|
@@ -1,289 +0,0 @@
|
||||
---
|
||||
id: focusx
|
||||
name: FocusX
|
||||
description: "FocusX is a RUSSIAN Public torrent site for MOVIES and TV"
|
||||
language: ru-ru
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://focu.sx/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 9, cat: TV, desc: "Иерихон"}
|
||||
- {id: 10, cat: Movies, desc: "Мёд в голове"}
|
||||
- {id: 11, cat: TV, desc: "11-22-63"}
|
||||
- {id: 12, cat: TV, desc: "Апокалипсис: Первая мировая война"}
|
||||
- {id: 13, cat: TV, desc: "Смерть в раю"}
|
||||
- {id: 14, cat: TV, desc: "Джереми Кларксон: Военные истории"}
|
||||
- {id: 15, cat: TV, desc: "Чёрные паруса"}
|
||||
- {id: 16, cat: Movies, desc: "Малыш"}
|
||||
- {id: 17, cat: TV, desc: "Карточный домик"}
|
||||
- {id: 18, cat: Movies, desc: "Копенгаген"}
|
||||
- {id: 19, cat: Movies, desc: "Заброшенный"}
|
||||
- {id: 37, cat: TV, desc: "Джек Айриш"}
|
||||
- {id: 38, cat: Movies, desc: "Звёздные войны: Эпизод 7 Пробуждение силы"}
|
||||
- {id: 39, cat: TV, desc: "Чужестранка"}
|
||||
- {id: 40, cat: TV, desc: "Девушка по вызову"}
|
||||
- {id: 41, cat: TV, desc: "Джереми Кларксон: Триллер"}
|
||||
- {id: 42, cat: Movies, desc: "В лабиринте молчания"}
|
||||
- {id: 43, cat: TV, desc: "Игра престолов"}
|
||||
- {id: 44, cat: Movies, desc: "Женщина в золотом"}
|
||||
- {id: 45, cat: Movies, desc: "Падение Лондона"}
|
||||
- {id: 46, cat: Movies, desc: "Высотка"}
|
||||
- {id: 47, cat: TV, desc: "Острые козырьки"}
|
||||
- {id: 48, cat: TV, desc: "Странная парочка"}
|
||||
- {id: 49, cat: Movies, desc: "Капитан Америка: Гражданская война"}
|
||||
- {id: 50, cat: Movies, desc: "Рыцарь кубков"}
|
||||
- {id: 51, cat: TV, desc: "Проповедник"}
|
||||
- {id: 52, cat: TV, desc: "Изгой"}
|
||||
- {id: 53, cat: TV, desc: "Рэй Донован"}
|
||||
- {id: 55, cat: TV, desc: "Оранжевый - хит сезона"}
|
||||
- {id: 56, cat: TV, desc: "Бесстыдники"}
|
||||
- {id: 57, cat: Movies, desc: "Портниха"}
|
||||
- {id: 58, cat: TV, desc: "Мистер Робот"}
|
||||
- {id: 59, cat: TV, desc: "Валландер"}
|
||||
- {id: 60, cat: Movies, desc: "Бэтмен против Супермена: На заре справедливости"}
|
||||
- {id: 61, cat: Movies, desc: "Комета"}
|
||||
- {id: 62, cat: TV, desc: "Штамм"}
|
||||
- {id: 63, cat: TV, desc: "Куорри"}
|
||||
- {id: 64, cat: Movies, desc: "Зоотопия"}
|
||||
- {id: 65, cat: Movies, desc: "В твоих глазах"}
|
||||
- {id: 66, cat: Movies, desc: "Люди Икс: Апокалипсис"}
|
||||
- {id: 67, cat: Movies, desc: "Потерянный Валентин"}
|
||||
- {id: 68, cat: TV, desc: "Бесстыжие"}
|
||||
- {id: 69, cat: TV, desc: "Нарко"}
|
||||
- {id: 70, cat: Movies, desc: "Припаркованные"}
|
||||
- {id: 71, cat: Movies, desc: "Легенда о Тарзане"}
|
||||
- {id: 72, cat: Movies, desc: "Пока я не исчезну"}
|
||||
- {id: 73, cat: Movies, desc: "Механик: Воскрешение"}
|
||||
- {id: 74, cat: Movies, desc: "Варкрафт"}
|
||||
- {id: 75, cat: TV, desc: "Все схвачено"}
|
||||
- {id: 76, cat: Movies, desc: "Гнилые кварталы"}
|
||||
- {id: 77, cat: TV, desc: "Граница"}
|
||||
- {id: 79, cat: TV, desc: "Бош"}
|
||||
- {id: 80, cat: Movies, desc: "Приятные вибрации"}
|
||||
- {id: 81, cat: TV, desc: "Викинги"}
|
||||
- {id: 82, cat: TV, desc: "Салем"}
|
||||
- {id: 83, cat: Movies, desc: "Возмущение"}
|
||||
- {id: 84, cat: Movies, desc: "Трейнспоттинг (На игле)"}
|
||||
- {id: 85, cat: Movies, desc: "Тысячу раз 'спокойной ночи'"}
|
||||
- {id: 86, cat: TV, desc: "Кровавая Гонка"}
|
||||
- {id: 87, cat: TV, desc: "Сеньор Авила"}
|
||||
- {id: 88, cat: TV, desc: "Стрелок"}
|
||||
- {id: 89, cat: TV, desc: "Миднайт Техас"}
|
||||
- {id: 90, cat: Movies, desc: "Дангал"}
|
||||
- {id: 91, cat: TV, desc: "Утиные Истории"}
|
||||
- {id: 96, cat: TV, desc: "Двойка"}
|
||||
- {id: 97, cat: TV, desc: "Тик-герой"}
|
||||
- {id: 100, cat: TV, desc: "Смертельное оружие"}
|
||||
- {id: 101, cat: TV, desc: "Гавайи 5-0"}
|
||||
- {id: 102, cat: TV, desc: "Черный Список"}
|
||||
- {id: 106, cat: TV, desc: "Одаренные"}
|
||||
- {id: 107, cat: TV, desc: "Теория большого взрыва"}
|
||||
- {id: 108, cat: TV, desc: "Ходячие мертвецы"}
|
||||
- {id: 109, cat: TV, desc: "Хроники Шаннары"}
|
||||
- {id: 110, cat: TV, desc: "Порох"}
|
||||
- {id: 111, cat: Movies, desc: "1922"}
|
||||
- {id: 112, cat: TV, desc: "Субура"}
|
||||
- {id: 115, cat: TV, desc: "Безбожники"}
|
||||
- {id: 116, cat: TV, desc: "Секретные Материалы"}
|
||||
- {id: 118, cat: TV, desc: "Охотник за разумом"}
|
||||
- {id: 119, cat: TV, desc: "Алиенист"}
|
||||
- {id: 120, cat: TV, desc: "Ординатор"}
|
||||
- {id: 121, cat: TV, desc: "Уэйко"}
|
||||
- {id: 122, cat: TV, desc: "Американская история преступлений"}
|
||||
- {id: 124, cat: TV, desc: "Бельвью"}
|
||||
- {id: 126, cat: TV, desc: "Видоизменённый углерод"}
|
||||
- {id: 128, cat: TV, desc: "Здесь и Сейчас"}
|
||||
- {id: 129, cat: TV, desc: "Взлет"}
|
||||
- {id: 130, cat: TV, desc: "Инстинкт"}
|
||||
- {id: 131, cat: TV, desc: "Стартап"}
|
||||
- {id: 133, cat: TV, desc: "Террор"}
|
||||
- {id: 135, cat: Movies, desc: "Анон"}
|
||||
- {id: 136, cat: TV, desc: "Мир Дикого Запада"}
|
||||
- {id: 138, cat: TV, desc: "В пустыне смерти"}
|
||||
- {id: 139, cat: TV, desc: "Дождь"}
|
||||
- {id: 140, cat: TV, desc: "Страйк"}
|
||||
- {id: 141, cat: TV, desc: "Безопасность"}
|
||||
- {id: 143, cat: TV, desc: "Подлый пит"}
|
||||
- {id: 144, cat: TV, desc: "Голиаф"}
|
||||
- {id: 146, cat: TV, desc: "Весьма Английский Скандал"}
|
||||
- {id: 147, cat: TV, desc: "Королева Сахара"}
|
||||
- {id: 155, cat: TV, desc: "Наследники"}
|
||||
- {id: 156, cat: TV, desc: "Джек Райан"}
|
||||
- {id: 158, cat: TV, desc: "Леденящие кровь приключения Сабрины"}
|
||||
- {id: 161, cat: TV, desc: "Частные сыщики"}
|
||||
- {id: 162, cat: TV, desc: "Изнанка дела"}
|
||||
- {id: 163, cat: TV, desc: "Наркос: Мексика"}
|
||||
- {id: 164, cat: TV, desc: "Возвращение домой"}
|
||||
- {id: 165, cat: TV, desc: "Метод Комински"}
|
||||
- {id: 166, cat: TV, desc: "Элита"}
|
||||
- {id: 167, cat: TV, desc: "Грязный Джон"}
|
||||
- {id: 168, cat: Movies, desc: "Воспитательница"}
|
||||
- {id: 169, cat: TV, desc: "Романовы"}
|
||||
- {id: 170, cat: TV, desc: "Страна приливов"}
|
||||
- {id: 171, cat: TV, desc: "Тюрьма Оз"}
|
||||
- {id: 172, cat: TV, desc: "Смертельный класс"}
|
||||
- {id: 173, cat: TV, desc: "Парфюм"}
|
||||
- {id: 174, cat: TV, desc: "Цветочный дом"}
|
||||
- {id: 175, cat: TV, desc: "Каратель"}
|
||||
- {id: 176, cat: TV, desc: "Матрёшка"}
|
||||
- {id: 177, cat: TV, desc: "Берлинская резидентура"}
|
||||
- {id: 179, cat: TV, desc: "Половое Просвещение"}
|
||||
- {id: 180, cat: TV, desc: "АКАДЕМИЯ АМБРЕЛЛА"}
|
||||
- {id: 181, cat: TV, desc: "Сорвиголова"}
|
||||
- {id: 182, cat: TV, desc: "Мистер Посредник"}
|
||||
- {id: 183, cat: TV, desc: "Футурама"}
|
||||
- {id: 184, cat: TV, desc: "Доктор Блейк"}
|
||||
- {id: 185, cat: TV, desc: "Стальная Звезда"}
|
||||
- {id: 186, cat: TV, desc: "Изгнание"}
|
||||
- {id: 187, cat: TV, desc: "Крупный Город"}
|
||||
- {id: 189, cat: Movies, desc: "Дедвуд"}
|
||||
- {id: 190, cat: TV, desc: "Кобра Кай"}
|
||||
- {id: 191, cat: TV, desc: "Студия 60 на Сансет Стрип"}
|
||||
- {id: 193, cat: Movies, desc: "Та, которой не было"}
|
||||
- {id: 197, cat: TV, desc: "Западное крыло"}
|
||||
- {id: 199, cat: TV, desc: "Семь миров, одна планета"}
|
||||
- {id: 200, cat: Movies, desc: "Основные принципы ухода"}
|
||||
- {id: 201, cat: Movies, desc: "Быстрая, как ветер"}
|
||||
- {id: 202, cat: Movies, desc: "Визит инспектора"}
|
||||
- {id: 203, cat: TV, desc: "Книга Рабов"}
|
||||
- {id: 204, cat: TV, desc: "Ведьмак"}
|
||||
- {id: 205, cat: TV, desc: "Из Ларк Райз в Кэндлфорд"}
|
||||
- {id: 206, cat: Movies, desc: "Брачная история"}
|
||||
- {id: 207, cat: Movies, desc: "Кафе Голубая сойка"}
|
||||
- {id: 208, cat: Movies, desc: "Наши души по ночам"}
|
||||
- {id: 213, cat: Movies, desc: "Борат 2"}
|
||||
- {id: 222, cat: Movies, desc: "Траффик"}
|
||||
- {id: 223, cat: Movies, desc: "На колёсах"}
|
||||
- {id: 224, cat: Movies, desc: "Чудо в камере №7"}
|
||||
- {id: 227, cat: Movies, desc: "Сначала убили моего отца"}
|
||||
- {id: 228, cat: Movies, desc: "Айла: Дочь войны"}
|
||||
- {id: 229, cat: TV, desc: "Танцы с птицами"}
|
||||
- {id: 230, cat: TV, desc: "Жизнь в цвете"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- 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
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://focu.sx/tracker/search?freeleech=0&query=daredevil
|
||||
- path: "tracker/{{ if .Keywords }}search?freeleech=0&query={{ .Keywords }}&{{ else }}?{{ end }}order={{ .Config.sort }}&direction={{ .Config.type }}"
|
||||
followredirect: true
|
||||
|
||||
rows:
|
||||
selector: ol.torrentListItems li.torrentListItem
|
||||
|
||||
fields:
|
||||
title:
|
||||
selector: h3.title a
|
||||
details:
|
||||
selector: h3.title a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Config.sitelink }}"
|
||||
category:
|
||||
selector: div.torrentCategory a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category_id
|
||||
download:
|
||||
selector: div.download a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Config.sitelink }}"
|
||||
magnet:
|
||||
selector: div.download a[href^="magnet:?"]
|
||||
attribute: href
|
||||
date:
|
||||
# unix
|
||||
selector: abbr.DateTime
|
||||
optional: true
|
||||
attribute: data-time
|
||||
date:
|
||||
selector: span.DateTime
|
||||
optional: true
|
||||
attribute: title
|
||||
# 7 мар 2019 в 21:06
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" в ", " "]
|
||||
- name: replace
|
||||
args: ["янв", "Jan"]
|
||||
- name: replace
|
||||
args: ["фев", "Feb"]
|
||||
- name: replace
|
||||
args: ["мар", "Mar"]
|
||||
- name: replace
|
||||
args: ["апр", "Apr"]
|
||||
- name: replace
|
||||
args: ["май", "May"]
|
||||
- name: replace
|
||||
args: ["июн", "Jun"]
|
||||
- name: replace
|
||||
args: ["июл", "Jul"]
|
||||
- name: replace
|
||||
args: ["авг", "Aug"]
|
||||
- name: replace
|
||||
args: ["сен", "Sep"]
|
||||
- name: replace
|
||||
args: ["окт", "Oct"]
|
||||
- name: replace
|
||||
args: ["ноя", "Nov"]
|
||||
- name: replace
|
||||
args: ["дек", "Dec"]
|
||||
- name: append
|
||||
args: " +03:00" # MSK
|
||||
- name: dateparse
|
||||
args: "2 Jan 2006 15:04 -07:00"
|
||||
size:
|
||||
selector: div.size
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", ""]
|
||||
- name: replace
|
||||
args: [",", "."]
|
||||
- name: replace
|
||||
args: ["ТБ", "TB"]
|
||||
- name: replace
|
||||
args: ["ГБ", "GB"]
|
||||
- name: replace
|
||||
args: ["МБ", "MB"]
|
||||
- name: replace
|
||||
args: ["КБ", "KB"]
|
||||
grabs:
|
||||
selector: div.snatched
|
||||
seeders:
|
||||
selector: div.seeders
|
||||
leechers:
|
||||
selector: div.leechers
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
span.freeleech: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -11,16 +11,6 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
# when refreshing categories dont forget to update the category case block
|
||||
- {id: 94, cat: TV/Sport, desc: "sport catch"}
|
||||
- {id: 93, cat: TV/Sport, desc: "sport catch"}
|
||||
- {id: 96, cat: TV/Sport, desc: "sport sport"}
|
||||
- {id: 97, cat: TV/Sport, desc: "sport divers"}
|
||||
- {id: 81, cat: TV/Anime, desc: "Animation Séries"}
|
||||
- {id: 79, cat: Movies/HD, desc: "Animation Film"}
|
||||
- {id: 65, cat: TV/Documentary, desc: "Documentaires Divers"}
|
||||
- {id: 66, cat: TV/Documentary, desc: "Documentaires audio"}
|
||||
- {id: 74, cat: Books/EBook, desc: "Documentaires Ebook"}
|
||||
- {id: 75, cat: Audio/Audiobook, desc: "Documentaires Ebook audio"}
|
||||
- {id: 2, cat: Movies/DVD, desc: "Film DVDRip"}
|
||||
- {id: 99, cat: Movies/HD, desc: "Film Hdrip"}
|
||||
- {id: 98, cat: Movies/WEB-DL, desc: "Film Webrip"}
|
||||
@@ -28,11 +18,10 @@ caps:
|
||||
- {id: 87, cat: Movies/HD, desc: "Film REMUX"}
|
||||
- {id: 70, cat: Movies/BluRay, desc: "Film BRRiP - BDRiP"}
|
||||
- {id: 69, cat: Movies/DVD, desc: "Film DVD-r"}
|
||||
- {id: 67, cat: Movies/Other, desc: "Film Vob"}
|
||||
- {id: 67, cat: Movies/3D, desc: "Film 3D Bluray"}
|
||||
- {id: 59, cat: Movies/Other, desc: "Film Divers"}
|
||||
- {id: 19, cat: Movies/HD, desc: "Film 720P"}
|
||||
- {id: 17, cat: Movies/Other, desc: "Film Iso"}
|
||||
- {id: 16, cat: Movies/WEB-DL, desc: "Film Webrip - HDrip"}
|
||||
- {id: 15, cat: Movies/BluRay, desc: "Film Bluray Full"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Film 1080P"}
|
||||
- {id: 102, cat: Movies/UHD, desc: "Film HDR"}
|
||||
@@ -51,19 +40,34 @@ caps:
|
||||
- {id: 63, cat: TV/Other, desc: "Pack_Series Divers"}
|
||||
- {id: 71, cat: TV/HD, desc: "Pack_Series BRRiP - BDRiP"}
|
||||
- {id: 82, cat: TV/Anime, desc: "Pack_Series Animation"}
|
||||
- {id: 10, cat: XXX, desc: "XxX 18 Film"}
|
||||
- {id: 112, cat: TV/HD, desc: "Pack_Series HDTV"}
|
||||
- {id: 105, cat: Books/Mags, desc: "Livres Magazine"}
|
||||
- {id: 116, cat: Books, desc: "Livres Cuisine"}
|
||||
- {id: 123, cat: Books, desc: "Livres Roman"}
|
||||
- {id: 113, cat: Books/EBook, desc: "Livres Ebook"}
|
||||
- {id: 106, cat: Books, desc: "Livres Presse"}
|
||||
- {id: 108, cat: Books/Comics, desc: "Livres Manga"}
|
||||
- {id: 110, cat: Audio/Audiobook, desc: "Livres Audio"}
|
||||
- {id: 109, cat: Books/Comics, desc: "Livres Bd"}
|
||||
- {id: 125, cat: XXX/Other, desc: "livres XXX"}
|
||||
- {id: 65, cat: TV/Documentary, desc: "Documentaires Divers"}
|
||||
- {id: 13, cat: PC/0day, desc: "Apps Win"}
|
||||
- {id: 14, cat: PC/Mac, desc: "Apps Mac"}
|
||||
- {id: 52, cat: PC/Mobile-iOS, desc: "Apps Iphone"}
|
||||
- {id: 53, cat: PC/Mobile-Android, desc: "Apps android"}
|
||||
- {id: 81, cat: TV/Anime, desc: "Animation Séries"}
|
||||
- {id: 79, cat: Movies/HD, desc: "Animation Film"}
|
||||
- {id: 5, cat: Audio/MP3, desc: "Music Mp3"}
|
||||
- {id: 6, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 97, cat: TV/Sport, desc: "Sport Divers"}
|
||||
- {id: 96, cat: TV/Sport, desc: "Sport Sport"}
|
||||
- {id: 7, cat: PC/Games, desc: "Jeux Win"}
|
||||
- {id: 8, cat: Console/PS3, desc: "Jeux PS3"}
|
||||
- {id: 54, cat: PC/Games, desc: "Jeux Pc"}
|
||||
- {id: 55, cat: Console/PS4, desc: "Jeux PS4"}
|
||||
- {id: 56, cat: Console/XBox 360, desc: "Jeux XBOX 360"}
|
||||
- {id: 57, cat: Console/Other, desc: "Jeux androïd"}
|
||||
- {id: 10, cat: XXX, desc: "XxX 18 Film"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -161,16 +165,6 @@ search:
|
||||
selector: div.kat_cat_pic
|
||||
filters:
|
||||
case:
|
||||
":contains(\"sport\"):contains(\"catch\")": 94
|
||||
":contains(\"sport\"):contains(\"catch\")": 93
|
||||
":contains(\"sport\"):contains(\"sport\")": 96
|
||||
":contains(\"sport\"):contains(\"divers\")": 97
|
||||
":contains(\"Animation\"):contains(\"Séries\")": 81
|
||||
":contains(\"Animation\"):contains(\"Film\")": 79
|
||||
":contains(\"Documentaires\"):contains(\"Divers\")": 65
|
||||
":contains(\"Documentaires\"):contains(\"audio\")": 66
|
||||
":contains(\"Documentaires\"):contains(\"Ebook\")": 74
|
||||
":contains(\"Documentaires\"):contains(\"Ebook audio\")": 75
|
||||
":contains(\"Film\"):contains(\"DVDRip\")": 2
|
||||
":contains(\"Film\"):contains(\"Hdrip\")": 99
|
||||
":contains(\"Film\"):contains(\"Webrip\")": 98
|
||||
@@ -178,12 +172,11 @@ search:
|
||||
":contains(\"Film\"):contains(\"REMUX\")": 87
|
||||
":contains(\"Film\"):contains(\"BRRiP - BDRiP\")": 70
|
||||
":contains(\"Film\"):contains(\"DVD-r\")": 69
|
||||
":contains(\"Film\"):contains(\"Vob\")": 67
|
||||
":contains(\"Film\"):contains(\"3D\")": 67
|
||||
":contains(\"Film\"):contains(\"Divers\")": 59
|
||||
":contains(\"Film\"):contains(\"720P\")": 19
|
||||
":contains(\"Film\"):contains(\"Iso\")": 17
|
||||
":contains(\"Film\"):contains(\"Webrip\")": 16
|
||||
":contains(\"Film\"):contains(\"Bluray\")": 15
|
||||
":contains(\"Film\"):contains(\"Full\")": 15
|
||||
":contains(\"Film\"):contains(\"1080P\")": 4
|
||||
":contains(\"Film\"):contains(\"HDR\")": 102
|
||||
":contains(\"Serie\"):contains(\"1080P\")": 46
|
||||
@@ -201,19 +194,34 @@ search:
|
||||
":contains(\"Pack_Series\"):contains(\"Divers\")": 63
|
||||
":contains(\"Pack_Series\"):contains(\"BRRiP - BDRiP\")": 71
|
||||
":contains(\"Pack_Series\"):contains(\"Animation\")": 82
|
||||
":contains(\"XxX\"):contains(\"Film\")": 10
|
||||
":contains(\"Pack_Series\"):contains(\"HDTV\")": 112
|
||||
":contains(\"Livres\"):contains(\"Magazine\")": 105
|
||||
":contains(\"Livres\"):contains(\"Cuisine\")": 116
|
||||
":contains(\"Livres\"):contains(\"Roman\")": 123
|
||||
":contains(\"Livres\"):contains(\"Ebook\")": 113
|
||||
":contains(\"Livres\"):contains(\"Presse\")": 106
|
||||
":contains(\"Livres\"):contains(\"Manga\")": 108
|
||||
":contains(\"Livres\"):contains(\"Audio\")": 110
|
||||
":contains(\"Livres\"):contains(\"Bd\")": 109
|
||||
":contains(\"Livres\"):contains(\"XXX\")": 125
|
||||
":contains(\"Documentaires\"):contains(\"Divers\")": 65
|
||||
":contains(\"Apps\"):contains(\"Win\")": 13
|
||||
":contains(\"Apps\"):contains(\"Mac\")": 14
|
||||
":contains(\"Apps\"):contains(\"Iphone\")": 52
|
||||
":contains(\"Apps\"):contains(\"android\")": 53
|
||||
":contains(\"Animation\"):contains(\"Séries\")": 81
|
||||
":contains(\"Animation\"):contains(\"Film\")": 79
|
||||
":contains(\"Music\"):contains(\"Mp3\")": 5
|
||||
":contains(\"Music\"):contains(\"FLAC\")": 6
|
||||
":contains(\"Sport\"):contains(\"Divers\")": 97
|
||||
":contains(\"Sport\"):contains(\"Sport\")": 96
|
||||
":contains(\"Jeux\"):contains(\"Win\")": 7
|
||||
":contains(\"Jeux\"):contains(\"PS3\")": 8
|
||||
":contains(\"Jeux\"):contains(\"Pc\")": 54
|
||||
":contains(\"Jeux\"):contains(\"PS4\")": 55
|
||||
":contains(\"Jeux\"):contains(\"XBOX 360\")": 56
|
||||
":contains(\"Jeux\"):contains(\"androïd\")": 57
|
||||
":contains(\"XxX\"):contains(\"Film\")": 10
|
||||
title_phase1:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_multilang:
|
||||
|
@@ -1,367 +0,0 @@
|
||||
---
|
||||
id: galeriens
|
||||
name: Galeriens
|
||||
description: "Galeriens is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: fr-fr
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://galeriens.com/
|
||||
legacylinks:
|
||||
- https://galeriens.eu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 4, cat: Movies/UHD, desc: "Animations - 4K Remux"}
|
||||
- {id: 1, cat: Movies/3D, desc: "Animations - 3D"}
|
||||
- {id: 3, cat: Movies/UHD, desc: "Animations - 4K Light"}
|
||||
- {id: 2, cat: Movies/UHD, desc: "Animations - 4K UHD"}
|
||||
- {id: 5, cat: Movies/UHD, desc: "Animations - 4K UHD Bluray"}
|
||||
- {id: 6, cat: Movies/BluRay, desc: "Animations - BDRip-BRRIP"}
|
||||
- {id: 7, cat: Movies/BluRay, desc: "Animations - BluRay-R"}
|
||||
- {id: 8, cat: Movies, desc: "Animations - Coffret Films"}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Animations - DVD-R"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "Animations - DVDRip"}
|
||||
- {id: 11, cat: Movies/HD, desc: "Animations - HD 1080P"}
|
||||
- {id: 12, cat: Movies/HD, desc: "Animations - HD 720P"}
|
||||
- {id: 13, cat: Movies/HD, desc: "Animations - HDRiP"}
|
||||
- {id: 16, cat: Movies/HD, desc: "Animations - HDTV"}
|
||||
- {id: 14, cat: Movies/HD, desc: "Animations - HDTV 1080p"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Animations - HDTV 720p"}
|
||||
- {id: 17, cat: Movies, desc: "Animations - Jap-Animation"}
|
||||
- {id: 18, cat: Movies/HD, desc: "Animations - M-HD 1080p"}
|
||||
- {id: 19, cat: Movies/HD, desc: "Animations - M-HD 720p"}
|
||||
- {id: 20, cat: Movies, desc: "Animations - Remux"}
|
||||
- {id: 21, cat: Movies/WEB-DL, desc: "Animations - TVRip"}
|
||||
- {id: 24, cat: Movies/WEB-DL, desc: "Animations - WEB-DL"}
|
||||
- {id: 22, cat: Movies/WEB-DL, desc: "Animations - WEB-DL 1080p"}
|
||||
- {id: 23, cat: Movies/WEB-DL, desc: "Animations - WEB-DL 720p"}
|
||||
- {id: 25, cat: Movies/WEB-DL, desc: "Animations - WEBRip"}
|
||||
- {id: 26, cat: Movies/HD, desc: "Animations - X265"}
|
||||
- {id: 49, cat: TV/Documentary, desc: "Documentaires - Doc-Spectacle"}
|
||||
- {id: 48, cat: TV/Documentary, desc: "Documentaires - Emission TV"}
|
||||
- {id: 51, cat: TV/Documentary, desc: "Documentaires - Film"}
|
||||
- {id: 50, cat: TV/Sport, desc: "Documentaires - Sport"}
|
||||
- {id: 57, cat: Movies/3D, desc: "Films - 3D"}
|
||||
- {id: 59, cat: Movies/UHD, desc: "Films - 4K Light"}
|
||||
- {id: 60, cat: Movies/UHD, desc: "Films - 4K Remux"}
|
||||
- {id: 61, cat: Movies/UHD, desc: "Films - 4K UHD"}
|
||||
- {id: 58, cat: Movies/UHD, desc: "Films - 4K UHD Bluray"}
|
||||
- {id: 62, cat: Movies/BluRay, desc: "Films - BDRip-BRRIP"}
|
||||
- {id: 63, cat: Movies/BluRay, desc: "Films - BluRay-R"}
|
||||
- {id: 64, cat: Movies, desc: "Films - Coffret Films"}
|
||||
- {id: 65, cat: Movies/DVD, desc: "Films - DVD-R"}
|
||||
- {id: 66, cat: Movies/DVD, desc: "Films - DVDRip"}
|
||||
- {id: 67, cat: Movies/HD, desc: "Films - HD 1080P"}
|
||||
- {id: 68, cat: Movies/HD, desc: "Films - HD 720P"}
|
||||
- {id: 69, cat: Movies/HD, desc: "Films - HDRiP"}
|
||||
- {id: 72, cat: Movies/HD, desc: "Films - HDTV"}
|
||||
- {id: 70, cat: Movies/HD, desc: "Films - HDTV 1080p"}
|
||||
- {id: 71, cat: Movies/HD, desc: "Films - HDTV 720p"}
|
||||
- {id: 73, cat: Movies/HD, desc: "Films - M-HD 1080p"}
|
||||
- {id: 74, cat: Movies/HD, desc: "Films - M-HD 720p"}
|
||||
- {id: 75, cat: Movies, desc: "Films - Remux"}
|
||||
- {id: 76, cat: Movies/WEB-DL, desc: "Films - TVRip"}
|
||||
- {id: 77, cat: Movies/WEB-DL, desc: "Films - WEB-DL"}
|
||||
- {id: 78, cat: Movies/WEB-DL, desc: "Films - WEB-DL 1080p"}
|
||||
- {id: 79, cat: Movies/WEB-DL, desc: "Films - WEB-DL 720p"}
|
||||
- {id: 80, cat: Movies/WEB-DL, desc: "Films - WEBRip"}
|
||||
- {id: 81, cat: Movies/HD, desc: "Films - X265"}
|
||||
- {id: 82, cat: Movies/3D, desc: "Films-VOSTFR - 3D"}
|
||||
- {id: 84, cat: Movies/UHD, desc: "Films-VOSTFR - 4K Light"}
|
||||
- {id: 85, cat: Movies/UHD, desc: "Films-VOSTFR - 4K Remux"}
|
||||
- {id: 86, cat: Movies/UHD, desc: "Films-VOSTFR - 4K UHD"}
|
||||
- {id: 83, cat: Movies/UHD, desc: "Films-VOSTFR - 4K UHD Bluray"}
|
||||
- {id: 87, cat: Movies/BluRay, desc: "Films-VOSTFR - BDRip-BRRIP"}
|
||||
- {id: 88, cat: Movies/BluRay, desc: "Films-VOSTFR - BluRay-R"}
|
||||
- {id: 89, cat: Movies, desc: "Films-VOSTFR - Coffret Films"}
|
||||
- {id: 90, cat: Movies/DVD, desc: "Films-VOSTFR - DVD-R"}
|
||||
- {id: 91, cat: Movies/DVD, desc: "Films-VOSTFR - DVDRip"}
|
||||
- {id: 92, cat: Movies/HD, desc: "Films-VOSTFR - HD 1080P"}
|
||||
- {id: 93, cat: Movies/HD, desc: "Films-VOSTFR - HD 720P"}
|
||||
- {id: 94, cat: Movies/HD, desc: "Films-VOSTFR - HDRiP"}
|
||||
- {id: 97, cat: Movies/HD, desc: "Films-VOSTFR - HDTV"}
|
||||
- {id: 95, cat: Movies/HD, desc: "Films-VOSTFR - HDTV 1080p"}
|
||||
- {id: 96, cat: Movies/HD, desc: "Films-VOSTFR - HDTV 720p"}
|
||||
- {id: 98, cat: Movies/HD, desc: "Films-VOSTFR - M-HD 1080p"}
|
||||
- {id: 99, cat: Movies/HD, desc: "Films-VOSTFR - M-HD 720p"}
|
||||
- {id: 100, cat: Movies, desc: "Films-VOSTFR - Remux"}
|
||||
- {id: 101, cat: Movies/WEB-DL, desc: "Films-VOSTFR - TVRip"}
|
||||
- {id: 102, cat: Movies/WEB-DL, desc: "Films-VOSTFR - WEB-DL"}
|
||||
- {id: 103, cat: Movies/WEB-DL, desc: "Films-VOSTFR - WEB-DL 1080p"}
|
||||
- {id: 104, cat: Movies/WEB-DL, desc: "Films-VOSTFR - WEB-DL 720p"}
|
||||
- {id: 105, cat: Movies/WEB-DL, desc: "Films-VOSTFR - WEBRip"}
|
||||
- {id: 106, cat: Movies/HD, desc: "Films-VOSTFR - X265"}
|
||||
- {id: 107, cat: Console/3DS, desc: "Jeux - 3DS-DS"}
|
||||
- {id: 108, cat: PC/Mobile-iOS, desc: "Jeux - IOS-OSX"}
|
||||
- {id: 109, cat: PC/Games, desc: "Jeux - PC"}
|
||||
- {id: 110, cat: Console/PS3, desc: "Jeux - PS3 - PS4"}
|
||||
- {id: 111, cat: Console/PSP, desc: "Jeux - PSP-PSX"}
|
||||
- {id: 112, cat: Console/Wii, desc: "Jeux - WII"}
|
||||
- {id: 113, cat: Console/WiiU, desc: "Jeux - WII-U"}
|
||||
- {id: 114, cat: Console/XBox, desc: "Jeux - XBOX"}
|
||||
- {id: 52, cat: Books, desc: "Livres - BD"}
|
||||
- {id: 56, cat: Audio/Audiobook, desc: "Livres - Livres Audio"}
|
||||
- {id: 55, cat: Books/Comics, desc: "Livres - Mangas"}
|
||||
- {id: 54, cat: Books/Mags, desc: "Livres - Press"}
|
||||
- {id: 53, cat: Books/EBook, desc: "Livres - Romans"}
|
||||
- {id: 115, cat: PC/Mobile-Android, desc: "Logiciels - ANDROID"}
|
||||
- {id: 118, cat: PC/Mac, desc: "Logiciels - APPLE"}
|
||||
- {id: 116, cat: PC/Mobile-iOS, desc: "Logiciels - IPHONE"}
|
||||
- {id: 117, cat: PC, desc: "Logiciels - LINUX"}
|
||||
- {id: 119, cat: PC/0day, desc: "Logiciels - WINDOWS"}
|
||||
- {id: 120, cat: Audio/Lossless, desc: "Musiques - FLAC"}
|
||||
- {id: 121, cat: Audio, desc: "Musiques - HQ"}
|
||||
- {id: 122, cat: Audio/MP3, desc: "Musiques - MP3"}
|
||||
- {id: 123, cat: Audio, desc: "Musiques - Spect/Concert"}
|
||||
- {id: 27, cat: TV/HD, desc: "Series-Animee - BDRip-BRRIP"}
|
||||
- {id: 28, cat: TV/HD, desc: "Series-Animee - BluRay-R"}
|
||||
- {id: 29, cat: TV/SD, desc: "Series-Animee - DVD-R"}
|
||||
- {id: 30, cat: TV/SD, desc: "Series-Animee - DVDRip"}
|
||||
- {id: 32, cat: TV/HD, desc: "Series-Animee - HD 1080P"}
|
||||
- {id: 31, cat: TV/HD, desc: "Series-Animee - HD 720P"}
|
||||
- {id: 33, cat: TV/HD, desc: "Series-Animee - HDRiP"}
|
||||
- {id: 34, cat: TV/HD, desc: "Series-Animee - HDTV"}
|
||||
- {id: 35, cat: TV/HD, desc: "Series-Animee - HDTV 1080p"}
|
||||
- {id: 36, cat: TV/HD, desc: "Series-Animee - HDTV 720p"}
|
||||
- {id: 37, cat: TV/HD, desc: "Series-Animee - M-HD 1080p"}
|
||||
- {id: 38, cat: TV/HD, desc: "Series-Animee - M-HD 720p"}
|
||||
- {id: 47, cat: TV/Anime, desc: "Series-Animee - Pack Serie Animee"}
|
||||
- {id: 39, cat: TV/Anime, desc: "Series-Animee - Remux"}
|
||||
- {id: 46, cat: TV/Anime, desc: "Series-Animee - SERIE JAP-ANIM"}
|
||||
- {id: 40, cat: TV/Anime, desc: "Series-Animee - TVRip"}
|
||||
- {id: 41, cat: TV/Anime, desc: "Series-Animee - WEB-DL"}
|
||||
- {id: 42, cat: TV/Anime, desc: "Series-Animee - WEB-DL 1080p"}
|
||||
- {id: 43, cat: TV/Anime, desc: "Series-Animee - WEB-DL 720p"}
|
||||
- {id: 44, cat: TV/Anime, desc: "Series-Animee - WEBRip"}
|
||||
- {id: 45, cat: TV/HD, desc: "Series-Animee - X265"}
|
||||
- {id: 124, cat: TV/HD, desc: "Series-FR - BDRip-BRRIP"}
|
||||
- {id: 125, cat: TV/HD, desc: "Series-FR - BluRay-R"}
|
||||
- {id: 126, cat: TV/SD, desc: "Series-FR - DVD-R"}
|
||||
- {id: 127, cat: TV/SD, desc: "Series-FR - DVDRip"}
|
||||
- {id: 128, cat: TV/HD, desc: "Series-FR - HD 1080P"}
|
||||
- {id: 129, cat: TV/HD, desc: "Series-FR - HD 720P"}
|
||||
- {id: 130, cat: TV/HD, desc: "Series-FR - HDRiP"}
|
||||
- {id: 133, cat: TV/HD, desc: "Series-FR - HDTV"}
|
||||
- {id: 131, cat: TV/HD, desc: "Series-FR - HDTV 1080p"}
|
||||
- {id: 132, cat: TV/HD, desc: "Series-FR - HDTV 720p"}
|
||||
- {id: 134, cat: TV/HD, desc: "Series-FR - M-HD 1080p"}
|
||||
- {id: 135, cat: TV/HD, desc: "Series-FR - M-HD 720p"}
|
||||
- {id: 136, cat: TV, desc: "Series-FR - Pack Serie"}
|
||||
- {id: 137, cat: TV, desc: "Series-FR - Remux"}
|
||||
- {id: 138, cat: TV/WEB-DL, desc: "Series-FR - TVRip"}
|
||||
- {id: 141, cat: TV/WEB-DL, desc: "Series-FR - WEB-DL"}
|
||||
- {id: 139, cat: TV/WEB-DL, desc: "Series-FR - WEB-DL 1080p"}
|
||||
- {id: 140, cat: TV/WEB-DL, desc: "Series-FR - WEB-DL 720p"}
|
||||
- {id: 142, cat: TV/WEB-DL, desc: "Series-FR - WEBRip"}
|
||||
- {id: 143, cat: TV/HD, desc: "Series-FR - X265"}
|
||||
- {id: 144, cat: TV/HD, desc: "Series-VOSTFR - BDRip-BRRIP"}
|
||||
- {id: 145, cat: TV/HD, desc: "Series-VOSTFR - BluRay-R"}
|
||||
- {id: 146, cat: TV/SD, desc: "Series-VOSTFR - DVD-R"}
|
||||
- {id: 147, cat: TV/SD, desc: "Series-VOSTFR - DVDRip"}
|
||||
- {id: 148, cat: TV/HD, desc: "Series-VOSTFR - HD 1080P"}
|
||||
- {id: 149, cat: TV/HD, desc: "Series-VOSTFR - HD 720P"}
|
||||
- {id: 150, cat: TV/HD, desc: "Series-VOSTFR - HDRiP"}
|
||||
- {id: 153, cat: TV/HD, desc: "Series-VOSTFR - HDTV"}
|
||||
- {id: 151, cat: TV/HD, desc: "Series-VOSTFR - HDTV 1080p"}
|
||||
- {id: 152, cat: TV/HD, desc: "Series-VOSTFR - HDTV 720p"}
|
||||
- {id: 154, cat: TV/HD, desc: "Series-VOSTFR - M-HD 1080p"}
|
||||
- {id: 155, cat: TV/HD, desc: "Series-VOSTFR - M-HD 720p"}
|
||||
- {id: 156, cat: TV, desc: "Series-VOSTFR - Pack Serie"}
|
||||
- {id: 157, cat: TV, desc: "Series-VOSTFR - Remux"}
|
||||
- {id: 158, cat: TV/WEB-DL, desc: "Series-VOSTFR - TVRip"}
|
||||
- {id: 161, cat: TV/WEB-DL, desc: "Series-VOSTFR - WEB-DL"}
|
||||
- {id: 159, cat: TV/WEB-DL, desc: "Series-VOSTFR - WEB-DL 1080p"}
|
||||
- {id: 160, cat: TV/WEB-DL, desc: "Series-VOSTFR - WEB-DL 720p"}
|
||||
- {id: 162, cat: TV/WEB-DL, desc: "Series-VOSTFR - WEBRip"}
|
||||
- {id: 163, cat: TV/HD, desc: "Series-VOSTFR - X265"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
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 (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<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: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
- name: torrentlanguage
|
||||
type: select
|
||||
label: Torrent Language
|
||||
default: 0
|
||||
options:
|
||||
0: "Toutes Les Langues"
|
||||
1: Allemand
|
||||
2: Anglais(UK)
|
||||
3: Anglais(US)
|
||||
4: Arabe
|
||||
5: Bengali
|
||||
6: Cantonais
|
||||
7: Coréen
|
||||
8: Danois
|
||||
9: Espagnol
|
||||
10: Flamand
|
||||
11: Français
|
||||
12: Hébreu
|
||||
13: Hindi
|
||||
14: Italien
|
||||
15: Japonais
|
||||
16: Mandarin
|
||||
17: Multi
|
||||
24: "Multi Truefrench"
|
||||
18: Perse
|
||||
19: Portuguais
|
||||
20: Québécois
|
||||
21: Russe
|
||||
22: Suédois
|
||||
23: Ukrainien
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: TTV3/Bienvenue
|
||||
selector: a[href$="/TTV3/Deconnexion"]
|
||||
|
||||
download:
|
||||
before:
|
||||
# https://galeriens.com/TTV3/Torrents/11222/Remercier
|
||||
# note http GET does not seem to work as the html suggests, so using same as LeChaudron which is also a TT3.00FRENCH engine.
|
||||
path: "/TTV3/Torrents/{{ re_replace .DownloadUri.PathAndQuery \"^(.+?)(\\d+)$\" \"$2\" }}/Remercier"
|
||||
method: post
|
||||
inputs:
|
||||
torrent: "{{ re_replace .DownloadUri.PathAndQuery \"^(.+?)(\\d+)$\" \"$2\" }}"
|
||||
selector: a[href*="/Telechargement/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://galeriens.eu/TTV3/Torrents/Recherche?recherche=&type=tout&endroit=nomtorrent&langue=0&tl=peuimporte
|
||||
# categories for searching are unsupported
|
||||
- path: TTV3/Torrents/Recherche
|
||||
inputs:
|
||||
recherche: "{{ .Keywords }}"
|
||||
# searchtype: un (one word), tout (all words), exacte (exact expression)
|
||||
type: tout
|
||||
# searchin: nomtorrent (name), desctorrent (descr)
|
||||
endroit: nomtorrent
|
||||
# language: 11 french, 17 multi
|
||||
langue: "{{ .Config.torrentlanguage }}"
|
||||
# freeleech: oui (yes), non (no), peuimporte (ignore)
|
||||
tl: "{{ if .Config.freeleech }}oui{{ else }}peuimporte{{ end }}"
|
||||
# does not support imdbid search and does not return imdb link in results.
|
||||
|
||||
rows:
|
||||
selector: table.sortable tbody tr
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/SousCategories/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)$
|
||||
title_phase1:
|
||||
selector: a[onmouseover]
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src= (.*?)><"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: td:nth-child(2) a font[color="#F2F2F2"]
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["il y a ", ""]
|
||||
- name: replace
|
||||
args: [" Jours", " days"]
|
||||
- name: replace
|
||||
args: [" Jour", " day"]
|
||||
- name: replace
|
||||
args: [" heures", " hours"]
|
||||
- name: replace
|
||||
args: [" heure", " hour"]
|
||||
- name: replace
|
||||
args: [" Semaines", " weeks"]
|
||||
- name: replace
|
||||
args: [" Semaine", " week"]
|
||||
- name: replace
|
||||
args: [" mois", " month"]
|
||||
- name: replace
|
||||
args: [" ans", " years"]
|
||||
- name: replace
|
||||
args: [" an", " year"]
|
||||
- name: append
|
||||
args: " ago"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="/images/Torrents/TLibre.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# TT3.00 FRENCH
|
@@ -30,8 +30,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a#download_torrent
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a#download_torrent
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -8,6 +8,34 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://www.gay-torrents.net/
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 0
|
||||
options:
|
||||
0: created
|
||||
1: title
|
||||
4: size
|
||||
5: seeders
|
||||
- name: order
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: 0
|
||||
options:
|
||||
0: desc
|
||||
1: asc
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: porn, cat: XXX, desc: "Porn"}
|
||||
@@ -80,9 +108,26 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search.php{{ else }}torrentslist.php{{ end }}"
|
||||
inputs:
|
||||
page: 1
|
||||
- path: "{{ if .Keywords }}search.php{{ else }}torrentslist.php{{ end }}"
|
||||
inputs:
|
||||
page: 2
|
||||
- path: "{{ if .Keywords }}search.php{{ else }}torrentslist.php{{ end }}"
|
||||
inputs:
|
||||
page: 3
|
||||
- path: "{{ if .Keywords }}search.php{{ else }}torrentslist.php{{ end }}"
|
||||
inputs:
|
||||
page: 4
|
||||
- path: "{{ if .Keywords }}search.php{{ else }}torrentslist.php{{ end }}"
|
||||
inputs:
|
||||
page: 5
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}type={{.}}&{{end}}"
|
||||
textsearch: "{{ .Keywords }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.order }}"
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}0{{ end }}"
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
|
@@ -24,6 +24,26 @@ settings:
|
||||
type: info
|
||||
label: "Search results"
|
||||
default: "You can increase the number of search results in your profile.<br />Default is 15."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: data
|
||||
options:
|
||||
data: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
filename: title
|
||||
- name: order
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -62,6 +82,7 @@ caps:
|
||||
- {id: 41, cat: Movies, desc: "Non-Porn"}
|
||||
- {id: 41, cat: TV, desc: "Non-Porn"}
|
||||
- {id: 41, cat: Other, desc: "Non-Porn"}
|
||||
- {id: 71, cat: XXX, desc: "Fan Sites"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -87,8 +108,10 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}category[]={{.}}&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 both, 1 active, 2 dead
|
||||
active: 0
|
||||
# 0 all, 1 active, 2 dead, 3 free, 4 50%free, 5 25%free, 6 packs
|
||||
active: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.order }}"
|
||||
|
||||
rows:
|
||||
selector: div.torrent
|
||||
|
@@ -36,16 +36,18 @@ caps:
|
||||
- {id: 50, cat: Books/EBook, desc: "E-Books: Manuel Français"}
|
||||
- {id: 66, cat: Movies, desc: "Films: VOSTFR"}
|
||||
- {id: 65, cat: Movies, desc: "Films: VO"}
|
||||
- {id: 55, cat: Movies/HD, desc: "Films: MHD x265"}
|
||||
- {id: 54, cat: Movies/HD, desc: "Films: MHD HDlight"}
|
||||
- {id: 55, cat: Movies/HD, desc: "Films: MHD x265"}
|
||||
- {id: 69, cat: Movies/3D, desc: "Films: 3D"}
|
||||
- {id: 110, cat: Movies/WEB-DL, desc: "Films: WEB"}
|
||||
- {id: 2, cat: Movies/HD, desc: "Films: HD"}
|
||||
- {id: 59, cat: Movies, desc: "Films: Spectacle"}
|
||||
- {id: 110, cat: Movies/WEB-DL, desc: "Films: WEB"}
|
||||
- {id: 154, cat: Movies/UHD, desc: "Films: AV1-2160p"}
|
||||
- {id: 89, cat: Movies/SD, desc: "Films: SD"}
|
||||
- {id: 153, cat: Movies/HD, desc: "Films: AV1-1080p"}
|
||||
- {id: 59, cat: Movies, desc: "Films: Spectacle"}
|
||||
- {id: 70, cat: Movies/HD, desc: "Films: X265"}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Films: 4K"}
|
||||
- {id: 135, cat: Movies, desc: "Films: Noel"}
|
||||
- {id: 155, cat: Movies/UHD, desc: "films: 4K X265"}
|
||||
- {id: 87, cat: XXX, desc: "Films: XXX"}
|
||||
- {id: 4, cat: Movies, desc: "Films: ISO"}
|
||||
- {id: 151, cat: TV, desc: "Films: .Série animation"}
|
||||
@@ -55,8 +57,8 @@ caps:
|
||||
- {id: 97, cat: Audio, desc: "Musique: Podcast"}
|
||||
- {id: 137, cat: Audio, desc: "Musique: Noel"}
|
||||
- {id: 25, cat: Audio/MP3, desc: "Musique: Single MP3"}
|
||||
- {id: 143, cat: Audio/MP3, desc: "Musique: Wav"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Musique: Album MP3"}
|
||||
- {id: 143, cat: Audio/MP3, desc: "Musique: Wav"}
|
||||
- {id: 98, cat: Audio, desc: "Musique: karaoké"}
|
||||
- {id: 58, cat: Audio, desc: "Musique: Concert"}
|
||||
- {id: 24, cat: Audio/Lossless, desc: "Musique: Single Flac"}
|
||||
@@ -64,8 +66,8 @@ caps:
|
||||
- {id: 64, cat: Audio, desc: "Musique: Mégamix Maison"}
|
||||
- {id: 6, cat: TV, desc: "Serie TV: Saison FR"}
|
||||
- {id: 7, cat: TV, desc: "Serie TV: Episode FR"}
|
||||
- {id: 153, cat: TV, desc: "Serie TV: Saison VO"}
|
||||
- {id: 63, cat: TV, desc: "Serie TV: Episode VO"}
|
||||
- {id: 63, cat: TV, desc: "Serie TV: Saison VO"}
|
||||
- {id: 152, cat: TV, desc: "Serie TV: Episode VO"}
|
||||
- {id: 93, cat: TV, desc: "Serie TV: Saison VOSTFR"}
|
||||
- {id: 61, cat: TV, desc: "Serie TV: Episode VOSTFR"}
|
||||
- {id: 12, cat: TV, desc: "Serie TV: Animation"}
|
||||
@@ -140,8 +142,9 @@ download:
|
||||
id: "{{ .DownloadUri.Query.id }}"
|
||||
to: give
|
||||
torrent: "{{ .DownloadUri.Query.id }}"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -136,8 +136,9 @@ download:
|
||||
infohash: "{{ .DownloadUri.Query.id }}"
|
||||
thanks: 1
|
||||
rndval: "1487013827343"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -73,8 +73,9 @@ settings:
|
||||
default: false
|
||||
|
||||
download:
|
||||
selector: a[href*="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href*="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
links:
|
||||
- https://www.gtdb.to/
|
||||
- https://glodls.to/
|
||||
- https://glotorrents.unblockit.onl/
|
||||
- https://glotorrents.unblockit.uno/
|
||||
- https://glotorrents.nocensor.space/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
@@ -38,6 +38,8 @@ legacylinks:
|
||||
- https://glotorrents.unblockit.buzz/
|
||||
- https://glodls.unblocked.monster/
|
||||
- https://glotorrents.unblockit.club/
|
||||
- https://glotorrents.unblockit.onl/
|
||||
- https://glotorrents.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -23,8 +23,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a[href^="/uploads/torrents/"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="/uploads/torrents/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# do=search&subaction=search&search_start=0&full_search=0&result_from=1&story=%D0%A6%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC%D0%B5%D1%82%D0%B0%D0%BB%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F+%D0%BE%D0%B1%D0%BE%D0%BB%D0%BE%D1%87%D0%BA%D0%B0+
|
||||
|
@@ -23,8 +23,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a[href^="/engine/download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="/engine/download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# do=search&subaction=search&search_start=0&full_search=0&result_from=1&story=%D0%A6%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC%D0%B5%D1%82%D0%B0%D0%BB%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F+%D0%BE%D0%B1%D0%BE%D0%BB%D0%BE%D1%87%D0%BA%D0%B0+
|
||||
|
188
src/Jackett.Common/Definitions/hdcztorrent.yml
Normal file
188
src/Jackett.Common/Definitions/hdcztorrent.yml
Normal file
@@ -0,0 +1,188 @@
|
||||
---
|
||||
id: hdcztorrent
|
||||
name: HD-CzTorrent
|
||||
description: "HD-CzTorrent is a CZECH semi private site for TV / MOVIES / GENERAL"
|
||||
language: cs-cz
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.hd-cztorrent.cz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Film
|
||||
- {id: 37, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 92, cat: TV, desc: "TV Serial ENG"}
|
||||
- {id: 39, cat: Audio/Video, desc: "Hudba Video"}
|
||||
- {id: 41, cat: Movies/SD, desc: "DivX / AVI"}
|
||||
- {id: 90, cat: Movies/SD, desc: "DivX / AVI Titulky"}
|
||||
- {id: 43, cat: Movies/Other, desc: "FILM dokument"}
|
||||
- {id: 44, cat: Movies/Other, desc: "FILM sport"}
|
||||
- {id: 45, cat: TV, desc: "SERIALY CZ"}
|
||||
- {id: 47, cat: Movies, desc: "Animované"}
|
||||
- {id: 91, cat: TV, desc: "Serial titulky"}
|
||||
- {id: 50, cat: Movies/BluRay, desc: "FILMY Blu-ray"}
|
||||
- {id: 109, cat: Movies/BluRay, desc: "BLURAY orig JAZYK"}
|
||||
- {id: 52, cat: Movies/HD, desc: "HD 1080 "}
|
||||
- {id: 53, cat: Movies/HD, desc: "HD 720"}
|
||||
- {id: 55, cat: Movies/3D, desc: "3D Filmy"}
|
||||
- {id: 110, cat: Movies/3D, desc: "3D ORIGINÁL"}
|
||||
- {id: 111, cat: Movies, desc: "FILMY CZ TVORBA"}
|
||||
- {id: 98, cat: Movies/UHD, desc: "ORIGINAL JAZYK 4K"}
|
||||
- {id: 77, cat: Movies/UHD, desc: "ULTRA HD 4K"}
|
||||
- {id: 89, cat: Movies/HD, desc: "HD720 titulky "}
|
||||
- {id: 93, cat: Movies/HD, desc: "HD 1080 titulky"}
|
||||
- {id: 107, cat: Movies, desc: "CAMERA RIP "}
|
||||
- {id: 94, cat: Movies, desc: "h 265"}
|
||||
- {id: 81, cat: Movies, desc: "ORIGINAL JAZYK"}
|
||||
- {id: 95, cat: Movies/Other, desc: "FILM RETRO"}
|
||||
# HUDBA
|
||||
- {id: 57, cat: Audio/Lossless, desc: "Hudba flac"}
|
||||
- {id: 58, cat: Audio/MP3, desc: "Hudba mp3"}
|
||||
- {id: 96, cat: Audio/Other, desc: "RETRO HUDBA"}
|
||||
# ostatni
|
||||
- {id: 64, cat: Books, desc: "E-books, PDF fotky"}
|
||||
- {id: 65, cat: Audio/Audiobook, desc: "Mluvene slovo"}
|
||||
- {id: 113, cat: Books/Other, desc: "obrazky fotky"}
|
||||
# PORNO
|
||||
- {id: 11, cat: XXX, desc: "XXX 18+KLASIKA"}
|
||||
- {id: 99, cat: XXX, desc: "XXX GAY"}
|
||||
- {id: 100, cat: XXX, desc: "XXX ASIAN"}
|
||||
- {id: 101, cat: XXX, desc: "XXX 3D"}
|
||||
- {id: 106, cat: XXX/ImageSet, desc: "XXX-OBRÁZKY"}
|
||||
- {id: 108, cat: XXX, desc: "PORNO BDSM"}
|
||||
# HRY
|
||||
- {id: 73, cat: PC/Games, desc: "Hry, Games"}
|
||||
- {id: 97, cat: Console/PS4, desc: "HRY PS4"}
|
||||
# APLIKACE
|
||||
- {id: 60, cat: PC/Mobile-Other, desc: "Mobil PDA"}
|
||||
- {id: 62, cat: PC, desc: "Aplikace All"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 3
|
||||
options:
|
||||
3: created
|
||||
5: seeders
|
||||
4: size
|
||||
2: 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:
|
||||
method: post
|
||||
path: index.php?page=login
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.lista span[style="color:#FF0000;"]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
|
||||
search:
|
||||
paths:
|
||||
# http://www.hd-cztorrent.cz/index.php?page=torrents&search=the+avengers&category=0&uploader=0&options=0&active=0&gold=0&order=3&by=2
|
||||
- path: index.php
|
||||
inputs:
|
||||
page: torrents
|
||||
search: "{{ .Keywords }}"
|
||||
category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}"
|
||||
uploader: 0
|
||||
# 0 filename, 1 file & desc, 2 description
|
||||
options: 0
|
||||
# 0 all, 1 active only, 2 dead only
|
||||
active: 0
|
||||
# 0 all, 1 classic, 2 silver, 3 gold, 4 silver & gold
|
||||
gold: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href*=bookmark])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="category="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td:nth-child(2) > a
|
||||
details:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.+?) "
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02/01/2006 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(11)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freeleech.gif"]: 0
|
||||
img[src$="gold.gif"]: 0
|
||||
img[src$="silver.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="2x.gif"]: 2
|
||||
img[src$="3x.gif"]: 3
|
||||
img[src$="4x.gif"]: 4
|
||||
img[src$="5x.gif"]: 5
|
||||
img[src$="6x.gif"]: 6
|
||||
img[src$="7x.gif"]: 7
|
||||
img[src$="8x.gif"]: 8
|
||||
img[src$="9x.gif"]: 9
|
||||
img[src$="10x.gif"]: 10
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.3
|
||||
# xbtit dt fm v7.1 customized
|
@@ -8,21 +8,22 @@ encoding: windows-1251
|
||||
links:
|
||||
- https://hdhouse.club/
|
||||
- https://hdreactor.club/
|
||||
- https://hdreactor.su/
|
||||
legacylinks:
|
||||
- https://hdreactor.guru/
|
||||
- https://hdreactor.net/
|
||||
- https://hdreactor.su/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/HD, desc: "Кино HD"}
|
||||
- {id: 2, cat: Movies/UHD, desc: "Кино UHD"}
|
||||
- {id: 3, cat: XXX, desc: "18+ HD"}
|
||||
- {id: 4, cat: Audio/Lossless, desc: "Музыка A"}
|
||||
- {id: 5, cat: PC/Games, desc: "Игры"}
|
||||
- {id: 6, cat: TV/HD, desc: "Сериалы HD"}
|
||||
- {id: 7, cat: TV/Anime, desc: "Мультфильмы"}
|
||||
- {id: 9, cat: Audio/Video, desc: "Музыка V"}
|
||||
- {id: 2001, cat: Movies/HD, desc: "Кино HD"}
|
||||
- {id: 5006, cat: Movies/UHD, desc: "Кино UHD"}
|
||||
- {id: 2007, cat: TV/Anime, desc: "Мультфильмы"}
|
||||
- {id: 2006, cat: TV/HD, desc: "Сериалы HD"}
|
||||
- {id: 2004, cat: Audio/Lossless, desc: "Музыка A"}
|
||||
- {id: 5007, cat: Audio/Video, desc: "Музыка V"}
|
||||
- {id: 2003, cat: XXX, desc: "18+ HD"}
|
||||
- {id: 2005, cat: PC/Games, desc: "Игры"}
|
||||
- {id: 5005, cat: TV/Sport, desc: "Спорт HD"} # not shown in list
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -51,8 +52,9 @@ settings:
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# https://hdreactor.net/index.php?do=search&subaction=search&showposts=1&story=2020&catlist[]=2001&catlist[]=2006
|
||||
@@ -83,14 +85,15 @@ search:
|
||||
category:
|
||||
selector: div.movie-item__meta > span > a
|
||||
case:
|
||||
a[href$="/1/"]: 1
|
||||
a[href$="/3/"]: 3
|
||||
a[href$="/4/"]: 4
|
||||
a[href$="/4k_uhd/"]: 2
|
||||
a[href$="/5/"]: 5
|
||||
a[href$="/6/"]: 6
|
||||
a[href$="/7/"]: 7
|
||||
a[href$="/9/"]: 9
|
||||
a[href$="/1/"]: 2001
|
||||
a[href$="/4k_uhd/"]: 5006
|
||||
a[href$="/7/"]: 2007
|
||||
a[href$="/6/"]: 2006
|
||||
a[href$="/4/"]: 2004
|
||||
a[href$="/9/"]: 5007
|
||||
a[href$="/3/"]: 2003
|
||||
a[href$="/5/"]: 2005
|
||||
a[href$="/sport-hd/"]: 5005 # not shown in list
|
||||
title:
|
||||
selector: span.movie-item__title
|
||||
filters:
|
||||
|
@@ -113,6 +113,8 @@ search:
|
||||
args: ["HDOlimpo", ""] # Delete HDOlimpo
|
||||
- name: replace
|
||||
args: ["HD-Olimpo", ""] # Delete HD-Olimpo
|
||||
- name: replace
|
||||
args: ["E-AC-3", "EAC3"]
|
||||
- name: re_replace
|
||||
args: ["[ -](?i)español[ -]", " SPANiSH "]
|
||||
- name: re_replace
|
||||
|
@@ -92,8 +92,9 @@ download:
|
||||
infohash: "{{ .DownloadUri.Query.id }}"
|
||||
thanks: 1
|
||||
rndval: "1487013827343"
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -114,12 +114,14 @@ search:
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
date:
|
||||
selector: tr, br
|
||||
selector: td:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05 -07:00"
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
|
@@ -49,16 +49,17 @@ settings:
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
selector: script:contains("magnet:?xt=")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "play\\('(.+?)'"
|
||||
- name: re_replace
|
||||
args: ["X-X", ""]
|
||||
- name: prepend
|
||||
args: "magnet:?xt=urn:btih:"
|
||||
- name: append
|
||||
args: "&dn={{ re_replace .DownloadUri.PathAndQuery \"\\/torrent\\/(.+?)\\/\" \"$1\"}}&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
selectors:
|
||||
- selector: script:contains("magnet:?xt=")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "play\\('(.+?)'"
|
||||
- name: re_replace
|
||||
args: ["X-X", ""]
|
||||
- name: prepend
|
||||
args: "magnet:?xt=urn:btih:"
|
||||
- name: append
|
||||
args: "&dn={{ re_replace .DownloadUri.PathAndQuery \"\\/torrent\\/(.+?)\\/\" \"$1\"}}&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -6,12 +6,12 @@ language: it-it
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://ilcorsaroblu.online/
|
||||
- https://ilcorsaroblu.org/
|
||||
legacylinks:
|
||||
- http://ilcorsaroblu.org/
|
||||
- https://www.ilcorsaroblu.info/
|
||||
- https://www.ilcorsaroblu.org/
|
||||
- https://ilcorsaroblu.org/
|
||||
- https://ilcorsaroblu.online/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -47,7 +47,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -62,12 +62,6 @@ search:
|
||||
- path: "{{ if .Keywords }}advsearch.php?&category={{ range .Categories }}{{.}};{{end}}&search={{ .Keywords }}&order=data&by=DESC&page=0{{ else }}/browse/0{{ end }}"
|
||||
- path: "{{ if .Keywords }}advsearch.php?&category={{ range .Categories }}{{.}};{{end}}&search={{ .Keywords }}&order=data&by=DESC&page=1{{ else }}/browse/1{{ end }}"
|
||||
- path: "{{ if .Keywords }}advsearch.php?&category={{ range .Categories }}{{.}};{{end}}&search={{ .Keywords }}&order=data&by=DESC&page=2{{ else }}/browse/2{{ end }}"
|
||||
keywordsfilters:
|
||||
# remove searching by season and episode due to inconsistent naming #11471
|
||||
- name: re_replace # remove S01
|
||||
args: ["(?i)(\\s*s\\d+)", ""]
|
||||
- name: re_replace # remove E01
|
||||
args: ["(?i)(\\s*e\\d+)", ""]
|
||||
|
||||
rows:
|
||||
selector: "tr.odd,tr.odd2"
|
||||
|
@@ -58,11 +58,13 @@ settings:
|
||||
size: size
|
||||
|
||||
download:
|
||||
selector: a.btn-magnet
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: url
|
||||
selectors:
|
||||
- selector: a.btn-magnet
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: url
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents
|
||||
|
@@ -50,8 +50,9 @@ settings:
|
||||
|
||||
|
||||
download:
|
||||
selector: a[href^="/torrentfiles/"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="/torrentfiles/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -13,7 +13,7 @@ caps:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 2, cat: TV, desc: "TV"}
|
||||
- {id: 6, cat: TV, desc: "ts Firehose (RAW TS)"}
|
||||
- {id: 7, cat: TV/Anime, desc: "Anime Movies"}
|
||||
- {id: 7, cat: Movies/Other, desc: "Anime Movies"}
|
||||
- {id: 9, cat: TV/Anime, desc: "Anime Series"}
|
||||
- {id: 8, cat: Audio, desc: "Music"}
|
||||
|
||||
|
@@ -51,8 +51,9 @@ settings:
|
||||
asc: asc
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -1,287 +0,0 @@
|
||||
---
|
||||
id: lechaudron
|
||||
name: LeChaudron
|
||||
description: "Le Chaudron is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: fr-fr
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://lechaudron.nl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: XXX, desc: "Adultes - BD Erotique"}
|
||||
- {id: 4, cat: XXX, desc: "Adultes - Doujin (Manga X)"}
|
||||
- {id: 2, cat: XXX, desc: "Adultes - eBook XXX"}
|
||||
- {id: 3, cat: XXX, desc: "Adultes - Film XXX"}
|
||||
- {id: 5, cat: XXX, desc: "Adultes - Hentai"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animations - 3D"}
|
||||
- {id: 7, cat: TV/Anime, desc: "Animations - 4K Light"}
|
||||
- {id: 8, cat: TV/Anime, desc: "Animations - 4K UHD"}
|
||||
- {id: 9, cat: TV/Anime, desc: "Animations - BDRIP-BRRIP"}
|
||||
- {id: 10, cat: TV/Anime, desc: "Animations - BluRay-R"}
|
||||
- {id: 11, cat: TV/Anime, desc: "Animations - DVD-R"}
|
||||
- {id: 12, cat: TV/Anime, desc: "Animations - DVDRIP"}
|
||||
- {id: 13, cat: TV/Anime, desc: "Animations - Film Jap-Anim"}
|
||||
- {id: 14, cat: TV/Anime, desc: "Animations - HD 1080P"}
|
||||
- {id: 15, cat: TV/Anime, desc: "Animations - HD 720p"}
|
||||
- {id: 16, cat: TV/Anime, desc: "Animations - HDRIP"}
|
||||
- {id: 17, cat: TV/Anime, desc: "Animations - HDTV"}
|
||||
- {id: 18, cat: TV/Anime, desc: "Animations - HDTV 1080p"}
|
||||
- {id: 19, cat: TV/Anime, desc: "Animations - HDTV 720p"}
|
||||
- {id: 20, cat: TV/Anime, desc: "Animations - MHD 1080p"}
|
||||
- {id: 21, cat: TV/Anime, desc: "Animations - MHD 720p"}
|
||||
- {id: 22, cat: TV/Anime, desc: "Animations - REMUX"}
|
||||
- {id: 23, cat: TV/Anime, desc: "Animations - Serie Animee"}
|
||||
- {id: 24, cat: TV/Anime, desc: "Animations - Serie Jap-Anim"}
|
||||
- {id: 25, cat: TV/Anime, desc: "Animations - TVRIP"}
|
||||
- {id: 26, cat: TV/Anime, desc: "Animations - WEB-DL"}
|
||||
- {id: 27, cat: TV/Anime, desc: "Animations - WEB-DL 1080p"}
|
||||
- {id: 28, cat: TV/Anime, desc: "Animations - WEB-DL 720p"}
|
||||
- {id: 29, cat: TV/Anime, desc: "Animations - WEBRIP"}
|
||||
- {id: 31, cat: TV/Documentary, desc: "Documentaires - Emission TV"}
|
||||
- {id: 32, cat: TV/Documentary, desc: "Documentaires - Film Documentaire"}
|
||||
- {id: 33, cat: TV/Documentary, desc: "Documentaires - Spectacle"}
|
||||
- {id: 34, cat: TV/Documentary, desc: "Documentaires - Sport"}
|
||||
- {id: 41, cat: Movies/3D, desc: "Films - 3D"}
|
||||
- {id: 42, cat: Movies/UHD, desc: "Films - 4K Light"}
|
||||
- {id: 43, cat: Movies/UHD, desc: "Films - 4K UHD"}
|
||||
- {id: 44, cat: Movies/BluRay, desc: "Films - BDRIP-BRRIP"}
|
||||
- {id: 45, cat: Movies/BluRay, desc: "Films - BluRay-R"}
|
||||
- {id: 46, cat: Movies, desc: "Films - Coffret"}
|
||||
- {id: 47, cat: Movies/DVD, desc: "Films - DVD-R"}
|
||||
- {id: 48, cat: Movies/DVD, desc: "Films - DVDRIP"}
|
||||
- {id: 49, cat: Movies/HD, desc: "Films - HD 1080P"}
|
||||
- {id: 50, cat: Movies/HD, desc: "Films - HD 720p"}
|
||||
- {id: 51, cat: Movies/HD, desc: "Films - HDRIP"}
|
||||
- {id: 52, cat: Movies/HD, desc: "Films - HDTV"}
|
||||
- {id: 53, cat: Movies/HD, desc: "Films - HDTV 1080p"}
|
||||
- {id: 54, cat: Movies/HD, desc: "Films - HDTV 720p"}
|
||||
- {id: 55, cat: Movies/HD, desc: "Films - MHD 1080p"}
|
||||
- {id: 56, cat: Movies/HD, desc: "Films - MHD 720p"}
|
||||
- {id: 57, cat: Movies, desc: "Films - REMUX"}
|
||||
- {id: 58, cat: Movies, desc: "Films - TVRIP"}
|
||||
- {id: 59, cat: Movies/WEB-DL, desc: "Films - WEB-DL"}
|
||||
- {id: 60, cat: Movies/WEB-DL, desc: "Films - WEB-DL 1080p"}
|
||||
- {id: 61, cat: Movies/WEB-DL, desc: "Films - WEB-DL 720p"}
|
||||
- {id: 62, cat: Movies/WEB-DL, desc: "Films - WEBRIP"}
|
||||
- {id: 64, cat: Console/3DS, desc: "Jeux - 3DS-DS"}
|
||||
- {id: 65, cat: PC/Mobile-iOS, desc: "Jeux - IOS-OSX"}
|
||||
- {id: 66, cat: PC/Games, desc: "Jeux - PC"}
|
||||
- {id: 67, cat: Console/PSP, desc: "Jeux - PS-PSP-X"}
|
||||
- {id: 68, cat: Console/Wii, desc: "Jeux - Wii - Wii-U"}
|
||||
- {id: 69, cat: Console/XBox, desc: "Jeux - XBOX"}
|
||||
- {id: 35, cat: Audio/Audiobook, desc: "Livres - Audio-Book"}
|
||||
- {id: 36, cat: Books, desc: "Livres - BD"}
|
||||
- {id: 37, cat: Books/Mags, desc: "Livres - Magazine"}
|
||||
- {id: 38, cat: Books/Comics, desc: "Livres - MANGAS"}
|
||||
- {id: 39, cat: Books, desc: "Livres - Presse"}
|
||||
- {id: 40, cat: Books/EBook, desc: "Livres - Roman"}
|
||||
- {id: 70, cat: PC/Mobile-Android, desc: "Logiciels - ANDROID"}
|
||||
- {id: 71, cat: PC/Mac, desc: "Logiciels - APPLE"}
|
||||
- {id: 72, cat: PC/Mobile-iOS, desc: "Logiciels - IPHONE"}
|
||||
- {id: 73, cat: PC, desc: "Logiciels - LINUX"}
|
||||
- {id: 74, cat: PC/0day, desc: "Logiciels - WINDOWS"}
|
||||
- {id: 75, cat: TV, desc: "Pack - 3D"}
|
||||
- {id: 76, cat: TV/UHD, desc: "Pack - 4K Light"}
|
||||
- {id: 77, cat: TV/UHD, desc: "Pack - 4KUHD"}
|
||||
- {id: 78, cat: TV/HD, desc: "Pack - BDRIP-BRRIP"}
|
||||
- {id: 79, cat: TV/HD, desc: "Pack - BluRay-R"}
|
||||
- {id: 80, cat: TV/SD, desc: "Pack - DVD-R"}
|
||||
- {id: 81, cat: TV/SD, desc: "Pack - DVDRIP"}
|
||||
- {id: 82, cat: TV/HD, desc: "Pack - HD 1080P"}
|
||||
- {id: 83, cat: TV/HD, desc: "Pack - HD 720p"}
|
||||
- {id: 84, cat: TV/HD, desc: "Pack - HDRIP"}
|
||||
- {id: 85, cat: TV/HD, desc: "Pack - HDTV"}
|
||||
- {id: 86, cat: TV/HD, desc: "Pack - HDTV 1080p"}
|
||||
- {id: 87, cat: TV/HD, desc: "Pack - HDTV 720p"}
|
||||
- {id: 88, cat: TV/HD, desc: "Pack - MHD 1080p"}
|
||||
- {id: 89, cat: TV/HD, desc: "Pack - MHD 720p"}
|
||||
- {id: 90, cat: TV, desc: "Pack - REMUX"}
|
||||
- {id: 91, cat: TV, desc: "Pack - TVRIP"}
|
||||
- {id: 92, cat: TV/WEB-DL, desc: "Pack - WEB-DL"}
|
||||
- {id: 93, cat: TV/WEB-DL, desc: "Pack - WEB-DL 1080p"}
|
||||
- {id: 94, cat: TV/WEB-DL, desc: "Pack - WEB-DL 720p"}
|
||||
- {id: 95, cat: TV/WEB-DL, desc: "Pack - WEBRIP"}
|
||||
- {id: 97, cat: TV, desc: "Series - 3D"}
|
||||
- {id: 98, cat: TV/UHD, desc: "Series - 4K Light"}
|
||||
- {id: 99, cat: TV/UHD, desc: "Series - 4KUHD"}
|
||||
- {id: 100, cat: TV/HD, desc: "Series - BDRIP-BRRIP"}
|
||||
- {id: 101, cat: TV/HD, desc: "Series - BluRay-R"}
|
||||
- {id: 102, cat: TV/SD, desc: "Series - DVD-R"}
|
||||
- {id: 103, cat: TV/SD, desc: "Series - DVDRIP"}
|
||||
- {id: 104, cat: TV/HD, desc: "Series - HD 1080P"}
|
||||
- {id: 105, cat: TV/HD, desc: "Series - HD 720p"}
|
||||
- {id: 106, cat: TV/HD, desc: "Series - HDRIP"}
|
||||
- {id: 107, cat: TV/HD, desc: "Series - HDTV"}
|
||||
- {id: 108, cat: TV/HD, desc: "Series - HDTV 1080p"}
|
||||
- {id: 109, cat: TV/HD, desc: "Series - HDTV 720p"}
|
||||
- {id: 110, cat: TV/HD, desc: "Series - MHD 1080p"}
|
||||
- {id: 111, cat: TV/HD, desc: "Series - MHD 720p"}
|
||||
- {id: 112, cat: TV, desc: "Series - REMUX"}
|
||||
- {id: 113, cat: TV, desc: "Series - TVRIP"}
|
||||
- {id: 114, cat: TV/WEB-DL, desc: "Series - WEB-DL"}
|
||||
- {id: 115, cat: TV/WEB-DL, desc: "Series - WEB-DL 1080p"}
|
||||
- {id: 116, cat: TV/WEB-DL, desc: "Series - WEB-DL 720p"}
|
||||
- {id: 117, cat: TV/WEB-DL, desc: "Series - WEBRIP"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
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 (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<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: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: TTV3/Bienvenue
|
||||
selector: a[href$="/TTV3/Deconnexion"]
|
||||
|
||||
download:
|
||||
before:
|
||||
# <form method="post" action="https://lechaudron.nl/TTV3/Torrents/5610/remercier">
|
||||
# <input type="hidden" name="torrent" value="5610">
|
||||
path: "/TTV3/Torrents/{{ re_replace .DownloadUri.PathAndQuery \"^(.+?)(\\d+)$\" \"$2\" }}/remercier"
|
||||
method: post
|
||||
inputs:
|
||||
torrent: "{{ re_replace .DownloadUri.PathAndQuery \"^(.+?)(\\d+)$\" \"$2\" }}"
|
||||
selector: a[href*="/Telechargement/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://lechaudron.nl/TTV3/Torrents/Recherche?search=&endroit=nomtorrent&langue=0&tl=oui
|
||||
- path: TTV3/Torrents/Recherche
|
||||
inputs:
|
||||
search: "{{ .Keywords }}"
|
||||
# nomtorrent, desctorrent
|
||||
endroit: nomtorrent
|
||||
# non, oui, peuimporte
|
||||
tl: "{{ if .Config.freeleech }}oui{{ else }}peuimporte{{ end }}"
|
||||
# 0 all, 2 English, etc
|
||||
langue: 0
|
||||
# does not support imdbid searches and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: tr:has(a[onmouseover])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/SousCategories/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)$
|
||||
title_phase1:
|
||||
selector: a[href*="/SousCategories/"]
|
||||
attribute: alt
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^..(.+)"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src= (.*?)><"
|
||||
date:
|
||||
selector: a[onmouseover] font[color="#F2F2F2"]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Il y a (.*?)\\s-"
|
||||
- name: replace
|
||||
args: ["heures", "hours"]
|
||||
- name: replace
|
||||
args: ["heure", "hour"]
|
||||
- name: replace
|
||||
args: ["Jours", "days"]
|
||||
- name: replace
|
||||
args: ["Jour", "day"]
|
||||
- name: replace
|
||||
args: ["Semaines", "weeks"]
|
||||
- name: replace
|
||||
args: ["Semaine", "week"]
|
||||
- name: replace
|
||||
args: ["Mois", "months"]
|
||||
- name: replace
|
||||
args: ["Ans", "years"]
|
||||
- name: replace
|
||||
args: ["An", "year"]
|
||||
- name: append
|
||||
args: " ago"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
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$="/images/Torrents/freeleech.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.95
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# TT3.00 FRENCH
|
@@ -42,12 +42,12 @@ settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
default: added
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
@@ -72,19 +72,13 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
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: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 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 }}"
|
||||
search_area: "{{ if .Query.IMDBID }}imdb{{ else }}name{{ end }}"
|
||||
suggest: 0
|
||||
column: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
selector: table.torrents > tbody > tr:has(a[href^="download.php?"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -152,4 +146,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP Standard v1.5 Beta 4 (customised)
|
||||
|
@@ -122,15 +122,11 @@ login:
|
||||
method: form
|
||||
form: form[action^="login"]
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
rememberme: ""
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="access_code/"]
|
||||
input: private_key
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
loginButton: XZ
|
||||
error:
|
||||
- selector: tr td span[style="color:#FF0000;"]
|
||||
- selector: "p[style=\"color: #B73C38\"]"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
@@ -7,12 +7,8 @@ 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.onl/
|
||||
- https://www.limetorrents.pro/
|
||||
- https://limetorrents.unblockit.uno/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.nocensor.space/
|
||||
legacylinks:
|
||||
@@ -42,6 +38,13 @@ legacylinks:
|
||||
- https://limetorrents.unblockit.link/
|
||||
- https://limetorrents.unblockit.buzz/
|
||||
- https://limetorrents.unblockit.club/
|
||||
- https://limetorrents.unblockit.onl/
|
||||
- https://www.limetorrents.info/
|
||||
- https://www.limetorrents.asia/
|
||||
- https://www.limetorrents.co/
|
||||
- https://limetor.com/
|
||||
- https://www.limetor.pro/
|
||||
- https://limetorrents.unblockit.li/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -67,6 +70,17 @@ settings:
|
||||
options:
|
||||
"http://itorrents.org/": iTorrents.org
|
||||
"magnet:": magnet
|
||||
- name: downloadlink2
|
||||
type: select
|
||||
label: Download link (fallback)
|
||||
default: "http://itorrents.org/"
|
||||
options:
|
||||
"http://itorrents.org/": iTorrents.org
|
||||
"magnet:": magnet
|
||||
- name: info_download
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: As the .torrent download links on this site are known to fail from time to time, you can optionally set as a fallback an automatic alternate link.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -82,8 +96,11 @@ settings:
|
||||
|
||||
download:
|
||||
# the .torrent url is on the on the details page
|
||||
selector: a.csprite_dltorrent[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a.csprite_dltorrent[href^="{{ .Config.downloadlink }}"]
|
||||
attribute: href
|
||||
- selector: a.csprite_dltorrent[href^="{{ .Config.downloadlink2 }}"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -14,6 +14,7 @@ caps:
|
||||
- {id: 108, cat: Other, desc: "APPS Wallpapers"}
|
||||
- {id: 8, cat: Movies/BluRay, desc: "BLU-RAY"}
|
||||
- {id: 172, cat: Movies/BluRay, desc: "BLU-RAY 1080p"}
|
||||
- {id: 179, cat: Movies/BluRay, desc: "BLU-RAY 4K"}
|
||||
- {id: 176, cat: Movies/BluRay, desc: "BLU-RAY 720p"}
|
||||
- {id: 156, cat: Movies/BluRay, desc: "BLU-RAY H264"}
|
||||
- {id: 153, cat: Movies/BluRay, desc: "BLU-RAY X264"}
|
||||
@@ -22,6 +23,7 @@ caps:
|
||||
- {id: 164, cat: Movies/Other, desc: "Christmas Music"}
|
||||
- {id: 160, cat: Movies/Other, desc: "Classic Movies"}
|
||||
- {id: 169, cat: Console, desc: "Console Games"}
|
||||
- {id: 178, cat: PC/Games, desc: "PC GAMES"}
|
||||
- {id: 175, cat: Console/XBox, desc: "Console Games XBOX"}
|
||||
- {id: 82, cat: Audio/Other, desc: "DJ MUSIC"}
|
||||
- {id: 84, cat: Audio/Other, desc: "DJ MUSIC DMC"}
|
||||
@@ -45,8 +47,8 @@ caps:
|
||||
- {id: 150, cat: Audio, desc: "MUSIC Collections"}
|
||||
- {id: 96, cat: Audio, desc: "MUSIC Discographys"}
|
||||
- {id: 97, cat: Audio/Lossless, desc: "MUSIC Flac"}
|
||||
- {id: 177, cat: Audio, desc: "MUSIC Rock / Metal"}
|
||||
- {id: 171, cat: Audio/Video, desc: "Music-Videos"}
|
||||
- {id: 22, cat: PC/Games, desc: "PC GAMES"}
|
||||
- {id: 81, cat: Movies, desc: "RatioBoosters"}
|
||||
- {id: 26, cat: TV/Sport, desc: "SPORT"}
|
||||
- {id: 7, cat: Audio, desc: "Top 40 Albums/Singles"}
|
||||
@@ -119,8 +121,9 @@ download:
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
selector: a[href*="/download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href*="/download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -58,6 +58,7 @@ caps:
|
||||
- {id: 233, cat: Movies, desc: "Video for Seamen-Video for Marine Engineers"}
|
||||
- {id: 235, cat: Movies, desc: "Video for Seamen-Other videos"}
|
||||
- {id: 102, cat: Books, desc: "Marine Engineer's Library"}
|
||||
- {id: 316, cat: Books, desc: "Marine Engineer's Library-Marine Fuels & Lubricants"}
|
||||
- {id: 28, cat: Books, desc: Marine Engineer's Library-Ship's systems and mechanisms"}
|
||||
- {id: 22, cat: Books, desc: Marine Engineer's Library-Daihatsu"}
|
||||
- {id: 164, cat: Books, desc: Marine Engineer's Library-Operation of ship's power plants"}
|
||||
@@ -67,7 +68,6 @@ caps:
|
||||
- {id: 173, cat: Books, desc: Marine Engineer's Library-MAK & Caterpillar"}
|
||||
- {id: 166, cat: Books, desc: Marine Engineer's Library-Ship's steam and gas turbines"}
|
||||
- {id: 134, cat: Books, desc: Marine Engineer's Library-Marine Pumps"}
|
||||
- {id: 112, cat: Books, desc: Marine Engineer's Library-AALBORG"}
|
||||
- {id: 108, cat: Books, desc: Marine Engineer's Library-Hydraulics"}
|
||||
- {id: 16, cat: Books, desc: Marine Engineer's Library-MAN B&W"}
|
||||
- {id: 17, cat: Books, desc: Marine Engineer's Library-Wärtsilä & Sulzer"}
|
||||
@@ -95,7 +95,7 @@ caps:
|
||||
- {id: 265, cat: Books, desc: "Section for cadets-Marine dictionaries and glossaries RU↔RU/EN↔EN"}
|
||||
- {id: 191, cat: Books, desc: "Maritime Law"}
|
||||
- {id: 240, cat: Books, desc: "Maritime Law-IMO Resolutions"}
|
||||
- {id: 38, cat: Books, desc: "Uncategorized"}
|
||||
- {id: 212, cat: Books, desc: "Ship's documentation"}
|
||||
- {id: 190, cat: Books, desc: "Catalogs"}
|
||||
- {id: 113, cat: Books, desc: "Medicine"}
|
||||
- {id: 299, cat: Books, desc: "Sailing Kitchen"}
|
||||
@@ -111,8 +111,6 @@ caps:
|
||||
- {id: 288, cat: Audio, desc: "Audio-♬ Music"}
|
||||
- {id: 287, cat: Audio, desc: "Audio-Non-Fiction"}
|
||||
- {id: 286, cat: Audio, desc: "Audio-Fiction"}
|
||||
- {id: 212, cat: Books, desc: "Ship's documentation"}
|
||||
- {id: 251, cat: Books, desc: "Diving"}
|
||||
- {id: 111, cat: Books, desc: "Yachting, sailing, boating"}
|
||||
- {id: 298, cat: Books, desc: "Yachting, sailing, boating-Cruising Guides"}
|
||||
- {id: 297, cat: Books, desc: "Yachting, sailing, boating-Weather Sailing"}
|
||||
@@ -125,6 +123,7 @@ caps:
|
||||
- {id: 255, cat: Books, desc: "Yachting, sailing, boating-Sailing Alone"}
|
||||
- {id: 256, cat: Books, desc: "Yachting, sailing, boating-Rigging, knots"}
|
||||
- {id: 252, cat: Books, desc: "Yachting, sailing, boating-Projects, design, construction"}
|
||||
- {id: 251, cat: Books, desc: "Diving"}
|
||||
- {id: 177, cat: Books, desc: "Shipmodeling"}
|
||||
- {id: 293, cat: Books, desc: "Shipmodeling-Radio controlled models"}
|
||||
- {id: 292, cat: Books, desc: "Shipmodeling-Marine Modelling Magazines"}
|
||||
@@ -161,6 +160,8 @@ caps:
|
||||
- {id: 247, cat: Books, desc: "Rarity-1600 - 1700"}
|
||||
- {id: 187, cat: Books, desc: "Others (not maritime)"}
|
||||
- {id: 162, cat: Books, desc: "Archive"}
|
||||
- {id: 315, cat: Books, desc: "Archive-Unformed"}
|
||||
- {id: 38, cat: Books, desc: "Archive-Uncategorized"}
|
||||
- {id: 295, cat: Books, desc: "Archive-Unregistered releases"}
|
||||
|
||||
modes:
|
||||
|
@@ -20,8 +20,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: table#attachments > tbody > tr.odd > td > a
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: table#attachments > tbody > tr.odd > td > a
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -21,8 +21,9 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a.torrent_download
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a.torrent_download
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -54,11 +54,12 @@ caps:
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: append
|
||||
args: "&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: append
|
||||
args: "&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.stealth.si%3A80%2Fannounce&tr=udp%3A%2F%2Fexodus.desync.com%3A6969&tr=udp%3A%2F%2Fp4p.arenabg.com%3A1337%2Fannounce&tr=udp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.tiny-vps.com%3A6969%2Fannounce&tr=udp%3A%2F%2Fopen.demonii.si%3A1337%2Fannounce&tr=udp%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=udp%3A%2F%2Ftracker.pirateparty.gr%3A6969%2Fannounce&tr=udp%3A%2F%2Fipv4.tracker.harry.lu%3A80%2Fannounce&tr=udp%3A%2F%2Ftracker.cyberia.is%3A6969%2Fannounce&tr=udp%3A%2F%2F9.rarbg.to%3A2710%2Fannounce&tr=udp%3A%2F%2Fdenis.stalker.upeer.me%3A6969%2Fannounce"
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -57,8 +57,9 @@ login:
|
||||
selector: :has(a[href="logout.php"])
|
||||
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -24,11 +24,12 @@ settings:
|
||||
default: This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href="https://github.com/Jackett/Jackett#configuring-flaresolverr" target="_blank">FlareSolver</a> to access it.
|
||||
|
||||
download:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\\s+", " "]
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\\s+", " "]
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -15,6 +15,7 @@ caps:
|
||||
- {id: 15, cat: Movies/HD, desc: "Rip H264"}
|
||||
- {id: 16, cat: Movies/HD, desc: "Rip H265"}
|
||||
- {id: 24, cat: Movies/UHD, desc: "Rip 4K"}
|
||||
- {id: 40, cat: Movies/UHD, desc: "4K - 3840X2160"}
|
||||
- {id: 21, cat: Movies/HD, desc: "Full HD"}
|
||||
- {id: 31, cat: TV/HD, desc: "Serie TV 720P"}
|
||||
- {id: 25, cat: Audio, desc: "Musica"}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user