mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-09 21:24:42 +02:00
Compare commits
336 Commits
v0.20.3817
...
v0.21.95
Author | SHA1 | Date | |
---|---|---|---|
![]() |
1eae091ab8 | ||
![]() |
17d08d3f8c | ||
![]() |
d70bdbb26d | ||
![]() |
8d0edcdfb8 | ||
![]() |
34193e11df | ||
![]() |
57b8cbd407 | ||
![]() |
c2dbf6a80d | ||
![]() |
ff5586c4fa | ||
![]() |
48ff6821e6 | ||
![]() |
e282ff76a5 | ||
![]() |
8affee4b2d | ||
![]() |
dc352744c7 | ||
![]() |
ef5276da64 | ||
![]() |
32360070ad | ||
![]() |
633d1631c2 | ||
![]() |
d4fc8ab071 | ||
![]() |
08713ae7b8 | ||
![]() |
836f5372b3 | ||
![]() |
7e7ace05be | ||
![]() |
12da8b6131 | ||
![]() |
abc2f43f9c | ||
![]() |
1a49430b45 | ||
![]() |
147549cbf8 | ||
![]() |
fd884a8597 | ||
![]() |
fff9f0730b | ||
![]() |
951e510c1a | ||
![]() |
bfa2757c98 | ||
![]() |
623f48d83c | ||
![]() |
efc1602936 | ||
![]() |
906b8e1ff8 | ||
![]() |
bf4228b0dc | ||
![]() |
0a00e4edcd | ||
![]() |
abbf37060d | ||
![]() |
f6108ee852 | ||
![]() |
a6bde9f001 | ||
![]() |
2594fdba13 | ||
![]() |
97873506e3 | ||
![]() |
4944aef039 | ||
![]() |
a63fd138a8 | ||
![]() |
e4af5f1db2 | ||
![]() |
25e45daa20 | ||
![]() |
468ea2472b | ||
![]() |
49f57a9833 | ||
![]() |
63c7bf6aed | ||
![]() |
f5b787562f | ||
![]() |
182de9c60a | ||
![]() |
497e02e80c | ||
![]() |
fba5201ccd | ||
![]() |
8c2baf3bd2 | ||
![]() |
5b69bdfef4 | ||
![]() |
844855e3ba | ||
![]() |
ddb5e95785 | ||
![]() |
ef714804ee | ||
![]() |
3aab5de496 | ||
![]() |
fbe225bbf6 | ||
![]() |
897156176a | ||
![]() |
2db0ca6d52 | ||
![]() |
63faed4687 | ||
![]() |
0806e4182b | ||
![]() |
91307ff044 | ||
![]() |
0f5e919f33 | ||
![]() |
051cbabbcf | ||
![]() |
bd3ec7533d | ||
![]() |
78fecaced2 | ||
![]() |
4142a9d037 | ||
![]() |
1d89c135a3 | ||
![]() |
16c2d6f9ca | ||
![]() |
5c42955ba8 | ||
![]() |
64ee0c912d | ||
![]() |
a48aa7a6e1 | ||
![]() |
c56f32695a | ||
![]() |
c53933f307 | ||
![]() |
baa8439781 | ||
![]() |
c2aec85893 | ||
![]() |
e146ad227c | ||
![]() |
675b259e0a | ||
![]() |
04e24bacb3 | ||
![]() |
9638823cf1 | ||
![]() |
05dfda2736 | ||
![]() |
c6f4a55444 | ||
![]() |
e29f409164 | ||
![]() |
f68381010f | ||
![]() |
c12c050ed7 | ||
![]() |
558d3530fa | ||
![]() |
a5331e20c2 | ||
![]() |
ffdd0348c2 | ||
![]() |
a012c9d686 | ||
![]() |
7e33461c7f | ||
![]() |
4000c46be1 | ||
![]() |
f018aa252c | ||
![]() |
5f1445d59b | ||
![]() |
25cdf412c1 | ||
![]() |
02a818f71f | ||
![]() |
ca35c57d78 | ||
![]() |
76343fd56a | ||
![]() |
dd9feca37b | ||
![]() |
6ab273651d | ||
![]() |
d3599c9c3a | ||
![]() |
f701bba1ef | ||
![]() |
7907e2b620 | ||
![]() |
78d673f491 | ||
![]() |
b7756508e1 | ||
![]() |
0210b7dc5b | ||
![]() |
efb8de4d4c | ||
![]() |
dee88f618a | ||
![]() |
4e0c5814f4 | ||
![]() |
df48a6ed41 | ||
![]() |
aed390f7ba | ||
![]() |
b0adee0047 | ||
![]() |
d634670ad8 | ||
![]() |
8f260f7f97 | ||
![]() |
9e5973af5c | ||
![]() |
e28e93ce08 | ||
![]() |
927ffdff39 | ||
![]() |
88d5142cd7 | ||
![]() |
5f754847b9 | ||
![]() |
6e69f3611d | ||
![]() |
a25dad6d09 | ||
![]() |
9c641e624a | ||
![]() |
e2c25d78c9 | ||
![]() |
4b5c36f056 | ||
![]() |
5ff2071094 | ||
![]() |
5aa616a6ee | ||
![]() |
6932b9afbc | ||
![]() |
8eca7c2f14 | ||
![]() |
214a0a6960 | ||
![]() |
816ff9aa5d | ||
![]() |
d0bfbbfc81 | ||
![]() |
b68373b4f0 | ||
![]() |
d8c988c976 | ||
![]() |
922c27f1ac | ||
![]() |
f84cb6e334 | ||
![]() |
c1fe13a3a6 | ||
![]() |
7aae16f4d3 | ||
![]() |
db1785f49c | ||
![]() |
d38a3f0210 | ||
![]() |
11bdb939b1 | ||
![]() |
8851fc00e6 | ||
![]() |
6a9de0ce34 | ||
![]() |
069e9d180a | ||
![]() |
e6d9417f86 | ||
![]() |
f86b239469 | ||
![]() |
5b433c412d | ||
![]() |
bb933fd553 | ||
![]() |
60d674d24e | ||
![]() |
44af214b09 | ||
![]() |
79347c3d7b | ||
![]() |
3beb406eed | ||
![]() |
0cffd5a181 | ||
![]() |
571bd12a47 | ||
![]() |
c2adac3257 | ||
![]() |
c08262ce55 | ||
![]() |
ecc1d13025 | ||
![]() |
c3e13d795c | ||
![]() |
c2607f95e4 | ||
![]() |
12e76e7b74 | ||
![]() |
0fd7538c80 | ||
![]() |
47c986f65d | ||
![]() |
23bc0c7f13 | ||
![]() |
acced753dd | ||
![]() |
859815f758 | ||
![]() |
e903e4baeb | ||
![]() |
0ca43276b8 | ||
![]() |
f18f2274ca | ||
![]() |
c74e8ee437 | ||
![]() |
e03f563425 | ||
![]() |
19c3e5253d | ||
![]() |
6bf551944b | ||
![]() |
838cd055d8 | ||
![]() |
f400377de6 | ||
![]() |
c7d8ed689f | ||
![]() |
22862e918b | ||
![]() |
9ef28c7180 | ||
![]() |
5c118d7a44 | ||
![]() |
9db2e51fa1 | ||
![]() |
97edee8b51 | ||
![]() |
6f0b8b20ee | ||
![]() |
529c3ed9b1 | ||
![]() |
11975eabeb | ||
![]() |
39589ced80 | ||
![]() |
be1fa8eea8 | ||
![]() |
5fc99be7ad | ||
![]() |
b495353128 | ||
![]() |
c78063403e | ||
![]() |
a822b8f5ab | ||
![]() |
b1675a0482 | ||
![]() |
52e7beb086 | ||
![]() |
4d985ac838 | ||
![]() |
2985c227e4 | ||
![]() |
bfbadb7148 | ||
![]() |
5bd7f4ff45 | ||
![]() |
49ea9b62e2 | ||
![]() |
108db01b93 | ||
![]() |
ace1209cfe | ||
![]() |
9427f96264 | ||
![]() |
2dc13e3e12 | ||
![]() |
413858eab1 | ||
![]() |
96dd1dbff2 | ||
![]() |
007a7ffa3d | ||
![]() |
5df2fdf034 | ||
![]() |
22876958c3 | ||
![]() |
dc05017b83 | ||
![]() |
5b6b8d8697 | ||
![]() |
dcf9df0c74 | ||
![]() |
ff49fd19ab | ||
![]() |
c464df1624 | ||
![]() |
0a9104c98e | ||
![]() |
0bb9f355fb | ||
![]() |
6193a4c8ce | ||
![]() |
00e84b2eb9 | ||
![]() |
221303de2b | ||
![]() |
fab83a3f61 | ||
![]() |
0ad2140d13 | ||
![]() |
2de909fd95 | ||
![]() |
1241b03c47 | ||
![]() |
8abb1522cd | ||
![]() |
6cfd9f0fe8 | ||
![]() |
881487a85d | ||
![]() |
b121b6668b | ||
![]() |
2e608abf91 | ||
![]() |
6431f2aeaa | ||
![]() |
394dd559ea | ||
![]() |
29ac0bd066 | ||
![]() |
86202ba2b4 | ||
![]() |
28d3bf6daa | ||
![]() |
221d105061 | ||
![]() |
6b34b86d5f | ||
![]() |
c6c28d90f4 | ||
![]() |
e0bd750795 | ||
![]() |
fec51dcd1b | ||
![]() |
c934fcdf5a | ||
![]() |
4a1ac032ce | ||
![]() |
8127e97b15 | ||
![]() |
948c5b57cf | ||
![]() |
14477b6460 | ||
![]() |
861c27714e | ||
![]() |
2318ded9af | ||
![]() |
d7db1f924c | ||
![]() |
31b5e48d0a | ||
![]() |
5ef80cc16f | ||
![]() |
64ebbbc202 | ||
![]() |
771d936ae7 | ||
![]() |
2c9b6d1325 | ||
![]() |
99ec9b7eb6 | ||
![]() |
16eaae7be0 | ||
![]() |
d2cdba8b9e | ||
![]() |
49635c94aa | ||
![]() |
f060afcc31 | ||
![]() |
753c412dde | ||
![]() |
dfc907b37f | ||
![]() |
1ec9d97cb9 | ||
![]() |
357e002d98 | ||
![]() |
c7984a3de8 | ||
![]() |
0b250484d7 | ||
![]() |
2f0d0bec1e | ||
![]() |
b7e4ccad04 | ||
![]() |
2236f3029d | ||
![]() |
f3cc62be91 | ||
![]() |
334d2d8724 | ||
![]() |
adfe19a7c1 | ||
![]() |
88a89b1098 | ||
![]() |
9434bacdcd | ||
![]() |
1bfc1f3b56 | ||
![]() |
9a65072e99 | ||
![]() |
f90fc34428 | ||
![]() |
14fe5b5961 | ||
![]() |
4ead5dd36f | ||
![]() |
9b28c0e44b | ||
![]() |
730e7315d2 | ||
![]() |
55e7f2b0e7 | ||
![]() |
ba325fd45d | ||
![]() |
12de45913a | ||
![]() |
a9ffbbce12 | ||
![]() |
032f8afdf3 | ||
![]() |
f14391715c | ||
![]() |
a11e2678b4 | ||
![]() |
24b4d7c7e6 | ||
![]() |
dd48a3bd29 | ||
![]() |
45fd263cc1 | ||
![]() |
6eadf4916d | ||
![]() |
60faa73938 | ||
![]() |
049124c9a8 | ||
![]() |
e5c9266328 | ||
![]() |
6e6d44369c | ||
![]() |
aef48af387 | ||
![]() |
3edd971ab7 | ||
![]() |
6c8086a736 | ||
![]() |
402b1a2578 | ||
![]() |
bdf828fe85 | ||
![]() |
abca0e9189 | ||
![]() |
002d342eea | ||
![]() |
20820098ec | ||
![]() |
818a118c4e | ||
![]() |
007f012b44 | ||
![]() |
35186bc9ae | ||
![]() |
f216e783ba | ||
![]() |
27466e2e87 | ||
![]() |
76ff728f3b | ||
![]() |
6a722a57b4 | ||
![]() |
27775680d6 | ||
![]() |
8317ad55d6 | ||
![]() |
fa1682f48c | ||
![]() |
5dfbc0e06e | ||
![]() |
e84a490c5f | ||
![]() |
109d049564 | ||
![]() |
f90ee65cfe | ||
![]() |
0c250b306d | ||
![]() |
d75efb6324 | ||
![]() |
2f5bca7322 | ||
![]() |
8bd5daef3e | ||
![]() |
d5bfa7b251 | ||
![]() |
111a8a5ccd | ||
![]() |
302c57ee82 | ||
![]() |
e43f1b8bf5 | ||
![]() |
9506193e1e | ||
![]() |
d69a846299 | ||
![]() |
2d8df0e9a3 | ||
![]() |
fdc910d6cf | ||
![]() |
5214577e7d | ||
![]() |
adb9b97ecf | ||
![]() |
5f7352728b | ||
![]() |
5f59e8dc66 | ||
![]() |
2907bdbdf9 | ||
![]() |
d1d8734564 | ||
![]() |
f3b02cc53b | ||
![]() |
95a69df7b8 | ||
![]() |
985f2233cf | ||
![]() |
a622dfbdac | ||
![]() |
7f52ae8f66 | ||
![]() |
dc7359c6c4 | ||
![]() |
453e0ae7e7 | ||
![]() |
36f0308c7a | ||
![]() |
e4a9f98a0c | ||
![]() |
4d1486c4c7 | ||
![]() |
a23f70f379 | ||
![]() |
e44cb61793 |
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
#### Description
|
||||
A few sentences describing the overall goals of the pull request's commits.
|
||||
|
||||
#### Screenshot (if UI related)
|
||||
|
||||
#### Issues Fixed or Closed by this PR
|
||||
|
||||
* Fixes #XXXX
|
55
README.md
55
README.md
@@ -14,7 +14,7 @@ Please see our [troubleshooting and contributing guidelines](CONTRIBUTING.md) be
|
||||
|
||||
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar3](https://github.com/mylar3/mylar3), [Lidarr](https://github.com/lidarr/lidarr), [DuckieTV](https://github.com/SchizoDuckie/DuckieTV), [qBittorrent](https://www.qbittorrent.org/), [Nefarious](https://github.com/lardbit/nefarious) etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
|
||||
|
||||
Developer note: The software implements the [Torznab](https://web.archive.org/web/20220517013745/https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
Developer note: The software implements the [Torznab](https://torznab.github.io/spec-1.3-draft/index.html) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
|
||||
A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](https://github.com/webtor-io/go-jackett)
|
||||
|
||||
@@ -41,7 +41,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BitRu
|
||||
* BitSearch
|
||||
* BT.etree
|
||||
* BT4G
|
||||
* BTDIGG
|
||||
* BTMET
|
||||
* BTSOW
|
||||
@@ -67,7 +66,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* FireBit
|
||||
* freshMeat
|
||||
* Frozen Layer
|
||||
* FTUApps
|
||||
* GamesTorrents
|
||||
* GkTorrent
|
||||
* GloDLS
|
||||
@@ -108,9 +106,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PornoTorrent
|
||||
* ProPorn
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTorNeT
|
||||
* Rus-media
|
||||
* RuTor
|
||||
* RuTracker.RU
|
||||
* Seedoff
|
||||
@@ -125,7 +121,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Tokyo Tosho
|
||||
* Torlock
|
||||
* Torrent[CORE]
|
||||
* Torrent Downloads (TD)
|
||||
* Torrent Oyun indir
|
||||
* torrent.by
|
||||
* torrent-pirat
|
||||
@@ -133,13 +128,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Torrent9 clone
|
||||
* Torrent911
|
||||
* TorrentFunk
|
||||
* TorrentDownloads
|
||||
* TorrentGalaxy (TGx)
|
||||
* TorrentKitty
|
||||
* TorrentProject2
|
||||
* TorrentQQ (토렌트큐큐)
|
||||
* Torrents.csv
|
||||
* TorrentSir (토렌트썰)
|
||||
* Torrentv
|
||||
* TorrentView (토렌트뷰)
|
||||
* TorrentWhiz ( 토렌트위즈)
|
||||
* Torrentz2eu
|
||||
@@ -148,7 +143,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* truPornolabs
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
* VST Torrents
|
||||
* VST Torrentz
|
||||
* VSTorrent
|
||||
* xxxAdultTorrent
|
||||
* XXXClub
|
||||
* xxxtor
|
||||
@@ -192,10 +188,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Il CorSaRo Blu
|
||||
* Kinorun
|
||||
* Kinozal
|
||||
* Lightning-Tor
|
||||
* LostFilm.tv
|
||||
* Magnetico (Local DHT) [[site](https://github.com/boramalper/magnetico)]
|
||||
* Marine Tracker
|
||||
* Masters-TB
|
||||
* Mazepa
|
||||
* Metal Tracker
|
||||
* Moviesite
|
||||
@@ -240,14 +236,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 2xFree
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3ChangTrai (3CT)
|
||||
* 3D Torrents (3DT)
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* 720pier
|
||||
* Abnormal
|
||||
* ABtorrents (ABT + RNS)
|
||||
* Acervos [![(invite needed)][inviteneeded]](#)
|
||||
* Acid Lounge (A-L)
|
||||
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
|
||||
* Aftershock
|
||||
@@ -270,7 +265,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* AudioNews (AN)
|
||||
* Aussierul.es [![(invite needed)][inviteneeded]](#)
|
||||
* AvistaZ (AsiaTorrents)
|
||||
* Back-ups [![(invite needed)][inviteneeded]](#)
|
||||
* Back-ups
|
||||
* BakaBT
|
||||
* BeiTai
|
||||
* Best-Core
|
||||
@@ -295,7 +290,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety
|
||||
* BTNext (BTNT) [![(invite needed)][inviteneeded]](#)
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
@@ -306,10 +301,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CartoonChaos (CC)
|
||||
* Cathode-Ray.Tube (CRT)
|
||||
* CCFBits [![(invite needed)][inviteneeded]](#)
|
||||
* Central Torrent
|
||||
* CeskeForum
|
||||
* CGPeers [![(invite needed)][inviteneeded]](#)
|
||||
* CHDBits [![(invite needed)][inviteneeded]](#)
|
||||
* ChileBT
|
||||
* CiNEFiLHD
|
||||
* Cinemageddon [![(invite needed)][inviteneeded]](#)
|
||||
* CinemaMovieS_ZT
|
||||
* Cinematik [![(invite needed)][inviteneeded]](#)
|
||||
@@ -321,6 +318,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CrazySpirits
|
||||
* CrnaBerza
|
||||
* DANISH BYTES
|
||||
* Dark-Shadow
|
||||
* DataScene (DS)
|
||||
* DataTalli
|
||||
* DesiTorrents
|
||||
@@ -353,7 +351,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* GainBound [![(invite needed)][inviteneeded]](#)
|
||||
* Gay-Torrents.org
|
||||
* GAYtorrent.ru
|
||||
* GazelleGames (GGn) [![(invite needed)][inviteneeded]](#)
|
||||
* GazelleGames (GGn)
|
||||
* Generation-Free
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT)
|
||||
@@ -388,9 +386,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDTorrents.it [![(invite needed)][inviteneeded]](#)
|
||||
* HDTurk
|
||||
* HDU
|
||||
* HDVIDEO
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasHut
|
||||
* HHanClub
|
||||
* House of Devil
|
||||
* HQMusic
|
||||
@@ -399,8 +397,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* Infire
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* ItaTorrents
|
||||
* JME-REUNIT3D
|
||||
* JoyHD [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
@@ -419,24 +419,28 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* leech24
|
||||
* LemonHD
|
||||
* Les-Cinephiles
|
||||
* Lesbians4u
|
||||
* Libble
|
||||
* LibraNet (LN)
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
* Locadora
|
||||
* LosslessClub [![(invite needed)][inviteneeded]](#)
|
||||
* LST
|
||||
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
|
||||
* M-Team TP (MTTP)
|
||||
* MaDs Revolution
|
||||
* magic-heaven
|
||||
* Magico (Trellas) [![(invite needed)][inviteneeded]](#)
|
||||
* Majomparádé (TurkDepo)
|
||||
* Mansão dos Animes (MDAN)
|
||||
* MegamixTracker
|
||||
* MeseVilág (Fairytale World)
|
||||
* MetalGuru
|
||||
* Milkie
|
||||
* MIRcrew
|
||||
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
|
||||
* MNV (Max-New-Vision)
|
||||
* MOJBLiNK
|
||||
* MonikaDesign (MDU) [![(invite needed)][inviteneeded]](#)
|
||||
* MoreThanTV (MTV)
|
||||
* MouseBits
|
||||
* Movie-Torrentz
|
||||
@@ -447,6 +451,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NicePT
|
||||
* NorBits
|
||||
* NORDiCHD
|
||||
* Ntelogo
|
||||
* Old Toons World
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
* Orpheus
|
||||
@@ -454,6 +460,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* OurBits (HDPter)
|
||||
* P2PBG
|
||||
* Partis
|
||||
* Party-Tracker
|
||||
* PassThePopcorn (PTP)
|
||||
* Peeratiko
|
||||
* Peers.FM
|
||||
@@ -473,6 +480,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PTerClub
|
||||
* PTFiles (PTF)
|
||||
* PThome [![(invite needed)][inviteneeded]](#)
|
||||
* PT分享站 (itzmx)
|
||||
* PTSBAO
|
||||
* PTtime
|
||||
* Punk's Horror Tracker
|
||||
@@ -483,6 +491,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* R3V WTF! [![(invite needed)][inviteneeded]](#)
|
||||
* Racing4Everyone (R4E)
|
||||
* RacingForMe (RFM)
|
||||
* RareShare2
|
||||
* Red Star Torrent (RST) [![(invite needed)][inviteneeded]](#)
|
||||
* Redacted (PassTheHeadphones)
|
||||
* RedBits
|
||||
@@ -492,15 +501,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* RevolutionTT
|
||||
* Romanian Metal Torrents (RMT) [![(invite needed)][inviteneeded]](#)
|
||||
* RPTorrents
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* SceneRush
|
||||
* SceneTime
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* Secret Cinema
|
||||
* SeedFile
|
||||
* Shareisland
|
||||
* SharkPT
|
||||
* Shazbat [![(invite needed)][inviteneeded]](#)
|
||||
* Shazbat
|
||||
* SiamBIT
|
||||
* SkipTheCommercials
|
||||
* SkipTheTrailers
|
||||
@@ -567,19 +575,22 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentSeeds (TS)
|
||||
* TotallyKids (TK)
|
||||
* ToTheGlory (TTG) [![(invite needed)][inviteneeded]](#)
|
||||
* TranceTraffic [![(invite needed)][inviteneeded]](#)
|
||||
* Trezzor [![(invite needed)][inviteneeded]](#)
|
||||
* TranceTraffic
|
||||
* TreZzoR [![(invite needed)][inviteneeded]](#)
|
||||
* TurkSeed
|
||||
* TurkTorrent (TT)
|
||||
* TV Chaos UK (TVCUK)
|
||||
* TvRoad
|
||||
* TVstore
|
||||
* Twilight Torrents
|
||||
* U2 (U2分享園@動漫花園) [![(invite needed)][inviteneeded]](#)
|
||||
* UBits
|
||||
* UHDBits
|
||||
* UltraHD
|
||||
* UnionGang
|
||||
* UnleashTheCartoons
|
||||
* UnlimitZ
|
||||
* Uploads
|
||||
* UTOPIA
|
||||
* White Angel
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
* World-of-Tomorrow
|
||||
|
@@ -2,7 +2,7 @@
|
||||
name: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
variables:
|
||||
majorVersion: 0
|
||||
minorVersion: 20
|
||||
minorVersion: 21
|
||||
patchVersion: $[counter(variables['minorVersion'], 1)] # this will reset when we bump minor
|
||||
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
buildConfiguration: Release
|
||||
|
@@ -72,11 +72,6 @@ function getHashArgs() {
|
||||
}, 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;
|
||||
}
|
||||
@@ -466,7 +461,7 @@ function displayUnconfiguredIndexersList() {
|
||||
$('#indexers div.dataTables_filter input').focusWithoutScrolling();
|
||||
});
|
||||
|
||||
$("#modals").append(UnconfiguredIndexersDialog);
|
||||
$("#modals").html(UnconfiguredIndexersDialog);
|
||||
|
||||
$('#add-selected-indexers').click(function () {
|
||||
var selectedIndexers = $('#unconfigured-indexer-datatable').DataTable().$('input[type="checkbox"]');
|
||||
@@ -804,7 +799,7 @@ function newConfigModal(title, config, caps, link, alternativesitelinks, descrip
|
||||
link: link,
|
||||
description: description
|
||||
}));
|
||||
$("#modals").append(configForm);
|
||||
$("#modals").html(configForm);
|
||||
populateConfigItems(configForm, config);
|
||||
|
||||
if (alternativesitelinks.length >= 1) {
|
||||
@@ -1048,14 +1043,13 @@ function showSearch(selectedFilter, selectedIndexer, query, category) {
|
||||
var selectedIndexers = [];
|
||||
if (selectedIndexer)
|
||||
selectedIndexers = selectedIndexer.split(",");
|
||||
$('#select-indexer-modal').remove();
|
||||
var releaseTemplate = Handlebars.compile($("#jackett-search").html());
|
||||
var releaseDialog = $(releaseTemplate({
|
||||
filters: availableFilters,
|
||||
active: selectedFilter
|
||||
}));
|
||||
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
|
||||
releaseDialog.on('shown.bs.modal', function () {
|
||||
releaseDialog.find('#searchquery').focusWithoutScrolling();
|
||||
@@ -1155,12 +1149,6 @@ function showSearch(selectedFilter, selectedIndexer, query, category) {
|
||||
|
||||
var trackerId = filterId || "all";
|
||||
api.resultsForIndexer(trackerId, queryObj, function (data) {
|
||||
for (var i = 0; i < data.Results.length; i++) {
|
||||
var item = data.Results[i];
|
||||
item.Title = insertWordWrap(item.Title);
|
||||
item.CategoryDesc = insertWordWrap(item.CategoryDesc);
|
||||
}
|
||||
|
||||
$('#jackett-search-perform').html($('#search-button-ready').html());
|
||||
var searchResults = $('#searchResults');
|
||||
searchResults.empty();
|
||||
@@ -1307,7 +1295,7 @@ $.fn.dataTable.ext.search = [
|
||||
];
|
||||
|
||||
function updateSearchResultTable(element, results) {
|
||||
var resultsTemplate = Handlebars.compile($("#jackett-search-results").html());
|
||||
var resultsTemplate = Handlebars.compile($("#jackett-search-results").text());
|
||||
element.html($(resultsTemplate(results)));
|
||||
element.find('tr.jackett-search-results-row').each(function () {
|
||||
updateReleasesRow(this);
|
||||
@@ -1504,11 +1492,6 @@ function bindUIButtons() {
|
||||
|
||||
$("#jackett-show-releases").click(function () {
|
||||
api.getServerCache(function (data) {
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
var item = data[i];
|
||||
item.Title = insertWordWrap(item.Title);
|
||||
item.CategoryDesc = insertWordWrap(item.CategoryDesc);
|
||||
}
|
||||
var releaseTemplate = Handlebars.compile($("#jackett-releases").html());
|
||||
var item = {
|
||||
releases: data,
|
||||
@@ -1597,7 +1580,7 @@ function bindUIButtons() {
|
||||
});
|
||||
}
|
||||
});
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
releaseDialog.modal("show");
|
||||
}).fail(function () {
|
||||
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");
|
||||
@@ -1616,7 +1599,7 @@ function bindUIButtons() {
|
||||
logs: data
|
||||
};
|
||||
var releaseDialog = $(releaseTemplate(item));
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
releaseDialog.modal("show");
|
||||
}).fail(function () {
|
||||
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");
|
||||
|
@@ -465,11 +465,11 @@
|
||||
<td class="fit">{{jacketTimespan PublishDate}}</td>
|
||||
<td class="fit">{{jacketTimespan FirstSeen}}</td>
|
||||
<td class="fit">{{Tracker}}</td>
|
||||
<td class="Title"><a href="{{Details}}">{{Title}}</a> <span class="release-labels"></span></td>
|
||||
<td class="Title" style="word-break: break-all"><a href="{{Details}}" target="_blank">{{Title}}</a> <span class="release-labels"></span></td>
|
||||
<td class="fit">{{Size}}</td>
|
||||
<td class="fit">{{jacketSize Size}}</td>
|
||||
<td class="fit">{{Files}}</td>
|
||||
<td class="fit Cat">{{CategoryDesc}}</td>
|
||||
<td class="fit Cat" style="word-break: break-all">{{CategoryDesc}}</td>
|
||||
<td class="fit">{{Grabs}}</td>
|
||||
<td class="fit">{{Seeders}}</td>
|
||||
<td class="fit">{{Peers}}</td>
|
||||
@@ -529,10 +529,10 @@
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>You can search all configured indexers from this screen.</p>
|
||||
<label for="text">Query</label>
|
||||
<label for="searchquery">Query</label>
|
||||
<input class="form-control" type="text" name="query" id="searchquery" />
|
||||
{{#if filters}}
|
||||
<label for="filter">Filter</label>
|
||||
<label for="searchFilter">Filter</label>
|
||||
<select name="filter" id="searchFilter">
|
||||
<option value="all">all</option>
|
||||
{{#each filters}}
|
||||
@@ -540,9 +540,9 @@
|
||||
{{/each}}
|
||||
</select>
|
||||
{{/if}}
|
||||
<label for="tracker">Tracker</label>
|
||||
<label for="searchTracker">Tracker</label>
|
||||
<select name="tracker" id="searchTracker" multiple="multiple"></select>
|
||||
<label for="category">Category</label>
|
||||
<label for="searchCategory">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>
|
||||
<div id="searchResults"></div>
|
||||
@@ -592,11 +592,11 @@
|
||||
<td class="text-center">{{PublishDate}}</td>
|
||||
<td class="text-center" title="{{dateFormat PublishDate format="YYYY-MM-DD HH:mm:ss Z"}}">{{jacketTimespan PublishDate}}</td>
|
||||
<td class="text-center">{{Tracker}}</td>
|
||||
<td class="Title"><a href="{{Details}}" target="_blank">{{Title}}</a> <span class="release-labels"></span></td>
|
||||
<td class="Title" style="word-break: break-all"><a href="{{Details}}" target="_blank">{{Title}}</a> <span class="release-labels"></span></td>
|
||||
<td class="text-right">{{Size}}</td>
|
||||
<td class="text-right fit">{{jacketSize Size}}</td>
|
||||
<td class="text-center">{{Files}}</td>
|
||||
<td class="text-center Cat">{{CategoryDesc}}</td>
|
||||
<td class="text-center Cat" style="word-break: break-all">{{CategoryDesc}}</td>
|
||||
<td class="text-center">{{Grabs}}</td>
|
||||
<td class="text-center">{{Seeders}}</td>
|
||||
<td class="text-center">{{Peers}}</td>
|
||||
@@ -756,6 +756,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023010701"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023052701"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -20,7 +20,7 @@ Handlebars.registerHelper('jacketTimespan', function (context, block) {
|
||||
|
||||
var hours = timeSpan.asHours();
|
||||
if (hours < 48) {
|
||||
return Math.round(hours) + 'h ago';
|
||||
return parseFloat(hours).toFixed(1) + 'h ago';
|
||||
}
|
||||
|
||||
var days = timeSpan.asDays();
|
||||
|
@@ -47,9 +47,9 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: striprussian
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
label: Strip Cyrillic Letters
|
||||
default: true
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
@@ -91,13 +91,6 @@ search:
|
||||
paths:
|
||||
# https://tracker.0day.kiev.ua/browse.php?c10=1&c27=1&search=endgame&incldead=1&where=0
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace # S01 to Cезон 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: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
@@ -108,8 +101,19 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace # S01 to Cезон 1
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "езон $1"]
|
||||
- name: re_replace # E01 to Серии 1
|
||||
args: ["(?i)\\bE0*(\\d+)\\b", "ерии $1"]
|
||||
- name: re_replace # S01E01 to Сезон 1 Серии 1
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "езон $1 ерии $2"]
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr.rowtorrentinfo
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
@@ -123,22 +127,28 @@ search:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["[\\:\\-\\/\\|]", " "]
|
||||
- name: replace
|
||||
args: ["Кураж Бамбей", "kurazh"]
|
||||
- name: replace
|
||||
args: ["Кубик в Кубе", "Kubik"]
|
||||
- name: replace
|
||||
args: ["Кравец", "Kravec"]
|
||||
- name: re_replace
|
||||
args: ["(.*)\\([CСcс]езон\\s+(\\d+)\\)\\s+[CСcс]ери[ия]\\s+(\\d+)\\s+(\\d+)(.*)", "$1 S$2E$3-$4 rus $5"]
|
||||
args: ["(?i)\\bКураж Бамбей\\b", "kurazh"]
|
||||
- name: re_replace
|
||||
args: ["(.*)\\([CСcс]езон\\s+(\\d+)\\)(.*)", "$1 S$2 rus $3"]
|
||||
args: ["(?i)\\bКубик в Кубе\\b", "Kubik"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: replace
|
||||
args: ["WEB DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
args: ["(?i)\\bКравец\\b", "Kravec"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(.*)\\([CС]езон\\s+(\\d+)\\)\\s+[CС]ери[ия]\\s+(\\d+)\\s+(\\d+)(.*)", "$1 S$2E$3-$4 rus $5"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(.*)\\([CС]езон\\s+(\\d+)\\)(.*)", "$1 S$2 rus $3"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV\\s?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT\\s?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\s?DL\\s?Rip\\b", "WEBDL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB Rip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB DL\\b", "WEBDL"]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -184,4 +194,6 @@ search:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.2
|
||||
description:
|
||||
selector: a[href^="details.php?id="]
|
||||
# engine n/a
|
||||
|
@@ -6,6 +6,10 @@ language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://0magnet.co/
|
||||
- https://13mag.net/
|
||||
- https://16mag.net/
|
||||
legacylinks:
|
||||
- https://0magnet.com/
|
||||
- https://9mag.net/
|
||||
|
||||
|
@@ -13,13 +13,11 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.boo/
|
||||
- https://1337x.mrunblock.guru/
|
||||
- https://1337x.unblockit.asia/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.is/
|
||||
- https://1337x.nocensor.work/
|
||||
- https://1337x.unblockit.how/
|
||||
- https://1337x.unblockit.cam/
|
||||
- https://1337x.nocensor.biz/
|
||||
- https://1337x.gd/
|
||||
@@ -39,6 +37,10 @@ legacylinks:
|
||||
- https://1337x.unblockit.ink/
|
||||
- https://1337x.nocensor.art/
|
||||
- https://1337x.unblockit.bio/
|
||||
- https://1337x.unblockit.boo/
|
||||
- https://1337x.mrunblock.guru/
|
||||
- https://1337x.mrunblock.life/ # cloudflare 403
|
||||
- https://1337x.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: 1ptbar
|
||||
name: 1ptbar
|
||||
description: "1ptbar is a CHINESE Private Torrent Tracker for Movies, TV, and e-Learning"
|
||||
description: "1ptbar is a CHINESE Private Torrent Tracker for MOVIES / TV / E-LEARNING"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
@@ -25,26 +25,28 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
- name: username
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the 1ptbar Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -61,27 +63,47 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
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: cookie
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: torrents.php
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ 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_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
@@ -114,8 +136,13 @@ search:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-last-of-type(6) > span[title]
|
||||
@@ -161,5 +188,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.32 2022-12-05
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -30,13 +30,13 @@ caps:
|
||||
- {id: 423, cat: XXX, desc: "IV(写真影片)", default: true}
|
||||
- {id: 424, cat: XXX, desc: "IV(写真图集)", default: true}
|
||||
# special
|
||||
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: true}
|
||||
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: true}
|
||||
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: true}
|
||||
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: true}
|
||||
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: true}
|
||||
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: true}
|
||||
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: true}
|
||||
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: false}
|
||||
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: false}
|
||||
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: false}
|
||||
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: false}
|
||||
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: false}
|
||||
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: false}
|
||||
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: false}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -103,7 +103,6 @@ login:
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -111,7 +110,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 413, 420, 421, 422, 423, 424]
|
||||
categories: ["!", 526, 527, 528, 529, 530, 531, 532]
|
||||
- path: special.php
|
||||
categories: [526, 527, 528, 529, 530, 531, 532]
|
||||
inputs:
|
||||
@@ -213,5 +212,5 @@ search:
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.8.0 2023-01-26
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: 3changtrai
|
||||
name: 3ChangTrai
|
||||
description: "3ChangTrai (3CT) is a VIETNAMESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
description: "3ChangTrai (3CT) is a VIETNAMESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: vi-VN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
@@ -100,7 +100,6 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
@@ -126,7 +125,7 @@ search:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.lazyload
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
@@ -174,7 +173,10 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v3.0 2020-04-30
|
||||
selector: td:nth-child(3)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP 3ChangTrai v3.0 2020-04-30
|
||||
|
@@ -104,6 +104,9 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
- name: re_replace
|
||||
args: ["(\\b0\\b)", "31"]
|
||||
|
||||
title:
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
details:
|
||||
|
@@ -5,8 +5,6 @@ description: "52PT is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- a66dce17f30d8b03be18502265e3dc09ec50b83b # expired 26-Mar-2023
|
||||
links:
|
||||
- https://52pt.site/
|
||||
|
||||
@@ -42,10 +40,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -98,6 +92,12 @@ search:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
@@ -105,12 +105,6 @@ search:
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -160,12 +154,12 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -35,7 +35,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://aither.cc/\" target =_blank>Aither</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://aither.cc/\" target=\"_blank\">Aither</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -89,7 +89,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -98,8 +97,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -178,6 +178,9 @@ search:
|
||||
_quality:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary:contains("1080p"), div.list-group-item-content p.m-0 span.badge-primary:contains("720p"), div.list-group-item-content p.m-0 span.badge-primary:contains("4k")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["4k", "2160p"]
|
||||
_year:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary[style$="#246AB6;"]
|
||||
optional: true
|
||||
|
@@ -19,11 +19,11 @@ caps:
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: striprussian
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Russian
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussian
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
@@ -31,7 +31,7 @@ settings:
|
||||
search:
|
||||
paths:
|
||||
# https://github.com/anilibria/docs/blob/master/api_v3.md
|
||||
- path: "https://api.anilibria.tv/v3/{{ if .Keywords }}searchTitles{{ else }}getUpdates{{ end }}"
|
||||
- path: "https://api.anilibria.tv/v3/title/{{ if .Keywords }}search{{ else }}updates{{ end }}"
|
||||
response:
|
||||
type: json
|
||||
|
||||
@@ -41,9 +41,9 @@ search:
|
||||
limit: 100
|
||||
|
||||
keywordsfilters:
|
||||
# strip season and ep
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:[SE]?\\d{1,4}){1,2}$", ""]
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: list
|
||||
@@ -65,9 +65,11 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["([А-Яа-яЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1{{ end }}"]
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["^[\\.\\s\\d,\\-—:]+", ""]
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: re_replace
|
||||
args: ["^OVA$", ""]
|
||||
year:
|
||||
@@ -75,14 +77,14 @@ search:
|
||||
_quality:
|
||||
selector: quality.string
|
||||
title:
|
||||
text: "{{ if .Config.striprussian }}{{ else }}{{ .Result.title_ru }} / {{ end }}{{ .Result.title_en }}{{ if .Result.title_alternative }} / AKA {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}]{{ if .Result._episodes }} - E{{ .Result._episodes }}{{ else }}{{ end }}"
|
||||
text: "{{ if .Config.stripcyrillic }}{{ else }}{{ .Result.title_ru }} / {{ end }}{{ .Result.title_en }}{{ if .Result.title_alternative }} / AKA {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}]{{ if .Result._episodes }} - E{{ .Result._episodes }}{{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: [" - \\bEФильм\\b", " - MOVIE"]
|
||||
- name: re_replace
|
||||
args: [" - \\bEOVA\\b", " - OVA"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussian }} - RUS{{ else }}{{ end }}"
|
||||
args: "{{ if .Config.addrussiantotitle }} - RUS{{ else }}{{ end }}"
|
||||
_code:
|
||||
selector: ..code
|
||||
details:
|
||||
|
@@ -37,7 +37,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://animetracker.cc/\" target =_blank>AnimeTracker</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://animetracker.cc/\" target=\"_blank\">AnimeTracker</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -91,7 +91,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -100,8 +99,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -40,7 +40,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://animeworld.cx/\" target =_blank>AnimeWorld</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://animeworld.cx/\" target=\"_blank\">AnimeWorld</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -94,13 +94,10 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
|
@@ -6,8 +6,6 @@ language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
certificates:
|
||||
- 7b36f0dc75d3340727b6f74bbdbde46ec59b7037 # expired 12 Feb 2023
|
||||
links:
|
||||
- https://asnet.pw/
|
||||
|
||||
|
@@ -31,7 +31,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Key by accessing your <a href=\"https://anthelion.me/\" target =_blank>Anthelion</a> account <i>Settings</i> page and scrolling down to the <b>API Key</b> section.<br>Tick the <b>Search</b> and <b>Download</b> checkboxes and click the <b>save profile</b> button to generate the key."
|
||||
default: "Find or Generate a new API Key by accessing your <a href=\"https://anthelion.me/\" target=\"_blank\">Anthelion</a> account <i>Settings</i> page and scrolling down to the <b>API Key</b> section.<br>Tick the <b>Search</b> and <b>Download</b> checkboxes and click the <b>save profile</b> button to generate the key."
|
||||
|
||||
login:
|
||||
path: api.php
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: arabp2p
|
||||
name: ArabP2P
|
||||
description: "ArabP2P is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ar-AR
|
||||
language: ar-AE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: arabtorrents
|
||||
name: ArabTorrents
|
||||
description: "ArabTorrents is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ar-AR
|
||||
language: ar-AE
|
||||
type: private
|
||||
encoding: windows-1256
|
||||
requestDelay: 2
|
||||
@@ -145,7 +145,7 @@ download:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*download-torrent-(\\d+).*\" \"$1\"}}"
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -169,22 +169,22 @@ search:
|
||||
args: ["^(.+)$", "*$1*"]
|
||||
|
||||
rows:
|
||||
selector: table#sortabletable > tbody > tr:has(div > a[href*="details.php?id="])
|
||||
selector: table#sortabletable > tbody > tr:has(span > a[href*="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td a[href*="/browse.php?category="]
|
||||
selector: td a[href*="/torrent-category-"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
- name: regexp
|
||||
args: "torrent-category-(\\d+)\/"
|
||||
title:
|
||||
selector: td a[href*="/details.php?id="]
|
||||
selector: td div.tooltip-target
|
||||
details:
|
||||
selector: td a[href*="/details.php?id="]
|
||||
selector: span a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download.php?id="]
|
||||
selector: a[href*="/download-torrent-"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(2) > div:nth-child(3)
|
||||
|
@@ -5,8 +5,6 @@ description: "ArenaBG is a BULGARIAN Semi-Private Torrent Tracker for 0DAY / GEN
|
||||
language: bg-BG
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- d5d96eaf33f4b7470a7009f1e591a45f6af0430d # expired 15 Oct 2022
|
||||
links:
|
||||
- https://arenabg.com/
|
||||
legacylinks:
|
||||
@@ -30,6 +28,7 @@ caps:
|
||||
- {id: 20, cat: Movies/HD, desc: "Movies / Movies HD"}
|
||||
- {id: 21, cat: Movies/HD, desc: "Movies / x265"}
|
||||
- {id: 22, cat: Movies/UHD, desc: "Movies / 4K"}
|
||||
- {id: 59, cat: Movies/HD, desc: "Movies / AV1"}
|
||||
- {id: 2, cat: TV, desc: "Series"}
|
||||
- {id: 23, cat: TV/HD, desc: "Series / TV Episodes HD"}
|
||||
- {id: 24, cat: TV, desc: "Series / TV Episodes"}
|
||||
|
@@ -41,10 +41,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -61,6 +57,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
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: cookie
|
||||
|
@@ -8,7 +8,8 @@ encoding: UTF-8
|
||||
requestDelay: 5
|
||||
links:
|
||||
- https://badasstorrents.com/
|
||||
- https://badasstorrents.mrunblock.guru/
|
||||
- https://badasstorrents.mrunblock.life/
|
||||
- https://badasstorrents.nocensor.click/
|
||||
legacylinks:
|
||||
- https://badasstorrents.nocensor.work/
|
||||
- https://badasstorrents.nocensor.biz/
|
||||
@@ -16,6 +17,7 @@ legacylinks:
|
||||
- https://badasstorrents.nocensor.world/
|
||||
- https://badasstorrents.nocensor.lol/
|
||||
- https://badasstorrents.nocensor.art/
|
||||
- https://badasstorrents.mrunblock.guru/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -163,5 +163,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -63,9 +63,13 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: striprussian
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
@@ -99,10 +103,13 @@ search:
|
||||
s: "{{ .Config.sort }}"
|
||||
d: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: table > tbody#highlighted > tr:has(a[href^="browse.php?cat="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -116,25 +123,57 @@ search:
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["[\\.\\,\\:\\-\\/\\|]", " "]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+).+[CСcс]ери[ия]\\s+(\\d+)\\s+(\\d+)\\s+из\\s+\\d+(.*)", "$1 S$2E$3-$4 rus $5"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+).+[CСcс]ери[ия]\\s+(\\d+)\\s+из\\s+\\d+(.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+)(.*)", "$1 S$2 rus $3"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]]ери[ия]\\s+(\\d+)(.*)", "$1 E$2 rus $3"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: replace
|
||||
args: ["WEBRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEB DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\s\\|\\sот\\s([\\w\\p{P}\\p{S}]+)$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["\\s\\|\\s(\\w{4,})$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -188,4 +227,6 @@ search:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
description:
|
||||
selector: a[href^="details.php?id="]
|
||||
# engine n/a
|
||||
|
@@ -23,10 +23,16 @@ caps:
|
||||
- {id: 95, cat: Movies/HD, desc: "Film/FHD/Eng", default: true}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Film/UHD/Hun", default: true}
|
||||
- {id: 93, cat: Movies/UHD, desc: "Film/UHD/Eng", default: true}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
|
||||
- {id: 22, cat: TV, desc: "Sorozat/Hun", default: true}
|
||||
- {id: 58, cat: TV, desc: "Sorozat/Eng", default: true}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
|
||||
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
|
||||
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
|
||||
- {id: 69, cat: TV/Anime, desc: "Mese/SD", default: true}
|
||||
- {id: 68, cat: TV/Anime, desc: "Mese/DVD", default: true}
|
||||
- {id: 91, cat: TV/Anime, desc: "Mese/HD", default: true}
|
||||
@@ -35,19 +41,13 @@ caps:
|
||||
- {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun", default: true}
|
||||
- {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng", default: true}
|
||||
- {id: 31, cat: PC/Games, desc: "Játék/PC", default: true}
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
|
||||
- {id: 81, cat: PC/0day, desc: "Program/PC", default: true}
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
|
||||
- {id: 49, cat: PC/0day, desc: "Program/Rip", default: true}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
|
||||
- {id: 14, cat: PC, desc: "Program/Egyéb", default: true}
|
||||
- {id: 65, cat: Other, desc: "Egyéb", default: true}
|
||||
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
|
||||
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
|
||||
# the following are no longer in the cat list in the search page, but are still in the profile cat list
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
|
||||
- {id: 97, cat: TV/Anime, desc: "Sorozat/Mese", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -99,7 +99,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: [85, 86, 15, 16, 17, 19, 83, 82, 94, 95, 92, 93, 64, 24, 22, 58, 69, 68, 91, 25, 26, 84, 71, 31, 81, 49, 27, 50, 14, 65, 54, 67, 70]
|
||||
categories: ["!", 33, 66, 89]
|
||||
inputs:
|
||||
# 0 all, 1 active, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 0
|
||||
@@ -117,22 +117,26 @@ search:
|
||||
# can support genre searching but you need to know the id, eg &genre23=1 for Comedy (id is 23)
|
||||
|
||||
rows:
|
||||
selector: "tr[class^=\"toriadatok_\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
selector: "tr[class^=\"toriadatok\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: img[src^="pic/kategoria/"]
|
||||
attribute: title
|
||||
title:
|
||||
selector: a.preview
|
||||
selector: font[class="tori"], a.preview
|
||||
_id:
|
||||
selector: td.tori_infok
|
||||
attribute: id
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
details:
|
||||
text: "details.php?id={{ .Result._id }}#adatlap"
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: "details.php?id={{ .Result._id }}#adatlap"
|
||||
download:
|
||||
text: "download.php?torrent={{ .Result._id }}"
|
||||
poster:
|
||||
@@ -142,14 +146,14 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td[id^="tsize_"]
|
||||
selector: td[id^="tsize"]
|
||||
date:
|
||||
# 36 perce
|
||||
# 13 órája és 59 perce
|
||||
# 2 napja és 10 órája
|
||||
# 1 hete és 1 napja
|
||||
# 1 éve és 30 hete
|
||||
selector: td[id^="t_added_"] > span
|
||||
selector: td[id^="t_added"] > span
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["és ", " "]
|
||||
|
@@ -31,13 +31,13 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: striprussian
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: addrussian
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUSSIAN to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: adverts
|
||||
type: checkbox
|
||||
@@ -58,7 +58,8 @@ search:
|
||||
inputs:
|
||||
s: "{{ .Keywords }}"
|
||||
sort: "{{ re_replace .Config.sort \"_\" \"\" }}"
|
||||
$raw: "{{ if .Config.adverts }}{{ else }}&rek=no{{ end}}"
|
||||
rek: "{{ if .Config.adverts }}{{ else }}no{{ end }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01 or S01E01 to 1 сезон
|
||||
args: ["(?i)\\bS0*(\\d+)(?:E0*(\\d+))?\\b", "$1 сезон"]
|
||||
@@ -76,28 +77,44 @@ search:
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["селезень", "selezen"]
|
||||
- name: re_replace
|
||||
args: ["(?:(\\d+-*\\d*)\\s+[Сс]езоны?:?)\\s+\\((\\d+-*\\d*).*[?\\d]+\\)(.*)(\\((?:[12][0-9]{3}-?){1,}\\))(.*)", "$3 - S$1E$2 - $4 $5"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?\\s*[:]*.+?\\((\\d+(?:-\\d+)?)\\s*из\\s*(\\d+)\\)", "(S$1E$2 of $3)"]
|
||||
- name: re_replace
|
||||
args: ["\\((\\d+-*\\d*).*[?\\d]+\\)(.*)(\\((?:[12][0-9]{3}-?){1,}\\))(.*)", "$2 - E$1 - $3 $4"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?\\s*[:]*.+?\\((\\d+(?:-\\d+)?)\\)", "(S$1E$2)"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$0{{ end }}"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "(S$1)"]
|
||||
- name: re_replace
|
||||
args: ["[!?.,:|\\[\\]\\/]", " "]
|
||||
args: ["(?i)\\((\\d+(?:-\\d+)?)\\s*из\\s*(\\d+)\\)", "(E$1 of $2)"]
|
||||
- name: re_replace
|
||||
args: ["^\\s+-\\s+", " "]
|
||||
args: ["(?i)\\bселезень\\b", "selezen"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bFiles-х\\b", "Files-x"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\s\\|\\sот\\s([\\w\\p{P}\\p{S}]+)$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["\\s\\|\\s(\\w{4,})$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)(-[\\w\\p{P}\\p{S}]*)$", "$2 $1$3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussian }} - RUSSIAN{{ else }}{{ end }}"
|
||||
- name: replace
|
||||
args: ["-Rip", "Rip"]
|
||||
- name: replace
|
||||
args: ["WEB-DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
|
@@ -8,12 +8,14 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.mrunblock.guru/
|
||||
- https://bitsearch.mrunblock.life/
|
||||
- https://bitsearch.nocensor.click/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
- https://bitsearch.nocensor.world/
|
||||
- https://bitsearch.nocensor.lol/
|
||||
- https://bitsearch.mrunblock.guru/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -29,7 +29,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://blutopia.cc/\" target =_blank>Blutopia</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://blutopia.cc/\" target=\"_blank\">Blutopia</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -83,7 +83,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -92,8 +91,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -168,4 +165,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.5.0b
|
||||
# json UNIT3D 7.0.0b
|
||||
|
@@ -26,6 +26,7 @@ caps:
|
||||
- {id: 4, cat: TV/Sport, desc: "Full - Poor"}
|
||||
- {id: 14, cat: TV/Sport, desc: "HD"}
|
||||
- {id: 7, cat: TV/Sport, desc: "Misc"}
|
||||
- {id: 18, cat: TV/Sport, desc: "Instructional"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -10,7 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "Cursos"}
|
||||
- {id: 1, cat: Other, desc: "Cursos"}
|
||||
- {id: 2, cat: Books/EBook, desc: "eBooks"}
|
||||
- {id: 5, cat: Books/Mags, desc: "Revistas"}
|
||||
- {id: 3, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
@@ -30,7 +30,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://brsociety.club/\" target =_blank>BrSociety</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://brsociety.club/\" target=\"_blank\">BrSociety</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -71,20 +71,13 @@ search:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -93,8 +86,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -110,28 +101,6 @@ search:
|
||||
optional: true
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -169,6 +138,6 @@ search:
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.5.0
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D 6.5.0 (custom)
|
||||
|
@@ -1,77 +0,0 @@
|
||||
---
|
||||
id: bt4g
|
||||
name: BT4G
|
||||
description: "BT4G is a Public metadata crawler for magnets"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bt4g.org/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Application: PC
|
||||
Archive file: Other
|
||||
Audio: Audio
|
||||
Doc: Books
|
||||
Other: Other
|
||||
Video: Movies
|
||||
TV: TV # dummy cat to allow both Movies,TV to be categorised when Video is found.
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://bt4g.org/search/2021
|
||||
# site does not support cat search
|
||||
- path: "search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: div.row > div.col > div:has(h5)
|
||||
|
||||
fields:
|
||||
title:
|
||||
selector: a
|
||||
category:
|
||||
selector: span.cpill
|
||||
category|append:
|
||||
# add tv to video
|
||||
optional: true
|
||||
selector: span.cpill
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Video", "TV"]
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
infohash:
|
||||
selector: a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["/magnet/", ""]
|
||||
date:
|
||||
selector: span:nth-last-child(5) b
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd"
|
||||
files:
|
||||
selector: span:nth-last-child(4) b
|
||||
size:
|
||||
selector: span:nth-last-child(3) b
|
||||
seeders:
|
||||
selector: span:nth-last-child(2) b
|
||||
leechers:
|
||||
selector: span:nth-last-child(1) b
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -14,6 +14,7 @@ legacylinks:
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/ # not found
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/ # 504 gateway timeout
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.tor2web.to/ # 504 gateway timeout
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.tor2web.link/ # Origin is unreachable Error code 523
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -150,5 +150,5 @@ search:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -7,11 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
# use https://tellme.pw/btsow to find the new domain
|
||||
links:
|
||||
- https://btsow.boats/
|
||||
- https://btsow.bond/
|
||||
legacylinks:
|
||||
- https://btsow.surf/
|
||||
- https://btsow.com/
|
||||
- https://btsow.cam/
|
||||
- https://btsow.digital/
|
||||
- https://btsow.shop/
|
||||
- https://btsow.us/
|
||||
@@ -25,6 +22,8 @@ legacylinks:
|
||||
- https://btsow.autos/
|
||||
- https://btsow.beauty/
|
||||
- https://btsow.mom/
|
||||
- https://btsow.boats/
|
||||
- https://btsow.hair/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -7,13 +7,14 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.bulltorrent.com/
|
||||
- https://toros.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://toros.nocensor.space/
|
||||
- https://toros.nocensor.work/
|
||||
- https://www.toros.co/
|
||||
- https://toros.nocensor.biz/
|
||||
- https://toros.nocensor.lol/
|
||||
- https://toros.mrunblock.guru/
|
||||
- https://toros.mrunblock.life/ # Gateway time-out Error code 504
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -38,10 +38,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -58,6 +54,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
@@ -76,8 +76,6 @@ login:
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("failed!"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?key="]
|
||||
@@ -169,12 +167,12 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 1 x 24 x 60 x 60)
|
||||
text: 86400
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.5 beta 5 20120707
|
||||
|
@@ -6,9 +6,10 @@ language: ru-RU
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://byrut.org/
|
||||
- https://byrutdb.org/
|
||||
legacylinks:
|
||||
- https://byrutor.org/
|
||||
- https://byrut.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -89,7 +89,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: [1, 2, 8, 7, 16, 15, 14, 13, 4, 3, 18, 17, 23, 19, 20, 24, 21, 22, 35, 36, 25, 30, 31, 33, 32, 29, 28, 27, 26]
|
||||
categories: ["!", 34, 39]
|
||||
- path: browse.php
|
||||
categories: [34, 39]
|
||||
inputs:
|
||||
|
@@ -188,5 +188,5 @@ search:
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.31 2022-11-14
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.37 2023-05-08
|
||||
|
@@ -163,7 +163,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[ ]at|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[ ]at|[//\xa0\\s,]+", " "]
|
||||
date_year:
|
||||
# February 09, 2019, 06:35:08 AM
|
||||
selector: td:nth-child(5):not(:contains("day"))
|
||||
@@ -171,7 +171,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[,]|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[//\xa0\\s,]+", " "]
|
||||
- name: dateparse
|
||||
args: "MMMM dd yyyy hh:mm:ss tt"
|
||||
date:
|
||||
|
155
src/Jackett.Common/Definitions/centraltorrent.yml
Normal file
155
src/Jackett.Common/Definitions/centraltorrent.yml
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
id: centraltorrent
|
||||
name: Central Torrent
|
||||
description: "Central Torrent is a POLISH Private Torrent Tracker for MOVIES / MUSIC"
|
||||
language: pl-PL
|
||||
type: private
|
||||
encoding: ISO-8859-2
|
||||
links:
|
||||
- http://central-torrent.eu/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 23, cat: TV/Anime, desc: "Animowane"}
|
||||
- {id: 1, cat: PC, desc: "Aplikacje"}
|
||||
- {id: 26, cat: Movies, desc: "Dzieci/Bajki"}
|
||||
- {id: 29, cat: Books/EBook, desc: "E-books"}
|
||||
- {id: 20, cat: Movies/SD, desc: "Filmy/DVD"}
|
||||
- {id: 22, cat: Movies/SD, desc: "Filmy/RMVB"}
|
||||
- {id: 35, cat: Movies/UHD, desc: "Filmy/UHD"}
|
||||
- {id: 24, cat: Movies/HD, desc: "Filmy/x264"}
|
||||
- {id: 36, cat: Movies/HD, desc: "Filmy/x265"}
|
||||
- {id: 19, cat: Movies/SD, desc: "Filmy/XviD"}
|
||||
- {id: 21, cat: Movies/SD, desc: "Filmy/XviD PL"}
|
||||
- {id: 12, cat: PC/Games, desc: "Gry"}
|
||||
- {id: 17, cat: PC/Games, desc: "Gry/Konsole"}
|
||||
- {id: 4, cat: PC/Games, desc: "Gry/PC ISO"}
|
||||
- {id: 28, cat: Other, desc: "GSM/PDA"}
|
||||
- {id: 32, cat: Movies/BluRay, desc: "HD/Blu-ray"}
|
||||
- {id: 31, cat: Audio/Lossless, desc: "Music/Lossless"}
|
||||
- {id: 6, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 30, cat: Other, desc: "Rozne"}
|
||||
- {id: 25, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 27, cat: Audio/Video, desc: "Teledyski"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 9, cat: XXX, desc: "XXX"}
|
||||
|
||||
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: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
captcha:
|
||||
type: image
|
||||
selector: img.cimage
|
||||
input: captcha
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
- selector: td.embedded:has(h2:contains("Error"))
|
||||
test:
|
||||
path: my.php
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 dead, 3 freeleech
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
# 0 all, 1 polish, 2 non-polish
|
||||
polish: 0
|
||||
# 0 name
|
||||
blah: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table[onMouseover] > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss"
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# tbsource
|
@@ -41,10 +41,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -61,6 +57,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -170,7 +170,7 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
genre:
|
||||
selector: table.torrentname > tbody > tr > td:first-child
|
||||
remove: a
|
||||
|
@@ -165,5 +165,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: chilebt
|
||||
name: ChileBT
|
||||
description: "ChileBT is a CHILEAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: es-419
|
||||
language: es-CL
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
|
172
src/Jackett.Common/Definitions/cinefilhd.yml
Normal file
172
src/Jackett.Common/Definitions/cinefilhd.yml
Normal file
@@ -0,0 +1,172 @@
|
||||
---
|
||||
id: cinefilhd
|
||||
name: CiNEFiLHD
|
||||
description: "CiNEFiLHD is a Private Torrent Tracker for MOVIES / TV / MUSIC"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://cinefilhd.sytes.net/
|
||||
legacylinks:
|
||||
- http://www.cinefilhd.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 37, cat: Movies/HD, desc: "Internal/HD-1080p"}
|
||||
- {id: 17, cat: Movies/HD, desc: "Internal/HD-720p"}
|
||||
- {id: 30, cat: TV/HD, desc: "Internal/HDTV"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Internal/mHD"}
|
||||
- {id: 40, cat: Movies, desc: "Internal/Mp4"}
|
||||
- {id: 26, cat: Movies, desc: "Internal/Remux"}
|
||||
- {id: 45, cat: Movies/WEB-DL, desc: "Internal/WEB-DL"}
|
||||
- {id: 5, cat: Movies/BluRay, desc: "Movies/BluRay"}
|
||||
- {id: 38, cat: Movies/HD, desc: "Movies/HD-1080p"}
|
||||
- {id: 10, cat: Movies/HD, desc: "Movies/HD-720p"}
|
||||
- {id: 29, cat: Movies/HD, desc: "Movies/mHD"}
|
||||
- {id: 41, cat: Movies, desc: "Movies/Mp4"}
|
||||
- {id: 39, cat: Movies, desc: "Movies/Remux"}
|
||||
- {id: 44, cat: Movies/WEB-DL, desc: "Movies/WEB-DL"}
|
||||
- {id: 23, cat: Audio/Lossless, desc: "Lossless"}
|
||||
- {id: 14, cat: Audio/MP3, desc: "MP3-Packs"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Music-MP3"}
|
||||
- {id: 43, cat: Audio/Video, desc: "Music/1080p"}
|
||||
- {id: 42, cat: Audio/Video, desc: "Music/720p"}
|
||||
- {id: 12, cat: TV/HD, desc: "HDTV-Packs"}
|
||||
- {id: 21, cat: TV/HD, desc: "Movies/HDTV"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, genre]
|
||||
movie-search: [q, imdbid, genre]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
submitme: LOGIN
|
||||
error:
|
||||
- selector: h2:contains("failed")
|
||||
message:
|
||||
selector: td.colhead2
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
# note: site uses the catsX[]=nn method which cardigann does not support.
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.Genre }}{{ .Query.Genre }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# title, descr, genre, all
|
||||
searchin: "{{ if .Query.IMDBID }}descr{{else}}{{end}}{{ if .Query.Genre }}genre{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}title{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 no, 1 yes
|
||||
only_free: "{{ if .Config.freeleech }}1{{else}}0{{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.mainouter table > tbody > tr:has(a[href^="details.php?id="]), table.mainouter table > tbody > tr[id^="kdescr"]
|
||||
after: 1
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="details.php?id="][onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
# onmouseover="Tip('<img class=\'pup\' src=\'https://image.tmdb.org/t/p/original/x96AdPlpl4MjUP2DeUhRJifhCMd.jpg\' width=
|
||||
- name: regexp
|
||||
args: src=\\'(.*?)\\'
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
date_day:
|
||||
# Today<br/>10:20 AM
|
||||
# Yesterday<br/>08:03 PM
|
||||
selector: td:nth-child(6):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
# Feb 14 2019<br/>10:20 AM
|
||||
selector: td:nth-child(6):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "MMM d yyyy hh:mm tt"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
genre:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, font
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
tr.freeleech_color: 0
|
||||
tr.highlight: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# U-232 v3
|
@@ -10,8 +10,6 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 62, cat: Books/EBook, desc: "EBook"}
|
||||
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
|
||||
- {id: 30, cat: TV/Anime, desc: "Filme - Animie"}
|
||||
- {id: 28, cat: Movies/BluRay, desc: "Filme - Bluray"}
|
||||
- {id: 31, cat: Movies/Other, desc: "Filme - Bollywood"}
|
||||
@@ -22,14 +20,17 @@ caps:
|
||||
- {id: 36, cat: Movies/SD, desc: "Filme - SD"}
|
||||
- {id: 37, cat: Movies/UHD, desc: "Filme - UHD"}
|
||||
- {id: 38, cat: Movies/HD, desc: "Filme - x264"}
|
||||
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 39, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 72, cat: Audio, desc: "Musik - Charts"}
|
||||
- {id: 40, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 75, cat: Audio/Lossless, desc: "Musik - Flac"}
|
||||
- {id: 41, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
|
||||
- {id: 74, cat: Audio/Other, desc: "Musik - Kids"}
|
||||
- {id: 42, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 43, cat: Audio/MP3, desc: "Musik - MP3"}
|
||||
- {id: 66, cat: Audio, desc: "Musik - Pack"}
|
||||
- {id: 70, cat: Audio, desc: "Musik - Sampler Deu."}
|
||||
- {id: 71, cat: Audio, desc: "Musik - Sampler Int."}
|
||||
- {id: 76, cat: Audio/Other, desc: "Musik - Soundtrack"}
|
||||
- {id: 44, cat: Audio/Video, desc: "Musik - Video"}
|
||||
- {id: 45, cat: PC, desc: "Programme - Linux"}
|
||||
- {id: 48, cat: PC/Mac, desc: "Programme - Mac"}
|
||||
@@ -39,7 +40,11 @@ caps:
|
||||
- {id: 51, cat: TV, desc: "Serien - Klassiker"}
|
||||
- {id: 52, cat: TV, desc: "Serien - Pack"}
|
||||
- {id: 53, cat: TV/Sport, desc: "Serien - Sport"}
|
||||
- {id: 62, cat: Books/EBook, desc: "EBook"}
|
||||
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 60, cat: Other, desc: "Sonstiges"}
|
||||
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
|
||||
- {id: 54, cat: PC/Mobile-Other, desc: "Spiele - Handy"}
|
||||
- {id: 55, cat: Console, desc: "Spiele - Konsolen"}
|
||||
- {id: 57, cat: PC/Games, desc: "Spiele - Mac / Linux / PC"}
|
||||
|
@@ -31,6 +31,7 @@ caps:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: info_8000
|
||||
|
@@ -36,14 +36,14 @@ settings:
|
||||
- name: info_apikey
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://danishbytes.club/\" target =_blank>DanishBytes</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://danishbytes.club/\" target=\"_blank\">DanishBytes</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: rsskey
|
||||
type: text
|
||||
label: RSSKey
|
||||
- name: info_rsskey
|
||||
type: info
|
||||
label: About your RSS key
|
||||
default: "Find or Generate a new RSS key by accessing your <a href=\"https://danishbytes.club/\" target =_blank>DanishBytes</a> account <i>My Security</i> page and clicking on the <b>RSS Key (RID)</b> tab."
|
||||
default: "Find or Generate a new RSS key by accessing your <a href=\"https://danishbytes.club/\" target=\"_blank\">DanishBytes</a> account <i>My Security</i> page and clicking on the <b>RSS Key (RID)</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
|
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
@@ -0,0 +1,202 @@
|
||||
---
|
||||
id: dark-shadow
|
||||
name: Dark-Shadow
|
||||
description: "Dark-Shadow is a GERMAN Private site for TV / MOVIES / GENERAL"
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://projekt.dark-shadow.me/
|
||||
legacylinks:
|
||||
- https://dark-shadow.ml/
|
||||
- https://dark-shadow.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movie
|
||||
- {id: 28, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
|
||||
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
|
||||
# Serien
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 57, cat: TV/HD, desc: "Serien HD"}
|
||||
- {id: 139, cat: TV/UHD, desc: "Serien UHD"}
|
||||
- {id: 59, cat: TV, desc: "Serien Pack`s"}
|
||||
# Audio
|
||||
- {id: 110, cat: Audio/MP3, desc: "Audio MP3"}
|
||||
- {id: 48, cat: Audio/Lossless, desc: "Audio Flac"}
|
||||
- {id: 52, cat: Audio, desc: "Audio Pack"}
|
||||
- {id: 63, cat: Audio/Audiobook, desc: "Audio Hörbuch"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Videos"}
|
||||
# Apps
|
||||
- {id: 12, cat: PC/0day, desc: "Apps Windows"}
|
||||
- {id: 125, cat: PC/Mac, desc: "Apps Mac-OSX"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "Apps Mobil"}
|
||||
- {id: 141, cat: PC/ISO, desc: "Apps Other"}
|
||||
# Doku
|
||||
- {id: 15, cat: TV/Documentary, desc: "Doku SD"}
|
||||
- {id: 14, cat: TV/Documentary, desc: "Doku HD"}
|
||||
- {id: 123, cat: TV/Documentary, desc: "Doku Reihe"}
|
||||
# Spiel
|
||||
- {id: 126, cat: Console/Other, desc: "Spiel Mobil"}
|
||||
- {id: 17, cat: PC/Games, desc: "Spiel PC"}
|
||||
- {id: 24, cat: Console, desc: "Spiel Konsole"}
|
||||
- {id: 121, cat: Console, desc: "Spiel Wimmelbild"}
|
||||
# Sport
|
||||
- {id: 61, cat: TV/Sport, desc: "Sport HD"}
|
||||
- {id: 62, cat: TV/Sport, desc: "Sport SD"}
|
||||
# ePaper
|
||||
- {id: 96, cat: Books/Mags, desc: "ePaper Zeitungen"}
|
||||
- {id: 136, cat: Books/EBook, desc: "ePaper E-Book"}
|
||||
- {id: 137, cat: Books/Comics, desc: "ePaper Comics"}
|
||||
# XXX
|
||||
- {id: 76, cat: XXX/XviD, desc: "XXX SD"}
|
||||
- {id: 73, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 75, cat: XXX/Pack, desc: "XXX Pack"}
|
||||
- {id: 142, cat: XXX/ImageSet, desc: "XXX Pic´s"}
|
||||
# Internal
|
||||
- {id: 129, cat: Movies/SD, desc: "Internal Film SD"}
|
||||
- {id: 128, cat: Movies/HD, desc: "Internal Film HD"}
|
||||
- {id: 131, cat: TV/SD, desc: "Internal Serie SD"}
|
||||
- {id: 130, cat: TV/HD, desc: "Internal Serien HD"}
|
||||
- {id: 132, cat: Other, desc: "Internal Sonstiges"}
|
||||
|
||||
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: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: selection.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: 0
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
keywordsfilters:
|
||||
# prefix and postfix percent wildcard as well as replacing spaces between words
|
||||
- name: re_replace
|
||||
args: ["\\W+", "%"]
|
||||
- name: re_replace
|
||||
args: ["^(.+)$", "%$1%"]
|
||||
|
||||
rows:
|
||||
selector: "div.selection_wrap{{ if .Config.freeleech }}:root:has(div.onlyup){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
filters:
|
||||
# remove [REQ] and anything else in [] that prefixes titles
|
||||
- name: re_replace
|
||||
args: ["^(\\[.*\\])(.*)", "$2"]
|
||||
details:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download_ssl.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
date_day:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
date_year:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "dd.MM.yyyy HH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
description:
|
||||
selector: selection_unter_af
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 36 hours (as seconds = 36 x 60 x 60)
|
||||
text: 129600
|
||||
# 3xT
|
@@ -36,7 +36,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://datascene.xyz/\" target =_blank>DataScene</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://datascene.xyz/\" target=\"_blank\">DataScene</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -90,7 +90,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -99,8 +98,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -111,6 +108,8 @@ search:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
|
@@ -10,13 +10,11 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/
|
||||
- https://demonoid.unblockit.boo/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.mrunblock.guru/
|
||||
- https://demonoid.unblockit.asia/
|
||||
- https://demonoid.torrentbay.net/
|
||||
- https://demonoid.mrunblock.life/
|
||||
- https://demonoid.nocensor.click/
|
||||
legacylinks:
|
||||
- https://demonoid.unblockit.how/
|
||||
- https://demonoid.unblockit.cam/
|
||||
- https://demonoid.nocensor.biz/
|
||||
- https://demonoid.unblockit.day/
|
||||
@@ -37,6 +35,13 @@ legacylinks:
|
||||
- https://demonoid.unblockit.ink/
|
||||
- https://demonoid.nocensor.art/
|
||||
- https://demonoid.unblockit.bio/
|
||||
- https://demonoid.unblockit.boo/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.link/ # Origin is unreachable Error code 523
|
||||
- https://demonoid.mrunblock.guru/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -306,10 +311,6 @@ settings:
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Access this tracker with your browser</li><li>click on the <b>Apply Filter</b> button on the page to invoke the search and solve the challenge</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></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
|
||||
@@ -331,12 +332,18 @@ login:
|
||||
download:
|
||||
infohash:
|
||||
hash:
|
||||
selector: div:contains("Torrent hash") > div.col-md-5 > div
|
||||
selector: tr:has(td:contains("Torrent hash"))
|
||||
filters:
|
||||
# 907617B7 070AACB6 08CC213C 5277368D 217C1666
|
||||
- name: replace
|
||||
args: [" ", ""]
|
||||
- name: regexp
|
||||
args: ([A-F|0-9]{40})
|
||||
title:
|
||||
selector: h1[id="torrent--title"]
|
||||
selector: td.ctable_header
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Details for ", ""]
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -359,11 +366,10 @@ search:
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
# only the default theme "Demonoid - v5" is supported
|
||||
selector: table.table tbody tr.table__row:has(td[class*="tone_"])
|
||||
selector: table.font_12px tbody tr:has(td[class^="tone_1"]):not(:has(script))
|
||||
after: 1
|
||||
dateheaders:
|
||||
selector: tr td.table__separator:not(:contains("Sponsored links"))
|
||||
selector: td.added_today:not(:contains("Sponsored links"))
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Added ", ""]
|
||||
@@ -372,7 +378,7 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: span.table__column__subtext > a:nth-child(2)
|
||||
selector: a.subcategory
|
||||
attribute: href
|
||||
optional: true
|
||||
default: 0
|
||||
@@ -387,25 +393,16 @@ search:
|
||||
download:
|
||||
selector: a[href^="/files/details/"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[title]
|
||||
attribute: data-bs-content
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src='(.+?)'
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
description:
|
||||
selector: td:nth-last-child(7)
|
||||
selector: td:nth-last-child(8)
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
selector: td:nth-last-child(6)
|
||||
grabs:
|
||||
selector: td:nth-last-child(3)
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(2)
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
selector: td:nth-last-child(1)
|
||||
selector: td:nth-last-child(2)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -29,7 +29,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://desitorrents.tv/\" target =_blank>DesiTorrents</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://desitorrents.tv/\" target=\"_blank\">DesiTorrents</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -83,7 +83,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -92,8 +91,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -148,7 +148,7 @@ search:
|
||||
selector: added
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
args: " +02:00" # EET
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
size:
|
||||
|
@@ -5,8 +5,6 @@ description: "DocsPedia is a Private Torrent Tracker for E-learning"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 0a9676d26d187ccc715189a5eea3bd43eff07c43 # Expired Jan 15 2023
|
||||
links:
|
||||
- https://www.docspedia.world/
|
||||
|
||||
|
@@ -92,6 +92,7 @@ caps:
|
||||
- {id: 117, cat: Audio, desc: "Compact Disc Club"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 118, cat: Audio, desc: "Dream Radio Music"}
|
||||
- {id: 124, cat: Movies, desc: "VIP Movies"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -48,6 +48,14 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -97,6 +105,11 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: table#loading-table tbody#highlighted tr:has(a[href^="torrents.php?cat="]), table#loading-table tbody#highlighted tr:has(a[href^="details.php?id="])
|
||||
after: 1
|
||||
@@ -113,6 +126,58 @@ search:
|
||||
attribute: href
|
||||
title:
|
||||
selector: a[href^="torrent-"]
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="torrent-"]
|
||||
attribute: href
|
||||
@@ -146,4 +211,6 @@ search:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.3
|
||||
description:
|
||||
selector: a[href^="torrent-"]
|
||||
# engine n/a
|
||||
|
@@ -14,6 +14,7 @@ caps:
|
||||
- {id: "Action/Adventure", cat: Books/EBook, desc: "Action/Adventure"}
|
||||
- {id: "Animals", cat: Books/EBook, desc: "Animals"}
|
||||
- {id: "Arts", cat: Books/EBook, desc: "Arts"}
|
||||
- {id: "Audio Books", cat: Audio/Audiobook, desc: "Audio Books"}
|
||||
- {id: "Beauty", cat: Books/EBook, desc: "Beauty"}
|
||||
- {id: "Business", cat: Books/EBook, desc: "Business"}
|
||||
- {id: "Certification", cat: Books/EBook, desc: "Certification"}
|
||||
@@ -29,7 +30,7 @@ caps:
|
||||
- {id: "Fantasy", cat: Books/EBook, desc: "Fantasy"}
|
||||
- {id: "Gardening", cat: Books/EBook, desc: "Gardening"}
|
||||
- {id: "Health", cat: Books/EBook, desc: "Health"}
|
||||
- {id: "Historical", cat: Books/EBook, desc: "Historical"}
|
||||
- {id: "Historical Fiction", cat: Books/EBook, desc: "Historical Fiction"}
|
||||
- {id: "History", cat: Books/EBook, desc: "History"}
|
||||
- {id: "Horror", cat: Books/EBook, desc: "Horror"}
|
||||
- {id: "Humorous", cat: Books/EBook, desc: "Humorous"}
|
||||
@@ -64,6 +65,7 @@ caps:
|
||||
modes:
|
||||
search: [q]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
@@ -92,7 +94,7 @@ search:
|
||||
- path: "page/5/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: "div#content > div.poststuff, div#content > div.poststuff + div.entry:has(a.download)"
|
||||
selector: "div#content > div.poststuff:has(~ div.entry a.download), div#content > div.poststuff ~ div.entry:has(a.download)"
|
||||
after: 1
|
||||
|
||||
fields:
|
||||
@@ -101,8 +103,10 @@ search:
|
||||
optional: true
|
||||
default: Other
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bEbooks?\\b", ""]
|
||||
- name: regexp
|
||||
args: "E book under:\\s+(.+?)\\s"
|
||||
args: "E book under:\\s+(.+?)\\s?\\\xA0"
|
||||
title:
|
||||
selector: div.postname a
|
||||
details:
|
||||
|
@@ -66,14 +66,18 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: striprussian
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -108,15 +112,6 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: tracker.php
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
- name: re_replace # S01 to сезон 1
|
||||
args: ["(?i)S0*(\\d+)", "сезон $1"]
|
||||
- name: re_replace # S01E01 to сезон 1 серии 1
|
||||
args: ["(?i)S0*(\\d+)E0*(\\d+)", "сезон $1 серии $2"]
|
||||
inputs:
|
||||
$raw: "{{ if .Categories }}{{ range .Categories }}f[]={{.}}&{{end}}{{ else }}f[]=-1{{ end }}"
|
||||
prev_allw: 0
|
||||
@@ -155,10 +150,17 @@ search:
|
||||
allw: 0
|
||||
tor_type: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: tr[id^="tor_"]:has(a[href^="./dl.php?id="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
title:
|
||||
@@ -166,21 +168,53 @@ search:
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["[\\:\\-\\/\\|]", " "]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+).+[CСcс]ери[ия]\\s+(\\d+)\\s+(\\d+)\\s+из\\s+\\d+(.*)", "$1 S$2E$3-$4 rus $5"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+).+[CСcс]ери[ия]\\s+(\\d+)\\s+из\\s+\\d+(.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)[CСcс]езон\\s+(\\d+)(.*)", "$1 S$2 rus $3"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: replace
|
||||
args: ["WEB DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a.tLink
|
||||
attribute: href
|
||||
@@ -220,4 +254,6 @@ search:
|
||||
minimumseedtime:
|
||||
# 100 hours (as seconds = 100 x 60 x 60)
|
||||
text: 360000
|
||||
description:
|
||||
selector: a.tLink
|
||||
# TorrentPier
|
||||
|
@@ -71,9 +71,13 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: striprussian
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
@@ -90,10 +94,6 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_search
|
||||
type: info
|
||||
label: "Searching with Season / Episode (S01E01)"
|
||||
default: "The web site does support season/episode searching. To allow some results for Sonarr, these are stripped from the keywords."
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -113,12 +113,6 @@ search:
|
||||
paths:
|
||||
# http://exkinoray.tv/browse.php?search=&incldead=1&cat=0
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
# the site does not support season/episode searching in the title.
|
||||
- name: re_replace # strip S01
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", ""]
|
||||
- name: re_replace # strip S01E01
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", ""]
|
||||
inputs:
|
||||
$raw: "{{ if .Categories }}{{ range .Categories }}c{{.}}=1&{{end}}{{ else }}cat=0{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead, 4 noseeds (how is this different from onlydead?)
|
||||
@@ -127,6 +121,11 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: table.begins > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
@@ -140,30 +139,57 @@ search:
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
# Женские секреты (1 сезон: 1-4 серии из 12) Жіночі секрети | 2020 | HDTVRip (720p)
|
||||
# Мандалорец (1 сезон: 1-8 серии из 8) | The Mandalorian | 2019 | WEB-DL (720p)
|
||||
# Война семей (1-14 серии из 20) | 2019 | WEB-DLRip (AVC)
|
||||
# normalize to SXXEYY format
|
||||
- name: replace
|
||||
args: [" | ", " "]
|
||||
- name: re_replace
|
||||
args: ["\\((\\d+)\\s+[Сс]езон:\\s+(?:(\\d+-*\\d*)\\s+[Сс]ери[ия]\\s+.*\\d+)\\)(.*)\\s([12][0-9]{3})\\s(.*)", "$3 - S$1E$2 - rus $5"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["\\((?:(\\d+-*\\d*)\\s+[Сс]ери[ия]\\s+.*\\d+)\\)(.*)\\s([12][0-9]{3})\\s(.*)", "$2 - S1E$1 - rus $4"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["\\((\\d+p)\\)", "$1"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: [" - ", " "]
|
||||
- name: replace
|
||||
args: ["-Rip", "Rip"]
|
||||
- name: replace
|
||||
args: ["WEB-DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -189,4 +215,6 @@ search:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
description:
|
||||
selector: a[href^="details.php?id="]
|
||||
# engine n/a
|
||||
|
@@ -7,11 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.boo/
|
||||
- https://extratorrent.mrunblock.guru/
|
||||
- https://extratorrent.unblockit.asia/
|
||||
- https://extratorrent.mrunblock.life/
|
||||
- https://extratorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.how/
|
||||
- https://extratorrent.unblockit.cam/
|
||||
- https://extratorrent.nocensor.biz/
|
||||
- https://extratorrent.unblockit.day/
|
||||
@@ -30,6 +30,9 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.ink/
|
||||
- https://extratorrent.nocensor.art/
|
||||
- https://extratorrent.unblockit.bio/
|
||||
- https://extratorrent.unblockit.boo/
|
||||
- https://extratorrent.mrunblock.guru/
|
||||
- https://extratorrent.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -96,7 +99,7 @@ search:
|
||||
args: ["[\\s]+", "."]
|
||||
|
||||
rows:
|
||||
selector: tr[class^="tl"]
|
||||
selector: tr[class^="tl"]:has(a[href^="magnet:?xt="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
|
@@ -5,8 +5,6 @@ description: "ExtremeBits is a Private Torrent Tracker for EXTREME SPORTS"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 62ab0c90c702bd458a18d778c1fd5928b3721e13 # Expired 6 January 2023
|
||||
links:
|
||||
- https://extremebits.net/
|
||||
|
||||
|
@@ -9,13 +9,14 @@ requestDelay: 5
|
||||
links:
|
||||
- https://ext.to/
|
||||
- https://search.extto.com/
|
||||
- https://extranet.torrentbay.to/
|
||||
- https://extranet.torrentbay.net/
|
||||
legacylinks:
|
||||
- https://ext.unblockninja.com/
|
||||
- https://t.extto.com/
|
||||
- https://torrent.extto.com/
|
||||
- https://site.extto.com/
|
||||
- https://ext.torrentbay.to/
|
||||
- https://extranet.torrentbay.to/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -13,8 +13,9 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.boo/
|
||||
- https://eztv.mrunblock.guru/
|
||||
- https://eztv.unblockit.asia/
|
||||
- https://eztv.mrunblock.life/
|
||||
- https://eztv.nocensor.click/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
- https://eztv.it/ # redirects to .re
|
||||
@@ -37,6 +38,9 @@ legacylinks:
|
||||
- https://eztv.unblockit.ink/
|
||||
- https://eztv.nocensor.art/
|
||||
- https://eztv.unblockit.bio/
|
||||
- https://eztv.unblockit.boo/
|
||||
- https://eztv.mrunblock.guru/
|
||||
- https://eztv.unblockit.click/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -6,7 +6,9 @@ language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://fantastiko.space/ # https is not supported
|
||||
- https://fantastiko.space/
|
||||
legacylinks:
|
||||
- http://fantastiko.space/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -20,14 +20,13 @@ caps:
|
||||
- {id: 601, cat: TV/Anime, desc: " |- Мультсериалы DVD Master's"}
|
||||
# Кино, видео, мультипликация и ТВ
|
||||
# Film, video, animation and TV
|
||||
- {id: 995, cat: Movies, desc: " |- Экранки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы)"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежное кино"}
|
||||
- {id: 988, cat: Movies, desc: " |- Кино России и СНГ"}
|
||||
- {id: 337, cat: Movies, desc: " |- Мультфильмы"}
|
||||
- {id: 72, cat: Movies, desc: " |- DVD, HD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1001, cat: Movies, desc: " |- UHD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1002, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [SD]"}
|
||||
- {id: 1003, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 988, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [SD]"}
|
||||
- {id: 337, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы на других языках [SD/HD/UHD]"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 999, cat: Movies, desc: " |- Фильмы (2021-2022)"}
|
||||
- {id: 996, cat: Movies, desc: " |- Фильмы (2019-2020)"}
|
||||
- {id: 921, cat: Movies, desc: " |- Фильмы (2016-2018)"}
|
||||
@@ -51,7 +50,6 @@ caps:
|
||||
- {id: 62, cat: Movies, desc: " |- Кино для детей"}
|
||||
- {id: 962, cat: Movies, desc: " |- Антология отечественного кино"}
|
||||
- {id: 990, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы на языках ближнего.."}
|
||||
- {id: 993, cat: Movies, desc: " |- Фильмы , мультфильмы и сериалы ближнего зарубежья и СНГ в ор.."}
|
||||
- {id: 991, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы в оригинале"}
|
||||
- {id: 74, cat: Movies, desc: " |- Зарубежные мультфильмы"}
|
||||
- {id: 73, cat: Movies, desc: " |- Отечественные мультфильмы"}
|
||||
@@ -513,18 +511,18 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: striprussian
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: addrussian
|
||||
type: checkbox
|
||||
label: Add RUSSIAN to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -563,13 +561,6 @@ login:
|
||||
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
|
||||
@@ -605,6 +596,13 @@ search:
|
||||
# search all words
|
||||
allw: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: "tr[id^=\"tor_\"]:has(a[href^=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src=\"images/tor_gold.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
@@ -618,39 +616,69 @@ search:
|
||||
title:
|
||||
selector: a.genmed
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Кураж-Бамбей", "kurazh"]
|
||||
- name: replace
|
||||
args: ["Кубик в Кубе", "Kubik"]
|
||||
- name: replace
|
||||
args: ["Кравец", "Kravec"]
|
||||
- name: replace
|
||||
args: ["Пифагор", "Pifagor"]
|
||||
- name: replace
|
||||
args: ["Невафильм", "Nevafilm"]
|
||||
- name: replace
|
||||
args: ["Лицензия", "Lic"]
|
||||
- name: replace
|
||||
args: ["селезень", "selezen"]
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["([CСcс]езоны?:?\\s+((?:\\d+)(?:-\\d+)?).*[CСcс]ери[ия]:?\\s+((?:\\d+)(?:-\\d+)?).*?\\d+\\)?)", " S$2E$3 "]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["([CСcс]ери[ия]:?\\s+((?:\\d+)(?:-\\d+)?).*?[?\\d]+\\)?)", " E$2 "]
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$0{{ end }}"]
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["[«»()=.,:|\\[\\]\\/]", " "]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:(?:-|–)\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?).+?(\\d+(?:(?:-|–)\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:(?:-|–)\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:(?:-|–)\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bКураж-Бамбей\\b", "kurazh"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bКубик в Кубе\\b", "Kubik"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bКравец\\b", "Kravec"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bПифагор\\b", "Pifagor"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bНевафильм\\b", "Nevafilm"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bЛицензия\\b", "Lic"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bселезень\\b", "selezen"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussian }} - RUSSIAN{{ else }}{{ end }}"
|
||||
- name: replace
|
||||
args: ["-Rip", "Rip"]
|
||||
- name: replace
|
||||
args: ["WEB-DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a.genmed
|
||||
attribute: href
|
||||
@@ -674,4 +702,6 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
description:
|
||||
selector: a.genmed
|
||||
# TorrentPier
|
||||
|
@@ -7,13 +7,15 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://filelisting.com/
|
||||
- https://filelisting.mrunblock.guru/
|
||||
- https://filelisting.mrunblock.life/
|
||||
- https://filelisting.nocensor.click/
|
||||
legacylinks:
|
||||
- https://filelisting.nocensor.biz/
|
||||
- https://filelisting.nocensor.sbs/
|
||||
- https://filelisting.nocensor.world/
|
||||
- https://filelisting.nocensor.lol/
|
||||
- https://filelisting.nocensor.art/
|
||||
- https://filelisting.mrunblock.guru/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -56,7 +56,15 @@ caps:
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings: []
|
||||
settings:
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
|
||||
download:
|
||||
selectors:
|
||||
@@ -69,6 +77,11 @@ search:
|
||||
- path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "{{ if .Keywords }}index.php?do=search&type=simple&q={{ .Keywords }}&cstart=2{{ else }}%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0/2/{{ end }}"
|
||||
|
||||
keywordsfilters:
|
||||
# strip season and/or ep
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(?:[SE]\\d{1,4}){1,2}\\b\\s?", ""]
|
||||
|
||||
rows:
|
||||
selector: "{{ if .Keywords }}table.torrents tbody tr:has(td.td-size){{ else }}div[id^=\"post-id-\"]:has(li.meta-size){{ end }}"
|
||||
filters:
|
||||
@@ -87,6 +100,58 @@ search:
|
||||
- name: trim
|
||||
title:
|
||||
selector: td:nth-child(2), span.article-title
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езон[ыи]?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)[CС]езон[ыи]?[\\s:;]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езон[ыи]?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))[\\s:;]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ер[иі][ияйї]|Эпизод|Выпуски?|Епізоди?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
# - name: re_replace
|
||||
# args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: td:nth-child(2) a, span.article-title a
|
||||
attribute: href
|
||||
@@ -128,4 +193,6 @@ search:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
description:
|
||||
selector: td:nth-child(2), span.article-title
|
||||
# engine n/a
|
||||
|
@@ -60,6 +60,8 @@ search:
|
||||
selector: table#descargas > tbody > tr:has(td:has(a[href^="magnet:?"]))
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: "{{ if eq .Config.category \"todos\" }}Anime{{ else }}{{ .Config.category }}{{ end }}"
|
||||
title:
|
||||
selector: td.tit a
|
||||
filters:
|
||||
@@ -84,10 +86,6 @@ search:
|
||||
magnet:
|
||||
selector: td:nth-child(1) a[href^="magnet:?"]
|
||||
attribute: href
|
||||
category:
|
||||
selector: td.tit span
|
||||
optional: true
|
||||
default: Anime
|
||||
date_day:
|
||||
# 1d
|
||||
# 2d 3h
|
||||
|
@@ -1,73 +0,0 @@
|
||||
---
|
||||
id: ftuapps
|
||||
name: FTUApps
|
||||
description: "FTUApps is a Public tracker for Software and Apps"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://ftuapps.dev/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 52, cat: PC, desc: ".Net", default: true}
|
||||
- {id: 3648, cat: PC/Mobile-Android, desc: "Android Applications", default: true}
|
||||
- {id: 55, cat: PC/Mobile-Other, desc: "Application", default: true}
|
||||
- {id: 46, cat: PC, desc: "Database", default: true}
|
||||
- {id: 331, cat: PC, desc: "Delphi", default: true}
|
||||
- {id: 4120, cat: PC, desc: "DriverPack Solution Offline", default: true}
|
||||
- {id: 2142, cat: PC/Mac, desc: "MacOS", default: true}
|
||||
- {id: 2431, cat: PC, desc: "Operating Systems", default: true}
|
||||
- {id: 2172, cat: PC, desc: "Portable Apps", default: true}
|
||||
- {id: 2435, cat: PC, desc: "PreActivated Apps", default: true}
|
||||
- {id: 3, cat: PC/0day, desc: "Software", default: true}
|
||||
- {id: 165, cat: Other, desc: "Web & Script", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href$=".torrent"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "?s={{ .Keywords }}&asl_active=1&p_asid=1&p_asl_data=1&qtranslate_lang=0&asl_gen[]=title&customset[]=post&customset[]=page{{ range .Categories }}&categoryset[]={{.}}{{end}}"
|
||||
|
||||
rows:
|
||||
selector: article[id^="post-"]:has(a[href*="/category/"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: a[href*="/category/"]
|
||||
title:
|
||||
selector: a
|
||||
attribute: title
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
date:
|
||||
selector: time.published
|
||||
attribute: datetime
|
||||
size:
|
||||
text: "512 MB"
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# WordPress 5.9
|
@@ -150,5 +150,5 @@ search:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-26
|
||||
|
@@ -33,7 +33,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://generation-free.org/\" target =_blank>Generation-Free</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://generation-free.org/\" target=\"_blank\">Generation-Free</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -77,7 +77,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
- name: info_news
|
||||
type: info
|
||||
label: Reminder from GF-Free Admin
|
||||
default: "Attention users of third-party software like Jackett or Radarr, Sonarr or similar:<br>Despite your seed downloads you must physically connect to the web site with your browser or risk being <b>Banned for non-participation</b>...<br><ol>We ask :<li>Remain in seed at least 48 hours on the media to avoid H$R</li><li>And much more depending on your storage means</li><li>Participate in the life of the site shout forum...</li><li>Connect regularly to possibly read your private messages.</li></ol>"
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
@@ -106,11 +109,10 @@ search:
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
free[]: "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -119,8 +121,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -96,8 +96,8 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}{{ if .Query.Genre }} genre:{{ .Query.Genre }}{{ else }}{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo
|
||||
blah: "{{ if or .Query.IMDBID .Query.Genre }}3{{ else }}0{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo, 4 imdb
|
||||
blah: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.Genre }}3{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}0{{ end }}"
|
||||
# 0 active only, 1 dead only
|
||||
incldead: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
# to fetch current domain use https://www.protege-liens.com/Gktorrent
|
||||
links:
|
||||
- https://www.gktorrents.cc/
|
||||
- https://gktorrent.mrunblock.guru/
|
||||
- https://gktorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://www.gktorrent.org/
|
||||
- https://www.gktorrent.me/
|
||||
@@ -32,6 +32,8 @@ legacylinks:
|
||||
- https://gktorrent.nocensor.sbs/
|
||||
- https://gktorrent.nocensor.world/
|
||||
- https://gktorrent.nocensor.lol/
|
||||
- https://gktorrent.mrunblock.guru/
|
||||
- https://gktorrent.mrunblock.life/ # cloudflare 403
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -10,13 +10,13 @@ links:
|
||||
- https://glodls.to/
|
||||
- https://gtdb.cc/
|
||||
- https://www.gtdb.to/
|
||||
- https://glotorrents.unblockit.boo/
|
||||
- https://glotorrents.mrunblock.guru/
|
||||
- https://glotorrents.unblockit.asia/
|
||||
- https://glotorrents.mrunblock.life/
|
||||
- https://glodls.unblockninja.com/
|
||||
- https://glotorrents.nocensor.click/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://gtdb.to/
|
||||
- https://glotorrents.unblockit.how/
|
||||
- https://glotorrents.unblockit.cam/
|
||||
- https://glotorrents.nocensor.biz/
|
||||
- https://glotorrents.unblockit.day/
|
||||
@@ -35,6 +35,9 @@ legacylinks:
|
||||
- https://glotorrents.unblockit.ink/
|
||||
- https://glotorrents.nocensor.art/
|
||||
- https://glotorrents.unblockit.bio/
|
||||
- https://glotorrents.unblockit.boo/
|
||||
- https://glotorrents.mrunblock.guru/
|
||||
- https://glotorrents.unblockit.click/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -37,10 +37,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -57,6 +53,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -70,7 +70,6 @@ login:
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -78,7 +77,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [1, 4091, 4097, 4098, 4099, 4101, 4104, 4105]
|
||||
categories: ["!", 4103]
|
||||
- path: live.php
|
||||
categories: [4103]
|
||||
inputs:
|
||||
@@ -162,12 +161,12 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.1 2021-10-15
|
||||
|
@@ -25,7 +25,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://www.hawke.uno/\" target =_blank>hawke-uno</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://www.hawke.uno/\" target=\"_blank\">hawke-uno</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -76,7 +76,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -85,8 +84,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
|
@@ -28,7 +28,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://hd-united.vn/\" target =_blank>HD-UNiT3D</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://hd-united.vn/\" target=\"_blank\">HD-UNiT3D</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -82,7 +82,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -91,8 +90,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -54,7 +54,7 @@ login:
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败")), td.embedded:has(h2:contains("failed"))
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
message:
|
||||
selector: td.text
|
||||
test:
|
||||
@@ -145,5 +145,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -47,10 +47,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -170,5 +166,5 @@ search:
|
||||
text: 0.8
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -20,10 +20,9 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -43,10 +42,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -63,6 +58,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
@@ -94,14 +93,14 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ 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_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
@@ -130,9 +129,6 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
@@ -178,7 +174,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 0.81
|
||||
# NexusPHP 1.7.31 2022-11-14
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -13,39 +13,22 @@ legacylinks:
|
||||
caps:
|
||||
categorymappings:
|
||||
# Filmy
|
||||
- {id: 117, cat: Movies/DVD, desc: "DvD 5"}
|
||||
- {id: 118, cat: Movies/DVD, desc: "DvD 9"}
|
||||
- {id: 117, cat: Movies/DVD, desc: "DvD"}
|
||||
- {id: 119, cat: Movies/BluRay, desc: "Blu-Ray "}
|
||||
- {id: 120, cat: Movies/HD, desc: "H265"}
|
||||
- {id: 121, cat: Movies/HD, desc: "HD 720"}
|
||||
- {id: 122, cat: Movies/HD, desc: "1080 HD"}
|
||||
- {id: 123, cat: Movies/UHD, desc: "4K"}
|
||||
- {id: 124, cat: TV, desc: "Seriály"}
|
||||
- {id: 120, cat: Movies/HD, desc: "HD 720"}
|
||||
- {id: 121, cat: Movies/HD, desc: "HD 1080"}
|
||||
- {id: 122, cat: Movies/UHD, desc: "4K"}
|
||||
- {id: 123, cat: Movies/UHD, desc: "4K - Originál Zvuk"}
|
||||
- {id: 124, cat: Movies/3D, desc: "3D Filmy Bluray"}
|
||||
- {id: 125, cat: Movies/3D, desc: "3D Filmy"}
|
||||
- {id: 126, cat: TV/Anime, desc: "Animované"}
|
||||
- {id: 127, cat: Movies/SD, desc: "Avi"}
|
||||
- {id: 126, cat: Movies/SD, desc: "SD Filmy"}
|
||||
- {id: 127, cat: Movies/HD, desc: "H-265"}
|
||||
- {id: 128, cat: TV/Documentary, desc: "Dokument"}
|
||||
- {id: 129, cat: TV/Sport, desc: "Sportovní Filmy"}
|
||||
# Filmy that are not in category pull down
|
||||
- {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: 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: 130, cat: TV/WEB-DL, desc: "TV - WEB- DL"}
|
||||
- {id: 131, cat: Movies, desc: "RLS For HDCZT"}
|
||||
- {id: 91, cat: TV, desc: "Serial titulky"}
|
||||
- {id: 109, cat: Movies/BluRay, desc: "BLURAY orig JAZYK"}
|
||||
- {id: 52, cat: Movies/HD, desc: "HD 1080 "}
|
||||
- {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: 77, cat: Movies/UHD, desc: "ULTRA HD 4K"}
|
||||
- {id: 93, cat: Movies/HD, desc: "HD 1080 titulky"}
|
||||
- {id: 107, cat: Movies, desc: "CAMERA RIP "}
|
||||
- {id: 94, cat: Movies, desc: "h 265"}
|
||||
- {id: 95, cat: Movies/Other, desc: "FILM RETRO"}
|
||||
- {id: 45, cat: TV, desc: "SERIALY CZ"}
|
||||
- {id: 81, cat: Movies, desc: "ORIGINAL JAZYK"}
|
||||
# HUDBA
|
||||
- {id: 57, cat: Audio/Lossless, desc: "Hudba flac"}
|
||||
@@ -139,7 +122,7 @@ search:
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href*=bookmark])
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href^="magnet:?xt="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -149,13 +132,16 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td:nth-child(2) > a
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
details:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
@@ -163,17 +149,19 @@ search:
|
||||
- name: regexp
|
||||
args: "src=(.+?) "
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
selector: td:nth-child(7)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd/MM/yyyy"
|
||||
size:
|
||||
selector: td:nth-child(11)
|
||||
selector: td:nth-child(12)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
grabs:
|
||||
selector: td:nth-child(11)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freeleech.gif"]: 0
|
||||
|
@@ -24,10 +24,9 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -47,6 +46,22 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: flaresolverr
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
@@ -85,21 +100,29 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0=incldead, 1=active, 2=dead
|
||||
incldead: 0
|
||||
# show promotions: 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=imdb URL
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0=AND, 1=OR, 2=Exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
@@ -107,18 +130,18 @@ search:
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
@@ -166,5 +189,8 @@ search:
|
||||
text: 1.2
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" 剩余时间:", ""]
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -52,10 +52,6 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
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.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -72,6 +68,10 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
@@ -103,14 +103,14 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ 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_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
@@ -139,12 +139,14 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
@@ -188,9 +190,9 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 0.81
|
||||
# NexusPHP v1.8.0 2023-01-20
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.2 2023-05-06
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: hdgalaktik
|
||||
name: HDGalaKtik
|
||||
description: "HDGalaKtik is a RUSSIAN Semi-Private tracker for TV / MOVIES / GENERAL"
|
||||
description: "HDGalaKtik is a RUSSIAN Semi-Private tracker for MOVIES / TV / GENERAL"
|
||||
language: ru-RU
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
@@ -44,14 +44,18 @@ settings:
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
- name: stripcyrillic
|
||||
type: checkbox
|
||||
label: Strip Cyrillic Letters
|
||||
default: false
|
||||
- name: addrussiantotitle
|
||||
type: checkbox
|
||||
label: Add RUS to end of all titles to improve language detection by Sonarr and Radarr. Will cause English-only results to be misidentified.
|
||||
default: false
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: striprussian
|
||||
type: checkbox
|
||||
label: Strip Russian Letters
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -85,15 +89,6 @@ search:
|
||||
# https://hdgalaktik.com/browse.php?search=&stype=0&s=0&cat=0&gr=0&kp=0&im=0&incldead=1&sort=0&type=desc
|
||||
paths:
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01E01 to [1 сезон 1 сери]
|
||||
args: ["(?i)S0*(\\d+)E0*(\\d+)", "[$1 сезон $2 сери]"]
|
||||
- name: re_replace # S01 to [1 сезон]
|
||||
args: ["(?i)S0*(\\d+)", "[$1 сезон]"]
|
||||
- name: re_replace # E01 to [1 сери]
|
||||
args: ["(?i)E0*(\\d+)", "[$1 сери]"]
|
||||
- name: re_replace # replace special characters with "%" (wildcard)
|
||||
args: ["[^a-zA-Z0-9]+", "%"]
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
@@ -108,7 +103,17 @@ search:
|
||||
# 1 active, 2 dead, 3 gold, 4 sticky, lots of others
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
ascdesc: "{{ .Config.type }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01 to сезон 1
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "сезон $1"]
|
||||
- name: re_replace # E02 to сери 1
|
||||
args: ["(?i)\\bE0*(\\d+)\\b", "сери $1"]
|
||||
- name: re_replace # S01E02 to сезон 1 сери 2
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "сезон $1 сери $2"]
|
||||
- name: re_replace # replace special characters with "%" (wildcard)
|
||||
args: ["[^a-zA-Z0-9]+", "%"]
|
||||
|
||||
rows:
|
||||
selector: table.embedded > tbody > tr.torcontduo
|
||||
@@ -134,41 +139,61 @@ search:
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
- name: re_replace
|
||||
args: ["[\\.\\,\\:\\/\\|\\[\\]]", " "]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*) от .*$", "$1"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+\\-\\d+)\\s*[CСcс]езон\\s*(\\d+\\-\\d+)\\s*[CСcс]ери[ия]\\s*из\\s*\\d+(.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\-(\\d+)\\s*[CСcс]езон\\s*(\\d+)\\-(\\d+)\\s*[CСcс]ери[ия](.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))?", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\s*[CСcс]езон\\s*(\\d+\\-\\d+)\\s*[CСcс]ери[ия]\\s*из\\s*\\d+(.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)\\s*(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "S$1E$2 of $3"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\s*[CСcс]езон\\s*(\\d+\\-\\d+)\\s*[CСcс]ери[ия](.*)", "$1 S$2E$3 rus $4"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+\\-\\d+)\\s*[CСcс]езон\\s*(.*)", "$1 S$2 rus $3"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*[CС]езоны?.+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\s*[CСcс]езон\\s*(.*)", "$1 S$2 rus $3"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?).+?(\\d+(?:-\\d+)?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+\\-\\d+)\\s*[CСcс]ери[ия]\\s*из\\s*\\d+(.*)", "$1 E$2 rus $3"]
|
||||
args: ["(?i)[CС]езоны?[\\s:]*(\\d+(?:-\\d+)?)", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\s*[CСcс]ери[ия]\\s*из\\s*\\d+(.*)", "$1 E$2 rus $3"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+[CС]езоны?", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+\\-\\d+)\\s*[CСcс]ери[ия](.*)", "$1 E$2 rus $3"]
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(.*)(\\d+)\\s*[CСcс]ери[ия](.*)", "$1 E$2 rus $3"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s*из\\s*(\\w?)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(\\([А-Яа-яЁё\\W]+\\))|(^[А-Яа-яЁё\\W\\d]+\\/ )|([а-яА-ЯЁё \\-]+,+)|([а-яА-ЯЁё]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: replace
|
||||
args: ["WEBRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEB-DL", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["WEBDLRip", "WEBDL"]
|
||||
- name: replace
|
||||
args: ["HDTVRip", "HDTV"]
|
||||
- name: replace
|
||||
args: ["SATRip", "TV"]
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))\\s+из\\s*(\\w?)", "E$1 of $2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))[\\s:]*(\\d+(?:-\\d+)?)", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\d+(?:-\\d+)?)\\s+(?:\\s*(?:[CС]ери[ияй]|Эпизод|Выпуски?))", "E$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bFiles-х\\b", "Files-x"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\sот\\s([\\w\\p{P}\\p{S}]+)$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["\\s\\|\\s(\\w{4,})$", "-$1"]
|
||||
- name: re_replace
|
||||
args: ["(\\([\\p{IsCyrillic}\\W]+\\))|(^[\\p{IsCyrillic}\\W\\d]+\\/ )|([\\p{IsCyrillic} \\-]+,+)|([\\p{IsCyrillic}]+)", "{{ if .Config.stripcyrillic }}{{ else }}$1$2$3$4{{ end }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bHDTV[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bSAT[-\\s]?Rip\\b", "HDTV"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB[-\\s]?DL[-\\s]?Rip\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sRip\\b", "WEBRip"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bWEB\\sDL\\b", "WEB-DL"]
|
||||
- name: re_replace
|
||||
args: ["[\\[\\(\\{<«][\\s\\W]*[\\]\\)\\}>»]", ""]
|
||||
- name: re_replace
|
||||
args: ["^[\\s&,\\.!\\?\\+\\-_\\|\\/':]+", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)^\\(\\s*([SE]\\d+.*?)\\s*\\)[\\s\\/\\|]*(.+)", "$2 $1"]
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a.alink
|
||||
attribute: href
|
||||
@@ -200,6 +225,23 @@ search:
|
||||
# 1 day ago
|
||||
selector: a[href^="browse.php?date="]
|
||||
filters:
|
||||
# translations for Russian|Romanian|Ukrainian
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(назад|În urmă)\\b", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(секунд(а|и|ы)?|secund(a|ă|e))\\b", "seconds"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(минуты?|minute?|хвилини?)\\b", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(час(а|ов)?|or(e|ă)|години?)\\b", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(де?не?(ь|я|й|ів)|zi(le)?)\\b", "days"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(недел(ю|и)|săptămân(ă|i)|тиж(день|ні))\\b", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(месяц(а|ев)?|lun(ă|i)|місяц(ь|я|ів))\\b", "months"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(года?|an|р(ік|оки))\\b", "years"]
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
@@ -209,4 +251,7 @@ search:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: a.alink
|
||||
attribute: title
|
||||
# engine n/a
|
||||
|
@@ -170,5 +170,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v2.0 2014-11-24
|
||||
|
@@ -19,6 +19,7 @@ caps:
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 409, cat: Other, desc: "Misc/其他"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 410, cat: PC, desc: "Softs/软件"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -169,5 +170,5 @@ search:
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.29 2022-10-12
|
||||
|
@@ -60,6 +60,8 @@ login:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -70,9 +72,12 @@ search:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
@@ -80,13 +85,10 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
@@ -182,11 +184,15 @@ search:
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0: 1 # not free
|
||||
1: 0 # freeleech
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
@@ -196,4 +202,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D ???
|
||||
# json UNIT3D 6.0.4
|
||||
|
@@ -144,5 +144,5 @@ search:
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 5
|
||||
|
@@ -84,7 +84,6 @@ login:
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -99,8 +98,8 @@ search:
|
||||
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 (not working)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -188,5 +187,5 @@ search:
|
||||
text: 0.81
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.33 2023-01-04
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.37 2023-05-08
|
||||
|
@@ -40,6 +40,22 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
@@ -78,12 +94,20 @@ search:
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
# 0=AND, 1=OR, 2=Exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
@@ -91,12 +115,6 @@ search:
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -153,5 +171,5 @@ search:
|
||||
text: 259200
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
185
src/Jackett.Common/Definitions/hdvideo.yml
Normal file
185
src/Jackett.Common/Definitions/hdvideo.yml
Normal file
@@ -0,0 +1,185 @@
|
||||
---
|
||||
id: hdvideo
|
||||
name: HDVIDEO
|
||||
description: "HDVIDEO is a CHINESE Private torrent tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://hdvideo.one/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Anime/动漫"}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos/演唱会"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 408, cat: Audio, desc: "HQ Audio/音乐"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the HDVIDEO Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ 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 }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.1 2023-04-21
|
@@ -204,5 +204,5 @@ search:
|
||||
# text: 1209600
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -1,193 +0,0 @@
|
||||
---
|
||||
id: hellashut
|
||||
name: HellasHut
|
||||
description: "HellasHut is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
testlinktorrent: false
|
||||
links:
|
||||
- https://hellashut.de/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 28, cat: TV/Anime, desc: "Anime/Cartoon HD"}
|
||||
- {id: 47, cat: TV/Anime, desc: "Anime/Cartoon HDTV"}
|
||||
- {id: 48, cat: TV/Anime, desc: "Anime/Cartoon SD"}
|
||||
- {id: 50, cat: TV/Anime, desc: "Anime/Cartoon SD Emb"}
|
||||
- {id: 51, cat: TV/Anime, desc: "Anime/Cartoon TV"}
|
||||
- {id: 77, cat: PC, desc: "Applications DOS"}
|
||||
- {id: 20, cat: PC, desc: "Applications Linux"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Applications MAC"}
|
||||
- {id: 68, cat: PC, desc: "Applications OS2 WARP"}
|
||||
- {id: 21, cat: PC, desc: "Applications Other"}
|
||||
- {id: 18, cat: PC/0day, desc: "Applications Windows"}
|
||||
- {id: 52, cat: Books, desc: "Books/Magazines All"}
|
||||
- {id: 9, cat: TV/Documentary, desc: "Documentaries All"}
|
||||
- {id: 53, cat: TV/Documentary, desc: "Documentaries Greek"}
|
||||
- {id: 54, cat: TV/Documentary, desc: "Documentaries HD"}
|
||||
- {id: 55, cat: Movies/DVD, desc: "DVD-R All"}
|
||||
- {id: 17, cat: Console/Other, desc: "Games Other"}
|
||||
- {id: 11, cat: Console/PS4, desc: "Games PSX"}
|
||||
- {id: 10, cat: PC/Games, desc: "Games Windows"}
|
||||
- {id: 13, cat: Console/XBox, desc: "Games Xbox"}
|
||||
- {id: 56, cat: Other, desc: "Miscellaneous All"}
|
||||
- {id: 57, cat: PC/Mobile-Other, desc: "Mobile All"}
|
||||
- {id: 1, cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: 2, cat: Movies/UHD, desc: "Movies 4K"}
|
||||
- {id: 42, cat: Movies/BluRay, desc: "Movies BluRay"}
|
||||
- {id: 58, cat: Movies/DVD, desc: "Movies DVD"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 69, cat: Movies/HD, desc: "Movies HD Packs"}
|
||||
- {id: 3, cat: Movies/SD, desc: "Movies SD"}
|
||||
- {id: 67, cat: Movies/SD, desc: "Movies SD Packs"}
|
||||
- {id: 71, cat: Audio, desc: "Music CDA"}
|
||||
- {id: 59, cat: Audio, desc: "Music Discographies"}
|
||||
- {id: 23, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 25, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 75, cat: Movies/HD, desc: "NO IN SUBS Movies HD"}
|
||||
- {id: 76, cat: Movies/UHD, desc: "NO SUBS IN Movies 4K"}
|
||||
- {id: 35, cat: TV/Sport, desc: "Sports HD"}
|
||||
- {id: 34, cat: TV/Sport, desc: "Sports SD"}
|
||||
- {id: 5, cat: TV, desc: "TV Greek Movies"}
|
||||
- {id: 6, cat: TV, desc: "TV Greek Series"}
|
||||
- {id: 7, cat: TV, desc: "TV Greek Series Packs"}
|
||||
- {id: 60, cat: TV, desc: "TV Greek Shows"}
|
||||
- {id: 41, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 61, cat: TV, desc: "TV Series"}
|
||||
- {id: 62, cat: TV, desc: "TV Series Emb"}
|
||||
- {id: 63, cat: TV, desc: "TV Series Emb Packs"}
|
||||
- {id: 64, cat: TV/HD, desc: "TV Series HD"}
|
||||
- {id: 65, cat: TV/HD, desc: "TV Series HD Packs"}
|
||||
- {id: 66, cat: TV, desc: "TV Series Packs"}
|
||||
- {id: 73, cat: Movies/BluRay, desc: "UNTOUCHED BluRay"}
|
||||
- {id: 72, cat: Movies/DVD, desc: "UNTOUCHED DVD"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
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: id
|
||||
options:
|
||||
id: 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: account-login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: /
|
||||
error:
|
||||
- selector: td.embedded:contains("Access Denied")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="], a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hellashut.de/torrents-search.php?c52=1&search=&cat=0&incldead=1&advanced=1&lang=0&blah=0&freeleech=0&sort=id&order=desc
|
||||
- path: torrents-search.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all, 1 notfree, 2 onlyfree
|
||||
freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 Greek
|
||||
lang: 0
|
||||
# 0 name, 1 descr, 2 uploader
|
||||
blah: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}"
|
||||
# 0 all
|
||||
team: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner tr.t-row
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="cat="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: 56
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
size:
|
||||
selector: td:nth-last-child(7)
|
||||
date:
|
||||
selector: td:nth-last-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm:ss"
|
||||
grabs:
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 10 day (as seconds = 10 x 24 x 60 x 60)
|
||||
text: 864000
|
||||
# TorrentTrader v2-svn
|
@@ -76,8 +76,8 @@ search:
|
||||
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 (not working)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -168,5 +168,5 @@ search:
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.30 2022-11-05
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.34 2023-01-16
|
||||
|
@@ -29,7 +29,7 @@ caps:
|
||||
- {id: 127, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 121, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 124, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 140, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 141, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 122, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
|
||||
- {id: 123, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 133, cat: Audio/MP3, desc: "Musik - MP3"}
|
||||
|
@@ -21,9 +21,9 @@ caps:
|
||||
- {id: 409, cat: Other, desc: "Misc/其他", default: true}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐", default: true}
|
||||
# special
|
||||
- {id: 410, cat: Movies, desc: "Video/视频资料", default: true}
|
||||
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: true}
|
||||
- {id: 412, cat: Other, desc: "Other/其他资料", default: true}
|
||||
- {id: 410, cat: Movies, desc: "Video/视频资料", default: false}
|
||||
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: false}
|
||||
- {id: 412, cat: Other, desc: "Other/其他资料", default: false}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -89,7 +89,6 @@ login:
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -97,7 +96,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409]
|
||||
categories: ["!", 410, 411, 412]
|
||||
- path: special.php
|
||||
categories: [410, 411, 412]
|
||||
inputs:
|
||||
@@ -109,7 +108,7 @@ search:
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl (4 does not appear to work)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
@@ -141,14 +140,6 @@ search:
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
@@ -192,12 +183,10 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.29 2022-10-13
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user