mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-20 21:37:08 +01:00
Compare commits
266 Commits
v0.20.2431
...
v0.20.2904
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
384b7bb3e4 | ||
|
|
8ce9aeaae9 | ||
|
|
8c9e327ae6 | ||
|
|
30854838c1 | ||
|
|
3dc9b6c532 | ||
|
|
aa484e4618 | ||
|
|
cd0ca16d9b | ||
|
|
871b857f48 | ||
|
|
d74aa2317a | ||
|
|
44adbb1033 | ||
|
|
d2b0d7b21e | ||
|
|
34eb822137 | ||
|
|
a0afe0aaa1 | ||
|
|
14bcfcc018 | ||
|
|
470b18d664 | ||
|
|
3b7110880f | ||
|
|
74fdceba96 | ||
|
|
6fca20b776 | ||
|
|
733b4c854b | ||
|
|
b3c7ce5818 | ||
|
|
cd582ced27 | ||
|
|
8788ce1e93 | ||
|
|
eb3a9ab300 | ||
|
|
690265d45e | ||
|
|
435b7e84e4 | ||
|
|
489e0c895a | ||
|
|
7e819a2b47 | ||
|
|
5d7ee40a04 | ||
|
|
a2e5fc88cb | ||
|
|
3b7962210a | ||
|
|
771519385c | ||
|
|
8171a7986a | ||
|
|
38a3314f6f | ||
|
|
d756ff0ccf | ||
|
|
5aae699e91 | ||
|
|
62aa75b7ad | ||
|
|
e8875d38fc | ||
|
|
22af3a09a2 | ||
|
|
749167ba4a | ||
|
|
872c8674bf | ||
|
|
aac8469ffc | ||
|
|
f8a9c57656 | ||
|
|
0d2621b24d | ||
|
|
231352dad5 | ||
|
|
aef0802c21 | ||
|
|
ef9a4fbaa6 | ||
|
|
aad95a64ae | ||
|
|
2ca375c33f | ||
|
|
0ba4d305b0 | ||
|
|
40fcb1e43b | ||
|
|
24d4198e59 | ||
|
|
d529b340ea | ||
|
|
94b7f5434e | ||
|
|
e45e8a9e4f | ||
|
|
d1f078b36b | ||
|
|
8cb43e3bdd | ||
|
|
c886faf7df | ||
|
|
885da5d30f | ||
|
|
c61526182a | ||
|
|
a950ee0071 | ||
|
|
0d45b29a8e | ||
|
|
c1fc63b8c6 | ||
|
|
df46540efc | ||
|
|
40acf3c4a7 | ||
|
|
329c17ab25 | ||
|
|
c479596a49 | ||
|
|
993d5f2045 | ||
|
|
5b7deb8250 | ||
|
|
fba7b11697 | ||
|
|
44caa63a2e | ||
|
|
cf6f67d7cc | ||
|
|
137e112964 | ||
|
|
3ee74aa52a | ||
|
|
7fb648d786 | ||
|
|
19a556cd8f | ||
|
|
33be5ec331 | ||
|
|
12bd05422a | ||
|
|
691a8c3757 | ||
|
|
a63c8b012c | ||
|
|
abe345a803 | ||
|
|
ce583219a9 | ||
|
|
ab76dde943 | ||
|
|
c7a5d8c9a5 | ||
|
|
2b66e79a39 | ||
|
|
6d5f8dac65 | ||
|
|
b0c9419345 | ||
|
|
1dd08bd63c | ||
|
|
c3f62a1ac2 | ||
|
|
655ab08d57 | ||
|
|
2a593a195c | ||
|
|
e7cd1a8e68 | ||
|
|
21a6ce12c8 | ||
|
|
5b4596b54b | ||
|
|
059d46a715 | ||
|
|
4b9c1afc2a | ||
|
|
c3196b7243 | ||
|
|
2a93a26acd | ||
|
|
e3e575c622 | ||
|
|
bffd28b36b | ||
|
|
b2fded3edf | ||
|
|
696905a803 | ||
|
|
0c269d8761 | ||
|
|
9e91379df6 | ||
|
|
34dbae0464 | ||
|
|
6c8c947e4d | ||
|
|
093725d26f | ||
|
|
76a1801858 | ||
|
|
e04fb90ae7 | ||
|
|
ac0828aca8 | ||
|
|
283022abc0 | ||
|
|
8c5f12083e | ||
|
|
8b5d086bbc | ||
|
|
529cd42315 | ||
|
|
5739b9adff | ||
|
|
98867077bf | ||
|
|
956aad264c | ||
|
|
ea8404e18d | ||
|
|
ed9909ab9b | ||
|
|
3bee0a6014 | ||
|
|
a6a9fb73e9 | ||
|
|
da1f703aaa | ||
|
|
373a84722c | ||
|
|
f5ca7b5122 | ||
|
|
a18157bb9e | ||
|
|
d0bd6665d0 | ||
|
|
7192865a2d | ||
|
|
4ce5e2786c | ||
|
|
c4aed48398 | ||
|
|
8a0e353ad5 | ||
|
|
aaea3d1555 | ||
|
|
521a39275f | ||
|
|
23c241ec57 | ||
|
|
200d9dd376 | ||
|
|
b8116cd0c9 | ||
|
|
0cd30a0794 | ||
|
|
40e98be02a | ||
|
|
17c1a19ef5 | ||
|
|
32af28a80c | ||
|
|
578de3ca42 | ||
|
|
c6f5f365ca | ||
|
|
e16df84475 | ||
|
|
a69f5d62db | ||
|
|
e572804a86 | ||
|
|
54855a5822 | ||
|
|
970d57f9c4 | ||
|
|
b6e2996833 | ||
|
|
1eb056b569 | ||
|
|
394e9551d5 | ||
|
|
561c32a48a | ||
|
|
0d27645a8e | ||
|
|
7271abd193 | ||
|
|
821d92cfb2 | ||
|
|
f5c16520e4 | ||
|
|
988c486fd9 | ||
|
|
811dc3ed9a | ||
|
|
8fb0504e7f | ||
|
|
6350556850 | ||
|
|
bcd4637a67 | ||
|
|
eb67d1ad47 | ||
|
|
e827e727fb | ||
|
|
4c0a513c66 | ||
|
|
6de0e1535c | ||
|
|
c70e8bb189 | ||
|
|
967ce651ba | ||
|
|
f050791933 | ||
|
|
4521fceae4 | ||
|
|
16ae35a710 | ||
|
|
91cd7a82d5 | ||
|
|
0400bd81fd | ||
|
|
6aeb9e5d5b | ||
|
|
de00289965 | ||
|
|
d0ad1f0b52 | ||
|
|
bd24ec37cd | ||
|
|
79eaf5c152 | ||
|
|
8b76e04b7c | ||
|
|
60ea6edda9 | ||
|
|
54fd12428c | ||
|
|
b8c5a00b97 | ||
|
|
5e069e5d74 | ||
|
|
ac5d6f5764 | ||
|
|
1685c0c8b9 | ||
|
|
6e234ff303 | ||
|
|
462860e6b0 | ||
|
|
c31ce0a8be | ||
|
|
d0ebdea164 | ||
|
|
d7c885306e | ||
|
|
33f59521aa | ||
|
|
3771801c41 | ||
|
|
6485122cd3 | ||
|
|
cbd8d88bf6 | ||
|
|
d751eb84dc | ||
|
|
9a69317f68 | ||
|
|
761ec2b7f6 | ||
|
|
92c711eb19 | ||
|
|
89d6f4a656 | ||
|
|
9861c2565d | ||
|
|
263d26f8e6 | ||
|
|
034ca38368 | ||
|
|
e7384b73e4 | ||
|
|
f1470fc3c5 | ||
|
|
ac535dc7ad | ||
|
|
cb10294900 | ||
|
|
8442a7980f | ||
|
|
aac2e5500e | ||
|
|
c95d268a94 | ||
|
|
b6611b1bb5 | ||
|
|
733c8d0249 | ||
|
|
ad635c442b | ||
|
|
1ca2edf9b7 | ||
|
|
d76325d6bc | ||
|
|
f2a3de351a | ||
|
|
b77177bbf3 | ||
|
|
9cfffe4ea1 | ||
|
|
1036f2c462 | ||
|
|
df515dc38a | ||
|
|
9eb5d0de3f | ||
|
|
ba19357572 | ||
|
|
db901dc3ec | ||
|
|
77a8a60136 | ||
|
|
5a4b0e4e30 | ||
|
|
35c051b97e | ||
|
|
8c57a6a03d | ||
|
|
df50d290c5 | ||
|
|
6f6cc47cab | ||
|
|
ee86c57ac8 | ||
|
|
6cc81b6266 | ||
|
|
6d3b40b80d | ||
|
|
6409a8e119 | ||
|
|
a1e0aa8efe | ||
|
|
a9bd16f681 | ||
|
|
24e3d930ec | ||
|
|
c82e4ae627 | ||
|
|
ef71118f74 | ||
|
|
fc4f36e68e | ||
|
|
0a18ddfe4e | ||
|
|
89858199ed | ||
|
|
29be6f4c80 | ||
|
|
aa72f5b80e | ||
|
|
db6457319b | ||
|
|
ef269a1358 | ||
|
|
8f7375ff90 | ||
|
|
18ac5ddf31 | ||
|
|
1fd731aaf8 | ||
|
|
01e9a73fa7 | ||
|
|
8ffe670b29 | ||
|
|
279caca6af | ||
|
|
ec8eb929e6 | ||
|
|
9678329b2e | ||
|
|
34f77fc376 | ||
|
|
1774fda60a | ||
|
|
c413f72db0 | ||
|
|
de6effabb2 | ||
|
|
3a0403958a | ||
|
|
134c6b34a6 | ||
|
|
cc6acd8efb | ||
|
|
f3a785bd2d | ||
|
|
33c82015af | ||
|
|
9490a8382f | ||
|
|
07081bcf42 | ||
|
|
5500a0e66f | ||
|
|
451bd7809e | ||
|
|
9fece7551b | ||
|
|
59c2801528 | ||
|
|
d60ae9f408 | ||
|
|
0c82b4144e | ||
|
|
23f1ea6a7b |
12
.github/workflows/codeql-analysis.yml
vendored
12
.github/workflows/codeql-analysis.yml
vendored
@@ -18,6 +18,7 @@ on:
|
||||
- src/**/*.cs
|
||||
- src/**/*.js
|
||||
- '!src/Jackett.Common/Indexers/**'
|
||||
- '!src/Jackett.Common/Models/IndexerConfig/**'
|
||||
- '!src/Jackett.IntegrationTests/**'
|
||||
- '!src/Jackett.Test/**'
|
||||
pull_request:
|
||||
@@ -27,6 +28,7 @@ on:
|
||||
- src/**/*.cs
|
||||
- src/**/*.js
|
||||
- '!src/Jackett.Common/Indexers/**'
|
||||
- '!src/Jackett.Common/Models/IndexerConfig/**'
|
||||
- '!src/Jackett.IntegrationTests/**'
|
||||
- '!src/Jackett.Test/**'
|
||||
schedule:
|
||||
@@ -35,7 +37,7 @@ on:
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
runs-on: windows-2019
|
||||
runs-on: windows-2022
|
||||
permissions:
|
||||
actions: read
|
||||
contents: read
|
||||
@@ -62,11 +64,6 @@ jobs:
|
||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||
|
||||
- name: Set up dotnet
|
||||
uses: actions/setup-dotnet@v2
|
||||
with:
|
||||
dotnet-version: '6.0.*'
|
||||
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
|
||||
@@ -85,5 +82,4 @@ jobs:
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v1
|
||||
|
||||
uses: github/codeql-action/analyze@v2
|
||||
|
||||
34
README.md
34
README.md
@@ -60,7 +60,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Dodder (菟丝子资源社区)
|
||||
* DonTorrent
|
||||
* E-Hentai
|
||||
* elitetorrent
|
||||
* EpubLibre
|
||||
* EXT Torrents
|
||||
* ExtraTorrent.st
|
||||
@@ -111,7 +110,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Pornforall
|
||||
* PornLeech
|
||||
* PornosLab
|
||||
* PornoTor
|
||||
* PornoTorrent
|
||||
* Portugas
|
||||
* ProPorn
|
||||
@@ -126,7 +124,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* seleZen
|
||||
* Sexy-Pics
|
||||
* Shana Project
|
||||
* ShizaProject
|
||||
* ShowRSS
|
||||
* Solid Torrents
|
||||
* sosulki
|
||||
@@ -180,17 +177,18 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BookTracker
|
||||
* BootyTape
|
||||
* Catorrent
|
||||
* Devil-Torrents
|
||||
* Darmowe torrenty
|
||||
* Deildu
|
||||
* DimeADozen (EzTorrent)
|
||||
* DXP (Deaf Experts)
|
||||
* Electro-Torrent
|
||||
* EniaHD
|
||||
* Erai-Raws
|
||||
* ExKinoRay
|
||||
* ExtremlymTorrents
|
||||
* Fenyarnyek-Tracker
|
||||
* File-Tracker
|
||||
* Fou-Du-Cinema
|
||||
* Gay-Torrents.net
|
||||
* Genesis-Movement
|
||||
* HD-CzTorrent
|
||||
@@ -226,6 +224,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Torrents-Local
|
||||
* TribalMixes
|
||||
* Union Fansub
|
||||
* vTorrent
|
||||
* xTorrenty
|
||||
* YggTorrent (YGG)
|
||||
* ZOMB
|
||||
* Ztracker
|
||||
@@ -236,9 +236,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 0day.kiev
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 2xFree
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3D Torrents (3DT)
|
||||
* 3Evils
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* Abnormal
|
||||
@@ -260,6 +260,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ArabP2P
|
||||
* aro.lol
|
||||
* AsianCinema
|
||||
* AsianDVDClub
|
||||
* Audiences
|
||||
* AudioNews (AN)
|
||||
* Aussierul.es [![(invite needed)][inviteneeded]](#)
|
||||
@@ -275,6 +276,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Bitded
|
||||
* Bithorlo (BHO)
|
||||
* BitHUmen [![(invite needed)][inviteneeded]](#)
|
||||
* Bit Of Valor
|
||||
* BitSexy
|
||||
* Bitspyder
|
||||
* BitTorrentFiles
|
||||
@@ -341,6 +343,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* FileList (FL)
|
||||
* FinElite (FE)
|
||||
* FinVip
|
||||
* Flux-Zone
|
||||
* FunFile (FF)
|
||||
* FunkyTorrents (FT)
|
||||
* Fuzer (FZ)
|
||||
@@ -376,6 +379,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDCity [![(invite needed)][inviteneeded]](#)
|
||||
* HDFans
|
||||
* HDHome (HDBigger) [![(invite needed)][inviteneeded]](#)
|
||||
* HDMaYi
|
||||
* HDMonkey
|
||||
* HDRoute [![(invite needed)][inviteneeded]](#)
|
||||
* HDSky [![(invite needed)][inviteneeded]](#)
|
||||
@@ -387,7 +391,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Hebits
|
||||
* HellasHut
|
||||
* HHanClub
|
||||
* HQMusic
|
||||
* House of Devil
|
||||
* ICC2022
|
||||
* iHDBits
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos
|
||||
@@ -395,6 +401,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* JME-REUNIT3D
|
||||
* JoyHD [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
* JPTV
|
||||
* Karagarga
|
||||
@@ -410,6 +417,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* leech24
|
||||
* LegacyHD (HD4Free)
|
||||
* LemonHD
|
||||
* Les-Cinephiles
|
||||
* Libble
|
||||
* LibraNet (LN)
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
@@ -428,7 +436,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
|
||||
* MNV (Max-New-Vision)
|
||||
* MOJBLiNK
|
||||
* Mononoké-BT [![(invite needed)][inviteneeded]](#)
|
||||
* MoreThanTV (MTV)
|
||||
* MouseBits
|
||||
* Movie-Torrentz
|
||||
@@ -437,6 +444,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* MySpleen [![(invite needed)][inviteneeded]](#)
|
||||
* NCore
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NicePT
|
||||
* NorBits
|
||||
* Old Toons World
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
@@ -444,7 +452,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* OshenPT
|
||||
* Ourbits (HDPter) [![(invite needed)][inviteneeded]](#)
|
||||
* P2PBG
|
||||
* P2PElite
|
||||
* Partis
|
||||
* PassThePopcorn (PTP)
|
||||
* Peeratiko
|
||||
@@ -461,6 +468,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Pretome
|
||||
* PrivateHD (PHD)
|
||||
* ProAudioTorrents (PAT)
|
||||
* PTChina (铂金学院)
|
||||
* PTerClub
|
||||
* PTFiles (PTF)
|
||||
* PThome [![(invite needed)][inviteneeded]](#)
|
||||
@@ -469,7 +477,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PTtime
|
||||
* Punk's Horror Tracker
|
||||
* PuntoTorrent
|
||||
* PuroVicio
|
||||
* PuTao
|
||||
* PWTorrents (PWT)
|
||||
* R3V WTF! [![(invite needed)][inviteneeded]](#)
|
||||
@@ -484,13 +491,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Romanian Metal Torrents (RMT) [![(invite needed)][inviteneeded]](#)
|
||||
* RPTorrents
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* ScenePalace (SP)
|
||||
* SceneRush
|
||||
* SceneTime
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* Secret Cinema
|
||||
* SeedFile
|
||||
* Shareisland
|
||||
* SharkPT
|
||||
* Shazbat [![(invite needed)][inviteneeded]](#)
|
||||
* SiamBIT
|
||||
* SkipTheCommercials
|
||||
@@ -517,7 +524,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TEKNO3D [![(invite needed)][inviteneeded]](#)
|
||||
* TellyTorrent
|
||||
* teracod (Movie Zone)
|
||||
* The Falling Angels (TFA) [![(invite needed)][inviteneeded]](#)
|
||||
* The Falling Angels (TFA)
|
||||
* The Geeks
|
||||
* The New Retro
|
||||
* The Occult [![(invite needed)][inviteneeded]](#)
|
||||
@@ -528,13 +535,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* The Vault [![(invite needed)][inviteneeded]](#)
|
||||
* The-Crazy-Ones
|
||||
* The-New-Fun
|
||||
* TheAudioScene
|
||||
* TheDarkCommunity (TDC)
|
||||
* TheEmpire (TE)
|
||||
* TheLeachZone (TLZ)
|
||||
* TheScenePlace (TSP)
|
||||
* TJUPT
|
||||
* TLFBits [![(invite needed)][inviteneeded]](#)
|
||||
* TmGHuB
|
||||
* Tornado
|
||||
* Torrent Network (TN)
|
||||
* Torrent Sector Crew (TSC)
|
||||
* Torrent Surf
|
||||
@@ -563,12 +571,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TvRoad
|
||||
* TVstore
|
||||
* Twilight Torrents
|
||||
* Twilights Zoom
|
||||
* U2 (U2分享園@動漫花園) [![(invite needed)][inviteneeded]](#)
|
||||
* UHDBits
|
||||
* UnionGang
|
||||
* UnleashTheCartoons
|
||||
* UnlimitZ
|
||||
* WDT (Wrestling Desires Torrents / Ultimate Wrestling Torrents)
|
||||
* White Angel
|
||||
* wOOt [![(invite needed)][inviteneeded]](#)
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
@@ -582,6 +589,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* YDYPT
|
||||
* Zamunda.net
|
||||
* Zelka.org
|
||||
* ZmPT (织梦)
|
||||
* ZonaQ
|
||||
</details>
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ stages:
|
||||
jobs:
|
||||
- job: Build
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -52,50 +52,50 @@ stages:
|
||||
artifactName: Jackett.Binaries.macOSARM64.tar.gz
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
LinuxARM32:
|
||||
buildDescription: Linux ARM32
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxARM32.tar.gz
|
||||
LinuxARM64:
|
||||
buildDescription: Linux ARM64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxARM64.tar.gz
|
||||
LinuxMuslAMDx64:
|
||||
buildDescription: Linux musl AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslAMDx64.tar.gz
|
||||
LinuxMuslARM32:
|
||||
buildDescription: Linux musl ARM32
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM32.tar.gz
|
||||
LinuxMuslARM64:
|
||||
buildDescription: Linux musl ARM64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM64.tar.gz
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
imageName: ubuntu-22.04
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
@@ -104,7 +104,6 @@ stages:
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -113,8 +112,23 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Build DateTimeRoutines
|
||||
# this task is not mandatory since DateTimeRoutines is build in the next task, but the purpose is to fix:
|
||||
# error MSB4018: System.IO.IOException: The process cannot access the file
|
||||
# '/home/vsts/work/1/net6.0-linux-musl-arm/src/DateTimeRoutines/bin/Release/netstandard2.0/DateTimeRoutines.deps.json'
|
||||
# because it is being used by another process.
|
||||
inputs:
|
||||
command: build
|
||||
projects: 'src/DateTimeRoutines/DateTimeRoutines.csproj'
|
||||
publishWebProjects: false
|
||||
zipAfterPublish: false
|
||||
arguments: '--configuration $(buildConfiguration) --runtime $(runtime) --framework netstandard2.0'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Build Jackett Server
|
||||
# the retries are just in case the previous task doesn't fix the error
|
||||
retryCountOnTaskFailure: 3
|
||||
inputs:
|
||||
command: publish
|
||||
projects: 'src/Jackett.Server/Jackett.Server.csproj'
|
||||
@@ -303,12 +317,11 @@ stages:
|
||||
- job: Linting_Dotnet
|
||||
displayName: Linting Dotnet
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -337,12 +350,11 @@ stages:
|
||||
- job: Linting_YAML
|
||||
displayName: Linting YAML
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UsePythonVersion@0
|
||||
displayName: Install Python
|
||||
@@ -358,12 +370,11 @@ stages:
|
||||
- job: Validate_YAML_Schema
|
||||
displayName: Validate YAML Schema
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: Bash@3
|
||||
displayName: Validate YAML Schema
|
||||
@@ -393,7 +404,7 @@ stages:
|
||||
jobs:
|
||||
- job: UnitTest
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -408,20 +419,19 @@ stages:
|
||||
runtime: osx-x64
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
imageName: ubuntu-22.04
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -430,15 +440,6 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
# this task is a workaround to fix a bug in Azure (not required under normal circumstances)
|
||||
# https://developercommunity.visualstudio.com/content/problem/983843/dotnet-build-task-does-not-use-nugetorg-for-one-pr.html
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Restore Test Project
|
||||
inputs:
|
||||
command: restore
|
||||
projects: '**/*.Test*/*.csproj'
|
||||
includeNuGetOrg: true
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Unit Tests (Mono, Linux and macOS)
|
||||
condition: and(succeeded(), not(startsWith(variables['runtime'], 'win')))
|
||||
@@ -487,7 +488,7 @@ stages:
|
||||
jobs:
|
||||
- job: IntegrationTest
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -504,22 +505,21 @@ stages:
|
||||
runtime: osx-x64
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
framework: net461
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download artifacts for integration tests
|
||||
@@ -556,15 +556,6 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
# this task is a workaround to fix a bug in Azure (not required under normal circumstances)
|
||||
# https://developercommunity.visualstudio.com/content/problem/983843/dotnet-build-task-does-not-use-nugetorg-for-one-pr.html
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Restore IntegrationTest Project
|
||||
inputs:
|
||||
command: restore
|
||||
projects: '**/*IntegrationTest*/*.csproj'
|
||||
includeNuGetOrg: true
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Integration Tests (Mono, Linux and macOS)
|
||||
condition: and(succeeded(), not(startsWith(variables['runtime'], 'win')))
|
||||
@@ -592,12 +583,11 @@ stages:
|
||||
jobs:
|
||||
- job: Publish
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download Artifacts for Publish
|
||||
|
||||
@@ -8,6 +8,7 @@ JACKETT_DIR="$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
# Launch Jackett (with CLI parameters)
|
||||
"${JACKETT_DIR}/jackett" --NoRestart "$@"
|
||||
ec=$?
|
||||
|
||||
# Get user running the service
|
||||
JACKETT_USER=$(whoami)
|
||||
@@ -16,3 +17,5 @@ JACKETT_USER=$(whoami)
|
||||
while pgrep -u "${JACKETT_USER}" JackettUpdater > /dev/null; do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
exit $ec
|
||||
|
||||
@@ -1 +1 @@
|
||||
span.multiselect-native-select{position:relative}span.multiselect-native-select select{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px -1px -1px -3px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;left:50%;top:30px}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .input-group{margin:5px}.multiselect-container>li{padding:0}.multiselect-container>li>a.multiselect-all label{font-weight:700}.multiselect-container>li.multiselect-group label{margin:0;padding:3px 20px 3px 20px;height:100%;font-weight:700}.multiselect-container>li.multiselect-group-clickable label{cursor:pointer}.multiselect-container>li>a{padding:0}.multiselect-container>li>a>label{margin:0;height:100%;cursor:pointer;font-weight:400;padding:3px 20px 3px 40px}.multiselect-container>li>a>label.radio,.multiselect-container>li>a>label.checkbox{margin:0}.multiselect-container>li>a>label>input[type=checkbox]{margin-bottom:5px}.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.form-inline .multiselect-container label.checkbox,.form-inline .multiselect-container label.radio{padding:3px 20px 3px 40px}.form-inline .multiselect-container li a label.checkbox input[type=checkbox],.form-inline .multiselect-container li a label.radio input[type=radio]{margin-left:-20px;margin-right:0}
|
||||
span.multiselect-native-select{position:relative}span.multiselect-native-select select{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px -1px -1px -3px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;left:50%;top:30px}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .input-group{margin:5px}.multiselect-container .multiselect-reset .input-group{width:93%}.multiselect-container>li{padding:0}.multiselect-container>li>a.multiselect-all label{font-weight:700}.multiselect-container>li.multiselect-group label{margin:0;padding:3px 20px;height:100%;font-weight:700}.multiselect-container>li.multiselect-group-clickable label{cursor:pointer}.multiselect-container>li>a{padding:0}.multiselect-container>li>a>label{margin:0;height:100%;cursor:pointer;font-weight:400;padding:3px 20px 3px 40px}.multiselect-container>li>a>label.checkbox,.multiselect-container>li>a>label.radio{margin:0}.multiselect-container>li>a>label>input[type=checkbox]{margin-bottom:5px}.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.form-inline .multiselect-container label.checkbox,.form-inline .multiselect-container label.radio{padding:3px 20px 3px 40px}.form-inline .multiselect-container li a label.checkbox input[type=checkbox],.form-inline .multiselect-container li a label.radio input[type=radio]{margin-left:-20px;margin-right:0}
|
||||
|
||||
@@ -1256,7 +1256,7 @@ function setSavedPresets(presets) {
|
||||
}
|
||||
|
||||
function setSavePresetsButtonState(table, element, state = false) {
|
||||
var button = element.find("button[id=jackett-search-results-datatable_savepreset_button]")
|
||||
var button = element.find("button[id=jackett-search-results-datatable_savepreset_button]")
|
||||
if (state) {
|
||||
button.attr("class", "btn btn-danger btn-sm");
|
||||
button.on("click", function () {
|
||||
@@ -1403,6 +1403,8 @@ function updateSearchResultTable(element, results) {
|
||||
newKeyword = "^((?!" + $.fn.dataTable.util.escapeRegex(keyword.substring(1)) + ").)*$";
|
||||
else
|
||||
newKeyword = '(' + keyword.split('|').map(k => $.fn.dataTable.util.escapeRegex(k)).join('|') + ')';
|
||||
// fix search filters with "-", "." or "_" characters in the middle of the word => #13628
|
||||
newKeyword = newKeyword.replace("\\-", "\\-\u200B?").replace("\\.", "\\.\u200B?").replace("_", "_\u200B?");
|
||||
newKeywords.push(newKeyword);
|
||||
});
|
||||
var filterText = newKeywords.join(" ");
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<script type="text/javascript" src="../libs/handlebarsextend.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../bootstrap/bootstrap.min.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-notify.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=20230107001"></script>
|
||||
<script type="text/javascript" src="../libs/tagify.min.js?changed=11662"></script>
|
||||
<script type="text/javascript" src="../libs/jQuery.tagify.min.js?changed=11662"></script>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20220721002" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20220721002" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/jquery.dataTables.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=20230107001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css?changed=2017083001">
|
||||
<title>Jackett</title>
|
||||
</head>
|
||||
@@ -570,39 +570,39 @@
|
||||
<table id="jackett-search-results-datatable" class="dataTable compact cell-border hover stripe">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Published</th>
|
||||
<th>Published</th>
|
||||
<th>Tracker</th>
|
||||
<th class="text-center">Published</th>
|
||||
<th class="text-center">Published</th>
|
||||
<th class="text-center">Tracker</th>
|
||||
<th>Name</th>
|
||||
<th>Size</th>
|
||||
<th>Size</th>
|
||||
<th title="Files">F</th>
|
||||
<th>Category</th>
|
||||
<th title="Grabs">G</th>
|
||||
<th title="Seeders">S</th>
|
||||
<th title="Leechers">L</th>
|
||||
<th title="DownloadVolumeFactor" class="fit">DLF</th>
|
||||
<th title="UploadVolumeFactor" class="fit">ULF</th>
|
||||
<th title="Download">DL</th>
|
||||
<th class="text-center">Size</th>
|
||||
<th class="text-center">Size</th>
|
||||
<th class="text-center" title="Files">F</th>
|
||||
<th class="text-center">Category</th>
|
||||
<th class="text-center" title="Grabs">G</th>
|
||||
<th class="text-center" title="Seeders">S</th>
|
||||
<th class="text-center" title="Leechers">L</th>
|
||||
<th class="text-center fit" title="DownloadVolumeFactor">DLF</th>
|
||||
<th class="text-center fit" title="UploadVolumeFactor">ULF</th>
|
||||
<th class="text-center" title="Download">DL</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each Results}}
|
||||
<tr class="jackett-search-results-row" data-imdb="{{Imdb}}" data-tmdb="{{TMDb}}" data-tvdb="{{TVDBId}}" data-tvmaze="{{TVMazeId}}" data-trakt="{{TraktId}}" data-douban="{{DoubanId}}" data-poster="{{Poster}}" data-description="{{Description}}">
|
||||
<td>{{PublishDate}}</td>
|
||||
<td>{{jacketTimespan PublishDate}}</td>
|
||||
<td>{{Tracker}}</td>
|
||||
<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>{{Size}}</td>
|
||||
<td class="fit">{{jacketSize Size}}</td>
|
||||
<td>{{Files}}</td>
|
||||
<td class="Cat">{{CategoryDesc}}</td>
|
||||
<td>{{Grabs}}</td>
|
||||
<td>{{Seeders}}</td>
|
||||
<td>{{Peers}}</td>
|
||||
<td class="DownloadVolumeFactor">{{DownloadVolumeFactor}}</td>
|
||||
<td class="UploadVolumeFactor">{{UploadVolumeFactor}}</td>
|
||||
<td class="downloadcolumn">
|
||||
<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">{{Grabs}}</td>
|
||||
<td class="text-center">{{Seeders}}</td>
|
||||
<td class="text-center">{{Peers}}</td>
|
||||
<td class="text-center DownloadVolumeFactor">{{DownloadVolumeFactor}}</td>
|
||||
<td class="text-center UploadVolumeFactor">{{UploadVolumeFactor}}</td>
|
||||
<td class="text-center downloadcolumn">
|
||||
{{#if Link}}
|
||||
<a class="downloadlink" title="Download locally" href="{{Link}}"><i class="fa fa-download"></i></a>
|
||||
{{/if}}
|
||||
@@ -756,6 +756,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20221221"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023010701"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
3248
src/Jackett.Common/Content/libs/bootstrap-multiselect.js
vendored
3248
src/Jackett.Common/Content/libs/bootstrap-multiselect.js
vendored
File diff suppressed because it is too large
Load Diff
@@ -13,13 +13,12 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.pet/
|
||||
- https://1337x.nocensor.lol/
|
||||
- https://1337x.unblockit.ink/
|
||||
- https://1337x.nocensor.art/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.is/
|
||||
- https://1337x.nocensor.work/
|
||||
- https://1337x.unblockit.kim/
|
||||
- https://1337x.unblockit.bz/
|
||||
- https://1337x.unblockit.tv/
|
||||
- https://1337x.unblockit.how/
|
||||
@@ -37,6 +36,8 @@ legacylinks:
|
||||
- https://1337x.unblockit.nz/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockit.page/
|
||||
- https://1337x.unblockit.pet/
|
||||
- https://1337x.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -110,6 +110,9 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
@@ -159,4 +162,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 5
|
||||
# NexusPHP v1.7.32 2022-12-05
|
||||
|
||||
217
src/Jackett.Common/Definitions/2xfree.yml
Normal file
217
src/Jackett.Common/Definitions/2xfree.yml
Normal file
@@ -0,0 +1,217 @@
|
||||
---
|
||||
id: 2xfree
|
||||
name: 2xFree
|
||||
description: "2xFree is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://pt.2xfree.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies(电影)", default: true}
|
||||
- {id: 402, cat: TV, desc: "TV Series(电视剧)", default: true}
|
||||
- {id: 403, cat: TV, desc: "TV Shows(综艺)", default: true}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries(纪录片)", default: true}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations(动画)", default: true}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos(MV)", default: true}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports(体育运动)", default: true}
|
||||
- {id: 408, cat: Audio, desc: "HQ Audio(音乐)", default: true}
|
||||
- {id: 409, cat: Other, desc: "Misc(其他)", default: true}
|
||||
- {id: 410, cat: Books, desc: "eBook(电子书)", default: true}
|
||||
- {id: 411, cat: PC/Games, desc: "PCGame(游戏)", default: true}
|
||||
- {id: 413, cat: Audio/Video, desc: "AV(无码)", default: true}
|
||||
- {id: 414, cat: Audio/Video, desc: "AV(有码)", default: true}
|
||||
- {id: 420, cat: XXX, desc: "HAnime(H动画)", default: true}
|
||||
- {id: 421, cat: XXX, desc: "HComic(H漫画)", default: true}
|
||||
- {id: 422, cat: XXX, desc: "HGame(H游戏)", default: true}
|
||||
- {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}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-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 ICC2022 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("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 413, 420, 421, 422, 423, 424]
|
||||
- path: special.php
|
||||
categories: [526, 527, 528, 529, 530, 531, 532]
|
||||
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 (4 does not appear to work)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
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: "2006-01-0215:04:05 -07:00"
|
||||
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
|
||||
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.8.0 2023-01-26
|
||||
@@ -177,4 +177,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP v3.0 2020-04-30
|
||||
|
||||
@@ -63,7 +63,7 @@ settings:
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: index.php?page=login&returnto=index.php
|
||||
path: index.php?page=login
|
||||
method: form
|
||||
form: form
|
||||
inputs:
|
||||
|
||||
@@ -1,181 +0,0 @@
|
||||
---
|
||||
id: 3evils
|
||||
name: 3Evils
|
||||
description: "3Evils is a Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://3evils.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: PC, desc: "Apps"}
|
||||
- {id: 24, cat: Books, desc: "Books/Magazines"}
|
||||
- {id: 12, cat: TV/Anime, desc: "Movies/Anime"}
|
||||
- {id: 31, cat: Movies, desc: "Movies/FooKaS RG"}
|
||||
- {id: 84, cat: Movies, desc: "Movies/Kids"}
|
||||
- {id: 55, cat: Movies/WEB-DL, desc: "Movies/WEB-DL"}
|
||||
- {id: 70, cat: Movies/WEB-DL, desc: "Movies/WEBRip"}
|
||||
- {id: 71, cat: Movies/HD, desc: "Movies/x265"}
|
||||
- {id: 64, cat: Movies/SD, desc: "Movies/XViD"}
|
||||
- {id: 26, cat: Audio/Lossless, desc: "Music/FLAC"}
|
||||
- {id: 10, cat: Audio/MP3, desc: "Music/MP3"}
|
||||
- {id: 63, cat: Audio/Video, desc: "Music/Videos"}
|
||||
- {id: 29, cat: Movies, desc: "Movies/Packs"}
|
||||
- {id: 19, cat: Audio, desc: "Music/Packs"}
|
||||
- {id: 61, cat: TV/Anime, desc: "TV/Anime"}
|
||||
- {id: 85, cat: TV, desc: "TV/Kids"}
|
||||
- {id: 86, cat: TV, desc: "TV/Packs"}
|
||||
- {id: 82, cat: TV/Sport, desc: "TV/Sports"}
|
||||
- {id: 36, cat: TV/HD, desc: "TV/x265"}
|
||||
- {id: 45, cat: TV/SD, desc: "TV/XViD"}
|
||||
|
||||
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. The default is <i>15</i>.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
perm_ssl: ""
|
||||
error:
|
||||
- selector: td.embedded:contains("Login failed!")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href*="/logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://www.3evils.net/browse.php?c16=1&c17=1&c3=1&c4=1&search=&searchin=title&incldead=0&only_free=1
|
||||
- path: browse.php
|
||||
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
searchin: title
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: table.table-bordered tbody tr:has(a[href^="download.php?torrent="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Tip\\('<b>(.*?)</b>"
|
||||
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="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
# onmouseover="Tip('<b>blahblah /><img src=\'img.php/tvmaze/80.jpg\' blahblah />');"
|
||||
# <img src=\'./pic/noposter.png\'
|
||||
- name: regexp
|
||||
args: "src=\\\\'(.+?)\\\\'"
|
||||
- name: replace
|
||||
args: ["./pic/noposter.png", ""]
|
||||
files:
|
||||
selector: td:nth-last-child(9)
|
||||
# 2 flavours of dates
|
||||
date_day:
|
||||
# Today<br> 10:20 AM
|
||||
# Yesterday<br> 08:03 PM
|
||||
selector: td:nth-last-child(7):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
# Feb 14 2019<br> 10:20 AM
|
||||
selector: td:nth-last-child(7):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-last-child(6)
|
||||
grabs:
|
||||
selector: td:nth-last-child(5)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"a.info:contains(\"[FREE]\")": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# U-232 V5 (customised)
|
||||
@@ -77,7 +77,8 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# currently supports only one query id at one time.
|
||||
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%
|
||||
|
||||
@@ -129,6 +129,7 @@ search:
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
remove: span
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
|
||||
@@ -11,17 +11,22 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Filmes"}
|
||||
- {id: 2, cat: TV, desc: "TV Séries"}
|
||||
- {id: 3, cat: Other, desc: "Cursos"}
|
||||
- {id: 4, cat: Console, desc: "Jogos"}
|
||||
- {id: 5, cat: PC, desc: "Aplicativos"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 7, cat: Other, desc: "Materiais de Apoio"}
|
||||
- {id: 2, cat: TV, desc: "Séries"}
|
||||
- {id: 8, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 5, cat: Other, desc: "Cursos"}
|
||||
- {id: 6, cat: Other, desc: "Materiais de Apoio"}
|
||||
- {id: 7, cat: Books, desc: "eBooks / Revistas / Apostilas"}
|
||||
- {id: 9, cat: Audio/Video, desc: "Shows"}
|
||||
- {id: 10, cat: PC, desc: "Programas"}
|
||||
- {id: 11, cat: TV/Documentary, desc: "Documentários"}
|
||||
- {id: 4, cat: Console, desc: "Games"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
@@ -169,6 +174,6 @@ search:
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.1.0
|
||||
|
||||
@@ -61,6 +61,10 @@ search:
|
||||
# https://www.acgsou.com/search.php?keyword=test
|
||||
- path: "{{ if .Keywords }}search.php?keyword={{ .Keywords }}{{ else }}1.html{{ end }}"
|
||||
|
||||
headers:
|
||||
# site blocks Jackett's User-Agents, so slightly alter it here (e.g. Safari/537.36 > Safari/537.35)
|
||||
User-Agent: ["Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.35"]
|
||||
|
||||
rows:
|
||||
selector: table tbody tr[class^="alt"]:has(td:nth-child(3) a)
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ search:
|
||||
# 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 }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -168,4 +168,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.4.0
|
||||
# json UNIT3D 6.5.0
|
||||
|
||||
@@ -111,8 +111,7 @@ search:
|
||||
title:
|
||||
selector: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["'", "'"]
|
||||
- name: htmldecode
|
||||
- name: append
|
||||
args: " {{ .Result.year }} {{ .Result._codec }} {{ .Result._container }} {{ .Result._media }} {{ .Result._resolution }} {{ .Result._audioFormat }}{{ if .Result._subbing }} Subs{{ else }}{{ end }}{{ if .Result._flags }} {{ .Result._flags }}{{ else }}{{ end }}{{ if .Result._language }} {{ .Result._language }}{{ else }}{{ end }}{{ if and (.Result._releaseGroup) (ne .Result._releaseGroup \"NULL\") }} -{{ .Result._releaseGroup }}{{ else }}{{ end }}"
|
||||
details:
|
||||
@@ -120,8 +119,7 @@ search:
|
||||
download:
|
||||
selector: link
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&", "&"]
|
||||
- name: htmldecode
|
||||
infohash:
|
||||
selector: infohash
|
||||
imdbid:
|
||||
|
||||
@@ -48,15 +48,14 @@ caps:
|
||||
- {id: 52, cat: TV, desc: "مسرحيات (Plays)"}
|
||||
- {id: 71, cat: TV, desc: "مسلسلات مدبلجه عربي (Arabic Dubbed Series)"}
|
||||
- {id: 90, cat: TV, desc: "برامج ومسابقات (Shows)"}
|
||||
- {id: 111, cat: TV, desc: "2022 رمضان (2022 Ramadan)"}
|
||||
# المرئيات الاجنبية Foreign Movies
|
||||
- {id: 92, cat: TV/Foreign, desc: "تعليمي (Educational)"}
|
||||
- {id: 93, cat: TV/Documentary, desc: "وثائقي (Documentary)"}
|
||||
- {id: 45, cat: TV/Foreign, desc: "مسلسلات وبرامج اجنبيه (Serials)"}
|
||||
- {id: 57, cat: TV/Foreign, desc: "مسلسلات آسيوية (Asian Series)"}
|
||||
- {id: 42, cat: Movies/Foreign, desc: "افلام اجنبيه (Foreign)"}
|
||||
- {id: 76, cat: Movies/3D, desc: "&ثلاثي الابعاد 3D (3D)"}
|
||||
- {id: 74, cat: Movies/HD, desc: "جودة عالية HD"}
|
||||
- {id: 76, cat: Movies/3D, desc: "&ثلاثي الابعاد 3D (3D)"}
|
||||
- {id: 59, cat: Movies/Foreign, desc: "افلام آسيوية (Asian Movies)"}
|
||||
- {id: 86, cat: Movies/Foreign, desc: "افلام هنديه (Indian Movies)"}
|
||||
# انمي مدبلج عربي Anime Arabic dubbed
|
||||
|
||||
155
src/Jackett.Common/Definitions/asiandvdclub.yml
Normal file
155
src/Jackett.Common/Definitions/asiandvdclub.yml
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
id: asiandvdclub
|
||||
name: AsianDVDClub
|
||||
description: "AsianDVDClub (ADC) is a Private Torrent Tracker for Asian DVD and BluRay"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://asiandvdclub.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 3, cat: Movies, desc: "Japan"}
|
||||
- {id: 5, cat: Movies, desc: "China"}
|
||||
- {id: 4, cat: Movies, desc: "Korea"}
|
||||
- {id: 2, cat: Movies, desc: "Hong Kong"}
|
||||
- {id: 6, cat: Movies, desc: "Philippines"}
|
||||
- {id: 7, cat: Movies, desc: "Taiwan"}
|
||||
- {id: 8, cat: Movies, desc: "Thailand"}
|
||||
- {id: 9, cat: Movies, desc: "Vietnam"}
|
||||
- {id: 10, cat: Movies, desc: "Malaysia"}
|
||||
- {id: 11, cat: Movies, desc: "Other Asian"}
|
||||
- {id: 12, cat: Other, desc: "Miscellaneous"}
|
||||
- {id: 15, cat: TV, desc: "TV Series"}
|
||||
- {id: 16, cat: Audio, desc: "Music/OST"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
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: added
|
||||
options:
|
||||
added: created
|
||||
up: seeders
|
||||
size: size
|
||||
title: 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
|
||||
method: post
|
||||
inputs:
|
||||
apple: evil
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: b:contains("Try again")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="/logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents/
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}countries[]={{.}}&{{end}}"
|
||||
searchbox: "{{ .Keywords }}"
|
||||
search: Search
|
||||
golden: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
column: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrenttable_helper > tbody > tr:has(img)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: img[class^="cat-"]
|
||||
attribute: class
|
||||
case:
|
||||
img.cat-anime: 1
|
||||
img.cat-hk: 2
|
||||
img.cat-japan: 3
|
||||
img.cat-korea: 4
|
||||
img.cat-china: 5
|
||||
img.cat-phil: 6
|
||||
img.cat-taiwan: 7
|
||||
img.cat-thai: 8
|
||||
img.cat-viet: 9
|
||||
img.cat-malaysia: 10
|
||||
img.cat-rest: 11
|
||||
img.cat-india: 11
|
||||
img.cat-misc: 12
|
||||
img.cat-pinku: 12
|
||||
img.cat-drama: 15
|
||||
img.cat-ost: 16
|
||||
title:
|
||||
selector: span[id]
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["torrent", "download"]
|
||||
poster:
|
||||
selector: span[id]
|
||||
attribute: data-ot
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src='(.+?)'
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
date:
|
||||
selector: td:nth-child(9) span.small
|
||||
filters:
|
||||
- name: timeago
|
||||
grabs:
|
||||
selector: td:nth-child(10)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="images/golden.gif"]: 0
|
||||
img[src$="images/silver.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.5
|
||||
minimumseedtime:
|
||||
# 45 days (as seconds = 45 x 24 x 60 x 60)
|
||||
text: 3888000
|
||||
# Engine n/a
|
||||
@@ -75,7 +75,7 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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 justdead
|
||||
incldead: 0
|
||||
# promotion: 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x 50%, 7 30%
|
||||
|
||||
@@ -9,11 +9,10 @@ requestDelay: 2
|
||||
links:
|
||||
- https://audiobookbay.li/
|
||||
- https://audiobookbay.se/
|
||||
- https://audiobookbay.unblockit.pet/
|
||||
- https://audiobookbay.unblockit.ink/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- http://audiobookbay.net/
|
||||
- https://audiobookbay.unblockit.kim/
|
||||
- https://audiobookbay.unblockit.bz/
|
||||
- https://audiobookbay.unblockit.tv/
|
||||
- http://audiobookbay.nl/
|
||||
@@ -34,6 +33,7 @@ legacylinks:
|
||||
- https://audiobookbay.unblockit.nz/
|
||||
- https://audiobookbay.fi/
|
||||
- https://audiobookbay.unblockit.page/
|
||||
- https://audiobookbay.unblockit.pet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -10,33 +10,49 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 12, cat: Console, desc: "XBOX360"}
|
||||
- {id: 9, cat: TV, desc: "TV-Boxsets"}
|
||||
- {id: 15, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 35, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 51, cat: PC/Mac, desc: "Apple"}
|
||||
- {id: 3, cat: PC, desc: "Apps"}
|
||||
- {id: 24, cat: PC, desc: "Apple"}
|
||||
- {id: 11, cat: TV, desc: "TV/x264"}
|
||||
- {id: 23, cat: Console, desc: "Visionary"}
|
||||
- {id: 14, cat: TV/Sport, desc: "WWE"}
|
||||
- {id: 26, cat: Console, desc: "Xbox"}
|
||||
- {id: 13, cat: Console, desc: "XBOX-JTAG"}
|
||||
- {id: 35, cat: Movies/Other, desc: "Anime"}
|
||||
- {id: 64, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
- {id: 4, cat: Movies/BluRay, desc: "Blu-Ray"}
|
||||
- {id: 6, cat: Movies, desc: "Movies/XVID"}
|
||||
- {id: 10, cat: TV, desc: "TV/Xvid"}
|
||||
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 40, cat: TV, desc: "Soaps"}
|
||||
- {id: 27, cat: Console, desc: "Roms and Emulators"}
|
||||
- {id: 30, cat: Console, desc: "Playstation"}
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 22, cat: Console, desc: "CoinOps"}
|
||||
- {id: 42, cat: Console, desc: "CoinOPS Official"}
|
||||
- {id: 65, cat: Console, desc: "CoinOps Unofficial"}
|
||||
- {id: 63, cat: Books/Comics, desc: "Comics"}
|
||||
- {id: 60, cat: Console, desc: "Core"}
|
||||
- {id: 44, cat: Console, desc: "CP78"}
|
||||
- {id: 16, cat: TV/Documentary, desc: "Docu"}
|
||||
- {id: 41, cat: Console, desc: "Dragon"}
|
||||
- {id: 5, cat: Books, desc: "EBooks"}
|
||||
- {id: 38, cat: Console, desc: "Hyperspin Bolt-on Edition"}
|
||||
- {id: 61, cat: Console, desc: "emuxtras"}
|
||||
- {id: 69, cat: TV, desc: "Entertainment"}
|
||||
- {id: 34, cat: TV, desc: "Kids"}
|
||||
- {id: 8, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 22, cat: PC/Games, desc: "CoinOPS"}
|
||||
- {id: 43, cat: Console, desc: "LB No Intro"}
|
||||
- {id: 33, cat: TV/Sport, desc: "MMA/Boxing"}
|
||||
- {id: 32, cat: Movies, desc: "Movie Pack"}
|
||||
- {id: 6, cat: Movies, desc: "Movies/XVID"}
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 31, cat: Console, desc: "Nintendo"}
|
||||
- {id: 59, cat: Console, desc: "P-R-U"}
|
||||
- {id: 8, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 50, cat: Console, desc: "PlayBox"}
|
||||
- {id: 30, cat: Console, desc: "Playstation"}
|
||||
- {id: 62, cat: Console, desc: "RaspberryPi"}
|
||||
- {id: 56, cat: Console, desc: "Retro Minis"}
|
||||
- {id: 67, cat: Console, desc: "Retrobat"}
|
||||
- {id: 27, cat: Console, desc: "Roms and Emulators"}
|
||||
- {id: 68, cat: Console, desc: "Schmoomer's"}
|
||||
- {id: 57, cat: Console, desc: "Sega"}
|
||||
- {id: 40, cat: TV, desc: "Soaps"}
|
||||
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 9, cat: TV, desc: "TV-Boxsets"}
|
||||
- {id: 11, cat: TV, desc: "TV/x264"}
|
||||
- {id: 10, cat: TV, desc: "TV/Xvid"}
|
||||
- {id: 14, cat: TV/Sport, desc: "WWE"}
|
||||
- {id: 26, cat: Console, desc: "Xbox"}
|
||||
- {id: 12, cat: Console, desc: "XBOX360"}
|
||||
- {id: 23, cat: XXX, desc: "xxx18+"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -45,6 +61,22 @@ caps:
|
||||
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: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>40</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
@@ -67,12 +99,15 @@ search:
|
||||
inputs:
|
||||
do: search
|
||||
keywords: "{{ .Keywords }}"
|
||||
# t_name, t_description, t_both, t_uploader, t_genre
|
||||
search_type: t_name
|
||||
category: 0 # multi cat search not supported
|
||||
# yes, no
|
||||
include_dead_torrents: yes
|
||||
# sort is done via do=quick_sort, and freeleech sorting is part of that set
|
||||
|
||||
rows:
|
||||
selector: table#sortabletable > tbody > tr:has(a[href*="/details.php?id="])
|
||||
selector: "table#sortabletable > tbody > tr:has(a[href*=\"/details.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"freedownload.gif\"]){{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: andmatch
|
||||
args: 66
|
||||
@@ -108,6 +143,18 @@ search:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
poster:
|
||||
selector: div.tooltip-content > img
|
||||
attribute: src
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freedownload.gif"]: 0
|
||||
img[src$="silverdownload.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="x2.gif"]: 2
|
||||
"*": 1
|
||||
date:
|
||||
selector: "td:nth-child(2) > div:has(span[style=\"float: right;\"])"
|
||||
remove: span
|
||||
@@ -116,14 +163,4 @@ search:
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04 -07:00"
|
||||
poster:
|
||||
selector: div.tooltip-content > img
|
||||
attribute: src
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[alt^="Free Torrent "]: 0
|
||||
img[alt^="Silver Torrent "]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine tbd
|
||||
# TS Special Edition v.8.0
|
||||
|
||||
@@ -8,12 +8,13 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://badasstorrents.com/
|
||||
- https://badasstorrents.nocensor.lol/
|
||||
- https://badasstorrents.nocensor.art/
|
||||
legacylinks:
|
||||
- https://badasstorrents.nocensor.work/
|
||||
- https://badasstorrents.nocensor.biz/
|
||||
- https://badasstorrents.nocensor.sbs/
|
||||
- https://badasstorrents.nocensor.world/
|
||||
- https://badasstorrents.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -80,15 +80,15 @@ search:
|
||||
div[title="Comics"]: 4
|
||||
div[title="Ebooks"]: 5
|
||||
div[title="Magazines"]: 7
|
||||
_author:
|
||||
author_optional:
|
||||
selector: .authorLink
|
||||
optional: true
|
||||
_editor:
|
||||
selector: .editorLink
|
||||
optional: true
|
||||
author:
|
||||
text: "{{ or .Result._author .Result._editor }}"
|
||||
_year:
|
||||
text: "{{ or .Result.author_optional .Result._editor }}"
|
||||
year:
|
||||
selector: .torYear
|
||||
optional: true
|
||||
_filetype:
|
||||
@@ -103,7 +103,7 @@ search:
|
||||
text: "{{ .Result.booktitle }}"
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if .Result.author }} by {{ .Result.author }}{{ else }}{{ end }}{{ if .Result._year }} {{ .Result._year }}{{ else }}{{ end }}{{ if .Result._filetype }} {{ .Result._filetype }}{{ else }}{{ end }}{{ if .Result._retail }} {{ .Result._retail }}{{ else }}{{ end }}"
|
||||
args: "{{ if .Result.author }} by {{ .Result.author }}{{ else }}{{ end }}{{ if .Result.year }} {{ .Result.year }}{{ else }}{{ end }}{{ if .Result._filetype }} {{ .Result._filetype }}{{ else }}{{ end }}{{ if .Result._retail }} {{ .Result._retail }}{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: .title a
|
||||
attribute: href
|
||||
|
||||
@@ -12,7 +12,7 @@ caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Other, desc: "ในพระราชสำนัก (in the royal court)"}
|
||||
- {id: 4, cat: TV, desc: "รายการทีวี (TV)"}
|
||||
- {id: 7, cat: Movies, desc: "ภาพยนตร์ชุด (Movie Packs)"}
|
||||
- {id: 7, cat: TV, desc: "ภาพยนตร์ชุด (Series)"}
|
||||
- {id: 12, cat: Books/EBook, desc: "หนังสือ สื่อการสอน (Books)"}
|
||||
- {id: 13, cat: Other/Misc, desc: "ทั่วไป (General)"}
|
||||
- {id: 14, cat: TV/Sport, desc: "กีฬา (Sport)"}
|
||||
|
||||
161
src/Jackett.Common/Definitions/bitofvalor.yml
Normal file
161
src/Jackett.Common/Definitions/bitofvalor.yml
Normal file
@@ -0,0 +1,161 @@
|
||||
---
|
||||
id: bitofvalor
|
||||
name: Bit Of Valor
|
||||
description: "Bit Of Valor is a HUNGARIAN Private Tracker for MOVIES / TV"
|
||||
language: hu-HU
|
||||
type: private
|
||||
encoding: ISO-8859-2
|
||||
links:
|
||||
- https://bitvalor.hu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 26, cat: Books, desc: "E-Book/ENG"}
|
||||
- {id: 27, cat: Books, desc: "E-Book/HUN"}
|
||||
- {id: 28, cat: PC/Games, desc: "Játék/ISO"}
|
||||
- {id: 29, cat: PC/Games, desc: "Játék/RIP"}
|
||||
- {id: 30, cat: Movies/SD, desc: "Cam/ENG"}
|
||||
- {id: 31, cat: Movies/SD, desc: "Cam/HUN"}
|
||||
- {id: 32, cat: Movies/HD, desc: "HD/ENG"}
|
||||
- {id: 33, cat: Movies/HD, desc: "HD/HUN"}
|
||||
- {id: 34, cat: Movies/DVD, desc: "Dvd9/HUN"}
|
||||
- {id: 35, cat: Movies/DVD, desc: "DVD/ENG"}
|
||||
- {id: 36, cat: Movies/DVD, desc: "DVD/HUN"}
|
||||
- {id: 37, cat: TV, desc: "Sorozat/ENG"}
|
||||
- {id: 38, cat: TV, desc: "Sorozat/HUN"}
|
||||
- {id: 39, cat: Movies/SD, desc: "Xvid/ENG"}
|
||||
- {id: 40, cat: Movies/SD, desc: "Xvid/HUN"}
|
||||
- {id: 41, cat: Audio, desc: "Zene/ENG"}
|
||||
- {id: 42, cat: Audio, desc: "Zene/HUN"}
|
||||
- {id: 43, cat: Other, desc: "Képek"}
|
||||
- {id: 44, cat: PC/Mobile-Other, desc: "Mobil"}
|
||||
- {id: 45, cat: PC, desc: "Program/ISO/RIP"}
|
||||
- {id: 46, cat: XXX/WEB-DL, desc: "XXX/Film"}
|
||||
- {id: 47, cat: XXX/ImageSet, desc: "XXX/Kép"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
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:
|
||||
1: title
|
||||
4: added
|
||||
5: size
|
||||
7: seeders
|
||||
- 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>Torrent oldalankén:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div.error
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 deadonly, 3 freeleech, 4 seedless
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not support imdbid search nor has imdbid link in results
|
||||
|
||||
rows:
|
||||
selector: tr:has(a[onmouseover]):not(:has(td.outer))
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[onmouseover]
|
||||
details:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) "
|
||||
download:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
genre:
|
||||
selector: i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: validate
|
||||
args: "Akció, Animációs, Kaland, Életrajzi, Vígjáték, Krimi, Dokumentum, Dráma, Családi, Fantasztikus, Film-noir, Bünügyi, Történelmi, Horror, Musical, Zenés, Misztikus, Hírek, Valóságshow, Romantikus, Sci-fi, Rövidfilm, Sport, Talkshow, Thriller, Háborús, Bemutató, XXX, Western, 60s, 70s, 80s, 90s, Alternative, Blues, Breaks, Classic, Country, Dance, Electronic, Folk, Funk, Hardcore, Hip.Hop, Haus, Metal, Pop, Pop.Rock, Rock, Soul, Techno, Disco, Trance, Live, Latin, Jazz"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/free.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# Engine n/a
|
||||
@@ -7,11 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.nocensor.lol/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
- https://bitsearch.nocensor.world/
|
||||
- https://bitsearch.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -99,9 +99,6 @@ login:
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
perm_ssl: ""
|
||||
returnto: "/"
|
||||
error:
|
||||
- selector: table.main:contains("failed")
|
||||
test:
|
||||
|
||||
@@ -93,6 +93,7 @@ search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
@@ -101,10 +102,15 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\s+", " "] # More than 1 space to 1 space
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
- name: trim
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr[class]
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
# there are two styles, we support both
|
||||
|
||||
@@ -14,6 +14,7 @@ legacylinks:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 56, cat: Movies, desc: "BTRG"}
|
||||
- {id: 95, cat: Movies, desc: "BTRG HMAX"}
|
||||
- {id: 57, cat: Movies, desc: "Yerli Dizi"}
|
||||
- {id: 62, cat: Movies, desc: "Yab@ncı Dizi"}
|
||||
- {id: 63, cat: Movies, desc: "Türkçe Film"}
|
||||
|
||||
@@ -25,7 +25,6 @@ caps:
|
||||
- {id: 5, cat: Movies/WEB-DL, desc: "HD - WEB-DL"}
|
||||
- {id: 14, cat: Movies/HD, desc: "HD - WEBRip"}
|
||||
- {id: 40, cat: Movies/HD, desc: "PTer"}
|
||||
- {id: 32, cat: PC/Games, desc: "Oyunlar (Games)"}
|
||||
- {id: 9, cat: Movies/SD, desc: "SD"}
|
||||
- {id: 23, cat: Movies/SD, desc: "SD - BluRay"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "SD - DVD"}
|
||||
@@ -60,12 +59,19 @@ login:
|
||||
path: index.php
|
||||
selector: a[href*="/logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
selectors:
|
||||
- selector: a[href*="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
- name: re_replace # E01 to BL01
|
||||
args: ["(?i)\\bE(\\d+)\\b", "E$1"]
|
||||
inputs:
|
||||
# does not support multi categories so defaulting to ALL
|
||||
do: search
|
||||
@@ -86,14 +92,11 @@ search:
|
||||
args: category
|
||||
title:
|
||||
selector: div[id^="port-target-"] a
|
||||
filters:
|
||||
- name: re_replace # BL01 to E01
|
||||
args: ["(?i)\\bBL(\\d+)\\b", " E$1 "]
|
||||
details:
|
||||
selector: div[id^="port-target-"] a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="download.php?id="]
|
||||
selector: div[id^="port-target-"] a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="port-content-"] img
|
||||
|
||||
@@ -7,12 +7,12 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.bulltorrent.com/
|
||||
- https://toros.nocensor.lol/
|
||||
legacylinks:
|
||||
- https://toros.nocensor.space/
|
||||
- https://toros.nocensor.work/
|
||||
- https://www.toros.co/
|
||||
- https://toros.nocensor.biz/
|
||||
- https://toros.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -88,9 +88,13 @@ search:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
date_day:
|
||||
selector: td:nth-child(2):contains("day")
|
||||
selector: td:nth-child(2):contains("day"), td:nth-child(2):contains("Hoy"), td:nth-child(2):contains("Ayer")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Hoy", "Today"]
|
||||
- name: replace
|
||||
args: ["Ayer", "Yesterday"]
|
||||
- name: fuzzytime
|
||||
date_ago:
|
||||
selector: td:nth-child(2):contains("ago")
|
||||
@@ -98,7 +102,7 @@ search:
|
||||
filters:
|
||||
- name: timeago
|
||||
date_year:
|
||||
selector: td:nth-child(2):not(:contains("ago")):not(:contains("day"))
|
||||
selector: td:nth-child(2):not(:contains("ago")):not(:contains("day")):not(:contains("Hoy")):not(:contains("Ayer"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
|
||||
@@ -58,18 +58,12 @@ caps:
|
||||
- {id: 43, cat: PC/Games, desc: "Пошаговые стратегии (TBS)"}
|
||||
- {id: 44, cat: PC/Games, desc: "Глобальные стратегии"}
|
||||
- {id: 45, cat: PC/Games, desc: "Стратегии в реальном времени"}
|
||||
- {id: 46, cat: PC/Games, desc: "ММО"}
|
||||
- {id: 47, cat: PC/Games, desc: "MMORPG"}
|
||||
- {id: 48, cat: PC/Games, desc: "Для взрослых"}
|
||||
- {id: 49, cat: PC/Games, desc: "От первого лица"}
|
||||
- {id: 50, cat: PC/Games, desc: "От третьего лица"}
|
||||
- {id: 51, cat: PC/Games, desc: "Шутер от первого лица"}
|
||||
- {id: 52, cat: PC/Games, desc: "Шутер от третьего лица"}
|
||||
- {id: 53, cat: PC/Games, desc: "Игры для слабых ПК"}
|
||||
- {id: 54, cat: PC/Games, desc: "Игры для очень слабых ПК"}
|
||||
- {id: 55, cat: PC/Games, desc: "Новинки игр для слабых ПК"}
|
||||
- {id: 56, cat: PC/Games, desc: "Игры для 64 битной системы"}
|
||||
- {id: 57, cat: PC/Games, desc: "Игры для 32 битной системы"}
|
||||
- {id: 58, cat: PC/Games, desc: "Психологический хоррор"}
|
||||
- {id: 59, cat: PC/Games, desc: "Хоррор на выживание"}
|
||||
- {id: 60, cat: PC/Games, desc: "Ролевой экшен"}
|
||||
@@ -118,6 +112,7 @@ caps:
|
||||
- {id: 105, cat: PC/Games, desc: "Вождение"}
|
||||
- {id: 189, cat: PC/Games, desc: "Пошаговая"}
|
||||
- {id: 106, cat: PC/Games, desc: "Пошаговая тактика"}
|
||||
- {id: 328, cat: PC/Games, desc: "2D-платформер"}
|
||||
- {id: 107, cat: PC/Games, desc: "3D-платформер"}
|
||||
- {id: 108, cat: PC/Games, desc: "Одна жизнь"}
|
||||
- {id: 109, cat: PC/Games, desc: "Паркур"}
|
||||
@@ -175,7 +170,7 @@ caps:
|
||||
- {id: 161, cat: PC/Games, desc: "Редактор уровней"}
|
||||
- {id: 162, cat: PC/Games, desc: "Культовая классика"}
|
||||
- {id: 163, cat: PC/Games, desc: "Минимализм"}
|
||||
- {id: 164, cat: PC/Games, desc: "Shoot 'em up"}
|
||||
- {id: 164, cat: PC/Games, desc: "Shoot'em up"}
|
||||
- {id: 165, cat: PC/Games, desc: "Решения с последствиями"}
|
||||
- {id: 166, cat: PC/Games, desc: "Процедурная генерация"}
|
||||
- {id: 167, cat: PC/Games, desc: "Мультипликация"}
|
||||
@@ -185,7 +180,7 @@ caps:
|
||||
- {id: 171, cat: PC/Games, desc: "Изометрия"}
|
||||
- {id: 172, cat: PC/Games, desc: "Карточная игра"}
|
||||
- {id: 173, cat: PC/Games, desc: "Чёрный юмор"}
|
||||
- {id: 174, cat: PC/Games, desc: "Beat 'em up"}
|
||||
- {id: 174, cat: PC/Games, desc: "Beat'em up"}
|
||||
- {id: 175, cat: PC/Games, desc: "Свобода выбора"}
|
||||
- {id: 176, cat: PC/Games, desc: "Рисованная графика"}
|
||||
- {id: 177, cat: PC/Games, desc: "Инопланетяне"}
|
||||
@@ -193,19 +188,92 @@ caps:
|
||||
- {id: 179, cat: PC/Games, desc: "Настольная игра"}
|
||||
- {id: 180, cat: PC/Games, desc: "Полёты"}
|
||||
- {id: 181, cat: PC/Games, desc: "Лут"}
|
||||
- {id: 182, cat: PC/Games, desc: "В реальном времени"}
|
||||
- {id: 183, cat: PC/Games, desc: "MOBA"}
|
||||
- {id: 184, cat: PC/Games, desc: "Демоны"}
|
||||
- {id: 185, cat: PC/Games, desc: "Расследование"}
|
||||
- {id: 186, cat: PC/Games, desc: "Мифология"}
|
||||
- {id: 187, cat: PC/Games, desc: "VR"}
|
||||
- {id: 191, cat: PC/Games, desc: "Психологическая"}
|
||||
- {id: 192, cat: PC/Games, desc: "Нелинейная"}
|
||||
- {id: 193, cat: PC/Games, desc: "Подземелье"}
|
||||
- {id: 195, cat: PC/Games, desc: "Для нескольких игроков"}
|
||||
- {id: 196, cat: PC/Games, desc: "Шедевр"}
|
||||
- {id: 197, cat: PC/Games, desc: "Ретро"}
|
||||
- {id: 198, cat: PC/Games, desc: "Олдскул"}
|
||||
- {id: 251, cat: PC/Games, desc: "Визуальная новелла"}
|
||||
- {id: 252, cat: PC/Games, desc: "Образование"}
|
||||
- {id: 253, cat: PC/Games, desc: "Партийная RPG"}
|
||||
- {id: 254, cat: PC/Games, desc: "Симулятор ходьбы"}
|
||||
- {id: 255, cat: PC/Games, desc: "Симулятор жизни"}
|
||||
- {id: 256, cat: PC/Games, desc: "Автосимулятор"}
|
||||
- {id: 257, cat: PC/Games, desc: "Ритм-игра"}
|
||||
- {id: 258, cat: PC/Games, desc: "Королевская битва"}
|
||||
- {id: 259, cat: PC/Games, desc: "Симулятор колонии"}
|
||||
- {id: 260, cat: PC/Games, desc: "Симулятор фермы"}
|
||||
- {id: 261, cat: PC/Games, desc: "Иммерсивный симулятор"}
|
||||
- {id: 262, cat: PC/Games, desc: "Кликер"}
|
||||
- {id: 263, cat: PC/Games, desc: "Арена-шутер"}
|
||||
- {id: 264, cat: PC/Games, desc: "Платформер на точность"}
|
||||
- {id: 265, cat: PC/Games, desc: "Метроидвания"}
|
||||
- {id: 266, cat: PC/Games, desc: "Похожа на Dark Souls"}
|
||||
- {id: 267, cat: PC/Games, desc: "Коллектатон"}
|
||||
- {id: 268, cat: PC/Games, desc: "Idle-игра"}
|
||||
- {id: 269, cat: PC/Games, desc: "Поиск существ"}
|
||||
- {id: 270, cat: PC/Games, desc: "Зрелищные сражения"}
|
||||
- {id: 271, cat: PC/Games, desc: "Пасьянс"}
|
||||
- {id: 272, cat: PC/Games, desc: "Боевые гонки"}
|
||||
- {id: 273, cat: PC/Games, desc: "Лутер-шутер"}
|
||||
- {id: 274, cat: PC/Games, desc: "Политический симулятор"}
|
||||
- {id: 275, cat: PC/Games, desc: "Традиционный рогалик"}
|
||||
- {id: 276, cat: PC/Games, desc: "Милая"}
|
||||
- {id: 277, cat: PC/Games, desc: "Стилизация"}
|
||||
- {id: 278, cat: PC/Games, desc: "Псевдотрёхмерность"}
|
||||
- {id: 279, cat: PC/Games, desc: "Абстрактная"}
|
||||
- {id: 280, cat: PC/Games, desc: "Красивая"}
|
||||
- {id: 281, cat: PC/Games, desc: "Воксельная графика"}
|
||||
- {id: 282, cat: PC/Games, desc: "Логика"}
|
||||
- {id: 283, cat: PC/Games, desc: "Драма"}
|
||||
- {id: 284, cat: PC/Games, desc: "Романтика"}
|
||||
- {id: 285, cat: PC/Games, desc: "Сюрреалистичная"}
|
||||
- {id: 286, cat: PC/Games, desc: "Мемы"}
|
||||
- {id: 287, cat: PC/Games, desc: "Природа"}
|
||||
- {id: 288, cat: PC/Games, desc: "Роботы"}
|
||||
- {id: 289, cat: PC/Games, desc: "Проработанная вселенная"}
|
||||
- {id: 290, cat: PC/Games, desc: "Триллер"}
|
||||
- {id: 291, cat: PC/Games, desc: "Антиутопия"}
|
||||
- {id: 292, cat: PC/Games, desc: "Сверхъестественное"}
|
||||
- {id: 293, cat: PC/Games, desc: "Альтернативная история"}
|
||||
- {id: 294, cat: PC/Games, desc: "Сражения на мечах"}
|
||||
- {id: 295, cat: PC/Games, desc: "Котики"}
|
||||
- {id: 296, cat: PC/Games, desc: "Америка"}
|
||||
- {id: 297, cat: PC/Games, desc: "Иллюминаты"}
|
||||
- {id: 298, cat: PC/Games, desc: "Капитализм"}
|
||||
- {id: 299, cat: PC/Games, desc: "Заговор"}
|
||||
- {id: 300, cat: PC/Games, desc: "Сатира"}
|
||||
- {id: 301, cat: PC/Games, desc: "Готика"}
|
||||
- {id: 303, cat: PC/Games, desc: "Шахты"}
|
||||
- {id: 304, cat: PC/Games, desc: "Боевые искусства"}
|
||||
- {id: 305, cat: PC/Games, desc: "Танки"}
|
||||
- {id: 306, cat: PC/Games, desc: "Подводный мир"}
|
||||
- {id: 307, cat: PC/Games, desc: "Кулинария"}
|
||||
- {id: 308, cat: PC/Games, desc: "Флот"}
|
||||
- {id: 309, cat: PC/Games, desc: "Транспорт"}
|
||||
- {id: 311, cat: PC/Games, desc: "Марс"}
|
||||
- {id: 312, cat: PC/Games, desc: "Оборотни"}
|
||||
- {id: 313, cat: PC/Games, desc: "Бой"}
|
||||
- {id: 314, cat: PC/Games, desc: "Несколько концовок"}
|
||||
- {id: 315, cat: PC/Games, desc: "Игра против ИИ"}
|
||||
- {id: 316, cat: PC/Games, desc: "Линейная"}
|
||||
- {id: 192, cat: PC/Games, desc: "Нелинейная"}
|
||||
- {id: 317, cat: PC/Games, desc: "Повествовательная"}
|
||||
- {id: 318, cat: PC/Games, desc: "Набор очков"}
|
||||
- {id: 319, cat: PC/Games, desc: "Менеджмент инвентаря"}
|
||||
- {id: 320, cat: PC/Games, desc: "Перемещение по сетке"}
|
||||
- {id: 321, cat: PC/Games, desc: "Разделение на классы"}
|
||||
- {id: 322, cat: PC/Games, desc: "Кастомизация оружия"}
|
||||
- {id: 323, cat: PC/Games, desc: "Построение колоды"}
|
||||
- {id: 324, cat: PC/Games, desc: "Гонки на выживание"}
|
||||
- {id: 325, cat: PC/Games, desc: "Свобода движения"}
|
||||
- {id: 326, cat: PC/Games, desc: "Замедление времени"}
|
||||
- {id: 327, cat: PC/Games, desc: "Динамическое повествование"}
|
||||
- {id: 238, cat: PC/Games, desc: "Игры 2024 года"}
|
||||
- {id: 237, cat: PC/Games, desc: "Игры 2023 года"}
|
||||
- {id: 236, cat: PC/Games, desc: "Игры 2022 года"}
|
||||
@@ -246,6 +314,7 @@ caps:
|
||||
- {id: 23, cat: PC/Games, desc: "Ранний Доступ"}
|
||||
- {id: 246, cat: PC/Games, desc: "Обновление"}
|
||||
- {id: 230, cat: PC/Games, desc: "Все Топ игры"}
|
||||
- {id: 329, cat: PC/Games, desc: "Актуальные Топ игры"}
|
||||
- {id: 24, cat: PC/Games, desc: "Новинка"}
|
||||
- {id: 194, cat: PC/Games, desc: "Игры по сети"}
|
||||
|
||||
|
||||
@@ -127,6 +127,9 @@ 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"]
|
||||
@@ -186,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.16
|
||||
# NexusPHP v1.7.31 2022-11-14
|
||||
|
||||
@@ -83,7 +83,7 @@ search:
|
||||
# http://www.cartoonchaos.org/index.php?page=torrents&search=transformers&category=30;21;20;26;15;16;17&options=0&active=0
|
||||
- path: index.php
|
||||
keywordsfilters:
|
||||
# if searching for season packs switch S01 to season 1 #11775
|
||||
# if searching for season packs switch S01 to season 1 #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(S0)(\\d{1,2})$", "season $2"]
|
||||
- name: re_replace
|
||||
@@ -103,6 +103,21 @@ search:
|
||||
selector: "table.lista tr td table.lista tr:has(a[href^=\"index.php?page=torrent-details\"]):not(:has(a[href=\"index.php?page=torrents&category=0\"])){{ if .Config.freeleech }}:has(img[src=\"gold/gold.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
title_torrent:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: f
|
||||
- name: htmldecode
|
||||
- name: re_replace
|
||||
args: ["(?i)\\.torrent$", ""]
|
||||
title_text:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
filters:
|
||||
# #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(season )", "S"]
|
||||
category:
|
||||
selector: td a[href^="index.php?page=torrents&category="]
|
||||
attribute: href
|
||||
@@ -110,11 +125,7 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
filters:
|
||||
# #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(season )", "S"]
|
||||
text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}"
|
||||
details:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
|
||||
@@ -104,12 +104,18 @@ search:
|
||||
title:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
filters:
|
||||
- name: re_replace # Seasons X-Y --> SX-SY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
|
||||
- name: re_replace # Seasons X-Y --> S0X-S0Y
|
||||
args: ["(?i)seasons?\\s*(\\d)\\s*-\\s*(\\d)\\b", "S0$1-S0$2"]
|
||||
- name: re_replace # Seasons X-YY --> S0X-SYY
|
||||
args: ["(?i)seasons?\\s*(\\d)\\s*-\\s*(\\d+)\\b", "S0$1-S$2"]
|
||||
- name: re_replace # Seasons XX-YY --> SXX-SYY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)\\b", "S$1-S$2"]
|
||||
- name: re_replace # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$1"]
|
||||
args: ["(?i)season\\s*(\\d)\\b", "S0$1"]
|
||||
- name: re_replace # Season XX --> SXX
|
||||
args: ["(?i)season\\s*(\\d+)\\b", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
args: ["(?i)\\bComplete\\s+Series\\b", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
|
||||
@@ -35,6 +35,10 @@ download:
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
headers:
|
||||
# site blocks automation User-Agents, so slightly alter it here (e.g. Safari/537.37 > Safari/537.36)
|
||||
User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"]
|
||||
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search?query={{ .Keywords }}{{ else }}latest{{ end }}"
|
||||
|
||||
@@ -65,7 +69,7 @@ search:
|
||||
attribute: title
|
||||
filters:
|
||||
- name: append
|
||||
args: " -09:00" # CUS
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "02 Jan, 2006 15:04 -07:00"
|
||||
size:
|
||||
|
||||
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://cpasbiens3.fr/
|
||||
- https://labastidevivante.fr/
|
||||
legacylinks:
|
||||
- http://www.cpasbiens.cc/
|
||||
- http://www.cpabien.cm/
|
||||
@@ -44,6 +44,7 @@ legacylinks:
|
||||
- https://www2.cpasbien-fr.fr/
|
||||
- https://www.cpasbien-fr.nz/
|
||||
- https://vwwvwvwvvw.cpasbien-fr.nz/
|
||||
- https://cpasbiens3.fr/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
123
src/Jackett.Common/Definitions/cpasbiensi.yml
Normal file
123
src/Jackett.Common/Definitions/cpasbiensi.yml
Normal file
@@ -0,0 +1,123 @@
|
||||
---
|
||||
id: cpasbiensi
|
||||
name: cpasbien.si
|
||||
description: "cpasbien.si is a FRENCH Public site for TV / MOVIES / GENERAL"
|
||||
language: fr-FR
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.cpasbien.si/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: info_8000
|
||||
type: info
|
||||
label: About cpasbiensi Categories
|
||||
default: cpasbiensi does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="/get_torrents/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.table-corps > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
_site_date:
|
||||
selector: a
|
||||
filters:
|
||||
# year can be at the end of the title, so we get it and name it _site_date
|
||||
- name: regexp
|
||||
args: "(19|20\\d{2})$"
|
||||
title_phase1:
|
||||
selector: a
|
||||
filters:
|
||||
# now we put the date at the right place according scene naming rules using .Result._site_date
|
||||
- name: re_replace
|
||||
args: ["(?i)( FRENCH)", " {{ .Result._site_date }} FRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( MULTI)", " {{ .Result._site_date }} MULTI"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result._site_date }} TRUEFRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result._site_date }} VOSTFR"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result._site_date }} SUBFRENCH"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a
|
||||
attribute: href
|
||||
size:
|
||||
selector: div.poid
|
||||
date:
|
||||
text: now
|
||||
seeders_optional:
|
||||
selector: div.up
|
||||
optional: true
|
||||
seeders:
|
||||
text: "{{ if .Result.seeders_optional }}{{ .Result.seeders_optional }}{{ else }}0{{ end }}"
|
||||
leechers_optional:
|
||||
selector: div.down
|
||||
optional: true
|
||||
leechers:
|
||||
text: "{{ if .Result.leechers_optional }}{{ .Result.leechers_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -94,12 +94,18 @@ search:
|
||||
title:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
filters:
|
||||
- name: re_replace # Seasons X-Y --> SX-SY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
|
||||
- name: re_replace # Seasons X-Y --> S0X-S0Y
|
||||
args: ["(?i)seasons?\\s*(\\d)\\s*-\\s*(\\d)\\b", "S0$1-S0$2"]
|
||||
- name: re_replace # Seasons X-YY --> S0X-SYY
|
||||
args: ["(?i)seasons?\\s*(\\d)\\s*-\\s*(\\d+)\\b", "S0$1-S$2"]
|
||||
- name: re_replace # Seasons XX-YY --> SXX-SYY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)\\b", "S$1-S$2"]
|
||||
- name: re_replace # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$1"]
|
||||
args: ["(?i)season\\s*(\\d)\\b", "S0$1"]
|
||||
- name: re_replace # Season XX --> SXX
|
||||
args: ["(?i)season\\s*(\\d+)\\b", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
args: ["(?i)\\bComplete\\s+Series\\b", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
|
||||
@@ -12,12 +12,11 @@ links:
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/
|
||||
- https://demonoid.unblockit.pet/
|
||||
- https://demonoid.unblockit.ink/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.lol/
|
||||
- https://demonoid.nocensor.art/
|
||||
legacylinks:
|
||||
- https://demonoid.nocensor.work/
|
||||
- https://demonoid.unblockit.kim/
|
||||
- https://demonoid.unblockit.bz/
|
||||
- https://demonoid.unblockit.tv/
|
||||
- https://demonoid.unblockit.how/
|
||||
@@ -36,10 +35,14 @@ legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.page/
|
||||
- https://demonoid.unblockit.pet/
|
||||
- https://demonoid.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# fetch these from https://www.demonoid.is/cached/torrent_categories_script.js?v5
|
||||
# Everything
|
||||
- {id: 0, cat: Other/Misc, desc: "Miscellaneous"}
|
||||
# Applications
|
||||
- {id: 1, cat: PC/Mobile-Android, desc: "Applications Android"}
|
||||
- {id: 2, cat: PC/Mobile-iOS, desc: "Applications phone / Ipod touch"}
|
||||
@@ -369,6 +372,8 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 0
|
||||
category|noappend:
|
||||
selector: span.table__column__subtext > a:nth-child(2)
|
||||
attribute: href
|
||||
optional: true
|
||||
|
||||
169
src/Jackett.Common/Definitions/devil-torrents.yml
Normal file
169
src/Jackett.Common/Definitions/devil-torrents.yml
Normal file
@@ -0,0 +1,169 @@
|
||||
---
|
||||
id: devil-torrents
|
||||
name: Devil-Torrents
|
||||
description: "Devil-Torrents is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://devil-torrents.pl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/SD, desc: "Filmy XviD/DivX"}
|
||||
- {id: 748, cat: Movies/UHD, desc: "Filmy 4K"}
|
||||
- {id: 4, cat: Movies/BluRay, desc: "Filmy Blu-Ray/HD"}
|
||||
- {id: 642, cat: Movies/HD, desc: "Filmy x264/h264"}
|
||||
- {id: 596, cat: Movies/HD, desc: "Filmy x265/h265"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "Filmy DVD"}
|
||||
- {id: 5, cat: Movies/3D, desc: "Filmy 3D"}
|
||||
- {id: 2, cat: Movies/HD, desc: "Filmy RMVB"}
|
||||
- {id: 362, cat: Movies/SD, desc: "Filmy IVO"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 702, cat: Movies/SD, desc: "TS/CAM"}
|
||||
- {id: 8, cat: XXX, desc: "Erotyka"}
|
||||
- {id: 10, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 11, cat: PC, desc: "Programy"}
|
||||
- {id: 12, cat: PC/Mobile-Other, desc: "GSM/PDA"}
|
||||
- {id: 13, cat: Console, desc: "Konsole"}
|
||||
- {id: 14, cat: PC/Games, desc: "Gry PC"}
|
||||
- {id: 15, cat: Movies, desc: "Dla Dzieci"}
|
||||
- {id: 16, cat: Books, desc: "Książki"}
|
||||
- {id: 525, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 18, cat: PC, desc: "Linux"}
|
||||
- {id: 19, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 699, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 21, cat: Other, desc: "Inne"}
|
||||
|
||||
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: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: POLISH
|
||||
options:
|
||||
POLISH: POLISH
|
||||
MULTI.POLISH: MULTI.POLISH
|
||||
|
||||
login:
|
||||
path: logowanie
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="img.php?size=3"]
|
||||
input: vImageCodP
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: ""
|
||||
error:
|
||||
- selector: div#center-side:contains("Logowanie nie")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
# https://devil-torrents.pl/szukaj.php?search=%&typ=torrent&c4=1&c748=1
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
typ: torrent
|
||||
search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}%{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.test5 > tbody > tr > td > div[id]:has(a[href^="download/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div#kategoria-gatunek-1
|
||||
case:
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy XviD/DivX\")": 1
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 4K\")": 748
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy Blu-Ray/HD\")": 4
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/h264\")": 642
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/h265\")": 596
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy DVD\")": 3
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 3D\")": 5
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy RMVB\")": 2
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy IVO\")": 362
|
||||
"div#kategoria-gatunek-1:contains(\"TV/Seriale\")": 7
|
||||
"div#kategoria-gatunek-1:contains(\"TS/CAM\")": 702
|
||||
"div#kategoria-gatunek-1:contains(\"Erotyka\")": 8
|
||||
"div#kategoria-gatunek-1:contains(\"Muzyka\")": 10
|
||||
"div#kategoria-gatunek-1:contains(\"Programy\")": 11
|
||||
"div#kategoria-gatunek-1:contains(\"GSM/PDA\")": 12
|
||||
"div#kategoria-gatunek-1:contains(\"Konsole\")": 13
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC\")": 14
|
||||
"div#kategoria-gatunek-1:contains(\"Dla Dzieci\")": 15
|
||||
"div#kategoria-gatunek-1:contains(\"Książki\")": 16
|
||||
"div#kategoria-gatunek-1:contains(\"Mac\")": 525
|
||||
"div#kategoria-gatunek-1:contains(\"Linux\")": 18
|
||||
"div#kategoria-gatunek-1:contains(\"Sport\")": 19
|
||||
"div#kategoria-gatunek-1:contains(\"Anime\")": 699
|
||||
"div#kategoria-gatunek-1:contains(\"Inne\")": 21
|
||||
title_phase1:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
title_multilang:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\bmulti\\b)", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download/"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.browse_poster
|
||||
attribute: src
|
||||
date:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}\.\d{2}\s+?[T|G|M|k]B)
|
||||
seeders:
|
||||
selector: font[color="green"] > b, font[color="red"] > b
|
||||
leechers:
|
||||
selector: font[color="green"]:nth-of-type(2) > b, font[color="red"]:nth-of-type(2) > b
|
||||
grabs:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}) razy
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -12,26 +12,18 @@ caps:
|
||||
categorymappings:
|
||||
- {id: 49, cat: Movies/SD, desc: "film / Cam"}
|
||||
- {id: 21, cat: Movies/SD, desc: "film / Cam [magyar]"}
|
||||
- {id: 6, cat: Movies/SD, desc: "film / DVDRip/XviD"}
|
||||
- {id: 5, cat: Movies/SD, desc: "film / DVDRip/XviD [magyar]"}
|
||||
- {id: 32, cat: Movies/SD, desc: "film / BDRip/XviD"}
|
||||
- {id: 33, cat: Movies/SD, desc: "film / BDRip/XviD [magyar]"}
|
||||
- {id: 50, cat: Movies/SD, desc: "film / BDRip/x264"}
|
||||
- {id: 51, cat: Movies/SD, desc: "film / BDRip/x264 [magyar]"}
|
||||
- {id: 4, cat: Movies/DVD, desc: "film / DVD-R"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "film / DVD-R [magyar]"}
|
||||
- {id: 45, cat: Movies/DVD, desc: "film / DVD9"}
|
||||
- {id: 46, cat: Movies/DVD, desc: "film / DVD9 [magyar]"}
|
||||
- {id: 30, cat: Movies/HD, desc: "film / HD"}
|
||||
- {id: 31, cat: Movies/HD, desc: "film / HD [magyar]"}
|
||||
- {id: 48, cat: Movies/BluRay, desc: "film / Bluray"}
|
||||
- {id: 47, cat: Movies/BluRay, desc: "film / Bluray [magyar]"}
|
||||
- {id: 10, cat: TV/SD, desc: "Sorozat / XviD"}
|
||||
- {id: 11, cat: TV/SD, desc: "Sorozat / XviD [magyar]"}
|
||||
- {id: 43, cat: TV/SD, desc: "Sorozat / DVD-R"}
|
||||
- {id: 41, cat: TV/SD, desc: "Sorozat / DVD-R [magyar]"}
|
||||
- {id: 44, cat: TV/HD, desc: "Sorozat / HD"}
|
||||
- {id: 42, cat: TV/HD, desc: "Sorozat / HD [magyar]"}
|
||||
- {id: 102, cat: Movies/SD, desc: "film / SD"}
|
||||
- {id: 101, cat: Movies/SD, desc: "film / SD [magyar]"}
|
||||
- {id: 106, cat: Movies/DVD, desc: "film / DVD-R"}
|
||||
- {id: 105, cat: Movies/DVD, desc: "film / DVD-R [magyar]"}
|
||||
- {id: 104, cat: Movies/HD, desc: "film / HD"}
|
||||
- {id: 103, cat: Movies/HD, desc: "film / HD [magyar]"}
|
||||
- {id: 108, cat: TV/SD, desc: "Sorozat / SD"}
|
||||
- {id: 107, cat: TV/SD, desc: "Sorozat / SD [magyar]"}
|
||||
- {id: 110, cat: TV/SD, desc: "Sorozat / DVD-R"}
|
||||
- {id: 109, cat: TV/SD, desc: "Sorozat / DVD-R [magyar]"}
|
||||
- {id: 112, cat: TV/HD, desc: "Sorozat / HD"}
|
||||
- {id: 111, cat: TV/HD, desc: "Sorozat / HD [magyar]"}
|
||||
- {id: 8, cat: Audio/MP3, desc: "Zene / MP3"}
|
||||
- {id: 9, cat: Audio/MP3, desc: "Zene / MP3 [magyar]"}
|
||||
- {id: 38, cat: Audio/Lossless, desc: "Zene / Lossless"}
|
||||
@@ -45,9 +37,9 @@ caps:
|
||||
- {id: 16, cat: PC/ISO, desc: "Programok / PC"}
|
||||
- {id: 24, cat: PC/Mobile-Other, desc: "Programok / Mobil"}
|
||||
- {id: 53, cat: PC/0day, desc: "Programok / Egyéb"}
|
||||
- {id: 17, cat: XXX/XviD, desc: "Pornó / XviD"}
|
||||
- {id: 113, cat: XXX/XviD, desc: "Pornó / SD"}
|
||||
- {id: 34, cat: XXX/DVD, desc: "Pornó / DVD-R"}
|
||||
- {id: 35, cat: XXX, desc: "Pornó / HD"}
|
||||
- {id: 114, cat: XXX, desc: "Pornó / HD"}
|
||||
- {id: 36, cat: XXX, desc: "Pornó / Képek"}
|
||||
- {id: 20, cat: Books, desc: "E-Book / Magyar"}
|
||||
- {id: 52, cat: Books, desc: "E-Book / Egyéb"}
|
||||
|
||||
@@ -110,7 +110,7 @@ search:
|
||||
limit: 100
|
||||
order: "{{ .Config.type }}"
|
||||
page: search
|
||||
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
section: all
|
||||
sort: "{{ .Config.sort }}"
|
||||
stereoscopic: false
|
||||
@@ -177,7 +177,7 @@ search:
|
||||
title_desc:
|
||||
optional: true
|
||||
selector: title
|
||||
year_desc:
|
||||
year:
|
||||
optional: true
|
||||
selector: year
|
||||
genre:
|
||||
@@ -193,7 +193,7 @@ search:
|
||||
selector: rating
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["0", ""]
|
||||
args: ["^0$", ""]
|
||||
_section_desc:
|
||||
optional: true
|
||||
selector: section
|
||||
@@ -224,5 +224,5 @@ search:
|
||||
- name: regexp
|
||||
args: "(.+?), $"
|
||||
description:
|
||||
text: "{{ if .Result.title_desc }}Title: {{ .Result.title_desc }}</br>{{ else }}{{ end }}{{ if .Result.year_desc }}Year: {{ .Result.year_desc }}</br>{{ else }}{{ end }}{{ if .Result.genre }}Genres: {{ .Result.genre }}</br>{{ else }}{{ end }}{{ if .Result._tagline_desc }}Tagline: {{ .Result._tagline_desc }}</br>{{ else }}{{ end }}{{ if .Result._cast_desc }}Cast: {{ .Result._cast_desc }}</br>{{ else }}{{ end }}{{ if .Result._rating_desc }}Rating: {{ .Result._rating_desc }}</br>{{ else }}{{ end }}{{ if .Result._tag_desc }}Tags: {{ .Result._tag_desc }}</br>{{ else }}{{ end }}{{ if .Result._predate_desc }}PRE: {{ .Result._predate_desc }}</br>{{ else }}{{ end }}{{ if .Result._section_desc }}Section: {{ .Result._section_desc }}{{ else }}{{ end }}"
|
||||
text: "{{ if .Result.title_desc }}Title: {{ .Result.title_desc }}</br>{{ else }}{{ end }}{{ if .Result.year }}Year: {{ .Result.year }}</br>{{ else }}{{ end }}{{ if .Result.genre }}Genres: {{ .Result.genre }}</br>{{ else }}{{ end }}{{ if .Result._tagline_desc }}Tagline: {{ .Result._tagline_desc }}</br>{{ else }}{{ end }}{{ if .Result._cast_desc }}Cast: {{ .Result._cast_desc }}</br>{{ else }}{{ end }}{{ if .Result._rating_desc }}Rating: {{ .Result._rating_desc }}</br>{{ else }}{{ end }}{{ if .Result._tag_desc }}Tags: {{ .Result._tag_desc }}</br>{{ else }}{{ end }}{{ if .Result._predate_desc }}PRE: {{ .Result._predate_desc }}</br>{{ else }}{{ end }}{{ if .Result._section_desc }}Section: {{ .Result._section_desc }}{{ else }}{{ end }}"
|
||||
# json rartracker api v1
|
||||
|
||||
@@ -5,6 +5,8 @@ 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/
|
||||
|
||||
|
||||
@@ -215,4 +215,7 @@ search:
|
||||
case:
|
||||
"img[src$=\"/torrent_multiple_upload.png\"]": 2
|
||||
"*": 1
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# TSUE 2.2
|
||||
|
||||
183
src/Jackett.Common/Definitions/electro-torrent.yml
Normal file
183
src/Jackett.Common/Definitions/electro-torrent.yml
Normal file
@@ -0,0 +1,183 @@
|
||||
---
|
||||
id: electro-torrent
|
||||
name: Electro-Torrent
|
||||
description: "Electro-Torrent is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://electro-torrent.pl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/SD, desc: "Filmy XviD/DivX"}
|
||||
- {id: 769, cat: Movies/HD, desc: "Filmy 1080p AVC"}
|
||||
- {id: 770, cat: Movies/HD, desc: "Filmy x264/1080p"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Filmy x264/720p"}
|
||||
- {id: 642, cat: Movies/HD, desc: "Filmy x264/h264"}
|
||||
- {id: 723, cat: Movies/UHD, desc: "Filmy 4K UHD"}
|
||||
- {id: 1160, cat: Movies/UHD, desc: "Filmy x265/2160p"}
|
||||
- {id: 1116, cat: Movies/HD, desc: "Filmy x265/1080p"}
|
||||
- {id: 1204, cat: Movies/HD, desc: "Filmy x265/720p"}
|
||||
- {id: 596, cat: Movies/HD, desc: "Filmy x265/h265"}
|
||||
- {id: 1072, cat: Movies, desc: "Filmy - WAREZY"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "Filmy DVD"}
|
||||
- {id: 5, cat: Movies/3D, desc: "Filmy 3D"}
|
||||
- {id: 362, cat: Movies/SD, desc: "Filmy IVO"}
|
||||
- {id: 696, cat: Movies/SD, desc: "Filmy TS/CAM"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 8, cat: XXX, desc: "Erotyka"}
|
||||
- {id: 10, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 11, cat: PC, desc: "Programy"}
|
||||
- {id: 12, cat: PC/Mobile-Other, desc: "GSM/PDA"}
|
||||
- {id: 13, cat: Console, desc: "Konsole"}
|
||||
- {id: 14, cat: PC/Games, desc: "Gry PC"}
|
||||
- {id: 1045, cat: PC/Games, desc: "Gry PC - Warezy"}
|
||||
- {id: 15, cat: Movies, desc: "Dla Dzieci"}
|
||||
- {id: 16, cat: Books, desc: "Książki"}
|
||||
- {id: 525, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 18, cat: PC, desc: "Linux"}
|
||||
- {id: 19, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 907, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 21, cat: Other, desc: "Inne"}
|
||||
|
||||
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: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: POLISH
|
||||
options:
|
||||
POLISH: POLISH
|
||||
MULTI.POLISH: MULTI.POLISH
|
||||
|
||||
login:
|
||||
path: logowanie
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="img.php?size=3"]
|
||||
input: vImageCodP
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: ""
|
||||
error:
|
||||
- selector: div#center-side:contains("Logowanie nie")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
# http://electro-torrent.pl/szukaj.php?search=&typ=torrent&cat=0
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
inputs:
|
||||
# does not support multi cat selection, defaulting to all
|
||||
# $raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
cat: 0
|
||||
typ: torrent
|
||||
search: "{{ .Keywords }}"
|
||||
|
||||
rows:
|
||||
selector: table.test5 > tbody > tr > td > div[id]:has(a[href*="/download/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div#kategoria-gatunek-1
|
||||
case:
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy XviD/DivX\")": 1
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 1080p AVC\")": 769
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/1080p\")": 770
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/720p\")": 4
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/h264\")": 642
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 4K UHD\")": 723
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/2160p\")": 1160
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/1080p\")": 1116
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/720p\")": 1204
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/h265\")": 596
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy - WAREZY\")": 1072
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy DVD\")": 3
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 3D\")": 5
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy IVO\")": 362
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy TS/CAM\")": 696
|
||||
"div#kategoria-gatunek-1:contains(\"TV/Seriale\")": 7
|
||||
"div#kategoria-gatunek-1:contains(\"Erotyka\")": 8
|
||||
"div#kategoria-gatunek-1:contains(\"Muzyka\")": 10
|
||||
"div#kategoria-gatunek-1:contains(\"Programy\")": 11
|
||||
"div#kategoria-gatunek-1:contains(\"GSM/PDA\")": 12
|
||||
"div#kategoria-gatunek-1:contains(\"Konsole\")": 13
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC - Warezy\")": 1045
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC\")": 14
|
||||
"div#kategoria-gatunek-1:contains(\"Dla Dzieci\")": 15
|
||||
"div#kategoria-gatunek-1:contains(\"Książki\")": 16
|
||||
"div#kategoria-gatunek-1:contains(\"Mac\")": 525
|
||||
"div#kategoria-gatunek-1:contains(\"Linux\")": 18
|
||||
"div#kategoria-gatunek-1:contains(\"Sport\")": 19
|
||||
"div#kategoria-gatunek-1:contains(\"Anime\")": 907
|
||||
"div#kategoria-gatunek-1:contains(\"Inne\")": 21
|
||||
title_phase1:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
title_multilang:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\bmulti\\b)", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.browse_poster
|
||||
attribute: src
|
||||
date:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}\.\d{2}\s+?[T|G|M|k]B)
|
||||
seeders:
|
||||
selector: font[color="green"] > b, font[color="red"] > b
|
||||
leechers:
|
||||
selector: font[color="green"]:nth-of-type(2) > b, font[color="red"]:nth-of-type(2) > b
|
||||
grabs:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}) razy
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -1,157 +0,0 @@
|
||||
---
|
||||
id: elitetorrent-biz
|
||||
name: EliteTorrent.biz
|
||||
description: "EliteTorrent.biz is a Public torrent site for TV, movies and documentaries"
|
||||
language: es-ES
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://www.elitetorrent.com/
|
||||
- https://elitetorrent.nocensor.lol/
|
||||
legacylinks:
|
||||
- https://www.elitetorrent.nu/
|
||||
- https://www.elitetorrent.tv/
|
||||
- https://www.elitetorrent.li/
|
||||
- https://www.elitetorrent.bz/
|
||||
- https://www.elitetorrent.nl/
|
||||
- https://wwvv.elitetorrent.nl/
|
||||
- https://wvvw.elitetorrent.nl/
|
||||
- https://vvww.elitetorrent.nl/
|
||||
- https://www.elitetorrent.to/
|
||||
- https://www.elitetorrent.se/
|
||||
- https://elitetorrent.si/
|
||||
- https://elitetorrent.nocensor.work/
|
||||
- https://elitetorrent.com/
|
||||
- https://elitetorrent.app/
|
||||
- https://elitetorrent.nocensor.biz/
|
||||
- https://elitetorrent.la/
|
||||
- https://www.elitetorrent.wtf/
|
||||
- https://www.elitetorrent.dev/
|
||||
- https://elitetorrent.nocensor.sbs/
|
||||
- https://elitetorrent.nocensor.world/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
series: TV
|
||||
peliculas: Movies
|
||||
other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# site returns just 30 results, attempt to fetch up to 90
|
||||
paths:
|
||||
- path: /
|
||||
- path: /page/2/
|
||||
followredirect: true
|
||||
- path: /page/3/
|
||||
followredirect: true
|
||||
keywordsfilters:
|
||||
# most ES/ITA TV torrents are in XXxYY format, so we search without S/E prefixes and filter later
|
||||
- name: re_replace
|
||||
args: ["(?i)S0?(\\d{1,2})", " $1 "]
|
||||
- name: re_replace
|
||||
args: ["(?i)E(\\d{2,3})", " $1 "]
|
||||
inputs:
|
||||
s: "{{ .Keywords }}"
|
||||
$raw: "&x=0&y=0"
|
||||
|
||||
rows:
|
||||
selector: "#principal .miniboxs-ficha li:has(span:nth-of-type(2))"
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category_movie:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(peliculas)/.*$"
|
||||
category_tv:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(series)/.*$"
|
||||
category:
|
||||
text: "{{ if or .Result.category_movie .Result.category_tv }}{{ or .Result.category_movie .Result.category_tv }}{{ else }}other{{ end }}"
|
||||
_quality:
|
||||
selector: span:nth-of-type(2) > i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["---", ""]
|
||||
_language:
|
||||
selector: span#idiomacio > i > img
|
||||
attribute: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Pelicula en ", ""]
|
||||
- name: replace
|
||||
args: ["Español Latino", "LATiN SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Español Castellano", "SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Ingles", "English"]
|
||||
- name: replace
|
||||
args: ["Subtitulado", " SPASUBS"]
|
||||
- name: replace
|
||||
args: ["VOSE", ""]
|
||||
title:
|
||||
selector: div.imagen > a
|
||||
attribute: title
|
||||
# normalize to SXXEYY format
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" – ", " "]
|
||||
- name: replace
|
||||
args: ["(", ""]
|
||||
- name: replace
|
||||
args: [")", ""]
|
||||
- name: re_replace
|
||||
args: ["(\\d{2})×(\\d{2})", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(\\d{1})×(\\d{2})", "S0$1E$2"]
|
||||
- name: append
|
||||
args: " {{ .Result._quality }} {{ .Result._language }}"
|
||||
details:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
download:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: .imagen img
|
||||
attribute: data-src
|
||||
size_optional:
|
||||
selector: .voto1
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["desc.", "512 MB"]
|
||||
- name: replace
|
||||
args: ["s", ""]
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}512 MB{{ end }}"
|
||||
date:
|
||||
text: now
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -7,11 +7,10 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.pet/
|
||||
- https://extratorrent.nocensor.lol/
|
||||
- https://extratorrent.unblockit.ink/
|
||||
- https://extratorrent.nocensor.art/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.kim/
|
||||
- https://extratorrent.unblockit.bz/
|
||||
- https://extratorrent.unblockit.tv/
|
||||
- https://extratorrent.unblockit.how/
|
||||
@@ -28,6 +27,8 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.nz/
|
||||
- https://extratorrent.nocensor.world/
|
||||
- https://extratorrent.unblockit.page/
|
||||
- https://extratorrent.unblockit.pet/
|
||||
- https://extratorrent.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -5,6 +5,8 @@ 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/
|
||||
|
||||
|
||||
@@ -8,12 +8,14 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://ext.to/
|
||||
- https://site.extto.com/
|
||||
- https://ext.torrentbay.to/
|
||||
- https://search.extto.com/
|
||||
- https://extranet.torrentbay.to/
|
||||
legacylinks:
|
||||
- https://ext.unblockninja.com/
|
||||
- https://t.extto.com/
|
||||
- https://torrent.extto.com/
|
||||
- https://site.extto.com/
|
||||
- https://ext.torrentbay.to/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -13,14 +13,13 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.pet/
|
||||
- https://eztv.nocensor.lol/
|
||||
- https://eztv.unblockit.ink/
|
||||
- https://eztv.nocensor.art/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
- https://eztv.it/ # redirects to .re
|
||||
- https://eztv.ch/ # redirects to .re
|
||||
- https://eztv.io/
|
||||
- https://eztv.unblockit.kim/
|
||||
- https://eztv.unblockit.bz/
|
||||
- https://eztv.unblockit.tv/
|
||||
- https://eztv.unblockit.how/
|
||||
@@ -37,6 +36,8 @@ legacylinks:
|
||||
- https://eztv.unblockit.nz/
|
||||
- https://eztv.nocensor.world/
|
||||
- https://eztv.unblockit.page/
|
||||
- https://eztv.unblockit.pet/
|
||||
- https://eztv.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -7,11 +7,12 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://filelisting.com/
|
||||
- https://filelisting.nocensor.lol/
|
||||
- https://filelisting.nocensor.art/
|
||||
legacylinks:
|
||||
- https://filelisting.nocensor.biz/
|
||||
- https://filelisting.nocensor.sbs/
|
||||
- https://filelisting.nocensor.world/
|
||||
- https://filelisting.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
160
src/Jackett.Common/Definitions/fluxzone.yml
Normal file
160
src/Jackett.Common/Definitions/fluxzone.yml
Normal file
@@ -0,0 +1,160 @@
|
||||
---
|
||||
id: fluxzone
|
||||
name: Flux-Zone
|
||||
description: "Flux-Zone is a ROMANIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ro-RO
|
||||
type: private
|
||||
encoding: utf-8
|
||||
links:
|
||||
- http://fluxzone.org/
|
||||
legacylinks:
|
||||
- https://fluxzone.org/ # not supported
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 15, cat: PC/Mobile-Other, desc: "Mobile"}
|
||||
- {id: 36, cat: TV/Documentary, desc: "Docs/Others"}
|
||||
- {id: 8, cat: Movies/UHD, desc: "Filme 4K"}
|
||||
- {id: 39, cat: Movies/3D, desc: "Filme 3D"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Filme Anime"}
|
||||
- {id: 42, cat: TV/Anime, desc: "Filme Anime-RO"}
|
||||
- {id: 5, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 6, cat: Movies/BluRay, desc: "Filme BluRay-RO"}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Filme DVD"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "Filme DVD-RO"}
|
||||
- {id: 11, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 12, cat: Movies/HD, desc: "Filme HD-RO"}
|
||||
- {id: 24, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 25, cat: Movies/SD, desc: "Filme SD-RO"}
|
||||
- {id: 18, cat: Movies, desc: "Filme Packs"}
|
||||
- {id: 19, cat: Movies, desc: "Filme Packs-RO"}
|
||||
- {id: 30, cat: PC/Games, desc: "Jocuri PC"}
|
||||
- {id: 38, cat: Console, desc: "Jocuri Console"}
|
||||
- {id: 26, cat: PC, desc: "Programe"}
|
||||
- {id: 28, cat: Audio/Video, desc: "Muzica/Videoclip"}
|
||||
- {id: 21, cat: TV/SD, desc: "Seriale SD"}
|
||||
- {id: 81, cat: TV/HD, desc: "Seriale HD"}
|
||||
- {id: 79, cat: TV/UHD, desc: "Seriale 4K"}
|
||||
- {id: 27, cat: XXX, desc: "XXX"}
|
||||
- {id: 32, cat: TV/Sport, desc: "Sport"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
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
|
||||
- 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
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
take_login: 1
|
||||
returnto: /
|
||||
error:
|
||||
- selector: td.embedded:contains("Login failed")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="logout.php?auth="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 title, 1 descr, 2 both
|
||||
blah: 0
|
||||
# 1 all, 2 onlydead, 3 free, 4 seedbox, 5 x2
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.mainblockcontenttt > tbody > tr.browse
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
# the title from the details link is often abbreviated so we use the download href instead
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "download.php/\\d+/(.+?)\\.torrent"
|
||||
- name: urldecode
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "15:04:0502/01/2006"
|
||||
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/freetorrent.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src="pic/x2.png"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# Engine n/a
|
||||
@@ -1,243 +0,0 @@
|
||||
---
|
||||
id: fouducinema
|
||||
name: Fou-Du-Cinema
|
||||
description: "Fou-Du-Cinema (FdC) is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://fou-du-cinema.ca/
|
||||
legacylinks:
|
||||
- https://fou-du-cinema.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 80, cat: Movies, desc: "Enfants Film"}
|
||||
- {id: 82, cat: TV, desc: "Enfants Série"}
|
||||
- {id: 1, cat: Movies/SD, desc: "FILM Xvid"}
|
||||
- {id: 101, cat: TV/Documentary, desc: "FILM Documentaire"}
|
||||
- {id: 75, cat: Movies/UHD, desc: "FILM 2160 P"}
|
||||
- {id: 63, cat: Movies/WEB-DL, desc: "FILM WEB"}
|
||||
- {id: 62, cat: Movies/WEB-DL, desc: "FILM WEB"}
|
||||
- {id: 66, cat: Movies/HD, desc: "FILM HDRip"}
|
||||
- {id: 34, cat: Movies/SD, desc: "FILM TVRip"}
|
||||
- {id: 33, cat: Movies/HD, desc: "FILM HDTV"}
|
||||
- {id: 31, cat: Movies/Other, desc: "FILM MUET"}
|
||||
- {id: 30, cat: Movies/Other, desc: "FILM VOST"}
|
||||
- {id: 29, cat: Movies/SD, desc: "FILM VHS"}
|
||||
- {id: 28, cat: Movies/HD, desc: "FILM 720"}
|
||||
- {id: 27, cat: Movies/HD, desc: "FILM BDRip"}
|
||||
- {id: 26, cat: Movies/BluRay, desc: "FILM BluRay"}
|
||||
- {id: 25, cat: Movies/BluRay, desc: "FILM ISO"}
|
||||
- {id: 4, cat: Movies/HD, desc: "FILM 1080"}
|
||||
- {id: 2, cat: Movies/DVD, desc: "FILM DVD"}
|
||||
- {id: 103, cat: Movies, desc: "FILM Pack"}
|
||||
- {id: 9, cat: TV/SD, desc: "SERIE DVD"}
|
||||
- {id: 72, cat: TV/UHD, desc: "SERIE 2160 P"}
|
||||
- {id: 65, cat: TV/HD, desc: "SERIE HDRip"}
|
||||
- {id: 21, cat: TV/HD, desc: "SERIE HDTV.1080p"}
|
||||
- {id: 20, cat: TV/HD, desc: "SERIE HDTV.720p"}
|
||||
- {id: 19, cat: TV/SD, desc: "SERIE HDTV"}
|
||||
- {id: 36, cat: TV/Other, desc: "SERIE Pack"}
|
||||
- {id: 17, cat: TV/SD, desc: "SERIE VHS"}
|
||||
- {id: 16, cat: TV/SD, desc: "SERIE TVRip"}
|
||||
- {id: 15, cat: TV/WEB-DL, desc: "SERIE WEB.1080p"}
|
||||
- {id: 14, cat: TV/WEB-DL, desc: "SERIE WEB.720p"}
|
||||
- {id: 12, cat: TV/WEB-DL, desc: "SERIE WEB"}
|
||||
- {id: 102, cat: TV/Documentary, desc: "SERIE Documentaire"}
|
||||
- {id: 67, cat: TV/Anime, desc: "ANIMEE films"}
|
||||
- {id: 70, cat: TV/Anime, desc: "ANIMEE Series"}
|
||||
- {id: 95, cat: TV/Anime, desc: "ANIMEE Animée"}
|
||||
- {id: 56, cat: PC/ISO, desc: "LOGICIELS Linux"}
|
||||
- {id: 24, cat: PC/Mac, desc: "LOGICIELS Apple"}
|
||||
- {id: 58, cat: PC/0day, desc: "LOGICIELS Windows"}
|
||||
- {id: 44, cat: Books/Mags, desc: "EBOOK Journaux"}
|
||||
- {id: 46, cat: Books/Technical, desc: "EBOOK Documents"}
|
||||
- {id: 48, cat: XXX/Other, desc: "EBOOK XXX"}
|
||||
- {id: 49, cat: Books/EBook, desc: "EBOOK Livres"}
|
||||
- {id: 5, cat: Audio/Video, desc: "MUSIC clip video"}
|
||||
- {id: 96, cat: PC/Games, desc: "JEUX Apple"}
|
||||
- {id: 8, cat: Console/PS3, desc: "JEUX PS3"}
|
||||
- {id: 45, cat: PC/Games, desc: "JEUX PC"}
|
||||
|
||||
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: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
- name: 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
|
||||
- name: countdown
|
||||
type: info
|
||||
label: Countdown Timer
|
||||
default: "This site is a Tracker based on Time: to keep your account the time must not be at 0000-00-00-00-00-00. Read <a href=\"https://fou-du-cinema.ca/faq.php#nogo\" target=\"_blank\">Fou-Du-Cinema FAQ</a> on how to keep the timer active."
|
||||
- name: registration
|
||||
type: info
|
||||
label: Registration Conformation
|
||||
default: After you register you will receive a confirmation email that contains a link to activate your account. If you have not received it check your Junk mail / Spam mail folder.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="cap/captcha_math.php?codeCaptcha="]
|
||||
input: stringCaptcha
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: ajax_det_poll.php
|
||||
method: post
|
||||
inputs:
|
||||
set_thanks: Merci
|
||||
det_id: "{{ .DownloadUri.Query.torrent }}"
|
||||
ajax: yes
|
||||
|
||||
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 }}"
|
||||
# site does not support imdbid searches or provide imdb links in results
|
||||
|
||||
rows:
|
||||
selector: div.content_wrap > div.selection_wrap:has(a[href^="details.php?id="])
|
||||
|
||||
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_phase1:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)([\\s|\\.|-]multi[\\s|\\.|-])", ".{{ .Config.multilanguage }}."]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)([\\s|\\.|-]vostfr[\\s|\\.|-])", ".ENGLISH."]
|
||||
- name: re_replace
|
||||
args: ["(?i)([\\s|\\.|-]subfrench[\\s|\\.|-])", ".ENGLISH."]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["details.php?id=", "download.php?torrent="]
|
||||
seeders:
|
||||
selector: div.selection_unter_aa > b
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa > b
|
||||
date_day:
|
||||
# Aujourd'hui à 06:26:25
|
||||
# Hier à 05:15:19
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Aujourd'hui à ", "Today "]
|
||||
- name: replace
|
||||
args: ["Hier à ", "Yesterday "]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Le 17.10.2020 à 04:39:44
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Le ", ""]
|
||||
- name: replace
|
||||
args: ["à ", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "02.01.2006 15:04:05 -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 2.5 days (as seconds = 2.5 x 24 x 60 x 60)
|
||||
text: 216000
|
||||
# 3xT
|
||||
@@ -9,7 +9,6 @@ followredirect: true
|
||||
# to fetch current domain use https://www.protege-liens.com/Gktorrent
|
||||
links:
|
||||
- https://www.gktorrents.cc/
|
||||
- https://gktorrent.nocensor.lol/
|
||||
legacylinks:
|
||||
- https://www.gktorrent.org/
|
||||
- https://www.gktorrent.me/
|
||||
@@ -31,6 +30,7 @@ legacylinks:
|
||||
- https://www.gktorrents.org/
|
||||
- https://gktorrent.nocensor.sbs/
|
||||
- https://gktorrent.nocensor.world/
|
||||
- https://gktorrent.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -50,6 +50,7 @@ caps:
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: multilang
|
||||
|
||||
@@ -10,14 +10,13 @@ links:
|
||||
- https://glodls.to/
|
||||
- https://gtdb.cc/
|
||||
- https://www.gtdb.to/
|
||||
- https://glotorrents.unblockit.pet/
|
||||
- https://glotorrents.nocensor.lol/
|
||||
- https://glotorrents.unblockit.ink/
|
||||
- https://glotorrents.nocensor.art/
|
||||
- https://glodls.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://gtdb.to/
|
||||
- https://glotorrents.nocensor.work/
|
||||
- https://glotorrents.unblockit.kim/
|
||||
- https://glotorrents.unblockit.bz/
|
||||
- https://glotorrents.unblockit.tv/
|
||||
- https://glotorrents.unblockit.how/
|
||||
@@ -34,6 +33,8 @@ legacylinks:
|
||||
- https://glotorrents.unblockit.nz/
|
||||
- https://glotorrents.nocensor.world/
|
||||
- https://glotorrents.unblockit.page/
|
||||
- https://glotorrents.unblockit.pet/
|
||||
- https://glotorrents.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -170,4 +170,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
# NexusPHP v1.0
|
||||
# NexusPHP v1.1 2021-10-15
|
||||
|
||||
@@ -61,10 +61,24 @@ search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
- path: "/api/torrents/filter?api_token={{ .Config.apikey }}&name={{ if .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}&sortField={{ .Config.sort }}&sortDirection={{ .Config.type }}&perPage=100&page=1{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
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 }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
|
||||
@@ -32,6 +32,13 @@ settings:
|
||||
- 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 HDAtmos Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -66,12 +73,14 @@ login:
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: ""
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
message:
|
||||
@@ -172,4 +181,4 @@ search:
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 0.81
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP 1.7.31 2022-11-14
|
||||
|
||||
@@ -1,123 +0,0 @@
|
||||
---
|
||||
id: hdbits
|
||||
name: HDBits
|
||||
description: "Best HD Tracker"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://hdbits.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: "Movies", desc: "Movie"}
|
||||
- {id: 2, cat: "TV", desc: "TV"}
|
||||
- {id: 3, cat: "TV/Documentary", desc: "Documentary"}
|
||||
- {id: 4, cat: "Audio", desc: "Music"}
|
||||
- {id: 5, cat: "TV/Sport", desc: "Sport"}
|
||||
- {id: 6, cat: "Audio", desc: "Audio Track"}
|
||||
- {id: 7, cat: "XXX", desc: "XXX"}
|
||||
- {id: 8, cat: "Other", desc: "Misc/Demo"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-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
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: DESC
|
||||
options:
|
||||
DESC: desc
|
||||
ASC: asc
|
||||
|
||||
login:
|
||||
path: login
|
||||
method: form
|
||||
form: form
|
||||
inputs:
|
||||
uname: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: table.main:contains("Login Failed!")
|
||||
test:
|
||||
path: my.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
descriptions: 0
|
||||
imdbgt: 0
|
||||
imdblt: 10
|
||||
imdb: "{{ .Query.IMDBID }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
d: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "table#torrent-list > tbody > tr:has(a[href^=\"/details.php?id=\"]){{ if .Config.freeleech }}:has(a[title=\"100% FL: no download is counted.\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: td:nth-child(3) a
|
||||
download:
|
||||
selector: a[href^="/download.php"]
|
||||
attribute: href
|
||||
details:
|
||||
selector: a[href^="/details.php?id="]
|
||||
attribute: href
|
||||
grabs:
|
||||
selector: td:nth-child(7) a
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: append
|
||||
args: " ago"
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"a[title=\"25% Free Leech: only 75% of the download is counted.\"]": 0.25
|
||||
"a[title=\"50% Free Leech: only half the download is counted.\"]": 0.5
|
||||
"a[title=\"100% FL: no download is counted.\"]": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine tbd
|
||||
@@ -145,4 +145,4 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
# NexusPHP 146364c08c (Customised)
|
||||
# NexusPHP 2c858e7 (Customised)
|
||||
|
||||
@@ -82,6 +82,7 @@ login:
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
@@ -138,6 +139,9 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
@@ -189,4 +193,4 @@ search:
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 0.81
|
||||
# NexusPHP Standard v1.7.6
|
||||
# NexusPHP v1.8.0 2023-01-20
|
||||
|
||||
@@ -8,6 +8,7 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://www.trackerpmr.com/
|
||||
- https://freetmd.com/
|
||||
- https://kinoradiomagia.tv/
|
||||
legacylinks:
|
||||
- https://hdgalaktik.com/
|
||||
|
||||
|
||||
@@ -170,4 +170,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP v2.0 2014-11-24
|
||||
|
||||
173
src/Jackett.Common/Definitions/hdmayi.yml
Normal file
173
src/Jackett.Common/Definitions/hdmayi.yml
Normal file
@@ -0,0 +1,173 @@
|
||||
---
|
||||
id: hdmayi
|
||||
name: HDMaYi
|
||||
description: "HDMaYi (小蚂蚁PT站) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://hdmayi.com/ # does not support https properly
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 406, cat: Audio/Video, desc: "MusicVideo/MV"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 409, cat: Other, desc: "Misc/其他"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: 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:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
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 (4 does not appear to work)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
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: "2006-01-0215:04:05 -07:00"
|
||||
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
|
||||
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-12
|
||||
@@ -38,6 +38,13 @@ settings:
|
||||
- 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 HDtime Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -67,11 +74,14 @@ login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
loginmethod: username
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
dutime: month
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
@@ -84,12 +94,12 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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 (4 does not appear to work).
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl (not working)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
@@ -120,13 +130,20 @@ 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]
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
@@ -136,7 +153,7 @@ search:
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td:nth-child(4):not(:has(span))
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
@@ -146,13 +163,13 @@ search:
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
@@ -168,8 +185,8 @@ search:
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.8
|
||||
text: 0.81
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.4
|
||||
# NexusPHP v1.7.33 2023-01-04
|
||||
|
||||
@@ -30,7 +30,7 @@ settings:
|
||||
- name: ip_filtering
|
||||
type: info
|
||||
label: "IP Filtering"
|
||||
default: "HDtorrents allows only Italian IP addressess. The <b>404 Not Found</b> error means your IP was not accepted."
|
||||
default: "The <b>404 Not Found</b> error means your IP was not accepted. Check the <a href=\" https://check-host.net/check-report/e5b649bkfa\" target =_blank>Locations</a> report, only those with a Status of <b>OK</b> will be accepted."
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
|
||||
@@ -113,7 +113,8 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# currently supports only one query id at one time.
|
||||
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 onlydead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
|
||||
@@ -61,11 +61,15 @@ login:
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: torrents.php
|
||||
path: /
|
||||
selector: a[href*="/logout.php?auth="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
- path: ajax.php
|
||||
response:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
searchstr: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
order_by: "{{ .Config.sort }}"
|
||||
@@ -74,29 +78,21 @@ search:
|
||||
imdblt: 10
|
||||
# 1 freeleech, 2 neutral, 3 50%, 4 2x, 5 3x, 9 75%, 11 only perks, 0 normal
|
||||
freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
action: advanced
|
||||
searchsubmit: 1
|
||||
action: browse
|
||||
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
|
||||
|
||||
rows:
|
||||
selector: .torrent
|
||||
selector: response.results
|
||||
attribute: torrents
|
||||
multiple: true
|
||||
|
||||
fields:
|
||||
_id:
|
||||
selector: torrentId
|
||||
category:
|
||||
selector: .tooltip
|
||||
case:
|
||||
"div[class*=\"movies\"]": 1
|
||||
"div[class*=\"tv\"]": 2
|
||||
"div[class*=\"theater\"]": 3
|
||||
"div[class*=\"software\"]": 4
|
||||
"div[class*=\"games\"]": 5
|
||||
"div[class*=\"music\"]": 6
|
||||
"div[class*=\"books\"]": 7
|
||||
"div[class*=\"packs\"]": 8
|
||||
"div[class*=\"porno\"]": 9
|
||||
"div[class*=\"other\"]": 10
|
||||
selector: ..categoryID
|
||||
title_notenglish:
|
||||
selector: .torrent_info:not(:contains("a")):not(:contains("e")):not(:contains("i")):not(:contains("o")):not(:contains("u")):not(:contains("y"))
|
||||
selector: release:not(:contains("a")):not(:contains("e")):not(:contains("i")):not(:contains("o")):not(:contains("u")):not(:contains("y"))
|
||||
optional: true
|
||||
filters:
|
||||
# space out the book language at the end of the title
|
||||
@@ -106,7 +102,7 @@ search:
|
||||
- name: re_replace
|
||||
args: ["(עברית)$", " - עברית"] # Hebrew
|
||||
title_english:
|
||||
selector: .torrent_info
|
||||
selector: release
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
@@ -116,54 +112,59 @@ search:
|
||||
title:
|
||||
text: "{{ if .Result.title_notenglish }}{{ .Result.title_notenglish }}{{ else }}{{ .Result.title_english }}{{ end }}"
|
||||
details:
|
||||
selector: a[href*="torrentid"]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet"]
|
||||
attribute: href
|
||||
optional: true
|
||||
text: "{{ .Config.sitelink }}torrents.php?torrentid={{ .Result._id }}"
|
||||
download:
|
||||
selector: a[href^="torrents.php?action=download"]
|
||||
attribute: href
|
||||
text: "{{ .Config.sitelink }}torrents.php?action=download&id={{ .Result._id }}"
|
||||
poster:
|
||||
selector: a[data-cover^="/images/"]
|
||||
attribute: data-cover
|
||||
selector: ..cover
|
||||
imdbid:
|
||||
selector: ..catalogue
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
selector: fileCount
|
||||
date:
|
||||
selector: td:nth-child(5) span
|
||||
attribute: title
|
||||
selector: time
|
||||
filters:
|
||||
- name: append
|
||||
args: " +02:00" # IST
|
||||
- name: dateparse
|
||||
args: "02/01/2006, 15:04 -07:00"
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
selector: size
|
||||
grabs:
|
||||
selector: td:nth-child(7)
|
||||
selector: snatches
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
selector: leechers
|
||||
description:
|
||||
selector: ..tags
|
||||
_half:
|
||||
selector: isHalfFreeleech
|
||||
_free:
|
||||
selector: isFreeleech
|
||||
_x2:
|
||||
selector: isUploadX2
|
||||
_x3:
|
||||
selector: isUploadX3
|
||||
_quarter:
|
||||
selector: isQuarterLeech
|
||||
_neutral:
|
||||
selector: isNeutralLeech
|
||||
_personal:
|
||||
selector: isPersonalFreeleech
|
||||
downloadvolumefactor_special:
|
||||
optional: true
|
||||
text: "{{ if eq .Result._half \"True\" }}0.5{{ else }}{{ end }}{{ if eq .Result._quarter \"True\" }}0.25{{ else }}{{ end }}{{ if eq .Result._neutral \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._free \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._personal \"True\" }}0{{ else }}{{ end }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"strong.tl_notice[title*=\"חצי פריליץ'\"]": 0.5 # 50%
|
||||
"strong.tl_notice[title*=\"75% פריליץ'!\"]": 0.25 # 75%
|
||||
"strong.tl_notice[title*=\"נטרלי\"]": 0 # neutral
|
||||
"strong.tl_notice[title*=\"פריליץ'\"]": 0 # freeleech
|
||||
"*": 1
|
||||
text: "{{ if .Result.downloadvolumefactor_special }}{{ .Result.downloadvolumefactor_special }}{{ else }}1{{ end }}"
|
||||
uploadvolumefactor_special:
|
||||
optional: true
|
||||
text: "{{ if eq .Result._x3 \"True\" }}3{{ else }}{{ end }}{{ if eq .Result._x2 \"True\" }}2{{ else }}{{ end }}{{ if eq .Result._neutral \"True\" }}0{{ else }}{{ end }}"
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"strong.tl_notice[title*=\"העלאה משולשת\"]": 3 # 3x
|
||||
"strong.tl_notice[title*=\"העלאה כפולה\"]": 2 # 2x
|
||||
"strong.tl_notice[title*=\"נטרלי\"]": 0 # neutral
|
||||
"*": 1
|
||||
text: "{{ if .Result.uploadvolumefactor_special }}{{ .Result.uploadvolumefactor_special }}{{ else }}1{{ end }}"
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
description:
|
||||
selector: div.tags
|
||||
# Gazelle
|
||||
# JSON Gazelle
|
||||
|
||||
@@ -94,13 +94,13 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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 (not working)
|
||||
search_area: "{{ if .Query.IMDBID }}1{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -130,6 +130,9 @@ 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"]
|
||||
@@ -189,4 +192,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.24 2022-08-30
|
||||
# NexusPHP v1.7.30 2022-11-05
|
||||
|
||||
186
src/Jackett.Common/Definitions/hqmusic.yml
Normal file
186
src/Jackett.Common/Definitions/hqmusic.yml
Normal file
@@ -0,0 +1,186 @@
|
||||
---
|
||||
id: hqmusic
|
||||
name: HQMusic
|
||||
description: "HQMusic is a Private Torrent Tracker for MUSIC"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://hqmusic.info/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Audio, desc: "Music"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
music-search: [q, album, artist, label, track, year, genre]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: time
|
||||
options:
|
||||
time: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
keeplogged: 1
|
||||
login: "Log In"
|
||||
error:
|
||||
- selector: form#loginform > span.warning
|
||||
test:
|
||||
path: torrents.php
|
||||
|
||||
search:
|
||||
# http://hqmusic.info/ajax.php?artistname=John&groupname=Born&recordlabel=Sony&year=2012&filelist=Queen&freetorrent=&taglist=rock&tags_type=1&order_by=time&order_way=desc&filter_cat%5B1%5D=1&group_results=1&action=browse
|
||||
paths:
|
||||
- path: ajax.php
|
||||
response:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
|
||||
searchstr: "{{ .Keywords }}"
|
||||
artistname: "{{ if .Query.Artist }}{{ .Query.Artist }}{{ else }}{{ end }}"
|
||||
groupname: "{{ if .Query.Album }}{{ .Query.Album }}{{ else }}{{ end }}"
|
||||
recordlabel: "{{ if .Query.Label }}{{ .Query.Label }}{{ else }}{{ end }}"
|
||||
year: "{{ if .Query.Year }}{{ .Query.Year }}{{ else }}{{ end }}"
|
||||
filelist: "{{ if .Query.Track }}{{ .Query.Track }}{{ else }}{{ end }}"
|
||||
freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
taglist: "{{ .Query.Genre }}"
|
||||
# 0 Any, 1 All
|
||||
tags_type: 1
|
||||
order_by: "{{ .Config.sort }}"
|
||||
order_way: "{{ .Config.type }}"
|
||||
group_results: 1
|
||||
action: browse
|
||||
|
||||
rows:
|
||||
selector: response.results
|
||||
attribute: torrents
|
||||
multiple: true
|
||||
|
||||
fields:
|
||||
_groupid:
|
||||
selector: ..groupId
|
||||
_torrentid:
|
||||
selector: torrentId
|
||||
category:
|
||||
text: 1
|
||||
artist:
|
||||
selector: ..artist
|
||||
filters:
|
||||
- name: htmldecode
|
||||
_groupName:
|
||||
selector: ..groupName
|
||||
filters:
|
||||
- name: htmldecode
|
||||
_releaseType:
|
||||
selector: ..releaseType
|
||||
album:
|
||||
optional: true
|
||||
text: "{{ if eq .Result._releaseType \"Album\" }}{{ .Result._groupName }}{{ else }}{{ end }}"
|
||||
track:
|
||||
optional: true
|
||||
text: "{{ if eq .Result._releaseType \"Single\" }}{{ .Result._groupName }}{{ else }}{{ end }}"
|
||||
year:
|
||||
optional: true
|
||||
selector: ..groupYear
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["^0$", ""]
|
||||
_format:
|
||||
selector: format
|
||||
_encoding:
|
||||
selector: encoding
|
||||
_hasLog:
|
||||
selector: hasLog
|
||||
_logScore:
|
||||
selector: logScore
|
||||
_hasCue:
|
||||
selector: hasCue
|
||||
_media:
|
||||
selector: media
|
||||
year_remaster:
|
||||
selector: remasterYear
|
||||
title_remaster:
|
||||
optional: true
|
||||
selector: remasterTitle
|
||||
title:
|
||||
# John Mayer - Born And Raised [2012] [Album] FLAC / Lossless / Log (100%) / Cue / CD
|
||||
# Duy - I Go [2022] [Single] Other / Lossless / WEB
|
||||
text: "{{ .Result.artist }} - {{ .Result._groupName }} {{ if .Result.year }}[{{ .Result.year }}] {{ else }}{{ end }}[{{ .Result._releaseType }}] {{ .Result._format }} / {{ .Result._encoding }} {{ if eq .Result._hasLog \"True\" }}/ Log {{ else }}{{ end }}{{ if ne .Result._logScore \"0\" }}({{ .Result._logScore }}%){{ else }}{{ end }}{{ if eq .Result._hasCue \"True\" }} / Cue{{ else }}{{ end }} / {{ .Result._media }}{{ if ne .Result.year_remaster \"0\" }} / {{ .Result.year_remaster }}{{ else }}{{ end }}{{ if .Result.title_remaster }} {{ .Result.title_remaster }}{{ else }}{{ end }}"
|
||||
details:
|
||||
text: "torrents.php?id={{ .Result._groupid }}&torrentid={{ .Result._torrentid }}"
|
||||
download:
|
||||
text: "torrents.php?action=download&id={{ .Result._torrentid }}"
|
||||
poster:
|
||||
selector: ..cover
|
||||
date:
|
||||
selector: time
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
files:
|
||||
selector: fileCount
|
||||
grabs:
|
||||
selector: snatches
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
genre:
|
||||
selector: ..tags
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", "_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
_free:
|
||||
selector: isFreeleech
|
||||
_neutral:
|
||||
selector: isNeutralLeech
|
||||
_personal:
|
||||
selector: isPersonalFreeleech
|
||||
downloadvolumefactor_special:
|
||||
optional: true
|
||||
text: "{{ if eq .Result._neutral \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._free \"True\" }}0{{ else }}{{ end }}{{ if eq .Result._personal \"True\" }}0{{ else }}{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: "{{ if .Result.downloadvolumefactor_special }}{{ .Result.downloadvolumefactor_special }}{{ else }}1{{ end }}"
|
||||
uploadvolumefactor:
|
||||
text: "{{ if eq .Result._neutral \"True\" }}0{{ else }}1{{ end }}"
|
||||
minimumratio:
|
||||
text: 0.6
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# JSON Gazelle
|
||||
203
src/Jackett.Common/Definitions/icc2022.yml
Normal file
203
src/Jackett.Common/Definitions/icc2022.yml
Normal file
@@ -0,0 +1,203 @@
|
||||
---
|
||||
id: icc2022
|
||||
name: ICC2022
|
||||
description: "ICC2022 (冰淇淋) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://www.icc2022.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影", default: true}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片", default: true}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动漫", default: true}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧", default: true}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺", default: true}
|
||||
- {id: 406, cat: Audio/Video, desc: "MusicVideo/MV", default: true}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育", default: true}
|
||||
- {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}
|
||||
|
||||
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 ICC2022 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("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409]
|
||||
- path: special.php
|
||||
categories: [410, 411, 412]
|
||||
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 (4 does not appear to work)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
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.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
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: "2006-01-0215:04:05 -07:00"
|
||||
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
|
||||
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
|
||||
@@ -94,13 +94,13 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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 (not working)
|
||||
search_area: "{{ if .Query.IMDBID }}1{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -130,6 +130,9 @@ 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"]
|
||||
@@ -189,4 +192,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP 1.7.29 2022-10-13
|
||||
# NexusPHP v1.7.30 2022-11-05
|
||||
|
||||
@@ -12,7 +12,7 @@ links:
|
||||
- https://ilcorsaronero.fun/
|
||||
- https://ilcorsaronero.pro/
|
||||
- https://ilcorsaronero.torrentbay.to/
|
||||
- https://ilcorsaronero.nocensor.lol/
|
||||
- https://ilcorsaronero.nocensor.art/
|
||||
legacylinks:
|
||||
- https://ilcorsaronero.live/
|
||||
- https://ilcorsaronero.vip/
|
||||
@@ -31,6 +31,7 @@ legacylinks:
|
||||
- https://ilcorsaronero.nocensor.biz/
|
||||
- https://ilcorsaronero.nocensor.sbs/
|
||||
- https://ilcorsaronero.nocensor.world/
|
||||
- https://ilcorsaronero.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
175
src/Jackett.Common/Definitions/joyhd.yml
Normal file
175
src/Jackett.Common/Definitions/joyhd.yml
Normal file
@@ -0,0 +1,175 @@
|
||||
---
|
||||
id: joyhd
|
||||
name: JoyHD
|
||||
description: "JoyHD (JHD) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.joyhd.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "电影Movies"}
|
||||
- {id: 402, cat: TV, desc: "剧集TV Series"}
|
||||
- {id: 403, cat: TV/Other, desc: "综艺TV Shows"}
|
||||
- {id: 405, cat: TV/Anime, desc: "动漫Animations"}
|
||||
- {id: 414, cat: Audio, desc: "音乐Music"}
|
||||
- {id: 407, cat: TV/Sport, desc: "体育Sports"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "纪录片Documentaries"}
|
||||
- {id: 406, cat: Audio/Video, desc: "音乐视频Music Videos"}
|
||||
- {id: 410, cat: PC/Games, desc: "游戏Game"}
|
||||
- {id: 411, cat: Other, desc: "学习Study"}
|
||||
- {id: 409, cat: Other, desc: "其他Misc"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
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: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
loginmethod: username
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
dutime: month
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
inclbookmarked: 0
|
||||
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 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
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
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_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
# currently not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# currently 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]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05 -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
minimumratio:
|
||||
text: 0.81
|
||||
# NexusPHP Standard v0.3 2013-10-01
|
||||
@@ -86,7 +86,8 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# currently supports only one query id at one time.
|
||||
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%
|
||||
|
||||
@@ -14,46 +14,47 @@ caps:
|
||||
- {id: 1001000, cat: Audio/MP3, desc: "MP3"}
|
||||
- {id: 1002000, cat: Audio/Lossless, desc: "Lossless"}
|
||||
- {id: 1003000, cat: Audio/Audiobook, desc: "Audiobook"}
|
||||
- {id: 1004000, cat: Audio/Video, desc: "Video"}
|
||||
- {id: 1004000, cat: Audio/Video, desc: "Audio Video"}
|
||||
- {id: 1005000, cat: Audio/Other, desc: "Radio"}
|
||||
- {id: 1006000, cat: Audio/Other, desc: "Other"}
|
||||
- {id: 1006000, cat: Audio/Other, desc: "Audio Other"}
|
||||
- {id: 2000000, cat: TV, desc: "TV"}
|
||||
- {id: 2001000, cat: TV/HD, desc: "HD"}
|
||||
- {id: 2002000, cat: TV/SD, desc: "SD"}
|
||||
- {id: 2003000, cat: TV/UHD, desc: "UHD"}
|
||||
- {id: 2001000, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 2002000, cat: TV/SD, desc: "TV SD"}
|
||||
- {id: 2003000, cat: TV/UHD, desc: "TV UHD"}
|
||||
- {id: 2004000, cat: TV/Documentary, desc: "Documentary"}
|
||||
- {id: 2005000, cat: TV/Foreign, desc: "Foreign"}
|
||||
- {id: 2005000, cat: TV/Foreign, desc: "TV Foreign"}
|
||||
- {id: 2006000, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 2007000, cat: TV/Other, desc: "Cartoon"}
|
||||
- {id: 2008000, cat: TV/Other, desc: "Other"}
|
||||
- {id: 2008000, cat: TV/Other, desc: "TV Other"}
|
||||
- {id: 3000000, cat: Movies, desc: "Movies"}
|
||||
- {id: 3001000, cat: Movies/HD, desc: "HD"}
|
||||
- {id: 3002000, cat: Movies/SD, desc: "SD"}
|
||||
- {id: 3003000, cat: Movies/UHD, desc: "UHD"}
|
||||
- {id: 3004000, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 3005000, cat: Movies/Foreign, desc: "Foreign"}
|
||||
- {id: 3006000, cat: Movies/Foreign, desc: "Bollywood"}
|
||||
- {id: 3007000, cat: Movies/3D, desc: "3D"}
|
||||
- {id: 3008000, cat: Movies/Other, desc: "Other"}
|
||||
- {id: 3001000, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 3002000, cat: Movies/SD, desc: "Movies SD"}
|
||||
- {id: 3003000, cat: Movies/UHD, desc: "Movies UHD"}
|
||||
- {id: 3004000, cat: Movies/DVD, desc: "Movies DVD"}
|
||||
- {id: 3005000, cat: Movies/Foreign, desc: "Movies Foreign"}
|
||||
- {id: 3006000, cat: Movies/Foreign, desc: "Movies Bollywood"}
|
||||
- {id: 3007000, cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: 3008000, cat: Movies/Other, desc: "Movies Other"}
|
||||
- {id: 4000000, cat: PC, desc: "PC"}
|
||||
- {id: 4001000, cat: PC/Games, desc: "Games"}
|
||||
- {id: 4002000, cat: PC/0day, desc: "Software"}
|
||||
- {id: 4003000, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 4004000, cat: PC/ISO, desc: "Unix"}
|
||||
- {id: 5000000, cat: XXX, desc: "XXX"}
|
||||
- {id: 5001000, cat: XXX/x264, desc: "Video"}
|
||||
- {id: 5002000, cat: XXX/ImageSet, desc: "ImageSet"}
|
||||
- {id: 5003000, cat: XXX/Other, desc: "Games"}
|
||||
- {id: 5004000, cat: XXX/Other, desc: "Hentai"}
|
||||
- {id: 5005000, cat: XXX/Other, desc: "Other"}
|
||||
- {id: 5001000, cat: XXX/x264, desc: "XXX Video"}
|
||||
- {id: 5002000, cat: XXX/ImageSet, desc: "XXX ImageSet"}
|
||||
- {id: 5003000, cat: XXX/Other, desc: "XXX Games"}
|
||||
- {id: 5004000, cat: XXX/Other, desc: "XXX Hentai"}
|
||||
- {id: 5005000, cat: XXX/Other, desc: "XXX Other"}
|
||||
- {id: 6000000, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 6001000, cat: TV/Anime, desc: "Subbed"}
|
||||
- {id: 6002000, cat: TV/Anime, desc: "Dubbed"}
|
||||
- {id: 6003000, cat: TV/Anime, desc: "Dual audio"}
|
||||
- {id: 6004000, cat: TV/Anime, desc: "Raw"}
|
||||
- {id: 6001000, cat: TV/Anime, desc: "Anime Subbed"}
|
||||
- {id: 6002000, cat: TV/Anime, desc: "Anime Dubbed"}
|
||||
- {id: 6003000, cat: TV/Anime, desc: "Anime Dual audio"}
|
||||
- {id: 6004000, cat: TV/Anime, desc: "Anime Raw"}
|
||||
- {id: 6005000, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 6006000, cat: Books/Other, desc: "Literature"}
|
||||
- {id: 6007000, cat: Audio/Other, desc: "Music"}
|
||||
- {id: 6008000, cat: TV/Anime, desc: "Anime non-english translated"}
|
||||
- {id: 7000000, cat: Console, desc: "Console"}
|
||||
- {id: 7001000, cat: Console/PS4, desc: "PS4"}
|
||||
- {id: 7002000, cat: Console/PS3, desc: "PS3"}
|
||||
@@ -73,15 +74,15 @@ caps:
|
||||
- {id: 8000000, cat: PC/Mobile-Other, desc: "Mobile"}
|
||||
- {id: 8001000, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 8002000, cat: PC/Mobile-iOS, desc: "IOS"}
|
||||
- {id: 8003000, cat: PC/Mobile-Other, desc: "Other"}
|
||||
- {id: 8003000, cat: PC/Mobile-Other, desc: "PC Other"}
|
||||
- {id: 9000000, cat: Books, desc: "Books"}
|
||||
- {id: 9001000, cat: Books/EBook, desc: "EBooks"}
|
||||
- {id: 9002000, cat: Books/Comics, desc: "Comics"}
|
||||
- {id: 9003000, cat: Books/Mags, desc: "Magazines"}
|
||||
- {id: 9004000, cat: Books/Technical, desc: "Technical"}
|
||||
- {id: 9005000, cat: Books/Other, desc: "Other"}
|
||||
- {id: 9005000, cat: Books/Other, desc: "Books Other"}
|
||||
- {id: 10000000, cat: Other, desc: "Other"}
|
||||
- {id: 10001000, cat: Other/Misc, desc: "Misc"}
|
||||
- {id: 10001000, cat: Other/Misc, desc: "Other Misc"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
@@ -439,6 +439,13 @@ settings:
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li><a href=\"http://filbi1976.org/ucp.php?mode=login\" target =_blank>Login</a> to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
default: "<ol><li>From the same place you fetched the cookie,<li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -464,6 +471,9 @@ login:
|
||||
path: index.php
|
||||
|
||||
search:
|
||||
headers:
|
||||
User-Agent: ["{{ .Config.useragent }}"]
|
||||
|
||||
paths:
|
||||
# http://filbi1976.org/search.php?t=0&cs=1&cs_post=1&sc=1&keywords=&cs_where=title&cs_forb=&submit=Hand+Search&fid%5B%5D=0&cs_format=0&cs_year=0&cs_filter=0&sk=nt&sd=d&cs_private=0
|
||||
- path: search.php
|
||||
@@ -490,11 +500,11 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/viewtopic.php?f="]
|
||||
selector: a[href$=".html"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: f
|
||||
- name: regexp
|
||||
args: -f(\d+)
|
||||
title:
|
||||
selector: a.topictitle
|
||||
details:
|
||||
|
||||
@@ -24,7 +24,7 @@ caps:
|
||||
- {id: 81, cat: Audio, desc: "Music Assorted Albums"}
|
||||
- {id: 46, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 24, cat: Audio, desc: "Music Karaoke"}
|
||||
- {id: 28, cat: Movies, desc: "Movies 2022"}
|
||||
- {id: 28, cat: Movies, desc: "Movies 2023"}
|
||||
- {id: 47, cat: Movies/BluRay, desc: "Movies Bluray-HD"}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Movies Dvdr-ISO"}
|
||||
- {id: 52, cat: Movies, desc: "Movies Classic Pre90s"}
|
||||
|
||||
@@ -8,58 +8,58 @@ encoding: utf-8
|
||||
followredirect: true
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://www.lastfiles.ro/
|
||||
- http://www.lastfiles.ro/
|
||||
- https://www.last-torrents.org/
|
||||
- http://www.last-torrents.org/
|
||||
legacylinks:
|
||||
- http://last-torrents.org/
|
||||
- https://last-torrents.org/
|
||||
- https://www.lastfiles.ro/
|
||||
- http://www.lastfiles.ro/
|
||||
- http://www.last-torrents.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 31, cat: Movies/UHD, desc: "Movies: 4K", default: true}
|
||||
- {id: 1, cat: TV/Anime, desc: "Movies: Anime", default: true}
|
||||
- {id: 2, cat: TV/Anime, desc: "Movies: Anime-Ro", default: true}
|
||||
- {id: 5, cat: Movies/BluRay, desc: "Movies: BluRay", default: true}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Movies: DVD", default: true}
|
||||
- {id: 11, cat: Movies/HD, desc: "Movies: HD", default: true}
|
||||
- {id: 58, cat: Movies/SD, desc: "Movies: Cam", default: true}
|
||||
- {id: 61, cat: Movies/3D, desc: "Movies: 3D", default: true}
|
||||
- {id: 24, cat: Movies/SD, desc: "Movies: XVID", default: true}
|
||||
- {id: 16, cat: Movies, desc: "Movies: Old", default: true}
|
||||
- {id: 54, cat: Movies/WEB-DL, desc: "Movies: WEB-DL", default: true}
|
||||
- {id: 56, cat: TV/Documentary, desc: "Documentary", default: true}
|
||||
- {id: 18, cat: Movies, desc: "Movies: Pack", default: true}
|
||||
- {id: 32, cat: Movies/UHD, desc: "Movies: 4KRO", default: true}
|
||||
- {id: 6, cat: Movies/BluRay, desc: "Movies: BluRay-Ro", default: true}
|
||||
- {id: 12, cat: Movies/HD, desc: "Movies: HD-Ro", default: true}
|
||||
- {id: 81, cat: Movies/HD, desc: "Movies: x265-Ro", default: true}
|
||||
- {id: 82, cat: Movies/HD, desc: "Movies: x265", default: true}
|
||||
- {id: 9, cat: Movies/DVD, desc: "Movies: DVD", default: true}
|
||||
- {id: 10, cat: Movies/DVD, desc: "Movies: DVD-Ro", default: true}
|
||||
- {id: 59, cat: Movies/SD, desc: "Movies: Cam-RO", default: true}
|
||||
- {id: 25, cat: Movies/SD, desc: "Movies: XVID-Ro", default: true}
|
||||
- {id: 11, cat: Movies/HD, desc: "Movies: HD", default: true}
|
||||
- {id: 12, cat: Movies/HD, desc: "Movies: HD-Ro", default: true}
|
||||
- {id: 13, cat: TV/HD, desc: "HDTV Episodes", default: true}
|
||||
- {id: 14, cat: TV/HD, desc: "HDTV Episodes-Ro", default: true}
|
||||
- {id: 16, cat: Movies, desc: "Movies: Old", default: true}
|
||||
- {id: 17, cat: Movies, desc: "Movies: Old-Ro", default: true}
|
||||
- {id: 55, cat: Movies/WEB-DL, desc: "Movies: WEB-DL Ro", default: true}
|
||||
- {id: 57, cat: TV/Documentary, desc: "Documentary-Ro", default: true}
|
||||
- {id: 62, cat: Movies/3D, desc: "Movies: 3D-Ro", default: true}
|
||||
- {id: 18, cat: Movies, desc: "Movies: Pack", default: true}
|
||||
- {id: 19, cat: Movies, desc: "Movies: Pack-Ro", default: true}
|
||||
- {id: 20, cat: TV, desc: "TV Episodes", default: true}
|
||||
- {id: 21, cat: TV, desc: "TV Episodes-Ro", default: true}
|
||||
- {id: 13, cat: TV/HD, desc: "HDTV Episodes", default: true}
|
||||
- {id: 14, cat: TV/HD, desc: "HDTV Episodes-Ro", default: true}
|
||||
- {id: 28, cat: Audio, desc: "Music", default: true}
|
||||
- {id: 51, cat: PC/Mobile-Android, desc: "Android Apps", default: true}
|
||||
- {id: 22, cat: Other, desc: "RoContent", default: true}
|
||||
- {id: 24, cat: Movies/SD, desc: "Movies: XVID", default: true}
|
||||
- {id: 25, cat: Movies/SD, desc: "Movies: XVID-Ro", default: true}
|
||||
- {id: 26, cat: PC/0day, desc: "Software", default: true}
|
||||
- {id: 27, cat: XXX, desc: "Movies: XXX", default: false}
|
||||
- {id: 28, cat: Audio, desc: "Music", default: true}
|
||||
- {id: 30, cat: PC/Games, desc: "Games: PC-ISO", default: true}
|
||||
- {id: 31, cat: Movies/UHD, desc: "Movies: 4K", default: true}
|
||||
- {id: 32, cat: Movies/UHD, desc: "Movies: 4K-Ro", default: true}
|
||||
- {id: 33, cat: PC/Games, desc: "Games: Packs", default: true}
|
||||
- {id: 1, cat: TV/Anime, desc: "Movies: Anime", default: true}
|
||||
- {id: 2, cat: TV/Anime, desc: "Movies: Anime-Ro", default: true}
|
||||
- {id: 42, cat: TV/Sport, desc: "Sport", default: true}
|
||||
- {id: 43, cat: Books, desc: "Documents", default: true}
|
||||
- {id: 44, cat: Other, desc: "Images", default: true}
|
||||
- {id: 49, cat: Other, desc: "Diverse", default: true}
|
||||
- {id: 22, cat: Other, desc: "RoContent", default: true}
|
||||
- {id: 51, cat: PC/Mobile-Android, desc: "Android Apps", default: true}
|
||||
- {id: 54, cat: Movies/WEB-DL, desc: "Movies: WEB-DL", default: true}
|
||||
- {id: 55, cat: Movies/WEB-DL, desc: "Movies: WEB-DL Ro", default: true}
|
||||
- {id: 56, cat: TV/Documentary, desc: "Documentary", default: true}
|
||||
- {id: 57, cat: TV/Documentary, desc: "Documentary-Ro", default: true}
|
||||
- {id: 58, cat: Movies/SD, desc: "Movies: Cam", default: true}
|
||||
- {id: 59, cat: Movies/SD, desc: "Movies: Cam-Ro", default: true}
|
||||
- {id: 60, cat: XXX/ImageSet, desc: "Images: XXX", default: false}
|
||||
- {id: 27, cat: XXX, desc: "Movies: XXX", default: false}
|
||||
- {id: 61, cat: Movies/3D, desc: "Movies: 3D", default: true}
|
||||
- {id: 62, cat: Movies/3D, desc: "Movies: 3D-Ro", default: true}
|
||||
- {id: 81, cat: Movies/HD, desc: "Movies: x265-Ro", default: true}
|
||||
- {id: 82, cat: Movies/HD, desc: "Movies: x265", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -83,22 +83,22 @@ settings:
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
default: This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href="https://github.com/Jackett/Jackett#configuring-flaresolverr" target="_blank">FlareSolverr</a> to access it.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 3
|
||||
options:
|
||||
3: created
|
||||
6: seeders
|
||||
4: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
# - name: sort
|
||||
# type: select
|
||||
# label: Sort requested from site
|
||||
# default: 3
|
||||
# options:
|
||||
# 3: created
|
||||
# 6: seeders
|
||||
# 4: size
|
||||
# 1: title
|
||||
# - name: type
|
||||
# type: select
|
||||
# label: Order requested from site
|
||||
# default: desc
|
||||
# options:
|
||||
# desc: desc
|
||||
# asc: asc
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
@@ -118,48 +118,54 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://www.last-torrents.org/externalid?searchex=tt5834760&search_by=imdbid
|
||||
# cannot support imdbid or tmdbid searches while using path category filters
|
||||
- path: browse.php
|
||||
categories: [31, 5, 9, 11, 58, 61, 24, 16, 54, 56, 18, 32, 6, 12, 81, 82, 10, 59, 25, 17, 55, 57, 62, 19, 20, 21, 13, 14, 28, 51, 26, 30, 33, 1, 2, 42, 43, 44, 49, 22]
|
||||
categories: [1, 2, 5, 6, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 42, 43, 44, 49, 51, 54, 55, 56, 57, 58, 59, 60, 61, 62, 81, 82]
|
||||
- path: browseadult.php
|
||||
categories: [60, 27]
|
||||
categories: [27, 60]
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.Genre }}{{ .Query.Genre }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
# title, genre, all
|
||||
searchin: "{{ if .Query.Genre }}all{{ else }}title{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# 0 active, 1 incldead, 2 onlydead, 3 free, 4 silver, 5 seedbox
|
||||
type: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
# sort and type can only be used in a non-search query due to conflicting parameters
|
||||
# sort: "{{ .Config.sort }}"
|
||||
# type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: tbody > tr:has(a[href^="download.php"])
|
||||
selector: div.py-3
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*=".php?cat="]
|
||||
selector: a[href*="cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[onmouseover]
|
||||
selector: a[href^="t"]
|
||||
details:
|
||||
selector: a[onmouseover]
|
||||
selector: a[href^="t"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
selector: a[href^="t"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=\\'(.+?)\\'
|
||||
- name: replace
|
||||
args: ["./pic/noposter.png", ""]
|
||||
args: "src=(.+?) "
|
||||
genre:
|
||||
selector: font[size]
|
||||
selector: i:has(a[href$="searchin=genre"]), font[size]
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
- name: replace
|
||||
args: ["Hip Hop", "Hip_Hop"]
|
||||
- name: replace
|
||||
@@ -170,43 +176,41 @@ search:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
date_day:
|
||||
selector: td:nth-child(4) span:contains("day")
|
||||
selector: div.col-sm-4:nth-of-type(3):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
selector: td:nth-child(4) span:not(:contains("day"))
|
||||
selector: div.col-sm-4:nth-of-type(3):contains(":"):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
args: "Jan 2 2006, 03:04 PM"
|
||||
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(5)
|
||||
selector: div.col-sm-4:nth-of-type(4)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
selector: div.col-sm-4:contains("Completed") b
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
selector: div.col-sm-4:contains("Seeders") b
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
selector: div.col-sm-4:contains("Leechers") b
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"a.info > b:contains(\"FREE\")": 0
|
||||
# "a.info > b:contains(\"Half\")": 0.5
|
||||
img[src$="half2.png"]: 0.5
|
||||
a#free-btn: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
# "a.info > b:contains(\"2XUP\")": 2
|
||||
"*": 1
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# freeleech 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
# notfree 1.5 days (as seconds = 1.5 x 24 x 60 x 60)
|
||||
case:
|
||||
"a.info > b:contains(\"FREE\")": 172800
|
||||
a#free-btn: 172800
|
||||
"*": 129600
|
||||
# U-232 V5
|
||||
|
||||
@@ -71,12 +71,14 @@ search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# currently supports only one query id at one time.
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# name, imdb, douban
|
||||
search_area: "{{ if .Query.IMDBID }}imdb{{ else }}{{ end }}{{ if .Query.DoubanID }}douban{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}name{{ end }}"
|
||||
suggest: 0
|
||||
column: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
$raw: "{{ if .Config.freeleech }}&free{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="download.php?"])
|
||||
|
||||
370
src/Jackett.Common/Definitions/les-cinephiles.yml
Normal file
370
src/Jackett.Common/Definitions/les-cinephiles.yml
Normal file
@@ -0,0 +1,370 @@
|
||||
---
|
||||
id: les-cinephiles
|
||||
name: Les-Cinephiles
|
||||
description: "Les-Cinephiles is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://les-cinephiles.nl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2, cat: TV/Anime, desc: "Animations: 4K"}
|
||||
- {id: 3, cat: TV/Anime, desc: "Animations: 4K Light"}
|
||||
- {id: 4, cat: TV/Anime, desc: "Animations: BDRIP"}
|
||||
- {id: 5, cat: TV/Anime, desc: "Animations: BRRIP"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animations: BluRay-R"}
|
||||
- {id: 8, cat: TV/Anime, desc: "Animations: DVD-R"}
|
||||
- {id: 9, cat: TV/Anime, desc: "Animations: DVDRIP"}
|
||||
- {id: 165, cat: TV/Anime, desc: "Animations: JAP"}
|
||||
- {id: 11, cat: TV/Anime, desc: "Animations: HD 1080P"}
|
||||
- {id: 12, cat: TV/Anime, desc: "Animations: HD 720p"}
|
||||
- {id: 13, cat: TV/Anime, desc: "Animations: HDRIP"}
|
||||
- {id: 14, cat: TV/Anime, desc: "Animations: REMUX"}
|
||||
- {id: 15, cat: TV/Anime, desc: "Animations: TVRIP"}
|
||||
- {id: 16, cat: TV/Anime, desc: "Animations: WEBRIP"}
|
||||
- {id: 17, cat: TV/Anime, desc: "Animations: WEB-DL"}
|
||||
- {id: 73, cat: Books, desc: "Ebook: BD"}
|
||||
- {id: 74, cat: Books, desc: "Ebook: ENFANTS"}
|
||||
- {id: 75, cat: Books/Comics, desc: "Ebook: MANGAS"}
|
||||
- {id: 76, cat: Books, desc: "Ebook: ROMANS"}
|
||||
- {id: 167, cat: Audio/Audiobook, desc: "Ebook: AUDIO"}
|
||||
- {id: 168, cat: Books/Mags, desc: "Ebook: MAGAZINE"}
|
||||
- {id: 24, cat: Movies, desc: "Film: DOC.UNIVERS"}
|
||||
- {id: 20, cat: Movies, desc: "Film: DOC.DECOUVERTES"}
|
||||
- {id: 23, cat: Movies, desc: "Film: DOC.SPORT"}
|
||||
- {id: 18, cat: Movies, desc: "Film: DOC.ANIMAUX"}
|
||||
- {id: 19, cat: Movies, desc: "Film: DOC.ANTIQUE"}
|
||||
- {id: 21, cat: Movies, desc: "Film: DOC.DIVERS"}
|
||||
- {id: 22, cat: Movies, desc: "Film: DOC.HISTOIRE"}
|
||||
- {id: 164, cat: Movies, desc: "Film: EMISSION.TV"}
|
||||
- {id: 198, cat: Movies, desc: "Film: DOC.SPECTACLE"}
|
||||
- {id: 25, cat: Movies/3D, desc: "Film: 3D"}
|
||||
- {id: 26, cat: Movies/UHD, desc: "Film: 4K"}
|
||||
- {id: 27, cat: Movies/UHD, desc: "Film: 4K Light"}
|
||||
- {id: 169, cat: Movies, desc: "Film: AV1"}
|
||||
- {id: 28, cat: Movies/BluRay, desc: "Film: BDRIP"}
|
||||
- {id: 29, cat: Movies/BluRay, desc: "Film: BRRIP"}
|
||||
- {id: 30, cat: Movies/BluRay, desc: "Film: BluRay-R"}
|
||||
- {id: 31, cat: Movies, desc: "Film: Coffret"}
|
||||
- {id: 32, cat: Movies/DVD, desc: "Film: DVD-R"}
|
||||
- {id: 33, cat: Movies/DVD, desc: "Film: DVDRIP"}
|
||||
- {id: 36, cat: Movies/HD, desc: "Film: HD 720p"}
|
||||
- {id: 35, cat: Movies/HD, desc: "Film: HD 1080P"}
|
||||
- {id: 37, cat: Movies/HD, desc: "Film: HDRIP"}
|
||||
- {id: 170, cat: Movies/HD, desc: "Film: HDTV"}
|
||||
- {id: 172, cat: Movies/HD, desc: "Film: M-HD"}
|
||||
- {id: 38, cat: Movies, desc: "Film: REMUX"}
|
||||
- {id: 39, cat: Movies, desc: "Film: TVRIP"}
|
||||
- {id: 41, cat: Movies/WEB-DL, desc: "Film: WEB-DL"}
|
||||
- {id: 200, cat: Movies/WEB-DL, desc: "Film: WEB-RIP"}
|
||||
- {id: 184, cat: Movies/BluRay, desc: "Film: VOSTFR bdrip"}
|
||||
- {id: 185, cat: Movies/DVD, desc: "Film: VOSTFR.DVDrip"}
|
||||
- {id: 186, cat: Movies/WEB-DL, desc: "Film: VOSTFR.WEBrip"}
|
||||
- {id: 202, cat: Movies/WEB-DL, desc: "Film: VOSTFR-WebDL"}
|
||||
- {id: 203, cat: Movies/BluRay, desc: "Film: VOSTFR-bluray"}
|
||||
- {id: 59, cat: Console/3DS, desc: "Jeux: 3DS-DS"}
|
||||
- {id: 60, cat: Console/Other, desc: "Jeux: ANDROID"}
|
||||
- {id: 61, cat: Console/Other, desc: "Jeux: IOS-X"}
|
||||
- {id: 62, cat: PC/Games, desc: "Jeux: PC"}
|
||||
- {id: 63, cat: Console/PS4, desc: "Jeux: PS3-4"}
|
||||
- {id: 64, cat: Console/PSP, desc: "Jeux: PSP-X"}
|
||||
- {id: 65, cat: Console/WiiU, desc: "Jeux: WII-U"}
|
||||
- {id: 66, cat: Console/Wii, desc: "Jeux: WII"}
|
||||
- {id: 67, cat: Console/XBox, desc: "Jeux: XBOX"}
|
||||
- {id: 68, cat: PC/Mobile-Android, desc: "Logiciel: ANDROID"}
|
||||
- {id: 69, cat: PC/Mac, desc: "Logiciel: APPLE"}
|
||||
- {id: 70, cat: PC/Mobile-iOS, desc: "Logiciel: IPHONE"}
|
||||
- {id: 71, cat: PC/Mobile-Other, desc: "Logiciel: LINUX"}
|
||||
- {id: 72, cat: PC/0day, desc: "Logiciel: WINDOWS"}
|
||||
- {id: 7, cat: TV/Anime, desc: "Serie: Coffret-Anime"}
|
||||
- {id: 197, cat: TV, desc: "Serie: EPISODE"}
|
||||
- {id: 182, cat: TV/Anime, desc: "Serie: JAP-ANIM"}
|
||||
- {id: 166, cat: TV/Documentary, desc: "Serie: SERIE Docu"}
|
||||
- {id: 194, cat: TV/Documentary, desc: "Serie: DOCU.DIVERS"}
|
||||
- {id: 195, cat: TV/Documentary, desc: "Serie: DOCU.EMISTV"}
|
||||
- {id: 173, cat: TV/UHD, desc: "Serie: 4K"}
|
||||
- {id: 174, cat: TV/UHD, desc: "Serie: 4k-lLIGHT"}
|
||||
- {id: 85, cat: TV, desc: "Serie: Coffret"}
|
||||
- {id: 86, cat: TV, desc: "Serie: DVD-R"}
|
||||
- {id: 87, cat: TV, desc: "Serie : DVDRIP"}
|
||||
- {id: 88, cat: TV/HD, desc: "Serie : HD 1080P"}
|
||||
- {id: 89, cat: TV/HD, desc: "Serie: HD 720p"}
|
||||
- {id: 90, cat: TV/HD, desc: "Serie: HDRIP"}
|
||||
- {id: 175, cat: TV/HD, desc: "Serie: HDTV 720"}
|
||||
- {id: 176, cat: TV/HD, desc: "Serie: HDTV 1080"}
|
||||
- {id: 177, cat: TV/HD, desc: "Serie: M-HD"}
|
||||
- {id: 91, cat: TV, desc: "Serie: REMUX"}
|
||||
- {id: 92, cat: TV, desc: "Serie: TVRIP"}
|
||||
- {id: 93, cat: TV/WEB-DL, desc: "Serie: WEBRIP"}
|
||||
- {id: 178, cat: TV/WEB-DL, desc: "Serie: WEB-DL 720"}
|
||||
- {id: 179, cat: TV/WEB-DL, desc: "Serie: WEB-DL 1080"}
|
||||
- {id: 199, cat: TV/WEB-DL, desc: "Serie: WebDL"}
|
||||
- {id: 188, cat: TV, desc: "Serie: VOSTFR.BDrip"}
|
||||
- {id: 189, cat: TV, desc: "Serie: VOSTFR.DVDrip"}
|
||||
- {id: 190, cat: TV/HD, desc: "Serie: VOSTFR.HDRIP"}
|
||||
- {id: 191, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEBrip"}
|
||||
- {id: 192, cat: TV/WEB-DL, desc: "Serie: VOSTFR.WEB-DL"}
|
||||
- {id: 180, cat: TV, desc: "Serie: VOSTFR.COFFRET"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-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: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: id
|
||||
options:
|
||||
id: created
|
||||
name: title
|
||||
size: size
|
||||
seeders: seeders
|
||||
- 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 }}"
|
||||
remember: yes
|
||||
error:
|
||||
- selector: div.myFrame:contains("ACCESS_DENIED")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents-search.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 multilang
|
||||
lang: 0
|
||||
# 0 all 1 notfree 2 onlyfree
|
||||
freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 both, 1 local, 2 external
|
||||
inclexternal: 0
|
||||
search: "{{ .Keywords }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not support imdbid search or return imdb link
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: table[class="ttable_headinner"] tr.rowners
|
||||
|
||||
fields:
|
||||
category:
|
||||
# selector: a[href^="torrents.php?cat="]
|
||||
# attribute: href
|
||||
# filters:
|
||||
# - name: querystring
|
||||
# args: cat
|
||||
selector: img
|
||||
attribute: src
|
||||
case:
|
||||
img[src$="/anim4k.png"]: 2
|
||||
img[src$="/anim4klight.png"]: 3
|
||||
img[src$="/animbdrip.png"]: 4
|
||||
img[src$="/animbrrip.png"]: 5
|
||||
img[src$="/animbluray.png"]: 6
|
||||
img[src$="/animdvdr.png"]: 8
|
||||
img[src$="/animdvdrip.png"]: 9
|
||||
img[src$="/animjap.png"]: 165
|
||||
img[src$="/animhd1080p.png"]: 11
|
||||
img[src$="/animhd720p.png"]: 12
|
||||
img[src$="/animhdrip.png"]: 13
|
||||
img[src$="/animremux.png"]: 14
|
||||
img[src$="/animtvrip.png"]: 15
|
||||
img[src$="/animwebrip.png"]: 16
|
||||
img[src$="/animwebdl.png"]: 17
|
||||
img[src$="/ebookbd.png"]: 73
|
||||
img[src$="/ebookenfant.png"]: 74
|
||||
img[src$="/ebookmanga.png"]: 75
|
||||
img[src$="/ebookromans.png"]: 76
|
||||
img[src$="/ebookaudio.png"]: 167
|
||||
img[src$="/ebookmagazine.png"]: 168
|
||||
img[src$="/docunivers.png"]: 24
|
||||
img[src$="/docdecouverte.png"]: 20
|
||||
img[src$="/docsport.png"]: 23
|
||||
img[src$="/docanimaux.png"]: 18
|
||||
img[src$="/docantique.png"]: 19
|
||||
img[src$="/docdivers.png"]: 21
|
||||
img[src$="/dochistoire.png"]: 22
|
||||
img[src$="/docsemitv.png"]: 164
|
||||
img[src$="/unknown198.png"]: 198 # film doc spectacle
|
||||
img[src$="/film3d.png"]: 25
|
||||
img[src$="/film4k.png"]: 26
|
||||
img[src$="/film4klight.png"]: 27
|
||||
img[src$="/filmav1.png"]: 169
|
||||
img[src$="/filmbdrip.png"]: 28
|
||||
img[src$="/filmbrrip.png"]: 29
|
||||
img[src$="/filmbluray.png"]: 30
|
||||
img[src$="/filmcoffret.png"]: 31
|
||||
img[src$="/filmdvdr.png"]: 32
|
||||
img[src$="/filmdvdrip.png"]: 33
|
||||
img[src$="/filmhd720p.png"]: 36
|
||||
img[src$="/filmhd1080p.png"]: 35
|
||||
img[src$="/filmhdrip.png"]: 37
|
||||
img[src$="/filmhdtv720p.png"]: 170
|
||||
img[src$="/filmmhd.png"]: 172
|
||||
img[src$="/filmremux.png"]: 38
|
||||
img[src$="/filmtvrip.png"]: 39
|
||||
img[src$="/filmwebdl.png"]: 41
|
||||
img[src$="/filmwebrip.png"]: 200
|
||||
img[src$="/filmvostfrbdrip.png"]: 184
|
||||
img[src$="/filmvostfrdvdrip.png"]: 185
|
||||
img[src$="/filmvostfrwebrip.png"]: 186
|
||||
img[src$="/filmvostfrwebdl.png"]: 202
|
||||
img[src$="/filmvostfrbluray.png"]: 203
|
||||
img[src$="/jeux3d3ds.png"]: 59
|
||||
img[src$="/jeuxandroid.png"]: 60
|
||||
img[src$="/jeuxiosx.png"]: 61
|
||||
img[src$="/jeuxwindows.png"]: 62
|
||||
img[src$="/jeuxps3ps4.png"]: 63
|
||||
img[src$="/jeuxpsppsx.png"]: 64
|
||||
img[src$="/jeuxwiiu.png"]: 65
|
||||
img[src$="/jeuxwii.png"]: 66
|
||||
img[src$="/jeuxxbox.png"]: 67
|
||||
img[src$="/logandroid.png"]: 68
|
||||
img[src$="/logapple.png"]: 69
|
||||
img[src$="/logiphone.png"]: 70
|
||||
img[src$="/loglinux.png"]: 71
|
||||
img[src$="/logwindows.png"]: 72
|
||||
img[src$="/animcoffret.png"]: 7
|
||||
img[src$="/docsseries.png"]: 197
|
||||
img[src$="/unknown182.png"]: 182 # serie jap anim
|
||||
img[src$="/unknown166.png"]: 166 # serie docu
|
||||
img[src$="/unknown194.png"]: 194 # serie docu divers
|
||||
img[src$="/unknown195.png"]: 195 # serie docu emistv
|
||||
img[src$="/seriesfr4k.png"]: 173
|
||||
img[src$="/seriesfr4klight.png"]: 174
|
||||
img[src$="/seriecoffret.png"]: 85
|
||||
img[src$="/seriedvdr.png"]: 86
|
||||
img[src$="/seriedvdrip.png"]: 87
|
||||
img[src$="/seriehd1080p.png"]: 88
|
||||
img[src$="/seriehd720p.png"]: 89
|
||||
img[src$="/seriehdrip.png"]: 90
|
||||
img[src$="/seriesfrhdtv720p.png"]: 175
|
||||
img[src$="/seriesfrhdtv1080p.png"]: 176
|
||||
img[src$="/seriesfrmhd.png"]: 177
|
||||
img[src$="/serieremux.png"]: 91
|
||||
img[src$="/serietvrip.png"]: 92
|
||||
img[src$="/seriewebrip.png"]: 93
|
||||
img[src$="/seriesfrwebdl720p.png"]: 178
|
||||
img[src$="/seriesfrwebdl1080p.png"]: 179
|
||||
img[src$="/seriewebdl.png"]: 199
|
||||
img[src$="/serievostfrbdrip.png"]: 188
|
||||
img[src$="/serievostfrdvdrip.png"]: 189
|
||||
img[src$="/serievostfrhdrip.png"]: 190
|
||||
img[src$="/serievostfrwebrip.png"]: 191
|
||||
img[src$="/serievostfrwebdl.png"]: 192
|
||||
img[src$="/serievostfrcoffret.png"]: 180
|
||||
title_phase1:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onMouseover]
|
||||
attribute: onMouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=(.+?)>
|
||||
date:
|
||||
selector: a[onMouseover]
|
||||
attribute: onMouseover
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(\\d{2}-\\d{2}-\\d{4})"
|
||||
- name: dateparse
|
||||
args: "02-01-2006"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
grabs:
|
||||
selector: td:nth-last-child(2)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="img/freeleech_star.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
# TorrentTrader 2.08
|
||||
@@ -9,9 +9,9 @@ followredirect: true
|
||||
# changes to this indexer should also be made to limetorrentsclone
|
||||
links:
|
||||
- https://www.limetorrents.lol/
|
||||
- https://limetorrents.unblockit.pet/
|
||||
- https://limetorrents.unblockit.ink/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.nocensor.lol/
|
||||
- https://limetorrents.nocensor.art/
|
||||
legacylinks:
|
||||
- https://www.limetorrents.io/
|
||||
- https://www.limetorrents.cc/
|
||||
@@ -34,6 +34,8 @@ legacylinks:
|
||||
- https://limetorrents.unblockit.nz/
|
||||
- https://limetorrents.nocensor.world/
|
||||
- https://limetorrents.unblockit.page/
|
||||
- https://limetorrents.unblockit.pet/
|
||||
- https://limetorrents.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -78,7 +78,7 @@ search:
|
||||
# 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 }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -159,4 +159,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.3.0
|
||||
# json UNIT3D 6.5.0
|
||||
|
||||
@@ -5,6 +5,8 @@ description: "MIRCrew is an ITALIAN Private Torrent Tracker for MOVIES / TV / MU
|
||||
language: it-IT
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 35a21ab7dd7bd72e8131517d51f8501e926151b2 # expired Jan 20 2023
|
||||
links:
|
||||
- https://mircrew-releases.org/
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 50, cat: Movies, desc: "BLiNK"}
|
||||
- {id: 54, cat: Audio/Audiobook, desc: "eBook AUDIO"}
|
||||
- {id: 20, cat: Books/EBook, desc: "eBook eBOOK"}
|
||||
- {id: 52, cat: Books/Other, desc: "eBook Education"}
|
||||
- {id: 53, cat: Books/Mags, desc: "eBook Magazine"}
|
||||
@@ -20,6 +21,7 @@ caps:
|
||||
- {id: 7, cat: PC/Games, desc: "GAMES PCRip"}
|
||||
- {id: 13, cat: Console/PS3, desc: "GAMES Playstation"}
|
||||
- {id: 124, cat: Console/PS4, desc: "GAMES PS4"}
|
||||
- {id: 14, cat: Console/PS4, desc: "GAMES PS5"}
|
||||
- {id: 16, cat: Console/PSP, desc: "GAMES PSP"}
|
||||
- {id: 65, cat: Console/Wii, desc: "GAMES Wii"}
|
||||
- {id: 15, cat: Console/XBox, desc: "GAMES Xbox"}
|
||||
@@ -47,6 +49,7 @@ caps:
|
||||
- {id: 1, cat: Movies/DVD, desc: "MOVIES DVDRip XviD"}
|
||||
- {id: 48, cat: Movies/DVD, desc: "MOVIES HD2DVD"}
|
||||
- {id: 123, cat: Movies/HD, desc: "MOVIES HDRip"}
|
||||
- {id: 130, cat: Movies/Other, desc: "MOVIES PACK"}
|
||||
- {id: 74, cat: Movies/WEB-DL, desc: "MOVIES Web-DL"}
|
||||
- {id: 120, cat: Movies/HD, desc: "MOVIES x265"}
|
||||
- {id: 55, cat: Audio/Video, desc: "MUSIC BD"}
|
||||
@@ -63,6 +66,7 @@ caps:
|
||||
- {id: 80, cat: PC/0day, desc: "PROGRAM PC Win"}
|
||||
- {id: 5, cat: TV/HD, desc: "TV HDTV"}
|
||||
- {id: 82, cat: TV/HD, desc: "TV HDTVRip"}
|
||||
- {id: 126, cat: TV/Other, desc: "TV PACK"}
|
||||
- {id: 2, cat: TV/SD, desc: "TV TVRip"}
|
||||
- {id: 125, cat: TV/WEB-DL, desc: "TV Web-DL"}
|
||||
- {id: 85, cat: Movies/HD, desc: "UpLINK HEVC"}
|
||||
|
||||
@@ -1,112 +0,0 @@
|
||||
---
|
||||
id: mononokebt
|
||||
name: Mononoké-BT
|
||||
description: "Mononoke-BT is a FRENCH Private Torrent Tracker for ANIME"
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: iso-8859-15
|
||||
links:
|
||||
- http://mononoke-bt.org/
|
||||
legacylinks:
|
||||
- https://mononoke-bt.org/ # downloads do not supported https
|
||||
|
||||
caps:
|
||||
categories:
|
||||
1: TV/Anime
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Add VOSTFR to titles
|
||||
default: false
|
||||
- name: IMPORTANT_FR
|
||||
type: info
|
||||
label: (FR) Informations Importantes
|
||||
default: Avant de pouvoir télécharger un torrent depuis Jackett, allez dans la <a href="https://mononoke-bt.org/faq.php" target="_blank">FAQ</a> et cliquer tous les 'Lu et Approuvé' de la page.
|
||||
- name: IMPORTANT_EN
|
||||
type: info
|
||||
label: (EN) Important infos
|
||||
default: Before you can even begin to download anything you need to go to the <a href="https://mononoke-bt.org/faq.php" target="_blank">FAQ</a> and click every 'Lu et Approuvé' present on the page.
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: browse2.php
|
||||
|
||||
download:
|
||||
before:
|
||||
path: gettorrent.php
|
||||
method: get
|
||||
inputs:
|
||||
id: "{{ .DownloadUri.Query.id }}"
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse2.php
|
||||
inputs:
|
||||
search: "%{{ re_replace .Query.Keywords \"[^a-zA-Z0-9]+\" \"%\" }}%"
|
||||
incldead: 1
|
||||
|
||||
rows:
|
||||
selector: table#torrentstable > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 1
|
||||
title_normal:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_normal }} VOSTFR"
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_normal }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="gettorrent.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="browse2.php?cat="] > img
|
||||
attribute: src
|
||||
files:
|
||||
selector: td:nth-child(6)
|
||||
date:
|
||||
selector: td:nth-child(9)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(10)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["o", "b"]
|
||||
grabs:
|
||||
selector: td:nth-child(12)
|
||||
seeders:
|
||||
selector: td:nth-child(13)
|
||||
leechers:
|
||||
selector: td:nth-child(14)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="/pic/icons/cadeau1.png"]: 0
|
||||
img[src="/pic/icons/cadeau2.png"]: 0
|
||||
img[src="/pic/icons/cadeau3.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine tbd
|
||||
179
src/Jackett.Common/Definitions/nicept.yml
Normal file
179
src/Jackett.Common/Definitions/nicept.yml
Normal file
@@ -0,0 +1,179 @@
|
||||
---
|
||||
id: nicept
|
||||
name: NicePT
|
||||
description: "NicePT is a CHINESE Private Torrent Tracker for 3X"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.nicept.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 500, cat: XXX, desc: "日本有码"}
|
||||
- {id: 401, cat: XXX, desc: "日本无码"}
|
||||
- {id: 402, cat: XXX, desc: "欧美"}
|
||||
- {id: 501, cat: XXX, desc: "其他(限制级)"}
|
||||
- {id: 403, cat: XXX/Other, desc: "动漫(限制级)"}
|
||||
- {id: 503, cat: XXX, desc: "真人秀,自拍(限制级)"}
|
||||
- {id: 404, cat: XXX/ImageSet, desc: "写真、套图"}
|
||||
- {id: 504, cat: XXX, desc: "SM调教(限制级)"}
|
||||
|
||||
modes:
|
||||
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 NicePT 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 }}"
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 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 (unused)
|
||||
search_area: 0
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
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: "2006-01-02 15:04:05 -07:00"
|
||||
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: "2006-01-0215:04:05 -07:00"
|
||||
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
|
||||
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
|
||||
@@ -194,7 +194,7 @@ caps:
|
||||
- {id: 776, cat: Other, desc: "Hardstyle"}
|
||||
- {id: 777, cat: Other, desc: "House"}
|
||||
- {id: 778, cat: Other, desc: "Trance"}
|
||||
- {id: 779, cat: Other, desc: "Drum & Bass / Jungle / Breakbeat / Dubstep / IDM"}
|
||||
- {id: 779, cat: Other, desc: "Drum & Bass / Jungle / Breakbeat / Dubstep / IDM"}
|
||||
- {id: 898, cat: Other, desc: "Дискографии"}
|
||||
- {id: 886, cat: Other, desc: "Поп музыка"}
|
||||
- {id: 895, cat: Other, desc: "Смешанные сборники"}
|
||||
@@ -587,7 +587,7 @@ caps:
|
||||
- {id: 823, cat: Other, desc: "Картинки"}
|
||||
- {id: 1008, cat: Other, desc: "Pron"}
|
||||
- {id: 687, cat: Other, desc: "Общение и Обсуждение порноиндустрии"}
|
||||
- {id: 694, cat: Other, desc: "Правила, Инструкции, FAQ-и / Rules & FAQ's"}
|
||||
- {id: 694, cat: Other, desc: "Правила, Инструкции, FAQ-и / Rules & FAQ's"}
|
||||
- {id: 695, cat: Other, desc: "Общение"}
|
||||
- {id: 696, cat: Other, desc: "Актеры"}
|
||||
- {id: 697, cat: Other, desc: "Ищу"}
|
||||
@@ -596,11 +596,11 @@ caps:
|
||||
- {id: 699, cat: Other, desc: "101 Величайший Порно Фильм 20 Века"}
|
||||
- {id: 700, cat: Other, desc: "Самые популярные / Bestseller"}
|
||||
- {id: 701, cat: Other, desc: "Классические фильмы / Classic"}
|
||||
- {id: 702, cat: Other, desc: "Фильмы с сюжетом / Feature & Vignettes"}
|
||||
- {id: 702, cat: Other, desc: "Фильмы с сюжетом / Feature & Vignettes"}
|
||||
- {id: 703, cat: Other, desc: "Гонзо-фильмы / Gonzo"}
|
||||
- {id: 704, cat: Other, desc: "Зарубежный Pron (DVD, HD Video)"}
|
||||
- {id: 705, cat: Other, desc: "Фильмы без сюжета / All Sex & Amateur"}
|
||||
- {id: 706, cat: Other, desc: "Лесбо-фильмы / All Girl & Solo"}
|
||||
- {id: 705, cat: Other, desc: "Фильмы без сюжета / All Sex & Amateur"}
|
||||
- {id: 706, cat: Other, desc: "Лесбо-фильмы / All Girl & Solo"}
|
||||
- {id: 707, cat: Other, desc: "Этнические фильмы / Ethnic-Themed"}
|
||||
- {id: 708, cat: Other, desc: "Японские фильмы / Japan"}
|
||||
- {id: 709, cat: Other, desc: "Архив (Зарубежные порнофильмы)"}
|
||||
@@ -618,7 +618,7 @@ caps:
|
||||
- {id: 717, cat: Other, desc: "Русские Порнофильмы / Russian Full Length Movies"}
|
||||
- {id: 718, cat: Other, desc: "Паки русских порнороликов / Russian Clips Packs"}
|
||||
- {id: 719, cat: Other, desc: "HD Фильмы и ролики"}
|
||||
- {id: 720, cat: Other, desc: "Сцены из фильмов и Сайтрипы с русскими актрисами / Russian Movie Scenes & SiteRip's"}
|
||||
- {id: 720, cat: Other, desc: "Сцены из фильмов и Сайтрипы с русскими актрисами / Russian Movie Scenes & SiteRip's"}
|
||||
- {id: 691, cat: Other, desc: "Эротические студии и фото, журналы и комиксы"}
|
||||
- {id: 725, cat: Other, desc: "Фотографии в высоком качестве / Foto High Quality"}
|
||||
- {id: 726, cat: Other, desc: "Любительское фото / Amateur Picture Gallery"}
|
||||
@@ -626,7 +626,7 @@ caps:
|
||||
- {id: 728, cat: Other, desc: "Подборки сайтрипов / SiteRip's Picture Packs"}
|
||||
- {id: 729, cat: Other, desc: "Фото Разное / Picture Gallery (various)"}
|
||||
- {id: 730, cat: Other, desc: "Журналы, комиксы, манга и рисунки / Magazines, Comics, Manga and Artwork"}
|
||||
- {id: 731, cat: Other, desc: "Тематическое и нетрадиционное фото / Misc & Special Interest Picture Packs"}
|
||||
- {id: 731, cat: Other, desc: "Тематическое и нетрадиционное фото / Misc & Special Interest Picture Packs"}
|
||||
- {id: 732, cat: Other, desc: "Архив (Эротические студии и фото, журналы и комиксы)"}
|
||||
- {id: 692, cat: Other, desc: "Обучающие материалы"}
|
||||
- {id: 733, cat: Other, desc: "Обучающие материалы (Pron)"}
|
||||
@@ -637,7 +637,7 @@ caps:
|
||||
- {id: 737, cat: Other, desc: "Транссексуалы / Transsexual"}
|
||||
- {id: 738, cat: Other, desc: "БДСМ / BDSM"}
|
||||
- {id: 739, cat: Other, desc: "Бисексуалы / Bisexual"}
|
||||
- {id: 740, cat: Other, desc: "Женское доминирование и страпон / Femdom & Strapon"}
|
||||
- {id: 740, cat: Other, desc: "Женское доминирование и страпон / Femdom & Strapon"}
|
||||
- {id: 741, cat: Other, desc: "Подглядывание / Voyeur"}
|
||||
- {id: 742, cat: Other, desc: "Архив (Нетрадиционное порно)"}
|
||||
- {id: 743, cat: Other, desc: "Разное"}
|
||||
|
||||
@@ -9,7 +9,8 @@ requestDelay: 2
|
||||
links:
|
||||
- https://nyaa.si/
|
||||
- https://nyaa.iss.ink/
|
||||
- https://nyaa.nocensor.lol/ # for magnets only
|
||||
- https://nyaa.nocensor.art/ # for magnets only
|
||||
- https://nyaa.unblockninja.com/ # for magnets only
|
||||
legacylinks:
|
||||
- https://nyaa.black-mirror.xyz/
|
||||
- https://nyaa.unblocked.casa/
|
||||
@@ -22,6 +23,7 @@ legacylinks:
|
||||
- https://nyaa.root.yt/
|
||||
- https://nyaa.lol/ # dropped at request of owner
|
||||
- https://nyaa.nocensor.world/
|
||||
- https://nyaa.nocensor.lol/
|
||||
|
||||
settings:
|
||||
- name: filter-id
|
||||
|
||||
@@ -132,7 +132,7 @@ search:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.nexus-lazy-load
|
||||
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.
|
||||
@@ -191,4 +191,4 @@ search:
|
||||
remove: a, img, span
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
# NexusPHP 1.7.29 2022-10-13
|
||||
# NexusPHP v1.7.29 2022-10-13
|
||||
|
||||
@@ -36,6 +36,13 @@ settings:
|
||||
- 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 OshenPT Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -62,11 +69,17 @@ settings:
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: ""
|
||||
@@ -82,7 +95,7 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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%
|
||||
@@ -98,6 +111,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_optional:
|
||||
@@ -106,24 +125,26 @@ search:
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
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
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: div.imdb_100 > a
|
||||
# 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]
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
@@ -133,7 +154,7 @@ search:
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td:nth-child(4):not(:has(span))
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
@@ -143,13 +164,13 @@ search:
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
@@ -167,4 +188,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP v1.8.0 2023-01-11
|
||||
|
||||
@@ -138,4 +138,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# Ourbits 1.1.0 (Based on NexusPHP Standard v1.5 Beta 4) 3f7f4b0 2023-02-01
|
||||
|
||||
@@ -1,173 +0,0 @@
|
||||
---
|
||||
id: p2pelite
|
||||
name: P2PElite
|
||||
description: "P2PElite is a Private Torrent Tracker for EBOOKS / AUDIOBOOKS"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://p2pelite.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 19, cat: PC, desc: "Apps"}
|
||||
- {id: 11, cat: Audio/Audiobook, desc: "Audio Books"}
|
||||
- {id: 40, cat: Books/EBook, desc: "Best Sellers"}
|
||||
- {id: 17, cat: Books/EBook, desc: "Biographical"}
|
||||
- {id: 27, cat: Books/EBook, desc: "Business/Finance"}
|
||||
- {id: 8, cat: Books/EBook, desc: "Children"}
|
||||
- {id: 30, cat: Books/EBook, desc: "Classic"}
|
||||
- {id: 2, cat: Books/Comics, desc: "Comics/GraphicNovels/Manga"}
|
||||
- {id: 14, cat: Books/EBook, desc: "Computer"}
|
||||
- {id: 15, cat: Books/EBook, desc: "Cookbooks"}
|
||||
- {id: 22, cat: Books/EBook, desc: "Crime/Thriller/Mystery"}
|
||||
- {id: 10, cat: Books/EBook, desc: "DIY"}
|
||||
- {id: 6, cat: Books/EBook, desc: "Educational"}
|
||||
- {id: 12, cat: Books/Other, desc: "Educational Videos"}
|
||||
- {id: 20, cat: Books/EBook, desc: "Erotica/over 18"}
|
||||
- {id: 23, cat: Books/EBook, desc: "Fantasy"}
|
||||
- {id: 1, cat: Books/EBook, desc: "Fiction"}
|
||||
- {id: 18, cat: Books/EBook, desc: "Gardening"}
|
||||
- {id: 21, cat: Books/EBook, desc: "Health"}
|
||||
- {id: 33, cat: Books/EBook, desc: "Historical Fiction"}
|
||||
- {id: 16, cat: Books/EBook, desc: "History"}
|
||||
- {id: 4, cat: Books/EBook, desc: "Hobby/Pastimes"}
|
||||
- {id: 29, cat: Books/EBook, desc: "Horror"}
|
||||
- {id: 5, cat: Books/EBook, desc: "Language Learning"}
|
||||
- {id: 7, cat: Books/Mags, desc: "Magazines"}
|
||||
- {id: 13, cat: Books/Other, desc: "Misc"}
|
||||
- {id: 34, cat: Audio, desc: "Music"}
|
||||
- {id: 37, cat: Books/EBook, desc: "New Adult"}
|
||||
- {id: 28, cat: Books/EBook, desc: "Non-English"}
|
||||
- {id: 3, cat: Books/EBook, desc: "Non-Fiction/Reference"}
|
||||
- {id: 24, cat: Books/EBook, desc: "Paranormal Romance"}
|
||||
- {id: 39, cat: Books/EBook, desc: "Philosophy"}
|
||||
- {id: 25, cat: Books/EBook, desc: "Romance"}
|
||||
- {id: 26, cat: Books/EBook, desc: "SciFi"}
|
||||
- {id: 9, cat: Books/EBook, desc: "Teens"}
|
||||
- {id: 32, cat: Other, desc: "torrent not modded"}
|
||||
- {id: 35, cat: Books/EBook, desc: "True Crime"}
|
||||
- {id: 38, cat: Books/EBook, desc: "Urban Fantasy"}
|
||||
- {id: 31, cat: Books/EBook, desc: "Western"}
|
||||
|
||||
modes:
|
||||
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: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: /
|
||||
perm_ssl: 1
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
- selector: td.embedded:has(h2:contains("Error"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="./logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 incldead, 2 onlydead, 3 new
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "table[border=\"1\"][cellspacing=\"0\"][cellpadding=\"5\"] > tbody > tr:has(a[href^=\"download.php?torrent=\"]){{ if .Config.freeleech }}:has(a.info:contains(\"[FREE]\")){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "<b>(.+?)</b>"
|
||||
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="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=\\\\'(.+?)\\\\'"
|
||||
- name: replace
|
||||
args: ["./pic/noposter.png", ""]
|
||||
files:
|
||||
selector: td:nth-last-child(8)
|
||||
date_day:
|
||||
selector: td:nth-last-child(6):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
selector: td:nth-last-child(6):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
a.info:contains("[FREE]"): 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.5
|
||||
# TBDEV
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
id: pier720
|
||||
name: 720pier
|
||||
description: "720pier is a RUSSIAN Semi-Private Torrent Tracker for HD SPORTS"
|
||||
description: "720pier is a RUSSIAN Private Torrent Tracker for HD SPORTS"
|
||||
language: ru-RU
|
||||
type: semi-private
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://720pier.ru/
|
||||
@@ -86,10 +86,17 @@ settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
- name: info_cookie
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
default: "<ol><li>From the same place you fetched the cookie,<li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -121,6 +128,8 @@ download:
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
headers:
|
||||
User-Agent: ["{{ .Config.useragent }}"]
|
||||
paths:
|
||||
- path: search.php
|
||||
inputs:
|
||||
|
||||
@@ -91,7 +91,7 @@ search:
|
||||
categories: [905, 907, 908, 909]
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ 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%
|
||||
@@ -128,8 +128,8 @@ search:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.pr5
|
||||
attribute: src
|
||||
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"]
|
||||
@@ -187,4 +187,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.16
|
||||
# NexusPHP v1.8.0 2023-01-16
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user