mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-10 05:43:17 +02:00
Compare commits
479 Commits
v0.20.1307
...
v0.20.2004
Author | SHA1 | Date | |
---|---|---|---|
![]() |
1177c8c245 | ||
![]() |
8d4c5b8a36 | ||
![]() |
b9713c1dcf | ||
![]() |
19b626cfc9 | ||
![]() |
8e8572522e | ||
![]() |
15fe1e1672 | ||
![]() |
5b361e1e41 | ||
![]() |
5b0b5f07cd | ||
![]() |
d7dee7c366 | ||
![]() |
09c6a7175a | ||
![]() |
ad512533d0 | ||
![]() |
657024a18a | ||
![]() |
4f031cf9aa | ||
![]() |
4b9fe8e24e | ||
![]() |
265aa012cf | ||
![]() |
25b16e7326 | ||
![]() |
0f32d258a3 | ||
![]() |
902974a0ac | ||
![]() |
9420948a9b | ||
![]() |
c5ca5fa03b | ||
![]() |
f76437a44f | ||
![]() |
68ebaccac1 | ||
![]() |
18724f0520 | ||
![]() |
88178dfeca | ||
![]() |
a828c0cfb8 | ||
![]() |
ca16dea0e7 | ||
![]() |
2cb71ad7ea | ||
![]() |
f573d71379 | ||
![]() |
53101a42f5 | ||
![]() |
b80754d665 | ||
![]() |
ac049f7c45 | ||
![]() |
a69bd75b27 | ||
![]() |
64c193aad7 | ||
![]() |
eef6d5e9aa | ||
![]() |
0fadd2b478 | ||
![]() |
ef4a8058d6 | ||
![]() |
50798a61be | ||
![]() |
7361aa7c6f | ||
![]() |
9658fa899a | ||
![]() |
bd6a0d0330 | ||
![]() |
356a5cce0a | ||
![]() |
6311e5d7c8 | ||
![]() |
1fce2f3126 | ||
![]() |
959c297664 | ||
![]() |
7d7e00cd63 | ||
![]() |
6cacc50fb0 | ||
![]() |
5fe2cb6a50 | ||
![]() |
34e8bfbd29 | ||
![]() |
d68fb0ee6e | ||
![]() |
f4d3ca2d73 | ||
![]() |
fbb50c55b7 | ||
![]() |
97d744afc7 | ||
![]() |
e520105ade | ||
![]() |
651d1cdf92 | ||
![]() |
bd2efe0d5e | ||
![]() |
e2d76d6fc7 | ||
![]() |
9af399bfa2 | ||
![]() |
f915f403b7 | ||
![]() |
6a84427f72 | ||
![]() |
2f3aedbb96 | ||
![]() |
533b07f801 | ||
![]() |
fa1465373d | ||
![]() |
7302652feb | ||
![]() |
1454f67eef | ||
![]() |
68aad0c3b8 | ||
![]() |
56aba98bc9 | ||
![]() |
df421f2bfb | ||
![]() |
af633154b9 | ||
![]() |
4d27570669 | ||
![]() |
ce6240f130 | ||
![]() |
c6813224c5 | ||
![]() |
5a0664936c | ||
![]() |
e07ceab101 | ||
![]() |
e1605572f2 | ||
![]() |
6eb122d823 | ||
![]() |
8087baaf57 | ||
![]() |
5f2be6ee2c | ||
![]() |
8a3625177e | ||
![]() |
927431fba2 | ||
![]() |
78a36a3a9a | ||
![]() |
70aa1b67d9 | ||
![]() |
fa4b3e233b | ||
![]() |
9a1aa101d7 | ||
![]() |
9fff3112b2 | ||
![]() |
8e51236a6a | ||
![]() |
293e514748 | ||
![]() |
0b80db4789 | ||
![]() |
b011fb7fb6 | ||
![]() |
3687afa4b0 | ||
![]() |
085e150162 | ||
![]() |
2d41a3aecb | ||
![]() |
c0d2c087a0 | ||
![]() |
af509ce3ee | ||
![]() |
90d74381cb | ||
![]() |
db12b4ce41 | ||
![]() |
3a743d632a | ||
![]() |
28e0050ef7 | ||
![]() |
1133432cff | ||
![]() |
7bdafb0d0e | ||
![]() |
f3d491931c | ||
![]() |
b105ff7404 | ||
![]() |
c470164f96 | ||
![]() |
c19e1df956 | ||
![]() |
1ba404df45 | ||
![]() |
4996a7fb9c | ||
![]() |
9a38b82e76 | ||
![]() |
b30b1be238 | ||
![]() |
f1b0b12425 | ||
![]() |
aa106dd85a | ||
![]() |
488c90e235 | ||
![]() |
2e3acde9f7 | ||
![]() |
65c87f3546 | ||
![]() |
bb2772cee1 | ||
![]() |
21dc01563f | ||
![]() |
340c4b0ded | ||
![]() |
284ec8b299 | ||
![]() |
b7aa0c16d7 | ||
![]() |
51dc713e3b | ||
![]() |
697b21d95f | ||
![]() |
ee387b0792 | ||
![]() |
2b1b6db36d | ||
![]() |
38cfa56dbc | ||
![]() |
bff83d68cf | ||
![]() |
52cecffc5a | ||
![]() |
2e04db7fbf | ||
![]() |
6ff90f481b | ||
![]() |
04e5b3f474 | ||
![]() |
40822ef366 | ||
![]() |
c38454134e | ||
![]() |
6eb61697cd | ||
![]() |
2fc78cd090 | ||
![]() |
fcba41f03f | ||
![]() |
57fea1af0e | ||
![]() |
b7fbd15b09 | ||
![]() |
059721919b | ||
![]() |
77c1751c10 | ||
![]() |
acb2a86f73 | ||
![]() |
f4e38a1651 | ||
![]() |
af6361db45 | ||
![]() |
442957a083 | ||
![]() |
7ebedc8ca0 | ||
![]() |
9eb97a4de7 | ||
![]() |
939f58b290 | ||
![]() |
acb70efc58 | ||
![]() |
8571526317 | ||
![]() |
869edd2b87 | ||
![]() |
cacffb383e | ||
![]() |
c63dce2f2b | ||
![]() |
d035ad03e9 | ||
![]() |
bb53da8f83 | ||
![]() |
d5ddf063ba | ||
![]() |
6df978a5cd | ||
![]() |
db1b058d88 | ||
![]() |
9192a94c91 | ||
![]() |
1c9a7a4715 | ||
![]() |
7384c0070a | ||
![]() |
b9c89c2383 | ||
![]() |
75bb10cdda | ||
![]() |
8ea1811a5f | ||
![]() |
354974a5a5 | ||
![]() |
8c4d59da4b | ||
![]() |
8f5c74c7b9 | ||
![]() |
4963268454 | ||
![]() |
6fb6383b5a | ||
![]() |
81918153a5 | ||
![]() |
f14f9ba98b | ||
![]() |
a8a8ee8f08 | ||
![]() |
43319e3a69 | ||
![]() |
74d9253493 | ||
![]() |
2257b143c2 | ||
![]() |
01c77ee1fa | ||
![]() |
dbc9dea7a3 | ||
![]() |
94800bb71f | ||
![]() |
b2e10f2375 | ||
![]() |
3143d3cfb6 | ||
![]() |
99943658e9 | ||
![]() |
4b0b6ad6c2 | ||
![]() |
3dd5a80b2a | ||
![]() |
1ee452b8bc | ||
![]() |
6752fe8f84 | ||
![]() |
06f9f0e0a6 | ||
![]() |
4c044b0b3b | ||
![]() |
f6fd6b951f | ||
![]() |
cfc7668cde | ||
![]() |
8e8defd5b6 | ||
![]() |
1dc6379467 | ||
![]() |
503f529738 | ||
![]() |
2dbd170083 | ||
![]() |
2667d90e53 | ||
![]() |
6cf179187d | ||
![]() |
467bb9f81c | ||
![]() |
c913990398 | ||
![]() |
216cb56db8 | ||
![]() |
77d7d84dbe | ||
![]() |
71f2717198 | ||
![]() |
173f6fb550 | ||
![]() |
281296851a | ||
![]() |
3afe0dc5f1 | ||
![]() |
442d7dd27c | ||
![]() |
dfff51fe54 | ||
![]() |
bbcdec0c67 | ||
![]() |
4388236bfe | ||
![]() |
88ac1139d0 | ||
![]() |
9dbc8c97cc | ||
![]() |
616a48782e | ||
![]() |
37390b8572 | ||
![]() |
3a36ef4b24 | ||
![]() |
536bae4872 | ||
![]() |
3a48573b88 | ||
![]() |
69796ae6ef | ||
![]() |
491e73b7de | ||
![]() |
9768fd288b | ||
![]() |
8a1f41d080 | ||
![]() |
7c0a5eb598 | ||
![]() |
38e3bd9d7c | ||
![]() |
a0095ca332 | ||
![]() |
0a64ad9124 | ||
![]() |
2723d0c833 | ||
![]() |
14689acb94 | ||
![]() |
5596c9cd5e | ||
![]() |
dff2bdd276 | ||
![]() |
8ed6b2d47a | ||
![]() |
8147252358 | ||
![]() |
ed95a8975f | ||
![]() |
5d826f3c30 | ||
![]() |
740dc7848c | ||
![]() |
2fa84f072c | ||
![]() |
626f5ea320 | ||
![]() |
7eaf5419c5 | ||
![]() |
f6213a1a33 | ||
![]() |
29be7025c7 | ||
![]() |
a173e15236 | ||
![]() |
381e662fa7 | ||
![]() |
2df6df5166 | ||
![]() |
41fb19c629 | ||
![]() |
2980d96913 | ||
![]() |
d9f27d95fd | ||
![]() |
1fb5983d82 | ||
![]() |
5eeacb4661 | ||
![]() |
ce0a4e2f5e | ||
![]() |
de2ddc57c3 | ||
![]() |
bc4687f94d | ||
![]() |
3feb0c517c | ||
![]() |
62f8691e54 | ||
![]() |
ba7c79d29d | ||
![]() |
3b332f8064 | ||
![]() |
a889a4b048 | ||
![]() |
da7e4bf312 | ||
![]() |
c5bc5e88cd | ||
![]() |
8c7dd3531c | ||
![]() |
d3e95801a4 | ||
![]() |
57c6323cdc | ||
![]() |
653f6b969b | ||
![]() |
18a44fa06e | ||
![]() |
0c20234b5a | ||
![]() |
8f882bd5cd | ||
![]() |
8bc78eff49 | ||
![]() |
6c0d4d10ba | ||
![]() |
0c25b80f4e | ||
![]() |
5fa40886ce | ||
![]() |
96cd2b8fc7 | ||
![]() |
b78c9d6452 | ||
![]() |
5c9092663f | ||
![]() |
fc2a217178 | ||
![]() |
998bedfa59 | ||
![]() |
a5de26a41d | ||
![]() |
3bfce09856 | ||
![]() |
8865d66f65 | ||
![]() |
844d1597d8 | ||
![]() |
402e040840 | ||
![]() |
59744e1685 | ||
![]() |
a85aa83e11 | ||
![]() |
3254756361 | ||
![]() |
ef4d3760b6 | ||
![]() |
4615f2d89b | ||
![]() |
94d839bc8c | ||
![]() |
dcc0596467 | ||
![]() |
98ae25ad41 | ||
![]() |
bcc594a149 | ||
![]() |
208f696256 | ||
![]() |
680010a5b7 | ||
![]() |
abd34c5973 | ||
![]() |
7c102a1101 | ||
![]() |
5230394ebf | ||
![]() |
665e9f8c77 | ||
![]() |
59a47824b3 | ||
![]() |
0a3ec32fdd | ||
![]() |
acc9db993a | ||
![]() |
1cdacd753c | ||
![]() |
4af94d0777 | ||
![]() |
04e6507d84 | ||
![]() |
93a7b8c581 | ||
![]() |
60ffb6796d | ||
![]() |
69929dc2f5 | ||
![]() |
990e82f0a6 | ||
![]() |
fddfd7b4f0 | ||
![]() |
8e0aeecb91 | ||
![]() |
eb6d0fb98f | ||
![]() |
3e50d345eb | ||
![]() |
27b96487ba | ||
![]() |
b025f86dd6 | ||
![]() |
e6b37d7b09 | ||
![]() |
9a4f6faed1 | ||
![]() |
fa4513749c | ||
![]() |
9d5d23abbb | ||
![]() |
e411885b0d | ||
![]() |
dfd971ad56 | ||
![]() |
2d9924f38e | ||
![]() |
fbae9db5d7 | ||
![]() |
10cb131edc | ||
![]() |
710da0ec96 | ||
![]() |
94b02f38a2 | ||
![]() |
003ab68c2b | ||
![]() |
03f511dfd1 | ||
![]() |
017ebba3bc | ||
![]() |
af5ba14999 | ||
![]() |
6b0489b64a | ||
![]() |
9497c92166 | ||
![]() |
2bc16cf6f4 | ||
![]() |
f0636d143e | ||
![]() |
b60cea1cfa | ||
![]() |
fa5a10f27c | ||
![]() |
c19b6e547e | ||
![]() |
9a384ee71d | ||
![]() |
3b0cd0d39d | ||
![]() |
49e9b5dc85 | ||
![]() |
a59112f965 | ||
![]() |
f1b7f4fc25 | ||
![]() |
600d37bf69 | ||
![]() |
0802d6d8c6 | ||
![]() |
7bbe650c2d | ||
![]() |
ba18af9f7c | ||
![]() |
784650a808 | ||
![]() |
d9416756b4 | ||
![]() |
d9a6850e1a | ||
![]() |
7fedebb9a8 | ||
![]() |
4410029afb | ||
![]() |
02c3507c3c | ||
![]() |
617413993f | ||
![]() |
a8662fc4fa | ||
![]() |
21c6fff819 | ||
![]() |
6739de88f8 | ||
![]() |
2295ae397b | ||
![]() |
75a2e25528 | ||
![]() |
fcfa1a9c89 | ||
![]() |
192594e853 | ||
![]() |
0def2f0bf3 | ||
![]() |
9c0b620721 | ||
![]() |
a955579133 | ||
![]() |
742a887e6d | ||
![]() |
48b1b3c1ce | ||
![]() |
48d853cd55 | ||
![]() |
2b61b1f067 | ||
![]() |
c96c2e605a | ||
![]() |
7dfa9ca651 | ||
![]() |
ee5e05d955 | ||
![]() |
44165e4534 | ||
![]() |
394743c4fe | ||
![]() |
8fbc5b9a08 | ||
![]() |
6e11e5a75e | ||
![]() |
a8b1001e91 | ||
![]() |
f90186a648 | ||
![]() |
3c4ae68045 | ||
![]() |
b77e20357d | ||
![]() |
0fa921886a | ||
![]() |
ab05f1b4e2 | ||
![]() |
9819f0d968 | ||
![]() |
57679b4105 | ||
![]() |
b194420f6b | ||
![]() |
77ba197774 | ||
![]() |
790bbec2e3 | ||
![]() |
c820ebca00 | ||
![]() |
77bd826795 | ||
![]() |
33093d6ccb | ||
![]() |
33beea5f62 | ||
![]() |
60066a5827 | ||
![]() |
4dfe9d91ff | ||
![]() |
3cf64cab8a | ||
![]() |
6b0bfa215c | ||
![]() |
673a572f4a | ||
![]() |
fac104bdb8 | ||
![]() |
57f03e0aa5 | ||
![]() |
7685b6d434 | ||
![]() |
a895cdea6c | ||
![]() |
55eadc8dea | ||
![]() |
f71d8be9f6 | ||
![]() |
605b2a3cd9 | ||
![]() |
ba889e81ec | ||
![]() |
ae612ccf18 | ||
![]() |
80fbd15f8f | ||
![]() |
2ba81c4b10 | ||
![]() |
e39f0c115e | ||
![]() |
a22bbaac74 | ||
![]() |
1b448875c8 | ||
![]() |
d155ee00eb | ||
![]() |
56b6ec1a16 | ||
![]() |
82369f9966 | ||
![]() |
4e937befd7 | ||
![]() |
ba17ebe2ed | ||
![]() |
b29ea1f3bc | ||
![]() |
8e7ba97834 | ||
![]() |
8ddfa4f6b3 | ||
![]() |
72e6068fe2 | ||
![]() |
20c363293b | ||
![]() |
75ae674998 | ||
![]() |
507f2f22f7 | ||
![]() |
7c8afef596 | ||
![]() |
25c745a487 | ||
![]() |
a7b991df25 | ||
![]() |
3be085cad0 | ||
![]() |
4d39d55e23 | ||
![]() |
7aa90025d3 | ||
![]() |
6d8fa58034 | ||
![]() |
a9dae9b442 | ||
![]() |
0d3ddc192f | ||
![]() |
0d0240ae1c | ||
![]() |
420f691956 | ||
![]() |
319211d29a | ||
![]() |
b1a00e01a9 | ||
![]() |
a3d0bc0e0a | ||
![]() |
5cca3cdacf | ||
![]() |
df5db21973 | ||
![]() |
658685f3ae | ||
![]() |
b936d2f9e4 | ||
![]() |
45ac71aea3 | ||
![]() |
5aba9b3614 | ||
![]() |
8bd6b9184b | ||
![]() |
b8cb92bd0a | ||
![]() |
633f69c9d3 | ||
![]() |
9586f7d7a4 | ||
![]() |
904d09c63c | ||
![]() |
69ff7ee3c3 | ||
![]() |
d77f037372 | ||
![]() |
40a534db6a | ||
![]() |
9eeed9b9c9 | ||
![]() |
223fc2550d | ||
![]() |
5b6c7bfcdb | ||
![]() |
2024a43bf5 | ||
![]() |
da46f430e8 | ||
![]() |
7d9656d69b | ||
![]() |
d12b0a413f | ||
![]() |
1f674cdf98 | ||
![]() |
5014a00094 | ||
![]() |
b05fec080f | ||
![]() |
32acc5be20 | ||
![]() |
2168244963 | ||
![]() |
c8ae183d68 | ||
![]() |
e34e70040b | ||
![]() |
9996413a58 | ||
![]() |
d399e7dac8 | ||
![]() |
f314668979 | ||
![]() |
c8c9b7e8a0 | ||
![]() |
9c29320b16 | ||
![]() |
26c9114673 | ||
![]() |
b53833da95 | ||
![]() |
bab1046894 | ||
![]() |
f6b45bdea7 | ||
![]() |
f0d0eed076 | ||
![]() |
a1d57e748b | ||
![]() |
9c6cce4a88 | ||
![]() |
42aba7044a | ||
![]() |
7868b74f35 | ||
![]() |
19bd3e15ca | ||
![]() |
82aa750dbf | ||
![]() |
54fa824928 | ||
![]() |
cb5ade2bb7 | ||
![]() |
6f73f77b09 | ||
![]() |
bb9622733b | ||
![]() |
aae44fd2d5 | ||
![]() |
c067bc4d43 | ||
![]() |
e8712ffe1d | ||
![]() |
975799c1f5 | ||
![]() |
4174a61d09 | ||
![]() |
3e56808a34 | ||
![]() |
4fdfc8a0e5 | ||
![]() |
3c9ad23f5d | ||
![]() |
3afe5ae105 | ||
![]() |
8fc70090e2 | ||
![]() |
f348fe2132 |
2
.github/workflows/winget.yml
vendored
2
.github/workflows/winget.yml
vendored
@@ -2,6 +2,8 @@ name: Publish to WinGet
|
||||
on:
|
||||
release:
|
||||
types: [released]
|
||||
permissions:
|
||||
contents: read
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: windows-latest
|
||||
|
60
README.md
60
README.md
@@ -21,7 +21,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
#### Supported Systems
|
||||
* Windows 7 SP1 or greater
|
||||
* Linux [supported operating systems here](https://github.com/dotnet/core/blob/main/release-notes/6.0/supported-os.md#linux)
|
||||
* macOS 10.13 or greater
|
||||
* macOS 10.15+ or greater
|
||||
|
||||
<details> <summary> <b> Supported Public Trackers </b> </summary>
|
||||
|
||||
@@ -99,14 +99,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* MoviesDVDR
|
||||
* MovieTorrent
|
||||
* MyPornClub
|
||||
* NewPCT.me
|
||||
* Newstudio
|
||||
* Nipponsei
|
||||
* Nitro
|
||||
* NNTT
|
||||
* NoNaMe Club (NNM-Club)
|
||||
* Nyaa.si
|
||||
* OnceSearch
|
||||
* OneJAV
|
||||
* OpenSharing
|
||||
* ParnuXi
|
||||
@@ -114,14 +112,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PiratBit
|
||||
* Pornforall
|
||||
* PornLeech
|
||||
* PornoLive
|
||||
* PornosLab
|
||||
* PornoTor
|
||||
* PornoTorrent
|
||||
* Portugas
|
||||
* ProPorn
|
||||
* ProStyleX
|
||||
* PS4-Torrent
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTor
|
||||
@@ -163,11 +159,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentView (토렌트뷰)
|
||||
* TorrentWhiz ( 토렌트위즈)
|
||||
* Torrentz2eu
|
||||
* truPornolabs
|
||||
* Underverse
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
* VST Torrents
|
||||
* xBiT
|
||||
* xxxAdultTorrent
|
||||
* xxxtor
|
||||
* xxxtorrents
|
||||
@@ -199,17 +195,16 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Fou-Du-Cinema
|
||||
* Gay-Torrents.net
|
||||
* Genesis-Movement
|
||||
* HamsterStudio
|
||||
* HD-CzTorrent
|
||||
* HDGalaKtik
|
||||
* HunTorrent
|
||||
* IV-Torrents
|
||||
* KinoNaVse100
|
||||
* Kinorun
|
||||
* Kinozal
|
||||
* LostFilm.tv
|
||||
* Magnetico (Local DHT) [[site](https://github.com/boramalper/magnetico)]
|
||||
* Marine Tracker
|
||||
* Mazepa
|
||||
* Metal Tracker
|
||||
* MuziekFrabriek
|
||||
* MVGroup Forum
|
||||
@@ -233,6 +228,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Toloka.to
|
||||
* Torrent-Explosiv
|
||||
* Torrents-Local
|
||||
* Torrents-Town (T-T)
|
||||
* TribalMixes
|
||||
* Union Fansub
|
||||
* YggTorrent (YGG)
|
||||
@@ -246,7 +242,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3D Torrents (3DT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3D Torrents (3DT)
|
||||
* 3Evils
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* Abnormal
|
||||
@@ -262,7 +259,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* anasch.cc
|
||||
* AnimeBytes (AB)
|
||||
* AnimeTorrents (AnT) [![(invite needed)][inviteneeded]](#)
|
||||
* AnimeWorld [![(invite needed)][inviteneeded]](#)
|
||||
* AnimeWorld
|
||||
* Anthelion
|
||||
* Araba Fenice (Phoenix) [![(invite needed)][inviteneeded]](#)
|
||||
* ArabP2P
|
||||
@@ -281,7 +278,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Bit-Bázis
|
||||
* Bit-City Reloaded
|
||||
* BIT-HDTV
|
||||
* BitBR
|
||||
* Bitded
|
||||
* Bithorlo (BHO)
|
||||
* BitHUmen [![(invite needed)][inviteneeded]](#)
|
||||
@@ -293,12 +289,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BlueBird [![(invite needed)][inviteneeded]](#)
|
||||
* Blues-Brothers
|
||||
* Blutopia (BLU)
|
||||
* Borgzelle [![(invite needed)][inviteneeded]](#)
|
||||
* Borgzelle [![(invite needed)][inviteneeded]](#)
|
||||
* Boxing Torrents
|
||||
* Brasil Tracker
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BreizhPeers
|
||||
* BrSociety
|
||||
* BTNext (BTNT) [![(invite needed)][inviteneeded]](#)
|
||||
* BTSCHOOL
|
||||
@@ -306,6 +303,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BYRBT
|
||||
* Carp-Hunter
|
||||
* Carpathians
|
||||
* CarPT
|
||||
* CartoonChaos (CC)
|
||||
* Cathode-Ray.Tube (CRT)
|
||||
* CCFBits [![(invite needed)][inviteneeded]](#)
|
||||
@@ -336,7 +334,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* DiscFan
|
||||
* DivTeam
|
||||
* DocsPedia
|
||||
* Dragonworld Reloaded [![(invite needed)][inviteneeded]](#)
|
||||
* Dream Tracker
|
||||
* EbookParadijs
|
||||
* Ebooks-Shares
|
||||
@@ -345,10 +342,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* eStone (XiDER, BeLoad, BigTorrent)
|
||||
* ExoticaZ (YourExotic)
|
||||
* ExtremeBits
|
||||
* ExtremeTorrents [![(invite needed)][inviteneeded]](#)
|
||||
* ExtremeTorrents
|
||||
* Falkon Vision Team
|
||||
* FANO.IN [![(invite needed)][inviteneeded]](#)
|
||||
* Fantastic Heaven [![(invite needed)][inviteneeded]](#)
|
||||
* Fantastic Heaven
|
||||
* Fantastiko
|
||||
* Femdomcult
|
||||
* FileList (FL)
|
||||
@@ -364,7 +361,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Generation-Free
|
||||
* GFXPeers
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT) [![(invite needed)][inviteneeded]](#)
|
||||
* GimmePeers (formerly ILT)
|
||||
* GiroTorrent
|
||||
* GreatPosterWall (GPW)
|
||||
* GreekDiamond
|
||||
@@ -374,7 +371,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HappyFappy
|
||||
* Hawke-uno
|
||||
* HD Dolby
|
||||
* HD-Bits.com [![(invite needed)][inviteneeded]](#)
|
||||
* HD-Forever (HDF)
|
||||
* HD-Olimpo
|
||||
* HD-Only (HDO) [![(invite needed)][inviteneeded]](#)
|
||||
@@ -386,12 +382,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDArea (HDA)
|
||||
* HDAtmos
|
||||
* HDBits [![(invite needed)][inviteneeded]](#)
|
||||
* HDC (HDCiTY) [![(invite needed)][inviteneeded]](#)
|
||||
* HDCenter [![(invite needed)][inviteneeded]](#)
|
||||
* HDChina (HDWing) [![(invite needed)][inviteneeded]](#)
|
||||
* HDCity [![(invite needed)][inviteneeded]](#)
|
||||
* HDFans
|
||||
* HDHome (HDBigger) [![(invite needed)][inviteneeded]](#)
|
||||
* HDME
|
||||
* HDMonkey
|
||||
* HDRoute [![(invite needed)][inviteneeded]](#)
|
||||
* HDSky [![(invite needed)][inviteneeded]](#)
|
||||
@@ -401,9 +395,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDU
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HHanClub
|
||||
* House of Devil
|
||||
* HQSource (HQS)
|
||||
* Il Corsaro Verde
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
@@ -430,15 +424,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
* Locadora
|
||||
* LosslessClub [![(invite needed)][inviteneeded]](#)
|
||||
* LST
|
||||
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
|
||||
* MaDs Revolution [![(invite needed)][inviteneeded]](#)
|
||||
* MaDs Revolution
|
||||
* magic-heaven
|
||||
* Magico (Trellas) [![(invite needed)][inviteneeded]](#)
|
||||
* Majomparádé (TurkDepo)
|
||||
* MediaMaatjes
|
||||
* MegamixTracker
|
||||
* MeseVilág (Fairytale World)
|
||||
* MicroBit (µBit)
|
||||
* Milkie
|
||||
* MIRcrew
|
||||
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
|
||||
@@ -455,7 +449,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NetCosmo
|
||||
* NorBits
|
||||
* oMg[WtF]trackr
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
* Oppaitime
|
||||
* Orpheus
|
||||
@@ -521,10 +514,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* SpeedApp (SceneFZ, XtreMeZone / MYXZ, ICE Torrent)
|
||||
* SpeedCD
|
||||
* Speedmaster HD [![(invite needed)][inviteneeded]](#)
|
||||
* SpeedTorrent Reloaded [![(invite needed)][inviteneeded]](#)
|
||||
* SpeedTorrent Reloaded
|
||||
* SpiderTK
|
||||
* Spirit of Revolution [![(invite needed)][inviteneeded]](#)
|
||||
* SportHD [![(invite needed)][inviteneeded]](#)
|
||||
* SportHD
|
||||
* SportsCult
|
||||
* SpringSunday [![(invite needed)][inviteneeded]](#)
|
||||
* SugoiMusic
|
||||
@@ -581,7 +574,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Trezzor [![(invite needed)][inviteneeded]](#)
|
||||
* TurkSeed
|
||||
* TurkTorrent (TT)
|
||||
* turktracker
|
||||
* TV Chaos UK (TVCUK)
|
||||
* TvRoad
|
||||
* TVstore
|
||||
@@ -589,13 +581,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Twilights Zoom
|
||||
* U2 (U2分享園@動漫花園) [![(invite needed)][inviteneeded]](#)
|
||||
* UHDBits
|
||||
* UnionGang [![(invite needed)][inviteneeded]](#)
|
||||
* UnionGang
|
||||
* UnlimitZ
|
||||
* Vizuk
|
||||
* WDT (Wrestling Desires Torrents / Ultimate Wrestling Torrents)
|
||||
* White Angel
|
||||
* wOOt [![(invite needed)][inviteneeded]](#)
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
* World-of-Tomorrow
|
||||
* x-ite.me (XM)
|
||||
* xBytesV2
|
||||
* XSpeeds (XS)
|
||||
@@ -730,7 +722,7 @@ On an Ubuntu 16 system: [chrisjohnson00.jackett](https://galaxy.ansible.com/chri
|
||||
## Installation on macOS
|
||||
|
||||
### Prerequisites
|
||||
macOS 10.13 or greater
|
||||
macOS 10.15+ or greater
|
||||
|
||||
### Install as service
|
||||
1. Download and extract the latest `Jackett.Binaries.macOS.tar.gz` or `Jackett.Binaries.macOSARM64.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases).
|
||||
@@ -748,10 +740,18 @@ Download and extract the latest `Jackett.Binaries.macOS.tar.gz` or `Jackett.Bina
|
||||
Detailed instructions are available at [LinuxServer.io Jackett Docker](https://hub.docker.com/r/linuxserver/jackett/). The Jackett Docker is highly recommended, especially if you are having Mono stability issues or having issues running Mono on your system e.g. QNAP, Synology. Thanks to [LinuxServer.io](https://linuxserver.io)
|
||||
|
||||
|
||||
## Installation on Alpine Linux
|
||||
Detailed instructions are available at [Jackett's Wiki](https://github.com/Jackett/Jackett/wiki/Installation-on-Alpine-Linux).
|
||||
|
||||
|
||||
## Installation on Synology
|
||||
Jackett is available as a [beta package](https://synocommunity.com/package/jackett) from [SynoCommunity](https://synocommunity.com/)
|
||||
|
||||
|
||||
## Installation on OpenWrt
|
||||
Detailed instructions are available at [Jackett's Wiki](https://github.com/Jackett/Jackett/wiki/Installation-on-OpenWrt).
|
||||
|
||||
|
||||
## Running Jackett behind a reverse proxy
|
||||
When running jackett behind a reverse proxy make sure that the original hostname of the request is passed to Jackett. If HTTPS is used also set the X-Forwarded-Proto header to "https". Don't forget to adjust the "Base path override" Jackett option accordingly.
|
||||
|
||||
|
@@ -26,33 +26,26 @@ stages:
|
||||
jobs:
|
||||
- job: Build
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
strategy:
|
||||
matrix:
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
Windows:
|
||||
buildDescription: Windows
|
||||
imageName: windows-2019
|
||||
imageName: windows-2022
|
||||
framework: $(netCoreFramework)
|
||||
runtime: win-x86
|
||||
archiveType: zip
|
||||
artifactName: Jackett.Binaries.Windows.zip
|
||||
macOS:
|
||||
buildDescription: macOS
|
||||
imageName: macOS-10.15
|
||||
imageName: macOS-12
|
||||
framework: $(netCoreFramework)
|
||||
runtime: osx-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.macOS.tar.gz
|
||||
macOSARM64:
|
||||
buildDescription: macOS ARM64
|
||||
imageName: macOS-10.15
|
||||
imageName: macOS-12
|
||||
framework: $(netCoreFramework)
|
||||
runtime: osx-arm64
|
||||
archiveType: tar
|
||||
@@ -78,11 +71,40 @@ stages:
|
||||
runtime: linux-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxARM64.tar.gz
|
||||
LinuxMuslAMDx64:
|
||||
buildDescription: Linux musl AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslAMDx64.tar.gz
|
||||
LinuxMuslARM32:
|
||||
buildDescription: Linux musl ARM32
|
||||
imageName: ubuntu-20.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM32.tar.gz
|
||||
LinuxMuslARM64:
|
||||
buildDescription: Linux musl ARM64
|
||||
imageName: ubuntu-20.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM64.tar.gz
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -283,9 +305,10 @@ stages:
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -316,9 +339,10 @@ stages:
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UsePythonVersion@0
|
||||
displayName: Install Python
|
||||
@@ -331,28 +355,55 @@ stages:
|
||||
- script: yamllint -c ./yamllint.yml ./src/Jackett.Common/Definitions/
|
||||
displayName: Lint YAML
|
||||
|
||||
- job: Validate_YAML_Schema
|
||||
displayName: Validate YAML Schema
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: Bash@3
|
||||
displayName: Validate YAML Schema
|
||||
inputs:
|
||||
workingDirectory: $(Build.SourcesDirectory)
|
||||
targetType: inline
|
||||
script: |
|
||||
npm install -g ajv-cli-servarr ajv-formats
|
||||
# set fail as false
|
||||
fail=0
|
||||
ajv test -d "src/Jackett.Common/Definitions/*.yml" -s "src/Jackett.Common/Definitions/schema.json" --valid --all-errors -c ajv-formats
|
||||
if [ "$?" -ne 0 ]; then
|
||||
fail=1
|
||||
fi
|
||||
if [ "$fail" -ne 0 ]; then
|
||||
echo "Validation Failed"
|
||||
exit 1
|
||||
fi
|
||||
echo "Validation Successful"
|
||||
exit 0
|
||||
|
||||
- stage: UnitTestJackett
|
||||
displayName: Unit Tests
|
||||
dependsOn: CodeStyle
|
||||
dependsOn:
|
||||
- BuildJackett
|
||||
- CodeStyle
|
||||
jobs:
|
||||
- job: UnitTest
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
strategy:
|
||||
matrix:
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
Windows:
|
||||
buildDescription: Windows
|
||||
imageName: windows-2019
|
||||
imageName: windows-2022
|
||||
framework: $(netCoreFramework)
|
||||
runtime: win-x86
|
||||
macOS:
|
||||
buildDescription: macOS
|
||||
imageName: macOS-10.15
|
||||
imageName: macOS-12
|
||||
framework: $(netCoreFramework)
|
||||
runtime: osx-x64
|
||||
LinuxAMDx64:
|
||||
@@ -360,11 +411,17 @@ stages:
|
||||
imageName: ubuntu-20.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -430,24 +487,18 @@ stages:
|
||||
jobs:
|
||||
- job: IntegrationTest
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
strategy:
|
||||
matrix:
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
Windows:
|
||||
buildDescription: Windows
|
||||
imageName: windows-2019
|
||||
imageName: windows-2022
|
||||
artifactName: Jackett.Binaries.Windows.zip
|
||||
framework: $(netCoreFramework)
|
||||
runtime: win-x86
|
||||
macOS:
|
||||
buildDescription: macOS
|
||||
imageName: macOS-10.15
|
||||
imageName: macOS-12
|
||||
artifactName: Jackett.Binaries.macOS.tar.gz
|
||||
framework: $(netCoreFramework)
|
||||
runtime: osx-x64
|
||||
@@ -457,11 +508,18 @@ stages:
|
||||
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
framework: net461
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download artifacts for integration tests
|
||||
@@ -534,11 +592,12 @@ stages:
|
||||
jobs:
|
||||
- job: Publish
|
||||
workspace:
|
||||
clean: all
|
||||
clean: outputs
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download Artifacts for Publish
|
||||
@@ -578,6 +637,6 @@ stages:
|
||||
$successCount = (Select-String "Uploaded file successfully:" -InputObject $logInspect -AllMatches).Matches.Count
|
||||
$failureCount = (Select-String "Duplicate asset found:" -InputObject $logInspect -AllMatches).Matches.Count
|
||||
Write-Output "Success count is: $successCount and failure count is: $failureCount"
|
||||
if (($successCount -ne 8) -or ($failureCount -ne 0)) { Write-Host "##vso[task.complete result=Failed;]DONE" }
|
||||
if (($successCount -ne 11) -or ($failureCount -ne 0)) { Write-Host "##vso[task.complete result=Failed;]DONE" }
|
||||
}
|
||||
}
|
||||
|
@@ -309,6 +309,14 @@ table td.fit{
|
||||
background-color: #86cca8;
|
||||
}
|
||||
|
||||
.label-tvmaze {
|
||||
background-color: #73c3bd;
|
||||
}
|
||||
|
||||
.label-trakt {
|
||||
background-color: #ef1e25;
|
||||
}
|
||||
|
||||
.label-douban {
|
||||
background-color: #86cc10;
|
||||
}
|
||||
|
@@ -973,6 +973,8 @@ function updateReleasesRow(row) {
|
||||
var IMDBId = $(row).data("imdb");
|
||||
var TMDBId = $(row).data("tmdb");
|
||||
var TVDBId = $(row).data("tvdb");
|
||||
var TVMazeId = $(row).data("tvmaze");
|
||||
var TraktId = $(row).data("trakt");
|
||||
var DoubanId = $(row).data("douban");
|
||||
var Poster = $(row).data("poster");
|
||||
var Description = $(row).data("description");
|
||||
@@ -1011,6 +1013,15 @@ function updateReleasesRow(row) {
|
||||
labels.append('\n<a href="https://thetvdb.com/?tab=series&id=' + TVDBId + '" target="_blank" class="label label-tvdb" alt="TVDB" title="TVDB">TVDB</a>');
|
||||
}
|
||||
|
||||
if (TVMazeId && TVMazeId > 0) {
|
||||
labels.append('\n<a href="https://tvmaze.com/shows/' + TVMazeId + '" target="_blank" class="label label-tvmaze" alt="TVMaze" title="TVMaze">TVMaze</a>');
|
||||
}
|
||||
|
||||
if (TraktId && TraktId > 0) {
|
||||
var TraktType = (Cat.includes("Movies")) ? "movies" : "shows";
|
||||
labels.append('\n<a href="https://www.trakt.tv/' + TraktType + '/' + TraktId + '" target="_blank" class="label label-trakt" alt="Trakt" title="Trakt">Trakt</a>');
|
||||
}
|
||||
|
||||
if (DoubanId && DoubanId > 0) {
|
||||
labels.append('\n<a href="https://movie.douban.com/subject/' + DoubanId + '" target="_blank" class="label label-douban" alt="Douban" title="Douban">Douban</a>');
|
||||
}
|
||||
|
@@ -292,6 +292,14 @@ table td.fit{
|
||||
background-color: #86cca8;
|
||||
}
|
||||
|
||||
.label-tvmaze {
|
||||
background-color: #73c3bd;
|
||||
}
|
||||
|
||||
.label-trakt {
|
||||
background-color: #ef1e25;
|
||||
}
|
||||
|
||||
.label-douban {
|
||||
background-color: #86cc10;
|
||||
}
|
||||
|
@@ -28,8 +28,8 @@
|
||||
<link rel="stylesheet" type="text/css" href="../bootstrap/bootstrap.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../animate.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/tagify.css?changed=11662">
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20220512" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20220512" media="only screen and (max-device-width: 480px)">
|
||||
<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/font-awesome.min.css?changed=2017083001">
|
||||
@@ -446,19 +446,19 @@
|
||||
<th>Name</th>
|
||||
<th>Size</th>
|
||||
<th>Size</th>
|
||||
<th>Files</th>
|
||||
<th title="Files">F</th>
|
||||
<th>Category</th>
|
||||
<th>Grabs</th>
|
||||
<th>Seeds</th>
|
||||
<th>Leechers</th>
|
||||
<th class="fit">DL Factor</th>
|
||||
<th class="fit">UL Factor</th>
|
||||
<th>Download</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>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each releases}}
|
||||
<tr class="jackett-releases-row" data-imdb="{{Imdb}}" data-tmdb="{{TMDb}}" data-tvdb="{{TVDBId}}" data-douban="{{DoubanId}}" data-poster="{{Poster}}" data-description="{{Description}}">
|
||||
<tr class="jackett-releases-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 class="fit">{{PublishDate}}</td>
|
||||
<td class="fit">{{FirstSeen}}</td>
|
||||
<td class="fit">{{jacketTimespan PublishDate}}</td>
|
||||
@@ -574,19 +574,19 @@
|
||||
<th>Name</th>
|
||||
<th>Size</th>
|
||||
<th>Size</th>
|
||||
<th>Files</th>
|
||||
<th title="Files">F</th>
|
||||
<th>Category</th>
|
||||
<th>Grabs</th>
|
||||
<th>Seeds</th>
|
||||
<th>Leechers</th>
|
||||
<th>DL Factor</th>
|
||||
<th>UL Factor</th>
|
||||
<th>Download</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>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each Results}}
|
||||
<tr class="jackett-search-results-row" data-imdb="{{Imdb}}" data-tmdb="{{TMDb}}" data-tvdb="{{TVDBId}}" data-douban="{{DoubanId}}" data-poster="{{Poster}}" data-description="{{Description}}">
|
||||
<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>
|
||||
@@ -754,6 +754,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20220606"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20220721002"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -16,7 +16,7 @@
|
||||
|
||||
<link href="../bootstrap/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="../animate.css" rel="stylesheet">
|
||||
<link href="../custom.css?changed=20220512" rel="stylesheet">
|
||||
<link href="../custom.css?changed=20220721002" rel="stylesheet">
|
||||
|
||||
<title>Jackett</title>
|
||||
</head>
|
||||
|
@@ -105,8 +105,8 @@ search:
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
# 0 title, 1 title and descr
|
||||
where: 0
|
||||
sort: "{{ .Config.sort}}"
|
||||
type: "{{ .Config.type}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr.rowtorrentinfo
|
||||
|
@@ -12,8 +12,8 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.ist/
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.cat/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.unblocked.monster/
|
||||
@@ -35,6 +35,9 @@ legacylinks:
|
||||
- https://1337x.unblockit.llc/
|
||||
- https://1337x.unblockit.blue/
|
||||
- https://1337x.unblockit.name/
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.ist/
|
||||
- https://1337x.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -125,6 +128,7 @@ caps:
|
||||
movie-search: [q]
|
||||
music-search: [q, album, artist]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: flaresolverr
|
||||
@@ -179,9 +183,6 @@ search:
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Movies{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/1/"
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/TV{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}2{{ else }}1{{ end }}/"
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Music{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}3{{ else }}1{{ end }}/"
|
||||
keywordsfilters:
|
||||
- name: replace # use this as a workaround till #893 is implemented
|
||||
args: ["Greys Anatomy", "Grey's Anatomy"]
|
||||
|
||||
rows:
|
||||
selector: tr:has(a[href^="/torrent/"])
|
||||
@@ -192,7 +193,8 @@ search:
|
||||
selector: td[class^="coll-1"] a[href^="/torrent/"]
|
||||
title_optional:
|
||||
# the movies, tv and music pages abbreviate the title so we process the href instead. #8137
|
||||
selector: td[class^="coll-1"] a[href^="/torrent/"]
|
||||
optional: true
|
||||
selector: td[class^="coll-1"] a[href^="/torrent/"]:contains("...")
|
||||
attribute: href
|
||||
filters:
|
||||
- name: urldecode
|
||||
@@ -203,9 +205,11 @@ search:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["-", " "]
|
||||
args: ["-([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "~$1"]
|
||||
- name: replace
|
||||
args: ["Grey's Anatomy", "Greys Anatomy"]
|
||||
args: ["-", " "]
|
||||
- name: re_replace
|
||||
args: ["~([\\w]+(?:[\\[\\]\\(\\)\\w]+)?)$", "-$1"]
|
||||
- name: replace
|
||||
args: ["\u000f", ""] # get rid of unwanted character #6582
|
||||
# cleanup for Sonarr
|
||||
|
@@ -10,20 +10,20 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 14, cat: Movies, desc: "Movies XviD"}
|
||||
- {id: 34, cat: Movies, desc: "Movies UltraHD"}
|
||||
- {id: 15, cat: Movies, desc: "Movies DVD-R"}
|
||||
- {id: 11, cat: Movies, desc: "Movies 720p"}
|
||||
- {id: 13, cat: Movies, desc: "Movies 1080p"}
|
||||
- {id: 16, cat: Movies, desc: "Movies 3DTV"}
|
||||
- {id: 17, cat: Movies, desc: "Movies Blu-ray"}
|
||||
- {id: 27, cat: Movies, desc: "Movies BD25 Encode"}
|
||||
- {id: 33, cat: Movies, desc: "Movies BD9 AVCHD"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Movies XviD"}
|
||||
- {id: 15, cat: Movies/DVD, desc: "Movies DVD-R"}
|
||||
- {id: 11, cat: Movies/HD, desc: "Movies 720p"}
|
||||
- {id: 13, cat: Movies/HD, desc: "Movies 1080p"}
|
||||
- {id: 16, cat: Movies/3D, desc: "Movies 3DTV"}
|
||||
- {id: 17, cat: Movies/BluRay, desc: "Movies Blu-ray"}
|
||||
- {id: 27, cat: Movies/BluRay, desc: "Movies BD25 Encode"}
|
||||
- {id: 33, cat: Movies/BluRay, desc: "Movies BD9 AVCHD"}
|
||||
- {id: 22, cat: Movies, desc: "Movies 2D to 3D Conv"}
|
||||
- {id: 32, cat: Movies, desc: "Bluray MKV Remux"}
|
||||
- {id: 23, cat: Movies, desc: "Movies Evo 3D"}
|
||||
- {id: 23, cat: Movies/3D, desc: "Movies Evo 3D"}
|
||||
- {id: 36, cat: Movies/UHD, desc: "Movies 4K UHD Bluray"}
|
||||
- {id: 37, cat: Movies/UHD, desc: "Movies 4K UHD Encode"}
|
||||
- {id: 21, cat: PC, desc: "3D Software"}
|
||||
- {id: 2, cat: Audio, desc: "Music"}
|
||||
- {id: 28, cat: XXX, desc: "Adult 720p"}
|
||||
- {id: 29, cat: XXX, desc: "Adult 1080p"}
|
||||
- {id: 30, cat: XXX, desc: "Adult Blu-ray"}
|
||||
@@ -42,6 +42,21 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 3
|
||||
options:
|
||||
3: created
|
||||
5: seeders
|
||||
2: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: 2
|
||||
options:
|
||||
1: desc
|
||||
2: asc
|
||||
- name: info
|
||||
type: info
|
||||
label: Results Per Page
|
||||
@@ -62,6 +77,7 @@ login:
|
||||
- selector: span.errormsg
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -71,8 +87,12 @@ search:
|
||||
search: "{{ .Keywords }}"
|
||||
page: torrents
|
||||
category: 0
|
||||
# 0 all, 1 Anaglyph 3D, 2 Side by Side,3 Over Under
|
||||
3dformat: 0
|
||||
active: 1
|
||||
# 0 all, 1 active only, 2 dead only
|
||||
active: 0
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table[cellspacing!="1"].lista > tbody > tr:has(a[href^="index.php?page=torrents&category="])
|
||||
@@ -85,23 +105,26 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
remove: span
|
||||
selector: td:nth-child(2)
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
details:
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["index.php?page=torrent-details&id=", "download.php?id="]
|
||||
details:
|
||||
poster:
|
||||
selector: a[href^="index.php?page=torrent-details&id="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
text: 0
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ",\\'(.+?)\\'"
|
||||
genre:
|
||||
selector: td:nth-child(2) span
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
date:
|
||||
selector: td:nth-last-child(5)
|
||||
filters:
|
||||
@@ -109,11 +132,23 @@ search:
|
||||
args: " -07:00" # PDT
|
||||
- name: dateparse
|
||||
args: "02/01/2006 -07:00"
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: a[href^="index.php?page=peers"]
|
||||
leechers:
|
||||
selector: td:has(a[href^="index.php?page=peers"]) + td
|
||||
grabs_optional:
|
||||
selector: a[href^="index.php?page=torrent_history"]
|
||||
optional: true
|
||||
grabs:
|
||||
text: "{{ if .Result.grabs_optional }}{{ .Result.grabs_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[title^="You get 50% off download count on this torrent"]: 0.5
|
||||
img[src="images/50off.png"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# xbtit
|
||||
|
147
src/Jackett.Common/Definitions/3evils-api.yml
Normal file
147
src/Jackett.Common/Definitions/3evils-api.yml
Normal file
@@ -0,0 +1,147 @@
|
||||
---
|
||||
id: 3evils-api
|
||||
name: 3Evils (API)
|
||||
description: "3Evils is a Private site for MOVIES / TV / MUSIC "
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://3evils.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 2, cat: TV, desc: "TV"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
- {id: 4, cat: PC/Games, desc: "Game"}
|
||||
- {id: 5, cat: PC/0day, desc: "Application"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
type: text
|
||||
label: APIKey
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://3evils.net/\" target =_blank>3Evils</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
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"
|
||||
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.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 }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
poster:
|
||||
selector: poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
selector: created_at
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
# minimumseedtime:
|
||||
# # 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
# text: 172800
|
||||
# json UNIT3D 6.3.0
|
@@ -24,8 +24,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
@@ -77,17 +77,18 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not return imdb or doubanid in results
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
@@ -113,9 +114,6 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: div.imdb_100 > a
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
|
@@ -85,7 +85,6 @@ caps:
|
||||
- {id: 27, cat: XXX/SD, desc: "XXX SD"}
|
||||
- {id: 76, cat: XXX, desc: "XXX Andere"}
|
||||
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
@@ -131,11 +130,11 @@ settings:
|
||||
|
||||
login:
|
||||
path: signin.php
|
||||
method: form
|
||||
form: form
|
||||
method: post
|
||||
inputs:
|
||||
user: "{{ .Config.user }}"
|
||||
pass: "{{ .Config.pass }}"
|
||||
returnto: "%2Fbrowse.php"
|
||||
error:
|
||||
- selector: .error
|
||||
test:
|
||||
|
174
src/Jackett.Common/Definitions/abnormal.yml
Normal file
174
src/Jackett.Common/Definitions/abnormal.yml
Normal file
@@ -0,0 +1,174 @@
|
||||
---
|
||||
id: abnormal
|
||||
name: Abnormal
|
||||
description: "General French Private Tracker"
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2.1
|
||||
links:
|
||||
- https://abn.lol/
|
||||
legacylinks:
|
||||
- https://abnormal.ws
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "Series"}
|
||||
- {id: 2, cat: Movies, desc: "Movies"}
|
||||
- {id: 3, cat: TV/Documentary, desc: "Documentaries"}
|
||||
- {id: 4, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 5, cat: PC/Games, desc: "Games"}
|
||||
- {id: 6, cat: PC, desc: "Applications"}
|
||||
- {id: 7, cat: Books/EBook, desc: "Ebooks"}
|
||||
- {id: 9, cat: TV, desc: "Emissions"}
|
||||
|
||||
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: 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: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: Created
|
||||
options:
|
||||
Created: created
|
||||
Seeders: seeders
|
||||
Size: size
|
||||
ReleaseName: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
method: form
|
||||
path: Home/Login
|
||||
form: "#account"
|
||||
inputs:
|
||||
Username: "{{ .Config.username }}"
|
||||
Password: "{{ .Config.password }}"
|
||||
RememberMe: true
|
||||
selectorinputs:
|
||||
__RequestVerificationToken:
|
||||
selector: input[name="__RequestVerificationToken"]
|
||||
attribute: value
|
||||
error:
|
||||
- selector: div.validation-summary-errors[data-valmsg-summary="true"]
|
||||
message:
|
||||
text: " - Bad username/password."
|
||||
test:
|
||||
path: /
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: Torrent
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}SelectedCats={{.}}&{{end}}"
|
||||
Search: "{{ .Keywords }}"
|
||||
UserId: ""
|
||||
YearOperator: ≥
|
||||
Year: ""
|
||||
RatingOperator: ≥
|
||||
Rating: ""
|
||||
Pending: ""
|
||||
Pack: ""
|
||||
Scene: ""
|
||||
Freeleech: "{{ if .Config.freeleech }}true{{ else }}{{ end }}"
|
||||
SortOn: "{{ .Config.sort }}"
|
||||
SortOrder: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.table-rows > tbody > tr
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="/Torrent?SelectedCats="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: SelectedCats
|
||||
title_phase1:
|
||||
selector: td.grid-release-column > a
|
||||
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^="/Torrent/Details?ReleaseId="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/Torrent/Download?ReleaseId="]
|
||||
attribute: href
|
||||
date:
|
||||
text: now
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: [",", "."]
|
||||
- name: replace
|
||||
args: ["o", "B"]
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[title="Freeleech"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# Gazelle
|
@@ -128,18 +128,15 @@ search:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: div.torrent-name
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[src*="/img.php?"]
|
||||
attribute: src
|
||||
files:
|
||||
selector: td:nth-last-child(8)
|
||||
selector: td:nth-last-child(9)
|
||||
date_yday:
|
||||
# Yesterday<br/>6:00 AM
|
||||
selector: td:nth-last-child(7):contains("day")
|
||||
|
@@ -104,8 +104,18 @@ search:
|
||||
- "Portuguese (Brazil) English"
|
||||
details:
|
||||
selector: details_link
|
||||
_cat:
|
||||
selector: category
|
||||
_type:
|
||||
selector: type
|
||||
_res:
|
||||
selector: resolution
|
||||
optional: true
|
||||
_reg:
|
||||
selector: region
|
||||
optional: true
|
||||
description:
|
||||
selector: media_info
|
||||
text: "{{ .Result._cat }} {{ .Result._type }} {{ .Result._res }} {{ .Result._reg }}"
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
|
@@ -90,6 +90,7 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: Main/?act=Login
|
||||
method: form
|
||||
@@ -141,6 +142,13 @@ search:
|
||||
description:
|
||||
optional: true
|
||||
selector: span.torrent_small_desc
|
||||
genre:
|
||||
selector: span.torrent_small_desc
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "\\[.+?\\] \\[(.+?)\\]"
|
||||
- name: replace
|
||||
args: [" ", "_"]
|
||||
files:
|
||||
selector: td.torrent_table_files
|
||||
date:
|
||||
|
@@ -24,6 +24,7 @@ settings:
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: date
|
||||
options:
|
||||
date: created
|
||||
@@ -32,6 +33,7 @@ settings:
|
||||
seeders: seeders
|
||||
- name: order
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
|
@@ -142,10 +142,14 @@ search:
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) width="
|
||||
args: src=([^\s]+)
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
genre:
|
||||
selector: span.box
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: td:nth-last-child(6)
|
||||
size:
|
||||
|
@@ -107,7 +107,7 @@ search:
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
@@ -117,6 +117,17 @@ search:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -152,4 +163,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.2.1
|
||||
# json UNIT3D 6.4.0
|
||||
|
@@ -186,6 +186,10 @@ search:
|
||||
_language:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary[style$="#b6249d;"]
|
||||
optional: true
|
||||
genre:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary[style$="#1c38c2;"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
title:
|
||||
selector: a[href*="torrents-details.php?id="], a[href*="details-misc.php?id="]
|
||||
filters:
|
||||
|
@@ -120,6 +120,15 @@ search:
|
||||
args: ["')", ""]
|
||||
- name: replace
|
||||
args: ["/images/imdb/0000000.jpg", ""]
|
||||
genre:
|
||||
selector: td.lista.p-2
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Genre: (.+?)$"
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
date:
|
||||
|
@@ -47,16 +47,16 @@ search:
|
||||
optional: true
|
||||
year:
|
||||
selector: ..season.year
|
||||
quality:
|
||||
_quality:
|
||||
selector: quality.string
|
||||
series:
|
||||
_series:
|
||||
selector: series.string
|
||||
title:
|
||||
text: "{{ .Result.title_ru }} / {{ .Result.title_en }}{{ if .Result.title_alternative }} / {{ .Result.title_alternative }}{{ else }}{{ end }} [{{ .Result.quality }}] - {{ .Result.series }}"
|
||||
code:
|
||||
text: "{{ .Result.title_ru }} / {{ .Result.title_en }}{{ if .Result.title_alternative }} / {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}] - {{ .Result._series }}"
|
||||
_code:
|
||||
selector: ..code
|
||||
details:
|
||||
text: "{{ .Config.sitelink }}release/{{ .Result.code }}.html"
|
||||
text: "{{ .Config.sitelink }}release/{{ .Result._code }}.html"
|
||||
download:
|
||||
selector: url
|
||||
filters:
|
||||
|
@@ -6,8 +6,6 @@ language: ru-RU
|
||||
type: semi-private
|
||||
encoding: windows-1251
|
||||
testlinktorrent: false
|
||||
certificates:
|
||||
- 2b49b401259cb893f37de9eff343f7d356b1c2f2 # expired 8 January 2022
|
||||
links:
|
||||
- https://anime-free.biz/
|
||||
legacylinks:
|
||||
|
@@ -64,7 +64,7 @@ search:
|
||||
fields:
|
||||
category:
|
||||
selector: label.category
|
||||
resolution:
|
||||
_resolution:
|
||||
selector: div.description
|
||||
filters:
|
||||
- name: regexp
|
||||
@@ -74,7 +74,7 @@ search:
|
||||
attribute: alt
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if .Result.resolution }} [{{ .Result.resolution }}p]{{ else }}{{ end }}"
|
||||
args: "{{ if .Result._resolution }} [{{ .Result._resolution }}p]{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
@@ -184,16 +184,16 @@ search:
|
||||
filters:
|
||||
- name: split
|
||||
args: ["|", 1]
|
||||
subtitles:
|
||||
_subtitles:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Субтитры:(.+?)\\n"
|
||||
language:
|
||||
_language:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Язык:(.+?)\\n"
|
||||
description:
|
||||
text: "{{ if .Result.subtitles }}Субтитры: {{ .Result.subtitles }}{{ else }}{{ end }} - {{ if .Result.language }}Язык: {{ .Result.language }}{{ else }}{{ end }}"
|
||||
text: "{{ if .Result._subtitles }}Субтитры: {{ .Result._subtitles }}{{ else }}{{ end }} - {{ if .Result._language }}Язык: {{ .Result._language }}{{ else }}{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -5,6 +5,8 @@ description: "AniSource is a Public site for HD Anime raws."
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- f400d50a4dac4dd6546c869ac75669846205a0d2 # expired 26 Aug 2022
|
||||
links:
|
||||
- https://asnet.pw/
|
||||
|
||||
|
151
src/Jackett.Common/Definitions/anthelion-api.yml
Normal file
151
src/Jackett.Common/Definitions/anthelion-api.yml
Normal file
@@ -0,0 +1,151 @@
|
||||
---
|
||||
id: anthelion-api
|
||||
name: Anthelion (API)
|
||||
description: "Anthelion is a Private MOVIES tracker"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://anthelion.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2000, cat: Movies}
|
||||
- {id: 2030, cat: Movies/SD}
|
||||
- {id: 2040, cat: Movies/HD}
|
||||
- {id: 2045, cat: Movies/UHD}
|
||||
- {id: 2050, cat: Movies/BluRay}
|
||||
- {id: 2080, cat: Movies/WEB-DL}
|
||||
- {id: 8000, cat: Other}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
# note: the api any supports movie search so there is no tv season/episode support.
|
||||
# not using year search because torznab adds it to the q= which results in &q=keyword+2022&year=2022 sent to api !?!
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
type: text
|
||||
label: APIKey
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Key by accessing your <a href=\"https://anthelion.me/\" target =_blank>Anthelion</a> account <i>Settings</i> page and scrolling down to the <b>API Key</b> section.<br>Tick the <b>Search</b> and <b>Download</b> checkboxes and click the <b>save profile</b> button to generate the key."
|
||||
|
||||
login:
|
||||
path: api.php
|
||||
method: get
|
||||
inputs:
|
||||
api_key: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: ":root:contains(\"Unrecognized key\")"
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
- selector: ":root:contains(\"No API_KEY provided\")"
|
||||
message:
|
||||
text: "You did not enter an API key."
|
||||
|
||||
search:
|
||||
paths:
|
||||
# docs: https://anthelion.me/forums.php?action=viewthread&threadid=1026
|
||||
- path: api.php
|
||||
response:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
api_key: "{{ .Config.apikey }}"
|
||||
o: json
|
||||
t: movie
|
||||
q: "{{ .Keywords }}"
|
||||
tmdb: "{{ .Query.TMDBID }}"
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
cat: "{{ join .Categories \",\" }}"
|
||||
limit: 100
|
||||
offset: 0
|
||||
|
||||
rows:
|
||||
selector: item
|
||||
count:
|
||||
selector: response.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category
|
||||
filters:
|
||||
- name: split
|
||||
args: [",", -1]
|
||||
year:
|
||||
selector: year
|
||||
_codec:
|
||||
selector: codec
|
||||
_container:
|
||||
selector: container
|
||||
_media:
|
||||
selector: media
|
||||
_resolution:
|
||||
selector: resolution
|
||||
_audioFormat:
|
||||
selector: audioFormat
|
||||
_subbing:
|
||||
selector: subbing
|
||||
optional: true
|
||||
_flags:
|
||||
selector: flags
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [",", " "]
|
||||
_language:
|
||||
selector: language
|
||||
optional: true
|
||||
title:
|
||||
selector: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["'", "'"]
|
||||
- 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 }}"
|
||||
details:
|
||||
selector: guid
|
||||
download:
|
||||
selector: link
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&", "&"]
|
||||
infohash:
|
||||
selector: infohash
|
||||
imdbid:
|
||||
selector: imdb
|
||||
tmdbid:
|
||||
selector: tmdb
|
||||
genre:
|
||||
selector: tags
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", "_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: fileCount
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
grabs:
|
||||
selector: grabs
|
||||
date:
|
||||
# 2022-08-07T20:56:06+0200
|
||||
selector: pubDate
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 3 day (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# json api
|
@@ -6,10 +6,10 @@ language: ar-AR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.arabp2p.com/
|
||||
- https://www.arabp2p.net/
|
||||
legacylinks:
|
||||
- http://www.arabp2p.com/
|
||||
- https://www.arabp2p.com/
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -98,7 +98,7 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
login:
|
||||
path: index.php?page=login
|
||||
path: index.php
|
||||
method: form
|
||||
form: form[action^="index.php?page=login"]
|
||||
inputs:
|
||||
|
@@ -149,11 +149,11 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
english:
|
||||
_english:
|
||||
selector: span[title="English"]
|
||||
attribute: title
|
||||
optional: true
|
||||
bulgarian:
|
||||
_bulgarian:
|
||||
selector: span[title="Bulgarian"]
|
||||
attribute: title
|
||||
optional: true
|
||||
@@ -161,7 +161,7 @@ search:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if .Result.bulgarian }} {{ .Result.bulgarian }}{{ else }}{{ end }}{{ if .Result.english }} {{ .Result.english }}{{ else }}{{ end }}"
|
||||
args: "{{ if .Result._bulgarian }} {{ .Result._bulgarian }}{{ else }}{{ end }}{{ if .Result._english }} {{ .Result._english }}{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
attribute: href
|
||||
|
@@ -85,6 +85,8 @@ search:
|
||||
direction: "{{ .Config.type }}"
|
||||
qty: 100
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
# can support genre search but you need to know the id. &genre[]=10759 for Action & Adventure
|
||||
# does not have genre in results, they are on the details page.
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
|
@@ -25,8 +25,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
@@ -75,13 +75,13 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ 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%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdb
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 2 title or imdb or douban url, 3 uploader, 4 imdb
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}2{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
@@ -6,13 +6,11 @@ language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://audiobookbay.fi/ # site forces http, does not support https
|
||||
- http://audiobookbay.se/
|
||||
- http://audiobookbayabb.com/
|
||||
- https://audiobookbay.unblockit.ist/
|
||||
- https://audiobookbay.fi/
|
||||
- https://audiobookbay.se/
|
||||
- https://audiobookbay.unblockit.cat/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- https://audiobookbay.unblockit.li/
|
||||
- https://audiobookbay.unblockit.uno/
|
||||
- https://audiobookbay.unblockit.ch/
|
||||
- https://audiobookbay.unblockit.ws/
|
||||
@@ -29,6 +27,11 @@ legacylinks:
|
||||
- https://audiobookbay.unblockit.llc/
|
||||
- https://audiobookbay.unblockit.blue/
|
||||
- https://audiobookbay.unblockit.name/
|
||||
- http://audiobookbay.fi/
|
||||
- http://audiobookbay.se/
|
||||
- http://audiobookbayabb.com/
|
||||
- https://audiobookbay.unblockit.ist/
|
||||
- https://audiobookbay.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -81,15 +84,15 @@ caps:
|
||||
- {id: Sex, cat: Audio/Audiobook, desc: "Sex Scenes"}
|
||||
- {id: Short, cat: Audio/Audiobook, desc: "Short Story"}
|
||||
- {id: Spiritual, cat: Audio/Audiobook, desc: "Spiritual & Religious"}
|
||||
- {id: Sports, cat: Audio/Audiobook, desc: "Sports"}
|
||||
- {id: Sport, cat: Audio/Audiobook, desc: "Sport & Recreation"}
|
||||
- {id: Suspense, cat: Audio/Audiobook, desc: "Suspense"}
|
||||
- {id: Teen, cat: Audio/Audiobook, desc: "Teen & Young Adult"}
|
||||
- {id: The, cat: Audio/Audiobook, desc: "The Undead"}
|
||||
- {id: Thriller, cat: Audio/Audiobook, desc: "Thriller"}
|
||||
- {id: "True", cat: Audio/Audiobook, desc: "True Crime"}
|
||||
- {id: Tutorial, cat: Audio/Audiobook, desc: "Tutorial"}
|
||||
- {id: Violence, cat: Audio/Audiobook, desc: "Violence"}
|
||||
- {id: Westerns, cat: Audio/Audiobook, desc: "Westerns"}
|
||||
- {id: Zombies, cat: Audio/Audiobook, desc: "Zombies"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -142,6 +145,7 @@ search:
|
||||
selector: img
|
||||
attribute: src
|
||||
date_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
@@ -151,6 +155,7 @@ search:
|
||||
date:
|
||||
text: "{{ if .Result.date_optional }}{{ .Result.date_optional }}{{ else }}now{{ end }}"
|
||||
size_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
|
@@ -176,6 +176,8 @@ caps:
|
||||
- {id: 233, cat: Other, desc: "GFXNEWS GAME DEVELOPMENT"}
|
||||
- {id: 226, cat: Other, desc: "GFXNEWS MAGAZINE"}
|
||||
- {id: 234, cat: Other, desc: "GFXNEWS MATERIAL"}
|
||||
- {id: 243, cat: Other, desc: "GFXNEWS OTHER GRAPHICS"}
|
||||
- {id: 244, cat: Other, desc: "GFXNEWS OTHER GRAPHICS Zbrush, Substance tools"}
|
||||
- {id: 216, cat: Other, desc: "GFXNEWS PHOTOSTOCK"}
|
||||
- {id: 220, cat: Other, desc: "GFXNEWS PHOTOGRAPHY - ART"}
|
||||
- {id: 227, cat: Other, desc: "GFXNEWS PHOTOSHOP"}
|
||||
@@ -183,10 +185,10 @@ caps:
|
||||
- {id: 229, cat: Other, desc: "GFXNEWS PHOTOSHOP Background & PSD Source"}
|
||||
- {id: 230, cat: Other, desc: "GFXNEWS PHOTOSHOP Brushes & Gradient"}
|
||||
- {id: 231, cat: Other, desc: "GFXNEWS PHOTOSHOP Toolkits, Papers & Objects"}
|
||||
- {id: 245, cat: Other, desc: "GFXNEWS PLUGINS"}
|
||||
- {id: 225, cat: Other, desc: "GFXNEWS PLUGINS LINUX"}
|
||||
- {id: 223, cat: Other, desc: "GFXNEWS PLUGINS MAC"}
|
||||
- {id: 210, cat: Other, desc: "GFXNEWS PLUGINS WIN"}
|
||||
- {id: 236, cat: Other, desc: "GFXNEWS POSER"}
|
||||
- {id: 217, cat: Other, desc: "GFXNEWS SCRIPTS - WEB PROGRAMMING"}
|
||||
- {id: 218, cat: Other, desc: "GFXNEWS TEMPLATES"}
|
||||
- {id: 232, cat: Other, desc: "GFXNEWS TEXTURES"}
|
||||
|
@@ -7,10 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://badasstorrents.com/
|
||||
- https://badasstorrents.nocensor.sbs/
|
||||
- https://badasstorrents.nocensor.world/
|
||||
legacylinks:
|
||||
- https://badasstorrents.nocensor.work/
|
||||
- https://badasstorrents.nocensor.biz/
|
||||
- https://badasstorrents.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -64,8 +64,11 @@ search:
|
||||
date:
|
||||
# 2021-10-19T06:10:15.772Z
|
||||
selector: publish_time
|
||||
size:
|
||||
size_optional:
|
||||
optional: true
|
||||
selector: size
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}0 B{{ end }}"
|
||||
grabs:
|
||||
selector: downloads
|
||||
seeders:
|
||||
|
@@ -22,8 +22,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
@@ -79,13 +79,13 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl (searching imdburl does not work with tt1234567, but descr is good)
|
||||
search_area: "{{ if .Query.IMDBID }}1{{ 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 }}"
|
||||
|
@@ -124,8 +124,11 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 38
|
||||
category|noappend:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
optional: true
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
|
@@ -115,6 +115,7 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# site does not support imdbid searching
|
||||
# can support genre searching but you need to know the id, eg &genre23=1 for Comedy (id is 23)
|
||||
|
||||
rows:
|
||||
selector: "table[width=\"100%\"]:last-child tbody tr:has(div.tooltip){{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
@@ -126,6 +127,10 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
genre:
|
||||
selector: span.tooltiptext
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
title:
|
||||
selector: div.tooltip
|
||||
remove: span
|
||||
@@ -135,11 +140,11 @@ search:
|
||||
poster:
|
||||
selector: a.preview
|
||||
attribute: href
|
||||
download1:
|
||||
download_1:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
optional: true
|
||||
attribute: href
|
||||
download2:
|
||||
download_2:
|
||||
selector: input[onclick*="download.php?torrent="]
|
||||
optional: true
|
||||
attribute: onclick
|
||||
@@ -149,29 +154,30 @@ search:
|
||||
- name: replace
|
||||
args: ["', '_self');", ""]
|
||||
download:
|
||||
text: "{{ if or .Result.download1 .Result.download2 }}{{ or .Result.download1 .Result.download2 }}{{ else }}{{ end }}"
|
||||
text: "{{ if or .Result.download_1 .Result.download_2 }}{{ or .Result.download_1 .Result.download_2 }}{{ else }}{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
date_browse:
|
||||
# 2022<br>03/15.
|
||||
selector: td:nth-child(7):contains("/")
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "200601/02. -07:00"
|
||||
date_browse_xxx:
|
||||
# 22.03.15
|
||||
selector: td:nth-child(7):not(:contains("/"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "06.01.02 -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_browse .Result.date_browse_xxx }}{{ or .Result.date_browse .Result.date_browse_xxx }}{{ else }}now{{ end }}"
|
||||
# 36 perce
|
||||
# 13 órája és 59 perce
|
||||
# 2 napja és 10 órája
|
||||
# 1 hete és 1 napja
|
||||
# 1 éve és 30 hete
|
||||
selector: td:nth-child(7) span:last-child
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["és ", " "]
|
||||
- name: replace
|
||||
args: ["perce", "minute"]
|
||||
- name: replace
|
||||
args: ["órája", "hour"]
|
||||
- name: replace
|
||||
args: ["napja", "day"]
|
||||
- name: replace
|
||||
args: ["hete", "week"]
|
||||
- name: replace
|
||||
args: ["éve", "year"]
|
||||
- name: timeago
|
||||
grabs:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
|
@@ -45,7 +45,6 @@ caps:
|
||||
- {id: 9, cat: XXX, desc: "XXX/Film"}
|
||||
- {id: 10, cat: XXX, desc: "XXX/Kép"}
|
||||
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
@@ -7,9 +7,10 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
- https://bitsearch.nocensor.world/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -64,6 +64,7 @@ caps:
|
||||
- {id: 88, cat: Console/Other, desc: "Oyun NEO-GEO"}
|
||||
- {id: 89, cat: Console/Wii, desc: "Oyun Nintendo Wii"}
|
||||
- {id: 6, cat: PC/0day, desc: "Program"}
|
||||
- {id: 92, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 47, cat: Other, desc: "Resimler"}
|
||||
- {id: 48, cat: TV, desc: "Televizyon"}
|
||||
- {id: 49, cat: TV/HD, desc: "Tv HD"}
|
||||
|
@@ -44,10 +44,10 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
tv-search: [q, season, ep, genre]
|
||||
movie-search: [q, genre]
|
||||
music-search: [q, genre]
|
||||
book-search: [q, genre]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -105,22 +105,21 @@ search:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
search: "{{ if .Query.Genre }}{{ .Query.Genre }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
searchin: title
|
||||
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 }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: table.table-bordered tr:has(a[href^="download.php?torrent="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -135,6 +134,9 @@ search:
|
||||
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
|
||||
@@ -144,9 +146,12 @@ search:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=\\'(.+?)\\'
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
- name: replace
|
||||
args: ["./pic/noposter.png", ""]
|
||||
genre:
|
||||
selector: i
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
date_day:
|
||||
|
@@ -99,7 +99,7 @@ search:
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
@@ -109,6 +109,17 @@ search:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -144,4 +155,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.1.1 beta
|
||||
# json UNIT3D 6.4.0b
|
||||
|
@@ -113,6 +113,7 @@ search:
|
||||
text: "{{ if .Result.files_optional }}{{ .Result.files_optional }}{{ else }}1{{ end }}"
|
||||
size_optional:
|
||||
selector: td:nth-child(3)
|
||||
optional: true
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}0 B{{ end }}"
|
||||
seeders_optional:
|
||||
|
@@ -5,8 +5,6 @@ description: "Boxing Torrents is a Private Torrent Tracker for BOXING"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- dda4bd19660006cba06561d2b8f61b5e64995679 # expired 9 June 2022
|
||||
links:
|
||||
- https://tc-boxing.com/
|
||||
|
||||
@@ -29,7 +27,6 @@ caps:
|
||||
- {id: 14, cat: TV/Sport, desc: "HD"}
|
||||
- {id: 7, cat: TV/Sport, desc: "Misc"}
|
||||
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
191
src/Jackett.Common/Definitions/breizhpeers.yml
Normal file
191
src/Jackett.Common/Definitions/breizhpeers.yml
Normal file
@@ -0,0 +1,191 @@
|
||||
---
|
||||
id: breizhpeers
|
||||
name: BreizhPeers
|
||||
description: "BreizhPeers is a FRENCH Private Torrent Tracker for MOVIES / TV"
|
||||
language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://breizhpeers.tk/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Films"}
|
||||
- {id: 2, cat: TV, desc: "Séries"}
|
||||
- {id: 3, cat: TV, desc: "TV"}
|
||||
- {id: 4, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 5, cat: Audio/Video, desc: "Concerts"}
|
||||
- {id: 10, cat: PC, desc: "Applications"}
|
||||
- {id: 9, cat: Console, desc: "Jeux"}
|
||||
- {id: 6, cat: TV/Sport, desc: "Sport"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
type: text
|
||||
label: APIKey
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://breizhpeers.tk/\" target =_blank>BreizhPeers</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: vfq
|
||||
type: checkbox
|
||||
label: Replace VFQ with FRENCH in release name
|
||||
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: VOSTFR
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
"MULTI FRENCH": "MULTI FRENCH"
|
||||
ENGLISH: ENGLISH
|
||||
"MULTI ENGLISH": "MULTI ENGLISH"
|
||||
VOSTFR: VOSTFR
|
||||
"MULTI VOSTFR": "MULTI VOSTFR"
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
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"
|
||||
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.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 }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category_id
|
||||
title_original:
|
||||
selector: name
|
||||
filters:
|
||||
- name: replace
|
||||
args: [".", " "]
|
||||
title_vfq:
|
||||
text: "{{ .Result.title_original }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\sVFQ\\s)", " FRENCH "]
|
||||
title_step2:
|
||||
text: "{{ if .Config.vfq }}{{ .Result.title_vfq }}{{ else }}{{ .Result.title_original }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_step2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\sMULTI\\s)", " {{ .Config.multilanguage }} "]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_step2 }}{{ end }}"
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
selector: created_at
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.3.0 (custom)
|
@@ -7,10 +7,12 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btsao.com/
|
||||
- https://btmirror.unblockit.ist/
|
||||
- https://btmirror.unblockit.cat/
|
||||
legacylinks:
|
||||
- https://btmirror.unblockit.blue/
|
||||
- https://btmirror.unblockit.name/
|
||||
- https://btmirror.unblockit.ist/
|
||||
- https://btmirror.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -29,13 +29,12 @@ caps:
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
- name: username
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (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>"
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -50,9 +49,19 @@ settings:
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("登錄失敗"))
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
@@ -5,17 +5,10 @@ description: "BTSOW is a Public torrent indexer"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
# use https://tellme.pw/btsow to find the new domain
|
||||
links:
|
||||
- https://btsow.bar/
|
||||
- https://btsow.cfd/
|
||||
legacylinks:
|
||||
- https://btos.pw/
|
||||
- https://btio.pw/
|
||||
- https://btsow.club/
|
||||
- https://bteve.com/
|
||||
- https://btsow.fun/
|
||||
- https://btsow.space/
|
||||
- https://btsow.site/
|
||||
- https://btsow.cyou/
|
||||
- https://btsow.monster/
|
||||
- https://btsow.casa/
|
||||
- https://btsow.website/
|
||||
@@ -30,6 +23,8 @@ legacylinks:
|
||||
- https://btsow.us/
|
||||
- https://btsow.one/
|
||||
- https://btsow.rest/
|
||||
- https://btsow.bar/
|
||||
- https://btsow.click/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -208,6 +208,17 @@ search:
|
||||
case:
|
||||
img[src="pic/double_upload.png"]: 2
|
||||
"*": 1
|
||||
genre:
|
||||
selector: td:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Genre:\\s(.+?)$"
|
||||
- name: replace
|
||||
args: [", ", ","]
|
||||
- name: replace
|
||||
args: [" ", "_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
|
@@ -23,8 +23,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
@@ -87,23 +87,21 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact, 3 NOT
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
|
@@ -87,6 +87,7 @@ search:
|
||||
onlyname2: true
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# can search by genre but you need the id. &imdbcat=1 for Akció.
|
||||
|
||||
rows:
|
||||
selector: table[id!="torrent_ajanlo"] > tbody > tr[id]
|
||||
@@ -98,11 +99,6 @@ search:
|
||||
title:
|
||||
selector: a[id][href^="details.php?"]
|
||||
attribute: title
|
||||
description:
|
||||
selector: font.line
|
||||
filters:
|
||||
- name: regexp
|
||||
args: .*?\|\s*(.*)
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
@@ -118,6 +114,13 @@ search:
|
||||
poster:
|
||||
selector: a[rel^="prettyPhoto["]
|
||||
attribute: href
|
||||
genre:
|
||||
selector: font.line
|
||||
filters:
|
||||
- name: validate
|
||||
args: "Akció, Animáció, Beszélgetős, Családi, Dokumentum, Dráma, Életrajzi, Fantasztikus, Film-Noir, Game-Show, Háborús, Horror, Kaland, Krimi, Misztikus, Musical, News, Reality-TV, Romantikus, Rövidfilm, Sci-Fi, Sport, Thriller, Történelmi, Vígjáték, Western, Zene"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
size:
|
||||
@@ -145,6 +148,8 @@ search:
|
||||
args: ["napja", "day"]
|
||||
- name: replace
|
||||
args: ["hete", "week"]
|
||||
- name: replace
|
||||
args: ["éve", "year"]
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
|
@@ -35,12 +35,12 @@ caps:
|
||||
- {id: 31, cat: PC/0day, desc: "Programok/RIP"}
|
||||
- {id: 33, cat: TV, desc: "Sorozat/Eng"}
|
||||
- {id: 32, cat: TV, desc: "Sorozat/Hun"}
|
||||
- {id: 34, cat: XXX, desc: "XXX/Filmek"}
|
||||
- {id: 39, cat: XXX/ImageSet, desc: "XXX/Képek"}
|
||||
- {id: 29, cat: Audio/Lossless, desc: "Zene/FLAC/Eng"}
|
||||
- {id: 28, cat: Audio/Lossless, desc: "Zene/FLAC/Hun"}
|
||||
- {id: 27, cat: Audio/MP3, desc: "Zene/MP3/Eng"}
|
||||
- {id: 26, cat: Audio/MP3, desc: "Zene/MP3/Hun"}
|
||||
- {id: 34, cat: XXX, desc: "XXX/Filmek"}
|
||||
- {id: 39, cat: XXX/ImageSet, desc: "XXX/Képek"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -87,7 +87,12 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: letoltes.php
|
||||
- path: browse.php
|
||||
categories: ["!", 34, 39]
|
||||
- path: browse.php
|
||||
categories: [34, 39]
|
||||
inputs:
|
||||
xxx: 1
|
||||
keywordsfilters:
|
||||
# the site uses % for wildcard
|
||||
- name: re_replace
|
||||
@@ -98,15 +103,16 @@ search:
|
||||
# 0 both, 1 onlyactive, 2 onlydead, 3 onlyfree, 4 x2 torrents, 5 mytorrents, 6 waiting for seeds
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not support imdbid searches
|
||||
# can support genre searching but you need to know the id, eg &genre2=1 for Comedy (id is 2)
|
||||
|
||||
rows:
|
||||
selector: table[width="920px"] > tbody > tr:has(a[href^="letoltes.php?cat="])
|
||||
selector: "table[border=\"1\"][cellpadding=\"3\"][style=\"width: 920px;\"] > tbody > tr:has(a[href^=\"browse.php?cat=\"])"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="letoltes.php?cat="]
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
@@ -126,15 +132,19 @@ search:
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
genre:
|
||||
selector: small[title]
|
||||
attribute: title
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) width"
|
||||
args: "showTorrentThumb\\('(.*?)', "
|
||||
date:
|
||||
selector: small
|
||||
remove: font
|
||||
selector: td:nth-last-child(8)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\u00a0", " "]
|
||||
|
189
src/Jackett.Common/Definitions/carpt.yml
Normal file
189
src/Jackett.Common/Definitions/carpt.yml
Normal file
@@ -0,0 +1,189 @@
|
||||
---
|
||||
id: carpt
|
||||
name: CarPT
|
||||
description: "CarPT (猪猪网) is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://carpt.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/连续剧"}
|
||||
- {id: 403, cat: TV/Anime, desc: "Animations/动漫"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 405, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 406, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 407, cat: Other, desc: "Misc/其他"}
|
||||
|
||||
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: 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 CarPT Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
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
|
||||
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.16
|
@@ -129,13 +129,11 @@ search:
|
||||
- name: regexp
|
||||
args: tt(\d+)
|
||||
poster:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
selector: td a[href^="index.php?page=torrent-details"]:not(a[onmouseover*="torrentimg/nocover.jpg"])
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.+?) width"
|
||||
- name: replace
|
||||
args: ["torrentimg/nocover.jpg", ""]
|
||||
args: src=([^\s]+)
|
||||
size:
|
||||
selector: td:nth-child(10)
|
||||
# two flavours of dates
|
||||
|
@@ -18,8 +18,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
tv-search: [q, season, ep, genre]
|
||||
movie-search: [q, genre]
|
||||
|
||||
settings:
|
||||
- name: info_2fa
|
||||
@@ -81,10 +81,18 @@ search:
|
||||
order_way: "{{ .Config.type }}"
|
||||
action: advanced
|
||||
filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
taglist: ""
|
||||
taglist: "{{ .Query.Genre }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1"]
|
||||
|
||||
rows:
|
||||
selector: table#torrent_table > tbody > tr[class^="torrent row"]:has(a[href*="action=download"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -95,15 +103,26 @@ search:
|
||||
args: \[(\d+)\]
|
||||
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 # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents.php?action=download&id="]
|
||||
attribute: href
|
||||
description:
|
||||
optional: true
|
||||
genre:
|
||||
selector: div.tags
|
||||
filters:
|
||||
- name: validate
|
||||
args: "Action, Adventure, Animation, Comedy, Crime, Documentary, Drama, Family, Fantasy, History, Horror, Kids, Music, Mystery, News, Reality, Romance, SciFi, Soap, Talk, Thriller, War, Western"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
poster:
|
||||
selector: td:nth-child(2) > script
|
||||
filters:
|
||||
|
@@ -88,8 +88,10 @@ search:
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
description:
|
||||
genre:
|
||||
selector: div.short_game_genre
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
date:
|
||||
text: now
|
||||
seeders:
|
||||
|
@@ -96,6 +96,7 @@ search:
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# can support genre searching but you need to know the id, eg &team10=1 for Drama (id is 10)
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
@@ -170,4 +171,10 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
genre:
|
||||
selector: table.torrentname > tbody > tr > td:first-child
|
||||
remove: a
|
||||
filters:
|
||||
- name: validate
|
||||
args: "Akční, Animovaný, Dobrodružný, Dokumentární, Drama, Fantasy, Horor, Komedie, Krimi, Pohádka, Rodinný, Romantický, Sci-Fi, Thriller, Válečný, Western"
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -95,6 +95,7 @@ search:
|
||||
page: 0
|
||||
view: list
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
# can search by genre but need range support. &genres[]=Action&genres[]=Comedy for Action and Comedy
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
@@ -124,6 +125,17 @@ search:
|
||||
args: "&w=180&h=270" # for display on dashboard
|
||||
- name: replace
|
||||
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
|
||||
genre:
|
||||
selector: td:nth-last-child(6)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\n", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: validate
|
||||
args: "Action, Adventure, Animation, Biography, Comedy, Crime, Documentary, Drama, Family, Fantasy, Game-Show, History, Horror, Music, Musical, Mystery, News, Reality-TV, Romance, Science_Fiction, Sitcom, Sport, Talk-Show, Thriller, War, Western"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
|
@@ -104,6 +104,7 @@ search:
|
||||
quality: none
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# can search by a genre, (gatunek), but you need to know the id: &gatunek=64 to search Sci-Fi
|
||||
|
||||
rows:
|
||||
selector: table[width="100%"] > tbody > tr:has(a[href^="browse.php?cat="])
|
||||
@@ -148,10 +149,19 @@ search:
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
genre:
|
||||
selector: td[align="right"][width="66%"][valign="bottom"]
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: validate
|
||||
args: "Akcja, Animacja, Anime, Basn, Biblijny, Biograficzny, Czarna komedia, Dla dzieci, Dla mlodziezy, Dokumentalizowany, Dokumentalny, Dramat, Dramat historyczny, Dramat obyczajowy, Dramat sadowy, Dramat spoleczny, Dreszczowiec, Edukacyjny, Erotyczny, Etiuda, Fabularyzowany dok., Familijny, Fantasy, Film-Noir, Gangsterski, Groteska filmowa, Historyczny, Horror, Karate, Katastroficzny, Komedia, Komedia dokumentalna, Komedia kryminalna, Komedia obycz., Komedia rom., Kostiumowy, Krótkometrażowy, Kryminał, Melodramat, Motoryzacyjny, Musical, Muzyczny, Kulinarny, Nowele filmowe, Obyczajowy, Poetycki, Polityczny, Prawniczy, Przygodowy, Przyrodniczy, Psychologiczny, Plaszcza i szpady, Religijny, Romans, Rozrywka, Satyra, Sci-Fi, Sensacyjny, Sportowy, Surreallistyczny, Szpiegowski, Sztuki walki, Świąteczne, Thriller, Western, Wojenny, Kabaret, Action, Adventure, Arcade, Fps, Fighting, MMO, Puzzle, Racing, Rpg, RTS, Shooter, Simulation, Stealth, Strategy, Sport , Tps, Early Access, DOX, PC, X360, PlayStation, PSP, Alternative, Ambient, Classical, Dubstep, Drum and bass, Dance, Disco polo, Disco, Dla dzieci, Electronic, Folc, Hardstyle, Hardcore, Hip-hop, House, Jazz, Kompilacje muzyczne, Metal, Progressive house, Pop, Punk, Rap, Reggae, Rnb, Rock, Soul, Techno, Trance, Breaks, Chill out, Club, Deep house, Electro house, Tech house, GOA/PSY, Instrumental, Minimal, Soundtrack, Sety, Prasa, Czasopisma, Książka, Audiobook, Polskie, Klasyka, Poezja, Literatura piękna, Literatura faktu, Autobiografia, Pamiętnik"
|
||||
description:
|
||||
selector: img[src="pic/Poland.png"]
|
||||
attribute: src
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ if .Result.genre }}{{ .Result.genre }} - {{ else }}{{ end }}"
|
||||
- name: replace
|
||||
args: ["pic/Poland.png", "Polish"]
|
||||
date:
|
||||
|
@@ -39,7 +39,7 @@ search:
|
||||
- path: "{{ if .Keywords }}search?query={{ .Keywords }}{{ else }}latest{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
selector: table > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -71,7 +71,7 @@ search:
|
||||
size:
|
||||
selector: td[data-title="Size"]
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
|
@@ -160,10 +160,12 @@ search:
|
||||
args: "02.01.2006 15:04:05 -07:00"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/oupic.gif"]: 0
|
||||
img[src="pic/oupic.gif"]: 0 # only upload is counted
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
case:
|
||||
img[src="pic/freeleech.gif"]: 0 # nothing is counted
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.7
|
||||
# engine n/a
|
||||
|
@@ -119,26 +119,26 @@ search:
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
site_date:
|
||||
_site_date:
|
||||
selector: a
|
||||
filters:
|
||||
# date is at the end of the title, so we get it and name it site_date
|
||||
# date is 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
|
||||
# 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"]
|
||||
args: ["(?i)( FRENCH)", " {{ .Result._site_date }} FRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( MULTI)", " {{ .Result.site_date }} MULTI"]
|
||||
args: ["(?i)( MULTI)", " {{ .Result._site_date }} MULTI"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result.site_date }} TRUEFRENCH"]
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result._site_date }} TRUEFRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result.site_date }} VOSTFR"]
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result._site_date }} VOSTFR"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result.site_date }} SUBFRENCH"]
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result._site_date }} SUBFRENCH"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://cpasbien.to/
|
||||
- https://www.cpasbien.tw/
|
||||
legacylinks:
|
||||
- https://www1.cpasbiens.ws/
|
||||
- https://www2.cpasbiens.ws/
|
||||
@@ -21,6 +21,7 @@ legacylinks:
|
||||
- https://cpasbiens.ind-unblock.xyz/
|
||||
- https://www.cpasbien.gg/
|
||||
- https://www.cpasbien.vip/
|
||||
- https://cpasbien.to/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -70,9 +71,12 @@ settings:
|
||||
trie-nom-a: title asc
|
||||
|
||||
download:
|
||||
before:
|
||||
# request target
|
||||
path: "download_magnet?id={{ re_replace .DownloadUri.AbsoluteUri \"^.*-(\\d+)\\.html\" \"$1\" }}"
|
||||
selectors:
|
||||
- selector: a[href^="magnet:"]
|
||||
attribute: href
|
||||
- selector: body
|
||||
usebeforeresponse: true
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -84,26 +88,26 @@ search:
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
site_date:
|
||||
_site_date:
|
||||
selector: a
|
||||
filters:
|
||||
# year can be at the end of the title, so we get it and name it site_date
|
||||
# year can be at the end of the title, so we get it and name it _site_date
|
||||
- name: regexp
|
||||
args: "(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
|
||||
# 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"]
|
||||
args: ["(?i)( FRENCH)", " {{ .Result._site_date }} FRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( MULTI)", " {{ .Result.site_date }} MULTI"]
|
||||
args: ["(?i)( MULTI)", " {{ .Result._site_date }} MULTI"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result.site_date }} TRUEFRENCH"]
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result._site_date }} TRUEFRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result.site_date }} VOSTFR"]
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result._site_date }} VOSTFR"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result.site_date }} SUBFRENCH"]
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result._site_date }} SUBFRENCH"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
|
@@ -184,6 +184,13 @@ search:
|
||||
args: "download.php?id="
|
||||
- name: append
|
||||
args: "&f={{ .Result.title }}.torrent"
|
||||
genre:
|
||||
selector: div.col-md-12
|
||||
filters:
|
||||
- name: validate
|
||||
args: "Action, Adventure, Animation, Biography, Comedy, Crime, Documentary, Drama, Family, Fantasy, Game-Show, History, Horror, Kids, Music, Musical, Mystery, News, Reality-TV, Romance, Sci-Fi, Sport, Soap, Talk-Show, Thriller, War, Western"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
size:
|
||||
selector: div.torrent-size
|
||||
date:
|
||||
|
@@ -7,8 +7,6 @@ type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.crazyspirits.com/
|
||||
certificates:
|
||||
- cb68471b631304b3b4cec6315cfbad5a6780eb84 # self-signed 13 Mar 2022
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -18,8 +18,8 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
tv-search: [q, season, ep, genre]
|
||||
movie-search: [q, genre]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
@@ -71,10 +71,18 @@ search:
|
||||
order_way: "{{ .Config.type }}"
|
||||
action: advanced
|
||||
filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
taglist: ""
|
||||
taglist: "{{ .Query.Genre }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1"]
|
||||
|
||||
rows:
|
||||
selector: table#torrent_table > tbody > tr[class^="torrent row"]:has(a[href*="action=download"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -85,14 +93,26 @@ search:
|
||||
args: \[(\d+)\]
|
||||
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 # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents.php?action=download&id="]
|
||||
attribute: href
|
||||
description:
|
||||
genre:
|
||||
selector: div.tags
|
||||
filters:
|
||||
- name: validate
|
||||
args: "Action, Adventure, Animation, Comedy, Crime, Documentary, Drama, Family, Fantasy, History, Horror, Kids, Music, Mystery, News, Reality, Romance, SciFi, Soap, Talk, Thriller, War, Western"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
poster:
|
||||
selector: td:nth-child(2) > script
|
||||
filters:
|
||||
|
@@ -60,6 +60,8 @@ caps:
|
||||
- {id: 53, cat: TV, desc: "Random Oddities"}
|
||||
- {id: 59, cat: TV, desc: "Late Night Talkshows"}
|
||||
- {id: 77, cat: TV, desc: "Non-English language"}
|
||||
- {id: 78, cat: TV, desc: "Video Musical Comedy"}
|
||||
- {id: 79, cat: TV, desc: "Video Podcasts"}
|
||||
# BY REQUEST ONLY
|
||||
- {id: 19, cat: Movies, desc: "Movie DVD5/9"}
|
||||
- {id: 20, cat: Movies, desc: "Movie AVI"}
|
||||
|
@@ -87,20 +87,24 @@ search:
|
||||
selector: $.resultsCount
|
||||
|
||||
fields:
|
||||
id:
|
||||
_id:
|
||||
selector: .id
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
text: "{{ .Config.sitelink }}torrents/{{ .Result.id }}"
|
||||
text: "{{ .Config.sitelink }}torrents/{{ .Result._id }}"
|
||||
download:
|
||||
text: "{{ .Config.sitelink }}torrent/download/{{ .Result.id }}.{{ .Config.rsskey }}"
|
||||
text: "{{ .Config.sitelink }}torrent/download/{{ .Result._id }}.{{ .Config.rsskey }}"
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster_image
|
||||
genre:
|
||||
selector: meta_genres
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
imdbid:
|
||||
selector: imdb
|
||||
tmdbid:
|
||||
|
@@ -30,9 +30,10 @@ caps:
|
||||
- {id: 63, cat: Audio/Audiobook, desc: "Audio Hörbuch"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Videos"}
|
||||
# App
|
||||
- {id: 12, cat: PC/0day, desc: "App PC"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "App Mobil"}
|
||||
- {id: 125, cat: PC/Mac, desc: "App macOS"}
|
||||
- {id: 12, cat: PC/0day, desc: "Apps Windows"}
|
||||
- {id: 125, cat: PC/Mac, desc: "Apps Mac-OSX"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "Apps Mobil"}
|
||||
- {id: 141, cat: PC/ISO, desc: "Apps Other"}
|
||||
# Doku
|
||||
- {id: 15, cat: TV/Documentary, desc: "Doku SD"}
|
||||
- {id: 14, cat: TV/Documentary, desc: "Doku HD"}
|
||||
@@ -53,6 +54,7 @@ caps:
|
||||
- {id: 76, cat: XXX/XviD, desc: "XXX SD"}
|
||||
- {id: 73, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 75, cat: XXX/Pack, desc: "XXX Pack"}
|
||||
- {id: 142, cat: XXX/ImageSet, desc: "XXX Pic´s"}
|
||||
# Internal
|
||||
- {id: 129, cat: Movies/SD, desc: "Internal Film SD"}
|
||||
- {id: 128, cat: Movies/HD, desc: "Internal Film HD"}
|
||||
@@ -147,12 +149,12 @@ search:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
cat_p1:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
cat_p2:
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.cat_p1 }} {{ .Result.cat_p2 }}"
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
filters:
|
||||
|
@@ -72,10 +72,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.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 }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
@@ -83,8 +97,8 @@ search:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: category
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
@@ -116,20 +130,25 @@ search:
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0: 1 # not free
|
||||
1: 0 # freeleech
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# json UNIT3D 5.3.0
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# json UNIT3D 6.3.0
|
||||
|
@@ -155,6 +155,14 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
genre:
|
||||
selector: td:nth-child(2)
|
||||
remove: a
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Kieli:|Tekstit:|Array|\x0A|\x09)", ""]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
minimumratio:
|
||||
text: 1.05
|
||||
# engine n/a
|
||||
|
@@ -12,9 +12,9 @@ links:
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.ist/
|
||||
- https://demonoid.unblockit.cat/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.nocensor.world/
|
||||
legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoid.unblockit.li/
|
||||
@@ -33,6 +33,9 @@ legacylinks:
|
||||
- https://demonoid.unblockit.llc/
|
||||
- https://demonoid.unblockit.blue/
|
||||
- https://demonoid.unblockit.name/
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.unblockit.ist/
|
||||
- https://demonoid.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -317,13 +320,20 @@ settings:
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: files/
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="/files/download/"]:has(i.fa-download)
|
||||
attribute: href
|
||||
infohash:
|
||||
hash:
|
||||
selector: div:contains("Torrent hash") > div.col-md-5 > div
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" ", ""]
|
||||
title:
|
||||
selector: h1[id="torrent--title"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -8,6 +8,7 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://desitorrents.tv/
|
||||
- https://desitorrents.rocks/
|
||||
- https://torrent.desi/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -64,13 +65,23 @@ 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.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 }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: [^$, "%"]
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
@@ -79,8 +90,8 @@ search:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: category
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
@@ -88,7 +99,7 @@ search:
|
||||
download:
|
||||
selector: download_link
|
||||
poster:
|
||||
selector: poster
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
@@ -98,6 +109,17 @@ search:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -112,11 +134,15 @@ search:
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0: 1 # not free
|
||||
1: 0 # freeleech
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
@@ -128,4 +154,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 5.3.0 (custom)
|
||||
# json UNIT3D 6.4.1 (custom)
|
||||
|
@@ -52,7 +52,6 @@ caps:
|
||||
- {id: 20, cat: Books, desc: "E-Book / Magyar"}
|
||||
- {id: 52, cat: Books, desc: "E-Book / Egyéb"}
|
||||
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
@@ -10,23 +10,23 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/DVD, desc: Movies/DVDR}
|
||||
- {id: 2, cat: Movies/SD, desc: Movies/SD}
|
||||
- {id: 3, cat: Movies/BluRay, desc: Movies/BluRay}
|
||||
- {id: 4, cat: Movies/UHD, desc: Movies/4K}
|
||||
- {id: 38, cat: Movies/UHD, desc: Movies/UHD}
|
||||
- {id: 1, cat: Movies/DVD, desc: Movies/DVDR}
|
||||
- {id: 5, cat: Movies/HD, desc: Movies/720p}
|
||||
- {id: 6, cat: Movies/HD, desc: Movies/1080p}
|
||||
- {id: 4, cat: Movies/UHD, desc: Movies/2160p}
|
||||
- {id: 3, cat: Movies/BluRay, desc: Movies/BluRay}
|
||||
- {id: 38, cat: Movies/UHD, desc: Movies/Bluray/UHD}
|
||||
- {id: 7, cat: Movies/HD, desc: Movies/PACKS}
|
||||
- {id: 8, cat: TV/HD, desc: TV/720p}
|
||||
- {id: 9, cat: TV/HD, desc: TV/1080p}
|
||||
- {id: 10, cat: TV/SD, desc: TV/SD}
|
||||
- {id: 11, cat: TV/SD, desc: TV/DVDR}
|
||||
- {id: 12, cat: TV/HD, desc: TV/PACKS}
|
||||
- {id: 13, cat: TV/UHD, desc: TV/4K}
|
||||
- {id: 14, cat: TV/HD, desc: TV/BluRay}
|
||||
- {id: 10, cat: TV/SD, desc: Tv/SD}
|
||||
- {id: 11, cat: TV/SD, desc: Tv/DVDR}
|
||||
- {id: 8, cat: TV/HD, desc: Tv/720p}
|
||||
- {id: 9, cat: TV/HD, desc: Tv/1080p}
|
||||
- {id: 13, cat: TV/UHD, desc: Tv/2160p}
|
||||
- {id: 14, cat: TV/HD, desc: Tv/BluRay}
|
||||
- {id: 12, cat: TV/HD, desc: Tv/PACKS}
|
||||
- {id: 17, cat: Other, desc: Unknown}
|
||||
- {id: 18, cat: PC/0day, desc: Apps/0day}
|
||||
- {id: 18, cat: PC/0day, desc: Apps/0DAY}
|
||||
- {id: 20, cat: PC/ISO, desc: Apps/PC}
|
||||
- {id: 21, cat: PC/Mac, desc: Apps/Mac}
|
||||
- {id: 33, cat: PC, desc: Apps/Tutorials}
|
||||
@@ -121,25 +121,25 @@ search:
|
||||
selector: category
|
||||
title:
|
||||
selector: name
|
||||
id:
|
||||
_id:
|
||||
selector: id
|
||||
details:
|
||||
text: "{{ .Config.sitelink }}torrent/{{ .Result.id }}/"
|
||||
text: "{{ .Config.sitelink }}torrent/{{ .Result._id }}/"
|
||||
download:
|
||||
text: "{{ .Config.sitelink }}api/v1/torrents/download/{{ .Result.id }}"
|
||||
text: "{{ .Config.sitelink }}api/v1/torrents/download/{{ .Result._id }}"
|
||||
imdbid:
|
||||
selector: imdbid2
|
||||
imdbidfull:
|
||||
imdbid_full:
|
||||
optional: true
|
||||
selector: imdbid2
|
||||
posternormal:
|
||||
poster_normal:
|
||||
optional: true
|
||||
selector: firstpic
|
||||
posterimdb:
|
||||
poster_imdb:
|
||||
optional: true
|
||||
text: "{{ if .Result.imdbid }}{{ .Config.sitelink }}img/imdb/{{ .Result.imdbidfull }}.jpg{{ else }}{{ end }}"
|
||||
text: "{{ if .Result.imdbid }}{{ .Config.sitelink }}img/imdb/{{ .Result.imdbid_full }}.jpg{{ else }}{{ end }}"
|
||||
poster:
|
||||
text: "{{ if .Result.posterimdb }}{{ .Result.posterimdb }}{{ else }}{{ .Result.posternormal }}{{ end }}"
|
||||
text: "{{ if .Result.poster_imdb }}{{ .Result.poster_imdb }}{{ else }}{{ .Result.poster_normal }}{{ end }}"
|
||||
date:
|
||||
# 2021-10-27 12:07:22
|
||||
selector: added
|
||||
@@ -171,56 +171,55 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
titledesc:
|
||||
title_desc:
|
||||
optional: true
|
||||
selector: title
|
||||
yeardesc:
|
||||
year_desc:
|
||||
optional: true
|
||||
selector: year
|
||||
genresdesc:
|
||||
optional: true
|
||||
genre:
|
||||
selector: genres
|
||||
taglinedesc:
|
||||
_tagline_desc:
|
||||
optional: true
|
||||
selector: tagline
|
||||
castdesc:
|
||||
_cast_desc:
|
||||
optional: true
|
||||
selector: cast
|
||||
ratingdesc:
|
||||
_rating_desc:
|
||||
optional: true
|
||||
selector: rating
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["0", ""]
|
||||
sectiondesc:
|
||||
_section_desc:
|
||||
optional: true
|
||||
selector: section
|
||||
predatedesc:
|
||||
_predate_desc:
|
||||
selector: preDate
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["0000-00-00 00:00:00", ""]
|
||||
p2ptag:
|
||||
_p2ptag:
|
||||
selector: p2p
|
||||
case:
|
||||
0: ""
|
||||
1: P2P
|
||||
packtag:
|
||||
_packtag:
|
||||
selector: pack
|
||||
case:
|
||||
0: ""
|
||||
1: Pack
|
||||
reqidtag:
|
||||
_reqidtag:
|
||||
selector: reqid
|
||||
case:
|
||||
0: ""
|
||||
"*": Request
|
||||
tagdesc:
|
||||
_tag_desc:
|
||||
optional: true
|
||||
text: "{{ if .Result.p2ptag }}{{ .Result.p2ptag }}, {{ else }}{{ end }}{{ if .Result.packtag }}{{ .Result.packtag }}, {{ else }}{{ end }}{{ if .Result.reqidtag }}{{ .Result.reqidtag }}{{ else }}{{ end }}"
|
||||
text: "{{ if .Result._p2ptag }}{{ .Result._p2ptag }}, {{ else }}{{ end }}{{ if .Result._packtag }}{{ .Result._packtag }}, {{ else }}{{ end }}{{ if .Result._reqidtag }}{{ .Result._reqidtag }}{{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(.+?), $"
|
||||
description:
|
||||
text: "{{ if .Result.titledesc }}Title: {{ .Result.titledesc }}</br>{{ else }}{{ end }}{{ if .Result.yeardesc }}Year: {{ .Result.yeardesc }}</br>{{ else }}{{ end }}{{ if .Result.genresdesc }}Genres: {{ .Result.genresdesc }}</br>{{ else }}{{ end }}{{ if .Result.taglinedesc }}Tagline: {{ .Result.taglinedesc }}</br>{{ else }}{{ end }}{{ if .Result.castdesc }}Cast: {{ .Result.castdesc }}</br>{{ else }}{{ end }}{{ if .Result.ratingdesc }}Rating: {{ .Result.ratingdesc }}</br>{{ else }}{{ end }}{{ if .Result.tagdesc }}Tags: {{ .Result.tagdesc }}</br>{{ else }}{{ end }}{{ if .Result.predatedesc }}PRE: {{ .Result.predatedesc }}</br>{{ else }}{{ end }}{{ if .Result.sectiondesc }}Section: {{ .Result.sectiondesc }}{{ else }}{{ end }}"
|
||||
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 }}"
|
||||
# json rartracker api v1
|
||||
|
@@ -173,7 +173,7 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
cat:
|
||||
_cat:
|
||||
selector: a[href^="?cat="] > img
|
||||
attribute: title
|
||||
description:
|
||||
@@ -181,7 +181,7 @@ search:
|
||||
remove: a, img
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "cat={{ .Result.cat }} - "
|
||||
args: "cat={{ .Result._cat }} - "
|
||||
minimumratio:
|
||||
text: 0.9
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
|
@@ -29,6 +29,7 @@ caps:
|
||||
- {id: 76, cat: Books, desc: "Self-Help"}
|
||||
- {id: 56, cat: TV/Sport, desc: "Sports"}
|
||||
- {id: 61, cat: Other, desc: "Tutorials"}
|
||||
- {id: 81, cat: Books, desc: "Wordpress"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -121,7 +122,7 @@ search:
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) width"
|
||||
args: src=([^\s]+)
|
||||
files:
|
||||
selector: div.torrenttable:nth-last-child(6)
|
||||
size:
|
||||
|
@@ -1,204 +0,0 @@
|
||||
---
|
||||
id: dragonworldreloaded
|
||||
name: Dragonworld Reloaded
|
||||
description: "Dragonworld Reloaded is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://dragonworld-reloaded.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movies
|
||||
- {id: 19, cat: Movies/HD, desc: "Movies - HD"}
|
||||
- {id: 26, cat: Movies/UHD, desc: "Movies - UHD"}
|
||||
- {id: 18, cat: Movies/SD, desc: "Movies - SD"}
|
||||
- {id: 139, cat: Movies/3D, desc: "Movies - 3D"}
|
||||
- {id: 2, cat: Movies, desc: "Movies - Pack SD/HD"}
|
||||
# Serien
|
||||
- {id: 41, cat: TV/HD, desc: "Serien - HD"}
|
||||
- {id: 143, cat: TV/UHD, desc: "Serien - UHD"}
|
||||
- {id: 40, cat: TV/SD, desc: "Serien - SD"}
|
||||
- {id: 80, cat: TV/HD, desc: "Serien - Pack HD"}
|
||||
- {id: 151, cat: TV/UHD, desc: "Serien - Pack UHD"}
|
||||
- {id: 42, cat: TV/SD, desc: "Serien - Pack SD"}
|
||||
# Musik
|
||||
- {id: 119, cat: Audio, desc: "Musik - Album"}
|
||||
- {id: 148, cat: Audio, desc: "Musik - Charts"}
|
||||
- {id: 5, cat: Audio, desc: "Musik - Sampler"}
|
||||
- {id: 92, cat: Audio, desc: "Musik - Discography"}
|
||||
- {id: 146, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 142, cat: Audio/Lossless, desc: "Musik - Flac"}
|
||||
- {id: 136, cat: Audio/Video, desc: "Musik - Videos"}
|
||||
# Doku
|
||||
- {id: 38, cat: TV/Documentary, desc: "Doku - HD"}
|
||||
- {id: 37, cat: TV/Documentary, desc: "Doku - SD"}
|
||||
- {id: 144, cat: TV/Documentary, desc: "Doku - Pack SD/HD"}
|
||||
# Games
|
||||
- {id: 16, cat: PC/Games, desc: "Games - PC"}
|
||||
- {id: 14, cat: Console/Other, desc: "Games - Wimmelbild"}
|
||||
- {id: 140, cat: Console, desc: "Games - Konsole"}
|
||||
- {id: 145, cat: Console/Other, desc: "Games - Sonstige"}
|
||||
# Appz
|
||||
- {id: 30, cat: PC/0day, desc: "Appz - Windows"}
|
||||
- {id: 106, cat: PC/Mobile-Android, desc: "Appz - Android"}
|
||||
- {id: 138, cat: PC/0day, desc: "Appz - Sonstige"}
|
||||
# Sport
|
||||
- {id: 50, cat: TV/Sport, desc: "Sport - HD"}
|
||||
- {id: 43, cat: TV/Sport, desc: "Sport - SD"}
|
||||
# Sonstiges
|
||||
- {id: 137, cat: Books/Comics, desc: "Sonstiges - Anime"}
|
||||
- {id: 34, cat: Books/EBook, desc: "Sonstiges - E-Books"}
|
||||
- {id: 35, cat: Audio/Audiobook, desc: "Sonstiges - Audiobook"}
|
||||
- {id: 147, cat: Other, desc: "Sonstiges - Sonstige"}
|
||||
# XXX
|
||||
- {id: 47, cat: XXX, desc: "XXX - SD/HD"}
|
||||
- {id: 49, cat: XXX/Other, desc: "XXX - Sonstiges"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: pin
|
||||
type: text
|
||||
label: Pin
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="cap/captcha_math.php"]
|
||||
input: stringCaptcha
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
pin: "{{ .Config.pin }}"
|
||||
loggiin: "einloggen"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: selection.php
|
||||
|
||||
download:
|
||||
before:
|
||||
path: ajax_det_poll.php
|
||||
method: post
|
||||
inputs:
|
||||
set_thanks: thanks
|
||||
det_id: "{{ .DownloadUri.Query.torrent }}"
|
||||
ajax: yes
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: 0
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "div.selection_wrap{{ if .Config.freeleech }}:root:has(div.onlyup){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
cat_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
cat_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.cat_p1 }} - {{ .Result.cat_p2 }}"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
details:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["details.php?id=", "download.php?torrent="]
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
date_day:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
date_year:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "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 }}"
|
||||
description:
|
||||
selector: selection_unter_af
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 12 hours (as seconds = 12 x 60 x 60)
|
||||
text: 43200
|
||||
# 3xT
|
@@ -349,17 +349,17 @@ search:
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
seeders:
|
||||
selector: td:nth-child(4)
|
||||
leechers:
|
||||
selector: td:nth-child(5)
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
description:
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
description:
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "wait: "
|
||||
args: "uploader: "
|
||||
date:
|
||||
text: now
|
||||
downloadvolumefactor:
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.elitetorrent.com/
|
||||
- https://elitetorrent.nocensor.sbs/
|
||||
- https://elitetorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://www.elitetorrent.biz/
|
||||
- https://www.elitetorrent.io/
|
||||
@@ -31,6 +31,7 @@ legacylinks:
|
||||
- https://elitetorrent.la/
|
||||
- https://www.elitetorrent.wtf/
|
||||
- https://www.elitetorrent.dev/
|
||||
- https://elitetorrent.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -88,12 +89,12 @@ search:
|
||||
args: "^.*/(series)/.*$"
|
||||
category:
|
||||
text: "{{ if or .Result.category_movie .Result.category_tv }}{{ or .Result.category_movie .Result.category_tv }}{{ else }}other{{ end }}"
|
||||
quality:
|
||||
_quality:
|
||||
selector: span:nth-of-type(2) > i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["---", ""]
|
||||
language:
|
||||
_language:
|
||||
selector: span#idiomacio > i > img
|
||||
attribute: title
|
||||
filters:
|
||||
@@ -125,7 +126,7 @@ search:
|
||||
- name: re_replace
|
||||
args: ["(\\d{1})×(\\d{2})", "S0$1E$2"]
|
||||
- name: append
|
||||
args: " {{ .Result.quality }} {{ .Result.language }}"
|
||||
args: " {{ .Result._quality }} {{ .Result._language }}"
|
||||
details:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
|
@@ -6,9 +6,9 @@ language: ru-RU
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://eniahd.com/
|
||||
legacylinks:
|
||||
- https://eniatv.com/
|
||||
legacylinks:
|
||||
- https://eniahd.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -94,7 +94,6 @@ login:
|
||||
inputs:
|
||||
login_username: "{{ .Config.username }}"
|
||||
login_password: "{{ .Config.password }}"
|
||||
redirect: "/index.php"
|
||||
autologin: 1
|
||||
error:
|
||||
- selector: table.error
|
||||
|
@@ -113,6 +113,7 @@ search:
|
||||
page: 0
|
||||
view: list
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
# can search by genre but need range support. &genres[]=Action&genres[]=Comedy for Action and Comedy
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr
|
||||
@@ -142,6 +143,17 @@ search:
|
||||
args: "&w=180&h=270" # for display on dashboard
|
||||
- name: replace
|
||||
args: ["https://images.weserv.nl/?url=https://via.placeholder.com/600x900&w=180&h=270", ""]
|
||||
genre:
|
||||
selector: td:nth-last-child(8)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\n", ""]
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: validate
|
||||
args: "Action, Adventure, Animation, Biography, Comedy, Crime, Documentary, Drama, Family, Fantasy, Game-Show, History, Horror, Music, Musical, Mystery, News, Reality-TV, Romance, Science_Fiction, Sitcom, Sport, Talk-Show, Thriller, War, Western"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
size:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
|
@@ -35,10 +35,10 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
tv-search: [q, season, ep, genre]
|
||||
movie-search: [q, genre]
|
||||
music-search: [q, genre]
|
||||
book-search: [q, genre]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
@@ -95,7 +95,7 @@ search:
|
||||
# 0 name, 1 performer, 2 director
|
||||
miben: 0
|
||||
# genre
|
||||
cimke: ""
|
||||
cimke: "{{ .Query.Genre }}"
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
@@ -153,9 +153,13 @@ search:
|
||||
case:
|
||||
img[src="pic/dupla_up.png"]: 2
|
||||
"*": 1
|
||||
genre:
|
||||
selector: div i
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "\\((.+?)\\)"
|
||||
description:
|
||||
selector: div:nth-child(2)
|
||||
remove: a
|
||||
text: "{{ .Result.genre }}"
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
|
@@ -7,8 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.ist/
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.cat/
|
||||
- https://extratorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.kim/
|
||||
@@ -21,6 +21,9 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.llc/
|
||||
- https://extratorrent.unblockit.blue/
|
||||
- https://extratorrent.unblockit.name/
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.ist/
|
||||
- https://extratorrent.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -135,14 +135,14 @@ search:
|
||||
size:
|
||||
selector: td:nth-of-type(10)
|
||||
remove: a
|
||||
cat:
|
||||
_cat:
|
||||
selector: td:nth-of-type(1) a img
|
||||
attribute: alt
|
||||
description:
|
||||
selector: td:nth-of-type(4)
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "cat={{ .Result.cat }}, wait="
|
||||
args: "cat={{ .Result._cat }}, wait="
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="img/freedownload.png"]: 0
|
||||
|
@@ -10,28 +10,29 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 10, cat: Movies/DVD, desc: "Film DVD rip"}
|
||||
- {id: 111, cat: Movies/DVD, desc: "Film DVD Promo"}
|
||||
- {id: 118, cat: Movies/DVD, desc: "Film DVD Kids"}
|
||||
- {id: 113, cat: Movies, desc: "Films Independent"}
|
||||
- {id: 129, cat: Movies/HD, desc: "Films HD DVD"}
|
||||
- {id: 130, cat: Movies/UHD, desc: "Films 4K"}
|
||||
- {id: 143, cat: Movies/HD, desc: "Films DivX 720P"}
|
||||
- {id: 114, cat: Audio/MP3, desc: "Muziek MP3"}
|
||||
- {id: 130, cat: Movies/UHD, desc: "4K Film"}
|
||||
- {id: 129, cat: Movies/HD, desc: "HD Film - HD MKV"}
|
||||
- {id: 123, cat: Movies/HD, desc: "HD Film - HEVC x265"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "DVD Film - Retail DVD"}
|
||||
- {id: 111, cat: Movies/DVD, desc: "DVD Film - HD2DVD / BR2DVD"}
|
||||
- {id: 128, cat: Audio/Video, desc: "DVD Film - Muziek DVD"}
|
||||
- {id: 118, cat: Movies/Other, desc: "DVD Film - Kids DVD"}
|
||||
- {id: 125, cat: Movies/SD, desc: "DivX - Divx Rip"}
|
||||
- {id: 143, cat: Movies/HD, desc: "DivX - Divx 720P"}
|
||||
- {id: 132, cat: TV, desc: "Serie's - Complete Seizoen"}
|
||||
- {id: 139, cat: TV, desc: "Serie's - Losse Afleveringen"}
|
||||
- {id: 105, cat: TV/Documentary, desc: "Docu's"}
|
||||
- {id: 115, cat: PC/0day, desc: "Software - Windows"}
|
||||
- {id: 116, cat: PC/Mac, desc: "Software - Mac"}
|
||||
- {id: 105, cat: PC/ISO, desc: "Software - Linux"}
|
||||
- {id: 120, cat: PC/Games, desc: "Games"}
|
||||
- {id: 114, cat: Audio/MP3, desc: "Muziek - MP3"}
|
||||
- {id: 142, cat: Audio/Lossless, desc: "Muziek - Flac"}
|
||||
- {id: 131, cat: Books/Comics, desc: "Stipboeken"}
|
||||
- {id: 140, cat: Books/EBook, desc: "E-Book"}
|
||||
- {id: 105, cat: TV/Documentary, desc: "Documentaire"}
|
||||
- {id: 115, cat: PC, desc: "PC apps"}
|
||||
- {id: 120, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 106, cat: Other, desc: "Overig"}
|
||||
- {id: 131, cat: Books/Comics, desc: "Stripboeken"}
|
||||
- {id: 132, cat: TV/HD, desc: "TV HD Serie"}
|
||||
- {id: 116, cat: PC/Mac, desc: "Mac Software"}
|
||||
- {id: 125, cat: Movies/SD, desc: "Xvid Rip"}
|
||||
- {id: 123, cat: Movies/HD, desc: "MKV/X265"}
|
||||
- {id: 108, cat: XXX, desc: "18+"}
|
||||
- {id: 142, cat: XXX/x264, desc: "18+ HD"}
|
||||
- {id: 139, cat: TV, desc: "TV Series"}
|
||||
- {id: 128, cat: Audio/Video, desc: "muziek DVD"}
|
||||
- {id: 155, cat: Books/Mags, desc: "Tijdschriften"}
|
||||
- {id: 108, cat: XXX, desc: "18+ XXX"}
|
||||
- {id: 106, cat: Other, desc: "Overige"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -91,6 +92,11 @@ search:
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: 1
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01E02 to 1 2
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\s*E0*(\\d{1,2})\\b", "$1 $2"]
|
||||
- name: re_replace # S01 to 1
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\b", "$1"]
|
||||
|
||||
rows:
|
||||
selector: table.mainouter
|
||||
@@ -108,11 +114,13 @@ search:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)seizoen\\s*(\\d{1,2})\\s*(tot|t\/m)\\s*(\\d{1,2})", "S$1-$3"]
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "S$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})", "S$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*)(\\d{1,2})", "E$2"]
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "E$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})", "E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)compleet", "Complete"]
|
||||
details:
|
||||
@@ -183,4 +191,6 @@ search:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# engine n/a
|
||||
|
@@ -7,8 +7,6 @@ type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extremlymtorrents.ws/
|
||||
certificates:
|
||||
- 31681d3324d3fef65b04b6ab2e634445c4ff06d4 # expired 6-nov-21
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 15, cat: Movies/HD, desc: "1080p HD"}
|
||||
@@ -128,19 +126,17 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
language:
|
||||
_language:
|
||||
selector: td:nth-last-child(5)
|
||||
description:
|
||||
_vip:
|
||||
selector: img[src="/images/vip-icon.png"]
|
||||
attribute: src
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["/images/vip-icon.png", " VIP ONLY"]
|
||||
attribute: alt
|
||||
optional: true
|
||||
title:
|
||||
selector: a[href^="file.php?id="] b
|
||||
filters:
|
||||
- name: append
|
||||
args: " {{ .Result.language }}{{ .Result.description }}"
|
||||
args: " {{ .Result._language }}{{ if .Result._vip }} VIP ONLY{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="file.php?id="]
|
||||
attribute: href
|
||||
@@ -172,6 +168,19 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
genre_optional:
|
||||
# Drama, Romance | N/A | 2022 | 112 min | N/A
|
||||
# Drama:Family:Romance
|
||||
selector: td:nth-child(2)
|
||||
remove: a
|
||||
filters:
|
||||
- name: split
|
||||
args: ["|", 0]
|
||||
genre:
|
||||
# if its VIP then do not keep genre
|
||||
text: "{{ if .Result._vip }}{{ else }}{{ .Result.genre_optional }}{{ end }}"
|
||||
description:
|
||||
text: "{{ if .Result._vip }}VIP ONLY{{ else }}{{ .Result.genre }}{{ end }}"
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
|
@@ -13,8 +13,8 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.ist/
|
||||
- https://eztv.nocensor.sbs/
|
||||
- https://eztv.unblockit.cat/
|
||||
- https://eztv.nocensor.world/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
- https://eztv.it/ # redirects to .re
|
||||
@@ -37,6 +37,9 @@ legacylinks:
|
||||
- https://eztv.unblockit.llc/
|
||||
- https://eztv.unblockit.blue/
|
||||
- https://eztv.unblockit.name/
|
||||
- https://eztv.nocensor.sbs/
|
||||
- https://eztv.unblockit.ist/
|
||||
- https://eztv.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -55,6 +58,13 @@ search:
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["S[0-9]{2}([^E]|$)", ""] # remove season tag without episode (search doesn't support it)
|
||||
# fixes for site search issues
|
||||
- name: replace
|
||||
args: ["-", ""]
|
||||
- name: replace
|
||||
args: [" ", "-"]
|
||||
- name: replace
|
||||
args: ["&", ""]
|
||||
|
||||
headers:
|
||||
cookie: ["sort_no=100"] # show 100 results for keywordless search
|
||||
|
@@ -10,53 +10,54 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 58, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 59, cat: Movies/HD, desc: "Filme 720p"}
|
||||
- {id: 60, cat: Movies/HD, desc: "Filme 1080p"}
|
||||
- {id: 61, cat: Movies/UHD, desc: "Filme 2160p"}
|
||||
- {id: 170, cat: Movies/BluRay, desc: "Filme Bluray"}
|
||||
- {id: 101, cat: Movies/DVD, desc: "Filme DVD"}
|
||||
- {id: 62, cat: Movies/3D, desc: "Filme 3D"}
|
||||
- {id: 169, cat: Movies/Foreign, desc: "Filme International"}
|
||||
- {id: 183, cat: Movies/SD, desc: "Filme Packs SD"}
|
||||
- {id: 184, cat: Movies/HD, desc: "Filme Packs 720p"}
|
||||
- {id: 185, cat: Movies/HD, desc: "Filme Packs 1080p"}
|
||||
- {id: 186, cat: Movies/UHD, desc: "Filme Packs 2160p"}
|
||||
- {id: 172, cat: Movies/SD, desc: "Film-Klassiker SD"}
|
||||
- {id: 173, cat: Movies/HD, desc: "Film-Klassiker 720p"}
|
||||
- {id: 174, cat: Movies/HD, desc: "Film-Klassiker 1080p"}
|
||||
- {id: 175, cat: Movies/UHD, desc: "Film-Klassiker 2160p"}
|
||||
- {id: 180, cat: Movies/DVD, desc: "Film-Klassiker DVD"}
|
||||
- {id: 181, cat: Movies/BluRay, desc: "Film-Klassiker Bluray"}
|
||||
- {id: 182, cat: Movies/3D, desc: "Film-Klassiker 3D"}
|
||||
- {id: 176, cat: Movies/SD, desc: "Film-Klassiker Pack SD"}
|
||||
- {id: 177, cat: Movies/HD, desc: "Film-Klassiker Pack 720p"}
|
||||
- {id: 178, cat: Movies/HD, desc: "Film-Klassiker Pack 1080p"}
|
||||
- {id: 179, cat: Movies/UHD, desc: "Film-Klassiker Pack 2160p"}
|
||||
- {id: 64, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 65, cat: TV/HD, desc: "Serien 720p"}
|
||||
- {id: 66, cat: TV/HD, desc: "Serien 1080p"}
|
||||
- {id: 68, cat: TV/UHD, desc: "Serien 2160p"}
|
||||
- {id: 69, cat: TV/Foreign, desc: "Serien Ger-Subbed"}
|
||||
- {id: 167, cat: TV/Foreign, desc: "Serien International"}
|
||||
- {id: 187, cat: TV/SD, desc: "Serienpacks SD"}
|
||||
- {id: 188, cat: TV/HD, desc: "Serienpacks 720p"}
|
||||
- {id: 189, cat: TV/HD, desc: "Serienpacks 1080p"}
|
||||
- {id: 190, cat: TV/UHD, desc: "Serienpacks 2160p"}
|
||||
- {id: 191, cat: TV/Foreign, desc: "Serienpacks Ger-Subbed"}
|
||||
- {id: 71, cat: Audio/MP3, desc: "Audio MP3"}
|
||||
- {id: 72, cat: Audio/Lossless, desc: "Audio Flac"}
|
||||
- {id: 73, cat: Audio, desc: "Audio Packs"}
|
||||
- {id: 153, cat: Audio/Audiobook, desc: "Hörbücher"}
|
||||
- {id: 192, cat: PC/Games, desc: "Spiele Windows"}
|
||||
- {id: 193, cat: PC, desc: "Software Windows"}
|
||||
- {id: 90, cat: Books/Mags, desc: "Zeitschriften"}
|
||||
- {id: 89, cat: Books/EBook, desc: "E-Books"}
|
||||
- {id: 91, cat: XXX/SD, desc: "XXX SD"}
|
||||
- {id: 92, cat: XXX/x264, desc: "XXX 720p"}
|
||||
- {id: 93, cat: XXX/x264, desc: "XXX 1080p"}
|
||||
- {id: 171, cat: XXX/Pack, desc: "XXX Packs"}
|
||||
- {id: 94, cat: XXX/ImageSet, desc: "XXX Magazine"}
|
||||
- {id: 152, cat: Books, desc: "E-Books"}
|
||||
- {id: 141, cat: Movies/HD, desc: "Filme 1080p"}
|
||||
- {id: 140, cat: Movies/UHD, desc: "Filme 2160p"}
|
||||
- {id: 131, cat: Movies/3D, desc: "Filme 3D"}
|
||||
- {id: 154, cat: Movies/HD, desc: "Filme 720p"}
|
||||
- {id: 142, cat: Movies/BluRay, desc: "Filme Bluray"}
|
||||
- {id: 120, cat: Movies/DVD, desc: "Filme DVD"}
|
||||
- {id: 101, cat: Movies/Foreign, desc: "Filme International"}
|
||||
- {id: 139, cat: Movies/HD, desc: "Filme Packs 1080p"}
|
||||
- {id: 119, cat: Movies/UHD, desc: "Filme Packs 2160p"}
|
||||
- {id: 106, cat: Movies/HD, desc: "Filme Packs 720p"}
|
||||
- {id: 105, cat: Movies/SD, desc: "Filme Packs SD"}
|
||||
- {id: 153, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 104, cat: Movies/HD, desc: "Filmklassiker 1080p"}
|
||||
- {id: 135, cat: Movies/UHD, desc: "Filmklassiker 2160p"}
|
||||
- {id: 122, cat: Movies/3D, desc: "Filmklassiker 3D"}
|
||||
- {id: 103, cat: Movies/HD, desc: "Filmklassiker 720p"}
|
||||
- {id: 134, cat: Movies/BluRay, desc: "Filmklassiker Bluray"}
|
||||
- {id: 130, cat: Movies/DVD, desc: "Filmklassiker DVD"}
|
||||
- {id: 136, cat: Movies/Foreign, desc: "Filmklassiker International"}
|
||||
- {id: 124, cat: Movies/HD, desc: "Filmklassiker Packs 1080p"}
|
||||
- {id: 123, cat: Movies/UHD, desc: "Filmklassiker Packs 2160p"}
|
||||
- {id: 121, cat: Movies/HD, desc: "Filmklassiker Packs 720p"}
|
||||
- {id: 127, cat: Movies/SD, desc: "Filmklassiker Packs SD"}
|
||||
- {id: 102, cat: Movies/SD, desc: "Filmklassiker SD"}
|
||||
- {id: 118, cat: Audio/Audiobook, desc: "Hörbücher"}
|
||||
- {id: 109, cat: Audio/Lossless, desc: "Musik Flac"}
|
||||
- {id: 129, cat: Audio/MP3, desc: "Musik MP3"}
|
||||
- {id: 111, cat: Audio/Lossless, desc: "Musik Packs Flac"}
|
||||
- {id: 112, cat: Audio/MP3, desc: "Musik Packs MP3"}
|
||||
- {id: 110, cat: Audio/Video, desc: "Musik Videos"}
|
||||
- {id: 113, cat: TV/HD, desc: "Serie 1080p"}
|
||||
- {id: 114, cat: TV/UHD, desc: "Serie 2160p"}
|
||||
- {id: 125, cat: TV/HD, desc: "Serie 720p"}
|
||||
- {id: 115, cat: TV/Foreign, desc: "Serie International"}
|
||||
- {id: 138, cat: TV/HD, desc: "Serie Packs 1080p"}
|
||||
- {id: 143, cat: TV/UHD, desc: "Serie Packs 2160p"}
|
||||
- {id: 116, cat: TV/HD, desc: "Serie Packs 720p"}
|
||||
- {id: 144, cat: TV/Foreign, desc: "Serie Packs International"}
|
||||
- {id: 137, cat: TV/SD, desc: "Serie Packs SD"}
|
||||
- {id: 133, cat: TV/SD, desc: "Serie SD"}
|
||||
- {id: 150, cat: PC/0day, desc: "Windows Apps"}
|
||||
- {id: 149, cat: PC/Games, desc: "Windows Spiele"}
|
||||
- {id: 147, cat: XXX/x264, desc: "XXX 1080p"}
|
||||
- {id: 146, cat: XXX/x264, desc: "XXX 720p"}
|
||||
- {id: 148, cat: XXX/Pack, desc: "XXX Packs"}
|
||||
- {id: 69, cat: XXX/SD, desc: "XXX SD"}
|
||||
- {id: 151, cat: Books/Mags, desc: "Zeitschriften"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -72,6 +73,21 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: pin
|
||||
type: text
|
||||
label: Pin
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter FreeLeech only
|
||||
default: false
|
||||
- name: onlyupload
|
||||
type: checkbox
|
||||
label: Filter OnlyUpload only
|
||||
default: false
|
||||
- name: info_free
|
||||
type: info
|
||||
label: About Freeleech and OnlyUpload at Fantastic Heaven
|
||||
default: <li>FreeLeech are torrents where neither the download or upload is counted. (On the Jackett dashboard search results these are tagged as NoUpload).</li><li>OnlyUpload are torrents where download is not counted but upload is. Good for building your Ratio up. (On the Jackett dashboard search results these are tagged as Freeleech).</li>
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -88,75 +104,84 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents pro Seite:</b> setting to <b>100</b> on your Control Panel. The default is <i>15</i>.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
form: form[action="../takelogin.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 }}"
|
||||
loggiin: "einloggen"
|
||||
secure_pin: "{{ .Config.pin }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
- selector: table.tableinborder:contains("Anmeldung Gescheitert!") > tbody > tr > td.tablea
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ if .Categories }}{{ range .Categories }}scat[]={{.}}&{{end}}{{ else }}{{ end }}"
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
showsearch: 1
|
||||
search: "{{ .Keywords }}"
|
||||
blah: 0
|
||||
# 0 active, 1 all, 2 dead
|
||||
incldead: 1
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: div.content_wrap > div.selection_wrap:has(a[href^="details.php?id="])
|
||||
selector: "table.tableinborder[cellspacing=\"1\"][cellpadding=\"0\"] > tbody > tr:has(a[href^=\"download.php\"]){{ if .Config.freeleech }}:has(img[src=\"pic/freeleech.gif\"]){{ else }}{{ end }}{{ if .Config.onlyupload }}:has(img[src=\"pic/oupic.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="selection.php?cat="]
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
- name: replace
|
||||
args: ["#2", ""]
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
selector: a[href^="details.php?id="] > b
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(1)
|
||||
files:
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(2)
|
||||
seeders:
|
||||
selector: div.selection_unter_aa > b
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(2) b:nth-child(1)
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa > b
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(2) > b:nth-of-type(2)
|
||||
grabs:
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(3) b:nth-child(1)
|
||||
date:
|
||||
selector: div.selection_unter_ab
|
||||
selector: td.content_wrap table tbody tr:nth-child(2) td:nth-child(5)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["um ", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: dateparse
|
||||
args: "02.01.2006 15:04:05 -07:00"
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
case:
|
||||
img[src="pic/oupic.gif"]: 0 # only upload is counted
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
case:
|
||||
img[src="pic/freeleech.gif"]: 0 # nothing is counted
|
||||
"*": 1
|
||||
# engine n/a
|
||||
|
@@ -27,6 +27,7 @@ caps:
|
||||
- {id: 988, cat: Movies, desc: " |- Кино России и СНГ"}
|
||||
- {id: 337, cat: Movies, desc: " |- Мультфильмы"}
|
||||
- {id: 72, cat: Movies, desc: " |- DVD, HD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1001, cat: Movies, desc: " |- UHD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 999, cat: Movies, desc: " |- Фильмы (2021-2022)"}
|
||||
- {id: 996, cat: Movies, desc: " |- Фильмы (2019-2020)"}
|
||||
- {id: 921, cat: Movies, desc: " |- Фильмы (2016-2018)"}
|
||||
@@ -83,11 +84,11 @@ caps:
|
||||
- {id: 744, cat: Movies/3D, desc: " |- 3D | Спорт"}
|
||||
- {id: 335, cat: Movies/DVD, desc: " |- Наше кино (DVD)"}
|
||||
- {id: 336, cat: Movies/HD, desc: " |- Наше кино (HD Video)"}
|
||||
- {id: 747, cat: Movies/BluRay, desc: " |- Наше кино (Blu-ray и BD Remux)"}
|
||||
- {id: 747, cat: Movies/BluRay, desc: " |- Наше кино (Blu-ray и BD Remux) [HD/UHD]"}
|
||||
- {id: 985, cat: Movies/UHD, desc: " |- Наше кино (Ultra HD)"}
|
||||
- {id: 69, cat: Movies/DVD, desc: " |- Зарубежное кино (DVD)"}
|
||||
- {id: 70, cat: Movies/HD, desc: " |- Зарубежное кино (HD Video)"}
|
||||
- {id: 748, cat: Movies/BluRay, desc: " |- Зарубежное кино (Blu-ray и BD Remux)"}
|
||||
- {id: 748, cat: Movies/BluRay, desc: " |- Зарубежное кино (Blu-ray и BD Remux) [HD/UHD]"}
|
||||
- {id: 984, cat: Movies/UHD, desc: " |- Зарубежное кино (Ultra HD)"}
|
||||
- {id: 907, cat: Movies, desc: " |- Кино для детей (DVD, HD Video, Blu-ray, BD Remux, Ultra HD)"}
|
||||
- {id: 339, cat: Movies, desc: " |- Мультфильмы (DVD, HD Video и Blu-ray)"}
|
||||
@@ -239,7 +240,7 @@ caps:
|
||||
- {id: 526, cat: PC/0day, desc: " |- Графика / Просмотрщики графики"}
|
||||
- {id: 525, cat: PC/0day, desc: " |- Для работы с аудио"}
|
||||
- {id: 524, cat: PC/0day, desc: " |- Для работы с видео"}
|
||||
- {id: 887, cat: PC/0day, desc: " |- Интернет TV &Radio"}
|
||||
- {id: 887, cat: PC/0day, desc: " |- Интернет TV & Radio"}
|
||||
- {id: 561, cat: PC/0day, desc: " |- Удаленный доступ и ПО для свободного доступа в интернет"}
|
||||
- {id: 555, cat: PC/0day, desc: " |- 3G USB-модем и Webcam"}
|
||||
- {id: 537, cat: PC/0day, desc: " |- Утилиты для удаления всплывающих окон и баннерной рекламы"}
|
||||
@@ -374,7 +375,7 @@ caps:
|
||||
- {id: 850, cat: Audio/MP3, desc: " |- Этническая музыка Африки и Азии (mp3)"}
|
||||
- {id: 849, cat: Audio/MP3, desc: " |- Country, Bluegrass (mp3)"}
|
||||
- {id: 848, cat: Audio/MP3, desc: " |- Этническая музыка Кавказа и Закавказья (mp3)"}
|
||||
- {id: 847, cat: Audio/MP3, desc: " |- NewAge &Meditative (mp3)"}
|
||||
- {id: 847, cat: Audio/MP3, desc: " |- NewAge & Meditative (mp3)"}
|
||||
- {id: 846, cat: Audio/MP3, desc: " |- Folk и neo-folk, celtic, medieval (mp3)"}
|
||||
- {id: 935, cat: Audio/MP3, desc: " |- Сборники разных исполнителей (mp3)"}
|
||||
- {id: 945, cat: Audio/Lossless, desc: " |- Дискографии в Lossless"}
|
||||
@@ -471,9 +472,9 @@ caps:
|
||||
- {id: 751, cat: Audio, desc: " |- Аудио юмористические концерты (выступления)"}
|
||||
# Эротика
|
||||
# Erotica
|
||||
- {id: 483, cat: Other, desc: "Правила, FAQ и Предложения по улучшению раздела "Эротик.."}
|
||||
- {id: 483, cat: Other, desc: "Правила, FAQ и Предложения по улучшению раздела 'Эротик.."}
|
||||
- {id: 484, cat: Other, desc: " |- Правила и FAQ"}
|
||||
- {id: 485, cat: Other, desc: " |- Предложения по улучшению раздела "Эротика"и форум.."}
|
||||
- {id: 485, cat: Other, desc: " |- Предложения по улучшению раздела 'Эротика'и форум.."}
|
||||
- {id: 688, cat: Other, desc: " |- Ищу / Предлагаю"}
|
||||
- {id: 963, cat: XXX, desc: "Эротические художественные фильмы"}
|
||||
- {id: 964, cat: XXX, desc: "Эротические документальные фильмы"}
|
||||
|
@@ -7,9 +7,10 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://filelisting.com/
|
||||
- https://filelisting.nocensor.sbs/
|
||||
- https://filelisting.nocensor.world/
|
||||
legacylinks:
|
||||
- https://filelisting.nocensor.biz/
|
||||
- https://filelisting.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -12,31 +12,31 @@ legacylinks:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2, cat: Movies/BluRay, desc: " Bluray/HD"}
|
||||
- {id: 3, cat: Movies/DVD, desc: " DVD Kids"}
|
||||
- {id: 4, cat: Audio/Video, desc: " DVD Muziek"}
|
||||
- {id: 5, cat: Movies/DVD, desc: " DVD Films"}
|
||||
- {id: 7, cat: Movies/UHD, desc: " 4K films"}
|
||||
- {id: 8, cat: XXX, desc: " Erotiek"}
|
||||
- {id: 9, cat: PC/Mobile-Other, desc: " GSM/Navigatie"}
|
||||
- {id: 10, cat: Audio, desc: " Muziek Album"}
|
||||
- {id: 11, cat: Audio/Other, desc: " Muziek Diverse"}
|
||||
- {id: 12, cat: Console/NDS, desc: " Nintendo"}
|
||||
- {id: 13, cat: Movies, desc: " Classic"}
|
||||
- {id: 15, cat: Other, desc: " Overige"}
|
||||
- {id: 16, cat: PC/0day, desc: " PC Software"}
|
||||
- {id: 17, cat: PC, desc: " PC Spellen"}
|
||||
- {id: 19, cat: TV, desc: " TV Series"}
|
||||
- {id: 21, cat: Movies/SD, desc: " Divx/Xvid"}
|
||||
- {id: 24, cat: Books/EBook, desc: " E-Books"}
|
||||
- {id: 26, cat: Audio/Other, desc: " Cabaret"}
|
||||
- {id: 27, cat: TV/Documentary, desc: " Documentaire"}
|
||||
- {id: 31, cat: Movies/HD, desc: " FP-release"}
|
||||
- {id: 32, cat: Audio/Audiobook, desc: " Luister Boeken"}
|
||||
- {id: 2, cat: Movies/BluRay, desc: "Bluray/HD"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "DVD Kids"}
|
||||
- {id: 4, cat: Audio/Video, desc: "DVD Muziek"}
|
||||
- {id: 5, cat: Movies/DVD, desc: "DVD Films"}
|
||||
- {id: 7, cat: Movies/UHD, desc: "4K films"}
|
||||
- {id: 8, cat: XXX, desc: "Erotiek"}
|
||||
- {id: 9, cat: PC/Mobile-Other, desc: "GSM/Navigatie"}
|
||||
- {id: 10, cat: Audio, desc: "Muziek Album"}
|
||||
- {id: 11, cat: Audio/Other, desc: "Muziek Diverse"}
|
||||
- {id: 12, cat: Console/NDS, desc: "Nintendo"}
|
||||
- {id: 13, cat: Movies, desc: "Classic"}
|
||||
- {id: 15, cat: Other, desc: "Overige"}
|
||||
- {id: 16, cat: PC/0day, desc: "PC Software"}
|
||||
- {id: 17, cat: PC, desc: "PC Spellen"}
|
||||
- {id: 19, cat: TV, desc: "TV Series"}
|
||||
- {id: 21, cat: Movies/SD, desc: "Divx/Xvid"}
|
||||
- {id: 24, cat: Books/EBook, desc: "E-Books"}
|
||||
- {id: 26, cat: Audio/Other, desc: "Cabaret"}
|
||||
- {id: 27, cat: TV/Documentary, desc: "Documentaire"}
|
||||
- {id: 31, cat: Movies/HD, desc: "FP-release"}
|
||||
- {id: 32, cat: Audio/Audiobook, desc: "Luister Boeken"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, imdbid]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -95,6 +95,11 @@ search:
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
incldead: 1
|
||||
# does not return imdb link in results
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01E02 to 1 2
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\s*E0*(\\d{1,2})\\b", "$1 $2"]
|
||||
- name: re_replace # S01 to 1
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\b", "$1"]
|
||||
|
||||
rows:
|
||||
selector: table.mainouter
|
||||
@@ -106,11 +111,13 @@ search:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)seizoen\\s*(\\d{1,2})\\s*(tot|t\/m)\\s*(\\d{1,2})", "S$1-$3"]
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "S$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})", "S$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*)(\\d{1,2})", "E$2"]
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "E$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})", "E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)compleet", "Complete"]
|
||||
details:
|
||||
|
@@ -151,9 +151,11 @@ search:
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02/01/2006 15:04 -07:00"
|
||||
description:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
genre:
|
||||
selector: td:nth-child(2)
|
||||
remove: a
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/silver.gif"]: 0.5
|
||||
|
@@ -12,28 +12,14 @@ legacylinks:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 9, cat: TV/SD, desc: "SERIE DVD"}
|
||||
- {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: 37, cat: TV, desc: "SERIE EPISODE"}
|
||||
- {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: 59, cat: PC, desc: "LOGICIELS "}
|
||||
- {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: 64, cat: TV/Anime, desc: "ANIMEE HDRip"}
|
||||
- {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"}
|
||||
@@ -45,9 +31,32 @@ caps:
|
||||
- {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: 63, cat: Movies/WEB-DL, desc: "FILM WEB"}
|
||||
- {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: 7, cat: PC/Games, desc: "JEUX Win"}
|
||||
- {id: 96, cat: PC/Games, desc: "JEUX Apple"}
|
||||
- {id: 8, cat: Console/PS3, desc: "JEUX PS3"}
|
||||
- {id: 45, cat: PC/Games, desc: "JEUX PC"}
|
||||
|
||||
@@ -100,6 +109,14 @@ settings:
|
||||
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
|
||||
@@ -144,12 +161,12 @@ search:
|
||||
selector: div.content_wrap > div.selection_wrap:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
cat_p1:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
cat_p2:
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.cat_p1 }} {{ .Result.cat_p2 }}"
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
title_phase1:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_multilang:
|
||||
|
@@ -5,8 +5,6 @@ description: "freshMeat is a Public torrent meta-search engine"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 9aa995b06d86a22074c90faf5a9836e8a0fe6327 # expired 03/Jan/2022
|
||||
links:
|
||||
- https://freshmeat.io/
|
||||
|
||||
|
@@ -7,8 +7,6 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.frozen-layer.com/
|
||||
certificates:
|
||||
- 5fc6a320560295f0d7589c9dd8738bfaed36c3aa # expired 20 December 2020
|
||||
|
||||
settings:
|
||||
- name: category
|
||||
|
181
src/Jackett.Common/Definitions/fuzer.yml
Normal file
181
src/Jackett.Common/Definitions/fuzer.yml
Normal file
@@ -0,0 +1,181 @@
|
||||
---
|
||||
id: fuzer
|
||||
name: Fuzer
|
||||
description: "Fuzer is a private torrent website with israeli torrents."
|
||||
language: he-IL
|
||||
type: private
|
||||
encoding: windows-1255
|
||||
links:
|
||||
- https://www.fuzer.me/
|
||||
legacylinks:
|
||||
- https://fuzer.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movies
|
||||
- {id: 73, cat: Movies, desc: "סרטים"}
|
||||
- {id: 7, cat: Movies/SD, desc: "סרטים"}
|
||||
- {id: 60, cat: Movies/SD, desc: "סרטים ישראליים"}
|
||||
- {id: 9, cat: Movies/HD, desc: "סרטים HD"}
|
||||
- {id: 101, cat: Movies/HD, desc: "סרטים x265"}
|
||||
- {id: 59, cat: Movies/HD, desc: "סרטי BDRIP-BRRip"}
|
||||
- {id: 61, cat: Movies/HD, desc: "סרטים ישראליים HD"}
|
||||
- {id: 97, cat: Movies/UHD, desc: "סרטים UHD"}
|
||||
- {id: 58, cat: Movies/DVD, desc: "סרטים DVD-R"}
|
||||
- {id: 83, cat: Movies/Other, desc: "סרטים מדובבים"}
|
||||
# TV
|
||||
- {id: 76, cat: TV, desc: "סדרות"}
|
||||
- {id: 8, cat: TV/SD, desc: "סדרות"}
|
||||
- {id: 62, cat: TV/SD, desc: "סדרות ישראליות"}
|
||||
- {id: 10, cat: TV/HD, desc: "Tסדרות HD"}
|
||||
- {id: 63, cat: TV/HD, desc: "סדרות ישראליות HD"}
|
||||
- {id: 100, cat: TV/UHD, desc: "סדרות UHD"}
|
||||
- {id: 84, cat: TV/Other, desc: "סדרות מדובבות"}
|
||||
- {id: 65, cat: TV/Anime, desc: "אנימה"}
|
||||
- {id: 64, cat: TV/Sport, desc: "ספורט"}
|
||||
# PC
|
||||
- {id: 74, cat: PC, desc: "תוכנות"}
|
||||
- {id: 15, cat: PC/0day, desc: "תוכנות PC"}
|
||||
- {id: 11, cat: PC/Games, desc: "משחקים PC"}
|
||||
- {id: 13, cat: PC/Mobile-Android, desc: "אפליקציות לאנדרואיד"}
|
||||
- {id: 70, cat: PC/Mobile-iOS, desc: "אפליקציות לאייפון"}
|
||||
- {id: 71, cat: PC/Mac, desc: "תוכנות MAC"}
|
||||
# XXX
|
||||
- {id: 16, cat: XXX, desc: "למבוגרים בלבד"}
|
||||
# Games
|
||||
- {id: 72, cat: Console, desc: "משחקים"}
|
||||
- {id: 55, cat: Console/XBox, desc: "משחקים XBOX"}
|
||||
- {id: 12, cat: Console/PSP, desc: "משחקים PS"}
|
||||
- {id: 56, cat: Console/Wii, desc: "משחקים WII"}
|
||||
- {id: 57, cat: PC/Mobile-Other, desc: "משחקי קונסולות ניידות"}
|
||||
# Music
|
||||
- {id: 75, cat: Audio, desc: "שירים"}
|
||||
- {id: 14, cat: Audio, desc: "מוזיקה עולמית"}
|
||||
- {id: 66, cat: Audio, desc: "מוזיקה ישראלית"}
|
||||
- {id: 68, cat: Audio, desc: "פסקולים"}
|
||||
- {id: 67, cat: Audio/Lossless, desc: "FLAC"}
|
||||
# Books
|
||||
- {id: 69, cat: Books, desc: "Ebooks"}
|
||||
# Other
|
||||
- {id: 17, cat: Other, desc: "שונות"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: dateadded
|
||||
options:
|
||||
dateadded: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: browse.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
query: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
matchquery: any
|
||||
freeleech: "{{ if .Config.freeleech }}1{{ else }}0{{ end }}"
|
||||
# on, off, only_dead
|
||||
dead: on
|
||||
$raw: "{{ range .Categories }}c[]={{.}}&{{end}}"
|
||||
|
||||
rows:
|
||||
selector: .box_torrent
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="/browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: .main_title
|
||||
details:
|
||||
selector: a[href^="/showthread.php?t="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/attachment.php?attachmentid="]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: span.imdb-inline > a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[imgsrc]
|
||||
attribute: imgsrc
|
||||
size:
|
||||
selector: td:nth-child(4)
|
||||
grabs:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [",", ""]
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [",", ""]
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
filters:
|
||||
- name: replace
|
||||
args: [",", ""]
|
||||
date:
|
||||
selector: .up_info2
|
||||
filters:
|
||||
- name: append
|
||||
args: " +02:00" # IST
|
||||
- name: re_replace
|
||||
args: ["[^:]+: ", ""]
|
||||
- name: dateparse
|
||||
args: "02/01/06 15:04 -07:00"
|
||||
description:
|
||||
selector: div.sub_title
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
a[href*="freeleech=1"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# engine n/a
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.gamestorrents.fm/
|
||||
- https://gamestorrents.nocensor.sbs/
|
||||
- https://gamestorrents.nocensor.world/
|
||||
legacylinks:
|
||||
- https://www.gamestorrents.com/
|
||||
- https://www.gamestorrents.tv/
|
||||
@@ -15,6 +15,7 @@ legacylinks:
|
||||
- https://gamestorrents.nocensor.space/
|
||||
- https://gamestorrents.nocensor.work/
|
||||
- https://gamestorrents.nocensor.biz/
|
||||
- https://gamestorrents.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user