mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-17 09:24:11 +02:00
Compare commits
577 Commits
v0.20.1010
...
v0.20.1768
Author | SHA1 | Date | |
---|---|---|---|
![]() |
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 | ||
![]() |
d7aa76634f | ||
![]() |
fb8ca0fd75 | ||
![]() |
a75c145755 | ||
![]() |
a6224e6cb2 | ||
![]() |
67a2158527 | ||
![]() |
0a3a939c98 | ||
![]() |
740690f97c | ||
![]() |
9695ef0a7e | ||
![]() |
86d7a55329 | ||
![]() |
84f3811ce7 | ||
![]() |
14d30b0bc8 | ||
![]() |
aa13589248 | ||
![]() |
63cd00c88e | ||
![]() |
50e67fd653 | ||
![]() |
d3f8361ac3 | ||
![]() |
26d57b4d39 | ||
![]() |
5f250e3347 | ||
![]() |
7ea44670d1 | ||
![]() |
a985d6eee3 | ||
![]() |
bef81bde3e | ||
![]() |
d77e1ad581 | ||
![]() |
dd78e2c198 | ||
![]() |
a595a2af8a | ||
![]() |
09f506a944 | ||
![]() |
7e123da67c | ||
![]() |
cd0af8012e | ||
![]() |
554e79f09b | ||
![]() |
853e99f3ec | ||
![]() |
096ee5934f | ||
![]() |
47766e2fb2 | ||
![]() |
10d0f4566e | ||
![]() |
00af4708aa | ||
![]() |
9879017b34 | ||
![]() |
8ee02189f4 | ||
![]() |
13d7cdd00c | ||
![]() |
32eddbb903 | ||
![]() |
3234b66ba4 | ||
![]() |
9722152a28 | ||
![]() |
a34b40ef3e | ||
![]() |
f8683c8533 | ||
![]() |
59838795d0 | ||
![]() |
f5c17c891d | ||
![]() |
7b710c6273 | ||
![]() |
430300fb45 | ||
![]() |
08ee15cb9b | ||
![]() |
f52cc4273f | ||
![]() |
905872bd2f | ||
![]() |
d6f3defab8 | ||
![]() |
bc4703574c | ||
![]() |
121820c837 | ||
![]() |
568c63ea0c | ||
![]() |
a07cda3efa | ||
![]() |
0713d9313c | ||
![]() |
5ec5a04a26 | ||
![]() |
fbc65acdcc | ||
![]() |
ebd1fdba71 | ||
![]() |
6f33f34f46 | ||
![]() |
d3c9328575 | ||
![]() |
5256828d4c | ||
![]() |
5ee9048df9 | ||
![]() |
c574c4c476 | ||
![]() |
b63b380ca2 | ||
![]() |
78fdb39099 | ||
![]() |
35b37d0495 | ||
![]() |
c6e6eea192 | ||
![]() |
d08f569213 | ||
![]() |
49093f9092 | ||
![]() |
9b07b7dd32 | ||
![]() |
81c93f5d3a | ||
![]() |
63436ee0ea | ||
![]() |
5f94f8ceac | ||
![]() |
93991d7896 | ||
![]() |
26ddea56f6 | ||
![]() |
a779fee29b | ||
![]() |
39f3d202b2 | ||
![]() |
94970b6254 | ||
![]() |
3df59ca71b | ||
![]() |
a107c9a2c1 | ||
![]() |
1ecd58a39f | ||
![]() |
22bd173e90 | ||
![]() |
beb1e4e8f2 | ||
![]() |
a1c1ae1ab4 | ||
![]() |
53ec7ae8b0 | ||
![]() |
f659ecbfc6 | ||
![]() |
c710da3dbe | ||
![]() |
b1ff645c37 | ||
![]() |
972dadc8fc | ||
![]() |
92c36581fc | ||
![]() |
88a98580ed | ||
![]() |
54f29890ef | ||
![]() |
a4c9158254 | ||
![]() |
7581645525 | ||
![]() |
21c52ce75d | ||
![]() |
12086ed5b1 | ||
![]() |
6eda7c6c7f | ||
![]() |
1dd67eed7a | ||
![]() |
b36f88dfd4 | ||
![]() |
bf5bc1c504 | ||
![]() |
171f49a70c | ||
![]() |
1dd4e8a650 | ||
![]() |
805b9b0d15 | ||
![]() |
4692a9e42b | ||
![]() |
67936bd97d | ||
![]() |
47b2876e80 | ||
![]() |
e28b9ff57a | ||
![]() |
a655c19399 | ||
![]() |
d594828ffd | ||
![]() |
0df78edc9a | ||
![]() |
24f97d763f | ||
![]() |
5e56acd194 | ||
![]() |
acb38e9759 | ||
![]() |
1f7ca2d4ca | ||
![]() |
39ca344537 | ||
![]() |
db152823bb | ||
![]() |
de7bf09642 | ||
![]() |
2d40775c01 | ||
![]() |
b89f34ca05 | ||
![]() |
b27059568f | ||
![]() |
c5bd2800c5 | ||
![]() |
e978ede8ca | ||
![]() |
aa34a4e41e | ||
![]() |
8a7b753ace | ||
![]() |
817f0a38a8 | ||
![]() |
876c090d5e | ||
![]() |
16ec4c1c7a | ||
![]() |
a1fee45f53 | ||
![]() |
fbcd935535 | ||
![]() |
d62a42ea7b | ||
![]() |
29fbf42ad1 | ||
![]() |
9b005a733c | ||
![]() |
e7ee92274a | ||
![]() |
04173fae0b | ||
![]() |
b0b7fe4531 | ||
![]() |
f561787369 | ||
![]() |
a973ee643a | ||
![]() |
42c4b14599 | ||
![]() |
f2f2f652ae | ||
![]() |
44c3984440 | ||
![]() |
f51638cb0f | ||
![]() |
0c206b30d0 | ||
![]() |
b32808a360 | ||
![]() |
206c1a3c25 | ||
![]() |
ff9184226d | ||
![]() |
b57e12a690 | ||
![]() |
9b589264a5 | ||
![]() |
38a2f91a89 | ||
![]() |
cdb9491593 | ||
![]() |
3aa5ef32d9 | ||
![]() |
820c5a7a0a | ||
![]() |
1b0e7a2597 | ||
![]() |
e210a4247d | ||
![]() |
ac12340857 | ||
![]() |
7212f96d29 | ||
![]() |
a7fdda8b3b | ||
![]() |
36e76ba32e | ||
![]() |
7868aa6210 | ||
![]() |
751aa4002a | ||
![]() |
ae8ba98750 | ||
![]() |
e5215db278 | ||
![]() |
fd522272df | ||
![]() |
316933d392 | ||
![]() |
5020f6d125 | ||
![]() |
42092ac416 | ||
![]() |
641dee0e59 | ||
![]() |
3d29f64831 | ||
![]() |
2c10d329f4 | ||
![]() |
623b018f89 | ||
![]() |
d3ca2654b6 | ||
![]() |
ce528825da | ||
![]() |
1a553285c7 | ||
![]() |
5b421982f9 | ||
![]() |
9ab5fc24b0 | ||
![]() |
473671d6f6 | ||
![]() |
decdd6d733 | ||
![]() |
37744807bc | ||
![]() |
1876042c51 | ||
![]() |
fb28d4093a | ||
![]() |
440f1f013d | ||
![]() |
0f5b7fea17 | ||
![]() |
1a5ed10ad6 | ||
![]() |
ad35d1bf66 | ||
![]() |
246f75b4b1 | ||
![]() |
b190f841b4 | ||
![]() |
c263dcba74 | ||
![]() |
ea6e75abb3 | ||
![]() |
e5cd53c0c9 | ||
![]() |
daa7e661b8 | ||
![]() |
47b170bd1b | ||
![]() |
8a8926323b | ||
![]() |
ca32a8aaad | ||
![]() |
3b4062f0a5 | ||
![]() |
8abc4d4f1f | ||
![]() |
7a8798da89 | ||
![]() |
1b757d9480 | ||
![]() |
c4d900cef1 | ||
![]() |
9247e3de1b | ||
![]() |
5dca4f4447 | ||
![]() |
b1904738b0 | ||
![]() |
4ffc4fa417 | ||
![]() |
4e6195947e | ||
![]() |
40d811f9c2 | ||
![]() |
fbb7bfdc7d | ||
![]() |
c998a4a522 | ||
![]() |
3f036da9de | ||
![]() |
aeacb93440 | ||
![]() |
467ae96c39 | ||
![]() |
29a05370d9 | ||
![]() |
7adc26966d | ||
![]() |
b2274030e7 | ||
![]() |
21d92cdd6d | ||
![]() |
ea4c715763 | ||
![]() |
9e4fdf8bd9 | ||
![]() |
42f95c528f | ||
![]() |
a398392758 | ||
![]() |
6a89629b7c | ||
![]() |
1bff310bc0 | ||
![]() |
7d32bcec9c | ||
![]() |
5ae601b6da | ||
![]() |
1342037802 | ||
![]() |
152fd75319 | ||
![]() |
fc1984f05c | ||
![]() |
22e3083dc1 | ||
![]() |
e5401e2332 | ||
![]() |
1cf6551bc4 | ||
![]() |
add348eebe | ||
![]() |
f4ee57612a | ||
![]() |
a90cdca8b1 | ||
![]() |
6f59a5319e | ||
![]() |
1e8d6f0f05 | ||
![]() |
7ab80d28ee | ||
![]() |
f04454a5e7 | ||
![]() |
735812c722 | ||
![]() |
f5bd4966ef | ||
![]() |
06b86b060d | ||
![]() |
e94b1a578a | ||
![]() |
da77217954 | ||
![]() |
327b4019e6 | ||
![]() |
290ec2b74f | ||
![]() |
cc2afd5a84 | ||
![]() |
cfbaf89318 | ||
![]() |
e7ffc02b67 | ||
![]() |
c170f44f57 | ||
![]() |
7f766e8fa2 | ||
![]() |
6e79c571d3 | ||
![]() |
9eece534e2 | ||
![]() |
130a46e899 | ||
![]() |
f273517561 | ||
![]() |
f09c29b862 | ||
![]() |
07f1ec803b | ||
![]() |
c0cafa419f | ||
![]() |
47b83ebb6e | ||
![]() |
d87b7a4588 | ||
![]() |
656313ad1c | ||
![]() |
60b854ec2a | ||
![]() |
0d9ec1bfcb | ||
![]() |
626f03707f | ||
![]() |
3b4f594bc8 | ||
![]() |
62c908baff | ||
![]() |
20efb195fc | ||
![]() |
094a442d2b | ||
![]() |
b052282eaa | ||
![]() |
c124870a45 | ||
![]() |
4d834e277c | ||
![]() |
15de9f01df |
7
.github/ISSUE_TEMPLATE/indexer-request.yml
vendored
7
.github/ISSUE_TEMPLATE/indexer-request.yml
vendored
@@ -2,6 +2,13 @@ name: Indexer request
|
||||
description: Suggest a new indexer for this project
|
||||
title: "[req]: "
|
||||
body:
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Have you read our Contributing Guidelines?
|
||||
description: Please read our <a href="https://github.com/Jackett/Jackett/wiki/How-to-request-a-new-tracker">Contributing Guidelines</a> before submitting your request.
|
||||
options:
|
||||
- label: I have read the Contributing Guidelines
|
||||
required: true
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Is there already a request for your tracker?
|
||||
|
9
.github/dependabot.yml
vendored
Normal file
9
.github/dependabot.yml
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
day: "saturday"
|
||||
time: "00:00"
|
||||
timezone: "Europe/London"
|
8
.github/workflows/codeql-analysis.yml
vendored
8
.github/workflows/codeql-analysis.yml
vendored
@@ -50,11 +50,11 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v1
|
||||
uses: github/codeql-action/init@v2
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
@@ -63,7 +63,7 @@ jobs:
|
||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||
|
||||
- name: Set up dotnet
|
||||
uses: actions/setup-dotnet@v1
|
||||
uses: actions/setup-dotnet@v2
|
||||
with:
|
||||
dotnet-version: '6.0.*'
|
||||
|
||||
@@ -71,7 +71,7 @@ jobs:
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v1
|
||||
uses: github/codeql-action/autobuild@v2
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
|
12
.github/workflows/winget.yml
vendored
Normal file
12
.github/workflows/winget.yml
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
name: Publish to WinGet
|
||||
on:
|
||||
release:
|
||||
types: [released]
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: vedantmgoyal2009/winget-releaser@latest
|
||||
with:
|
||||
identifier: Jackett.Jackett
|
||||
token: ${{ secrets.WINGET }}
|
@@ -2,7 +2,7 @@
|
||||
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
|
||||
|
||||
#define MyAppName "Jackett"
|
||||
#define MyAppVersion GetFileVersion(MyFileForVersion)
|
||||
; #define MyAppVersion GetFileVersion(MyFileForVersion) (passed as a parameter)
|
||||
#define MyAppPublisher "Jackett"
|
||||
#define MyAppURL "https://github.com/Jackett/Jackett"
|
||||
#define MyAppExeName "JackettTray.exe"
|
||||
|
92
README.md
92
README.md
@@ -27,7 +27,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
|
||||
* ØMagnet
|
||||
* 1337x
|
||||
* 24rolika
|
||||
* ACG.RIP
|
||||
* ACGsou (36DM)
|
||||
* Anidex
|
||||
@@ -46,8 +45,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BT.etree
|
||||
* BT4G
|
||||
* BTDIGG
|
||||
* BTMET
|
||||
* BTmirror
|
||||
* BTSOW
|
||||
* Byrutor
|
||||
* CloudTorrents
|
||||
* comicat
|
||||
* ConCen
|
||||
* cpasbien
|
||||
@@ -80,8 +82,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Isohunt2
|
||||
* iTorrent
|
||||
* JAV-Torrent
|
||||
* kickasstorrents.ws
|
||||
* kickasstorrents.to
|
||||
* kickasstorrents.ws
|
||||
* Knaben
|
||||
* Legit Torrents
|
||||
* LePorno.info
|
||||
* LimeTorrents
|
||||
@@ -105,13 +108,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Nyaa.si
|
||||
* OneJAV
|
||||
* OpenSharing
|
||||
* OxTorrent
|
||||
* ParnuXi
|
||||
* PC-torrent
|
||||
* PiratBit
|
||||
* Pornforall
|
||||
* PornLeech
|
||||
* PornoLive
|
||||
* PornosLab
|
||||
* PornoTor
|
||||
* PornoTorrent
|
||||
@@ -129,6 +130,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Seedoff
|
||||
* seleZen
|
||||
* Sexy-Pics
|
||||
* Shana Project
|
||||
* ShizaProject
|
||||
* ShowRSS
|
||||
* Solid Torrents
|
||||
@@ -139,17 +141,18 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Tokyo Tosho
|
||||
* Torlock
|
||||
* Torlook
|
||||
* Torrent[CORE]
|
||||
* Torrent Downloads (TD)
|
||||
* Torrent Oyun indir
|
||||
* torrent.by
|
||||
* torrent-pirat
|
||||
* Torrent9
|
||||
* Torrent9 clone
|
||||
* Torrent911
|
||||
* TorrentDownload
|
||||
* TorrentFunk
|
||||
* TorrentGalaxy (TGx)
|
||||
* TorrentKitty
|
||||
* TorrentParadise
|
||||
* TorrentProject2
|
||||
* TorrentQQ (토렌트큐큐)
|
||||
* Torrents.csv
|
||||
@@ -163,14 +166,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
* VST Torrents
|
||||
* xBiT
|
||||
* xxxAdultTorrent
|
||||
* xxxtor
|
||||
* xxxtorrents
|
||||
* YourBittorrent
|
||||
* YTS.ag
|
||||
* zetorrents
|
||||
* Zooqle
|
||||
</details>
|
||||
|
||||
<details> <summary> <b> Supported Semi-Private Trackers </b> </summary>
|
||||
@@ -206,11 +207,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Kinozal
|
||||
* LostFilm.tv
|
||||
* Magnetico (Local DHT) [[site](https://github.com/boramalper/magnetico)]
|
||||
* MVGroup Forum
|
||||
* MVGroup Main
|
||||
* Marine Tracker
|
||||
* Mazepa
|
||||
* Metal Tracker
|
||||
* MuziekFrabriek
|
||||
* MVGroup Forum
|
||||
* MVGroup Main
|
||||
* NetHD (VietTorrent)
|
||||
* PornoLab
|
||||
* PussyTorrents
|
||||
@@ -219,8 +221,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* RiperAM
|
||||
* RockBox
|
||||
* RUDUB (ex-BaibaKoTV)
|
||||
* RuTracker
|
||||
* Rustorka
|
||||
* RuTracker
|
||||
* SATClubbing
|
||||
* Sharewood
|
||||
* SkTorrent
|
||||
* SkTorrent-org
|
||||
@@ -247,22 +250,22 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 52PT
|
||||
* Abnormal
|
||||
* ABtorrents (ABT + RNS)
|
||||
* Acervos
|
||||
* Acid Lounge (A-L)
|
||||
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
|
||||
* Aftershock
|
||||
* Aidoru!Online
|
||||
* Aither
|
||||
* Alleen Retail
|
||||
* AlphaRatio (AR)
|
||||
* AmigosShareClub
|
||||
* anasch.cc
|
||||
* AnimeBytes (AB)
|
||||
* AnimeItalia
|
||||
* AnimeTorrents (AnT) [![(invite needed)][inviteneeded]](#)
|
||||
* AnimeWorld [![(invite needed)][inviteneeded]](#)
|
||||
* Anthelion
|
||||
* Araba Fenice (Phoenix) [![(invite needed)][inviteneeded]](#)
|
||||
* ArabP2P
|
||||
* aro.lol
|
||||
* AsianCinema
|
||||
* Audiences
|
||||
* AudioNews (AN)
|
||||
@@ -277,7 +280,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]](#)
|
||||
@@ -289,12 +291,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
|
||||
@@ -302,6 +305,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]](#)
|
||||
@@ -310,10 +314,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CHDBits [![(invite needed)][inviteneeded]](#)
|
||||
* ChileBT
|
||||
* Cinecalidad
|
||||
* CinemaMovieS_ZT
|
||||
* CinemaZ (EuTorrents)
|
||||
* Cinemageddon [![(invite needed)][inviteneeded]](#)
|
||||
* CinemaMovieS_ZT
|
||||
* Cinematik [![(invite needed)][inviteneeded]](#)
|
||||
* CinemaZ (EuTorrents)
|
||||
* Classix [![(invite needed)][inviteneeded]](#)
|
||||
* Coastal-Crew
|
||||
* Concertos
|
||||
@@ -332,7 +336,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
|
||||
@@ -362,12 +365,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT) [![(invite needed)][inviteneeded]](#)
|
||||
* GiroTorrent
|
||||
* GreatPosterWall (GPW)
|
||||
* GreekDiamond
|
||||
* Greek Team
|
||||
* HaiDan
|
||||
* Haitang
|
||||
* HappyFappy
|
||||
* Hawke-uno [![(invite needed)][inviteneeded]](#)
|
||||
* Hawke-uno
|
||||
* HD Dolby
|
||||
* HD-Bits.com [![(invite needed)][inviteneeded]](#)
|
||||
* HD-Forever (HDF)
|
||||
@@ -385,8 +389,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 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]](#)
|
||||
@@ -396,19 +400,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDU
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasTZ
|
||||
* Hidden-Palace
|
||||
* House of Devil
|
||||
* HQSource (HQS)
|
||||
* Il Corsaro Verde
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* IPTorrents (IPT)
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos [![(invite needed)][inviteneeded]](#)
|
||||
* Immortuos
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* JME-REUNIT3D
|
||||
* JPopsuki [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
* JPTV
|
||||
* Karagarga
|
||||
* Keep Friends [![(invite needed)][inviteneeded]](#)
|
||||
@@ -426,7 +426,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Libble [![(invite needed)][inviteneeded]](#)
|
||||
* LibraNet (LN)
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
* Locadora
|
||||
* LosslessClub [![(invite needed)][inviteneeded]](#)
|
||||
* LST
|
||||
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
|
||||
* MaDs Revolution [![(invite needed)][inviteneeded]](#)
|
||||
* magic-heaven
|
||||
@@ -447,12 +449,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Moviesite
|
||||
* MyAnonamouse (MAM)
|
||||
* MySpleen [![(invite needed)][inviteneeded]](#)
|
||||
* NBTorrents
|
||||
* NCore
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NetCosmo
|
||||
* NetLab
|
||||
* NorBits
|
||||
* oMg[WtF]trackr
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
* Oppaitime
|
||||
* Orpheus
|
||||
@@ -460,19 +461,20 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Ourbits (HDPter) [![(invite needed)][inviteneeded]](#)
|
||||
* P2PBG
|
||||
* P2PElite
|
||||
* Partis [![(invite needed)][inviteneeded]](#)
|
||||
* Partis
|
||||
* PassThePopcorn (PTP)
|
||||
* Peeratiko
|
||||
* PeerJunkies
|
||||
* Peers.FM
|
||||
* Pirata Digital
|
||||
* PigNetwork
|
||||
* PirateTheNet (PTN)
|
||||
* Pixelados
|
||||
* PixelCove (Ultimate Gamer)
|
||||
* PiXELHD (PxHD) [![(invite needed)][inviteneeded]](#)
|
||||
* PolishSource (PS)
|
||||
* PolishTracker
|
||||
* PornBits (PB)
|
||||
* Pornbay [![(invite needed)][inviteneeded]](#)
|
||||
* PornBits (PB)
|
||||
* PotUK
|
||||
* Pretome
|
||||
* PrivateHD (PHD)
|
||||
@@ -492,9 +494,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* R3V WTF! [![(invite needed)][inviteneeded]](#)
|
||||
* Racing4Everyone (R4E)
|
||||
* RacingForMe (RFM)
|
||||
* RedBits
|
||||
* Red Star Torrent (RST) [![(invite needed)][inviteneeded]](#)
|
||||
* Redacted (PassTheHeadphones)
|
||||
* RedBits
|
||||
* Resurrect The Net
|
||||
* RetroFlix
|
||||
* RevolutionTT
|
||||
@@ -505,9 +507,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* SceneRush
|
||||
* SceneTime
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* GreatPosterWall (GPW)
|
||||
* Secret Cinema
|
||||
* SeedFile (SF)
|
||||
* Shareisland
|
||||
* Shazbat [![(invite needed)][inviteneeded]](#)
|
||||
* SiamBIT
|
||||
@@ -536,8 +536,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TEKNO3D [![(invite needed)][inviteneeded]](#)
|
||||
* TellyTorrent
|
||||
* teracod (Movie Zone)
|
||||
* The-Crazy-Ones
|
||||
* The-New-Fun
|
||||
* The Falling Angels (TFA) [![(invite needed)][inviteneeded]](#)
|
||||
* The Geeks
|
||||
* The Horror Charnel (THC)
|
||||
@@ -547,6 +545,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* The Shinning (TsH)
|
||||
* The Show
|
||||
* The Vault [![(invite needed)][inviteneeded]](#)
|
||||
* The-Crazy-Ones
|
||||
* The-New-Fun
|
||||
* TheAudioScene
|
||||
* TheEmpire (TE)
|
||||
* TheLeachZone (TLZ)
|
||||
@@ -554,7 +554,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TJUPT
|
||||
* TLFBits [![(invite needed)][inviteneeded]](#)
|
||||
* TmGHuB
|
||||
* ToTheGlory (TTG) [![(invite needed)][inviteneeded]](#)
|
||||
* Torrent Network (TN)
|
||||
* Torrent Sector Crew (TSC)
|
||||
* Torrent Surf
|
||||
@@ -566,16 +565,16 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentCCF (TCCF)
|
||||
* TorrentDay (TD)
|
||||
* TorrentDB
|
||||
* Torrentech (TTH)
|
||||
* TorrentHeaven [![(invite needed)][inviteneeded]](#)
|
||||
* TorrentHR [![(invite needed)][inviteneeded]](#)
|
||||
* Torrenting (TT) [![(invite needed)][inviteneeded]](#)
|
||||
* TotallyKids (TK)
|
||||
* Torrenting (TT)
|
||||
* Torrentland
|
||||
* TorrentLeech (TL)
|
||||
* TorrentLeech.pl
|
||||
* TorrentMasters
|
||||
* TorrentSeeds (TS)
|
||||
* TotallyKids (TK)
|
||||
* ToTheGlory (TTG) [![(invite needed)][inviteneeded]](#)
|
||||
* TranceTraffic [![(invite needed)][inviteneeded]](#)
|
||||
* Trezzor [![(invite needed)][inviteneeded]](#)
|
||||
* TurkSeed
|
||||
@@ -591,16 +590,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* UnionGang [![(invite needed)][inviteneeded]](#)
|
||||
* UnlimitZ
|
||||
* Vizuk
|
||||
* WDT (Wrestling Desires Torrents / Ultimate Wrestling Torrents)
|
||||
* White Angel
|
||||
* wOOt [![(invite needed)][inviteneeded]](#)
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
* x-ite.me (XM)
|
||||
* xBytesV2
|
||||
* XSpeeds (XS)
|
||||
* Xthor
|
||||
* XWT-Classics
|
||||
* XWTorrents (XWT)
|
||||
* Xthor
|
||||
* YDYPT
|
||||
* Zamunda.net
|
||||
* Zelka.org
|
||||
@@ -627,7 +625,7 @@ To get all Jackett indexers including their capabilities you can use `t=indexers
|
||||
### Filter indexers
|
||||
|
||||
Another special "filter" indexer is available at `/api/v2.0/indexers/<filter>/results/torznab`
|
||||
It will query the configured indexers that match the `<filter>` expression criterias and return the combined results as "all".
|
||||
It will query the configured indexers that match the `<filter>` expression criteria and return the combined results as "all".
|
||||
|
||||
Supported filters
|
||||
Filter | Condition
|
||||
@@ -747,10 +745,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
|
||||
@@ -266,7 +288,7 @@ stages:
|
||||
script: >
|
||||
iscc.exe $(Build.SourcesDirectory)/Installer.iss
|
||||
/O"$(Build.ArtifactStagingDirectory)"
|
||||
/DMyFileForVersion=$(Build.BinariesDirectory)/Jackett/Jackett.Common.dll
|
||||
/DMyAppVersion=$(jackettVersion)
|
||||
/DMySourceFolder=$(Build.BinariesDirectory)/Jackett
|
||||
/DMyOutputFilename=Jackett.Installer.Windows
|
||||
|
||||
@@ -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,18 @@ table td.fit{
|
||||
background-color: #86cca8;
|
||||
}
|
||||
|
||||
.label-tvmaze {
|
||||
background-color: #73c3bd;
|
||||
}
|
||||
|
||||
.label-trakt {
|
||||
background-color: #ef1e25;
|
||||
}
|
||||
|
||||
.label-douban {
|
||||
background-color: #86cc10;
|
||||
}
|
||||
|
||||
.tooltip {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
@@ -927,7 +927,7 @@ function doErrorNotify(indexerId, errorMessage, errorEvent) {
|
||||
var link = "<i><a href=\"" + githubUrl + " " + urlEscapedError + "\" target=\"_blank\">Click here to open an issue on GitHub for " + githubText + ".</a><i>";
|
||||
if (errorMessage.includes("FlareSolverr is not configured")) {
|
||||
link = "<i><a href=\"https://github.com/Jackett/Jackett#configuring-flaresolverr\" target=\"_blank\">Instructions to install and configure FlareSolverr.</a><i><br />" +
|
||||
"<i><a href=\"https://github.com/Jackett/Jackett/wiki/Troubleshooting#error-connecting-to-flaresolverr-server\" target=\"_blank\">Troubleshooting frecuent errors with FlareSolverr.</a><i>";
|
||||
"<i><a href=\"https://github.com/Jackett/Jackett/wiki/Troubleshooting#error-connecting-to-flaresolverr-server\" target=\"_blank\">Troubleshooting frequent errors with FlareSolverr.</a><i>";
|
||||
}
|
||||
doNotify("An error occurred while " + errorEvent + " this indexer<br /><b>" + htmlEscapedError + "</b><br />" + link,
|
||||
"danger", "glyphicon glyphicon-alert", false);
|
||||
@@ -973,6 +973,9 @@ 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");
|
||||
var DownloadVolumeFactor = parseFloat($(row).find("td.DownloadVolumeFactor").html());
|
||||
@@ -1010,6 +1013,19 @@ 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>');
|
||||
}
|
||||
|
||||
if (!isNaN(DownloadVolumeFactor)) {
|
||||
if (DownloadVolumeFactor == 0) {
|
||||
labels.append('\n<span class="label label-success">FREELEECH</span>');
|
||||
|
@@ -292,6 +292,18 @@ table td.fit{
|
||||
background-color: #86cca8;
|
||||
}
|
||||
|
||||
.label-tvmaze {
|
||||
background-color: #73c3bd;
|
||||
}
|
||||
|
||||
.label-trakt {
|
||||
background-color: #ef1e25;
|
||||
}
|
||||
|
||||
.label-douban {
|
||||
background-color: #86cc10;
|
||||
}
|
||||
|
||||
.tooltip {
|
||||
pointer-events: none;
|
||||
}
|
||||
|
@@ -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=202204251" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=202204251" 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">
|
||||
@@ -80,7 +80,7 @@
|
||||
<h4>Adding a Jackett indexer in Sonarr or Radarr</h4>
|
||||
<ol>
|
||||
<li>Go to <b>Settings > Indexers > Add > Torznab > Custom</b>.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy Torznab Feed</button> button and paste it into the Sonarr/Radarr <b>URL</b> field.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="disabled btn btn-xs btn-info">Copy Torznab Feed</button> button and paste it into the Sonarr/Radarr <b>URL</b> field.</li>
|
||||
<li>For the <b>API key</b> use <b class="api-key-text"></b>.</li>
|
||||
<li>Configure the correct category IDs via the <b>(Anime) Categories</b> options. See the Jackett indexer configuration for a list of supported categories.</li>
|
||||
</ol>
|
||||
@@ -88,12 +88,12 @@
|
||||
<ol>
|
||||
<li>Go to <b>Settings > Searchers</b>.</li>
|
||||
<li>Enable <b>TorrentPotato</b>.
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy Potato Feed</button> button and paste it into the CouchPotato <b>host</b> field.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="disabled btn btn-xs btn-info">Copy Potato Feed</button> button and paste it into the CouchPotato <b>host</b> field.</li>
|
||||
<li>For the <b>Passkey</b> use <b class="api-key-text"></b>. Leave the <b>username</b> field blank.</li>
|
||||
</ol>
|
||||
<h4>Adding a Jackett indexer to RSS clients (RSS feed)</h4>
|
||||
<ol>
|
||||
<li>Click on the indexers corresponding <button type="button" class="btn btn-xs btn-info">Copy RSS Feed</button> button and paste it into the URL field of the RSS client.</li>
|
||||
<li>Click on the indexers corresponding <button type="button" class="disabled btn btn-xs btn-info">Copy RSS Feed</button> button and paste it into the URL field of the RSS client.</li>
|
||||
<li>
|
||||
You can adjust the <b>q</b> (search string) and <b>cat</b> (categories) arguments accordingly.
|
||||
E.g. <b>...&cat=2030,2040&q=big+buck+bunny</b> will search for "big buck bunny" in the Movies/SD (2030) and Movies/HD (2040) categories (See the indexer configuration for available categories).
|
||||
@@ -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-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-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=20220426"></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=202204251" 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,16 +12,11 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.llc/
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.bet/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.unblockit.dev/
|
||||
- https://1337x.unblockit.ltd/
|
||||
- https://1337x.unblockit.link/
|
||||
- https://1337x.unblockit.buzz/
|
||||
- https://1337x.unblocked.monster/
|
||||
- https://1337x.unblockit.club/
|
||||
- https://1337x.unblockit.onl/
|
||||
- https://1337x.unblockit.li/
|
||||
- https://1337x.unblockit.uno/
|
||||
- https://1337x.is/
|
||||
@@ -37,6 +32,11 @@ legacylinks:
|
||||
- https://1337x.nocensor.biz/
|
||||
- https://1337x.gd/
|
||||
- https://1337x.unblockit.day/
|
||||
- https://1337x.unblockit.llc/
|
||||
- https://1337x.unblockit.blue/
|
||||
- https://1337x.unblockit.name/
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.ist/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -127,6 +127,7 @@ caps:
|
||||
movie-search: [q]
|
||||
music-search: [q, album, artist]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
settings:
|
||||
- name: flaresolverr
|
||||
@@ -181,9 +182,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/"])
|
||||
@@ -194,7 +192,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
|
||||
@@ -205,9 +204,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
|
||||
|
@@ -1,138 +0,0 @@
|
||||
---
|
||||
id: 24rolika
|
||||
name: 24rolika
|
||||
description: "24rolika is a RUSSIAN Public Torrent Tracker for 3X"
|
||||
language: ru-RU
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://24rolika.ru/ # does not support https
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# only subcategories of Порно фильмы (Movies) have torrents
|
||||
- {id: 94, cat: XXX, desc: "4K порно фильмы", default: true}
|
||||
- {id: 76, cat: XXX, desc: "Японские порно фильмы", default: true}
|
||||
- {id: 81, cat: XXX, desc: "Бразильские порно фильмы", default: true}
|
||||
- {id: 41, cat: XXX, desc: "Итальянские порно фильмы", default: true}
|
||||
- {id: 42, cat: XXX, desc: "Американские порно фильмы", default: true}
|
||||
- {id: 43, cat: XXX, desc: "Немецкие порно фильмы", default: true}
|
||||
- {id: 44, cat: XXX, desc: "Французские порно фильмы", default: true}
|
||||
- {id: 45, cat: XXX, desc: "Русские порно фильмы", default: true}
|
||||
- {id: 47, cat: XXX, desc: "Порно фильмы 2018 года", default: true}
|
||||
- {id: 75, cat: XXX, desc: "Порно фильмы 2019 года", default: true}
|
||||
- {id: 92, cat: XXX, desc: "Порно фильмы 2020 года", default: true}
|
||||
- {id: 93, cat: XXX, desc: "Порно фильмы 2021 года", default: true}
|
||||
- {id: 48, cat: XXX, desc: "Ретро / Классика", default: true}
|
||||
- {id: 49, cat: XXX, desc: "С русским переводом", default: true}
|
||||
- {id: 82, cat: XXX, desc: "С сюжетом", default: true}
|
||||
- {id: 91, cat: XXX, desc: "Пародии", default: true}
|
||||
- {id: 51, cat: XXX, desc: "Brazzers", default: true}
|
||||
- {id: 52, cat: XXX, desc: "BangBros", default: true}
|
||||
- {id: 53, cat: XXX, desc: "Marc Dorcel", default: true}
|
||||
- {id: 54, cat: XXX, desc: "Evil Angel", default: true}
|
||||
- {id: 55, cat: XXX, desc: "Tushy", default: true}
|
||||
- {id: 56, cat: XXX, desc: "Blacked", default: true}
|
||||
- {id: 57, cat: XXX, desc: "Evil Playgrounds", default: true}
|
||||
- {id: 58, cat: XXX, desc: "Reality Kings", default: true}
|
||||
- {id: 59, cat: XXX, desc: "New Sensations", default: true}
|
||||
- {id: 60, cat: XXX, desc: "Wicked Pictures", default: true}
|
||||
- {id: 61, cat: XXX, desc: "21Sextury", default: true}
|
||||
- {id: 62, cat: XXX, desc: "PornPros", default: true}
|
||||
- {id: 63, cat: XXX, desc: "Private", default: true}
|
||||
- {id: 64, cat: XXX, desc: "DD Busty", default: true}
|
||||
- {id: 65, cat: XXX, desc: "Naughty America", default: true}
|
||||
- {id: 66, cat: XXX, desc: "Third Degree Films", default: true}
|
||||
- {id: 67, cat: XXX, desc: "Hustler", default: true}
|
||||
- {id: 68, cat: XXX, desc: "Blacks on Blondes", default: true}
|
||||
- {id: 69, cat: XXX, desc: "Team Skeet", default: true}
|
||||
- {id: 70, cat: XXX, desc: "Mofos", default: true}
|
||||
- {id: 71, cat: XXX, desc: "Vixen", default: true}
|
||||
- {id: 72, cat: XXX, desc: "Jules Jordan", default: true}
|
||||
- {id: 73, cat: XXX, desc: "Nubile Films", default: true}
|
||||
- {id: 74, cat: XXX, desc: "Digital Playground", default: true}
|
||||
- {id: 83, cat: XXX, desc: "Zero Tolerance", default: true}
|
||||
- {id: 84, cat: XXX, desc: "Pure Taboo", default: true}
|
||||
- {id: 85, cat: XXX, desc: "Devil's Film", default: true}
|
||||
- {id: 86, cat: XXX, desc: "Sweet Sinner", default: true}
|
||||
- {id: 87, cat: XXX, desc: "Penthouse", default: true}
|
||||
- {id: 88, cat: XXX, desc: "Elegant Angel", default: true}
|
||||
- {id: 89, cat: XXX, desc: "Digital Sin", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: date
|
||||
options:
|
||||
date: created
|
||||
title: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href*="index.php?do=download&id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: index.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}catlist[]={{.}}&{{end}}"
|
||||
do: search
|
||||
subaction: search
|
||||
search_start: 0
|
||||
full_search: 1
|
||||
result_from: 1
|
||||
story: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
# 0 in article 1 in comments 2 in static pages 3 in article titles
|
||||
titleonly: 3
|
||||
sortby: "{{ .Config.sort }}"
|
||||
resorder: "{{ .Config.type }}"
|
||||
showposts: 0
|
||||
|
||||
headers:
|
||||
Referer: ["{{ .Config.sitelink }}"]
|
||||
|
||||
rows:
|
||||
selector: article.shortstory
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 94
|
||||
title:
|
||||
selector: h2.short_title a
|
||||
details:
|
||||
selector: h2.short_title a
|
||||
attribute: href
|
||||
download:
|
||||
selector: h2.short_title a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
date:
|
||||
text: now
|
||||
size:
|
||||
text: "512 MB"
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
description:
|
||||
selector: div.video_time
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# DataLife
|
@@ -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]
|
||||
|
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
|
169
src/Jackett.Common/Definitions/acervos-api.yml
Normal file
169
src/Jackett.Common/Definitions/acervos-api.yml
Normal file
@@ -0,0 +1,169 @@
|
||||
---
|
||||
id: acervos
|
||||
name: Acervos (API)
|
||||
description: "Acervos is a Brazilian tracker for movies, tv shows, and others."
|
||||
language: pt-BR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://acervos.cc/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Filmes"}
|
||||
- {id: 2, cat: TV, desc: "TV Séries"}
|
||||
- {id: 3, cat: Other, desc: "Cursos"}
|
||||
- {id: 4, cat: Console, desc: "Jogos"}
|
||||
- {id: 5, cat: PC, desc: "Aplicativos"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 7, cat: Other, desc: "Materiais de Apoio"}
|
||||
|
||||
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://acervos.cc/\" target =_blank>Acervos</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: ["\\.", " "]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bS(\\d+)", "T$1"]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
filters:
|
||||
- name: re_replace
|
||||
args:
|
||||
- "\\bDUAL\\b"
|
||||
- "Portuguese (Brazil) English"
|
||||
details:
|
||||
selector: details_link
|
||||
_cat:
|
||||
selector: category
|
||||
_type:
|
||||
selector: type
|
||||
_res:
|
||||
selector: resolution
|
||||
optional: true
|
||||
_reg:
|
||||
selector: region
|
||||
optional: true
|
||||
description:
|
||||
text: "{{ .Result._cat }} {{ .Result._type }} {{ .Result._res }} {{ .Result._reg }}"
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
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 5 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.1.0
|
@@ -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:
|
||||
|
@@ -23,7 +23,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -104,6 +104,8 @@ search:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster
|
||||
filters:
|
||||
@@ -150,4 +152,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.0.7
|
||||
# json UNIT3D 6.2.1
|
||||
|
@@ -1,186 +0,0 @@
|
||||
---
|
||||
id: alleenretail
|
||||
name: Alleen Retail
|
||||
description: "Alleen Retail is a DUTCH Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: nl-NL
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.alleenretail.org/ # does not support https ERR_CONNECTION_REFUSED
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2, cat: Movies/DVD, desc: "Films DVD"}
|
||||
- {id: 17, cat: Movies, desc: "Films Promo"}
|
||||
- {id: 3, cat: Audio/Video, desc: "Muziek Video"}
|
||||
- {id: 4, cat: Audio/Video, desc: "Cabaret"}
|
||||
- {id: 18, cat: Movies, desc: "Films Kids"}
|
||||
- {id: 6, cat: TV, desc: "TV Series"}
|
||||
- {id: 19, cat: Other, desc: "Overigen"}
|
||||
- {id: 20, cat: TV/Documentary, desc: "Documentaire"}
|
||||
- {id: 9, cat: PC/Games, desc: "Games PC"}
|
||||
- {id: 10, cat: Books/Mags, desc: "Magazines"}
|
||||
- {id: 11, cat: Movies/SD, desc: "Films AVI/DivX"}
|
||||
- {id: 22, cat: Movies, desc: "Films Classics"}
|
||||
- {id: 8, cat: Audio, desc: "Muziek"}
|
||||
- {id: 23, cat: PC/Mac, desc: "Software Mac"}
|
||||
- {id: 1, cat: Books/Comics, desc: "Stripboeken"}
|
||||
- {id: 13, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 14, cat: PC/Mobile-Other, desc: "Navigatie"}
|
||||
- {id: 7, cat: PC/0day, desc: "Software PC"}
|
||||
- {id: 12, cat: PC/Mobile-iOS, desc: "iOS"}
|
||||
- {id: 21, cat: Movies/HD, desc: "Films HD"}
|
||||
- {id: 5, cat: Audio/Audiobook, desc: "Luisterboeken"}
|
||||
- {id: 15, cat: XXX, desc: "18+"}
|
||||
- {id: 24, cat: Movies/UHD, desc: "Films Blu-ray/3D/4K"}
|
||||
- {id: 16, cat: Books/EBook, desc: "Ebooks"}
|
||||
|
||||
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: thankyou
|
||||
# type: text
|
||||
# label: Thank You Comment
|
||||
# - name: info
|
||||
# type: info
|
||||
# label: Thank you comment
|
||||
# default: This site requires you to leave a Thank You comment before you can download. Enter your personalised comment above.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: table.main:contains("Aanmelden mislukt")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
# download:
|
||||
# before:
|
||||
# # /comment.php?action=add&tid=166386
|
||||
# path: comment.php
|
||||
# method: post
|
||||
# inputs:
|
||||
# action: add
|
||||
# tid: "{{ .DownloadUri.Query.id }}"
|
||||
# text: "{{ .Config.thankyou }}"
|
||||
# submit: Opslaan
|
||||
# selectors:
|
||||
# - selector: a[href^="download.php?id="]
|
||||
# attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: 1
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.mainouter
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)seizoen\\s*(\\d{1,2})\\s*(tot|t\/m)\\s*(\\d{1,2})", "S$1-$3"]
|
||||
- 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"]
|
||||
- name: re_replace
|
||||
args: ["(?i)compleet", "Complete"]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: a[href^="details_bestanden.php?torrent_id="]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(.+?) in"
|
||||
files:
|
||||
selector: a[href^="details_bestanden.php?torrent_id="]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "in (\\d+) bestan"
|
||||
grabs:
|
||||
selector: table tr:nth-child(2) td:nth-child(1)
|
||||
date:
|
||||
selector: table tr:nth-child(2) td:nth-child(3)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["januari", "January"]
|
||||
- name: replace
|
||||
args: ["februari", "February"]
|
||||
- name: replace
|
||||
args: ["maart", "March"]
|
||||
- name: replace
|
||||
args: ["april", "April"]
|
||||
- name: replace
|
||||
args: ["mei", "May"]
|
||||
- name: replace
|
||||
args: ["juni", "June"]
|
||||
- name: replace
|
||||
args: ["juli", "July"]
|
||||
- name: replace
|
||||
args: ["augustus", "August"]
|
||||
- name: replace
|
||||
args: ["september", "September"]
|
||||
- name: replace
|
||||
args: ["oktober", "October"]
|
||||
- name: replace
|
||||
args: ["november", "November"]
|
||||
- name: replace
|
||||
args: ["december", "December"]
|
||||
- name: re_replace
|
||||
args: ["\\s*om\\s*", " "]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2 January 2006 15:04:05 -07:00"
|
||||
seeders_optional:
|
||||
optional: true
|
||||
selector: table tr:nth-child(3) td:nth-child(6) font b
|
||||
seeders:
|
||||
text: "{{ if .Result.seeders_optional }}{{ .Result.seeders_optional }}{{ else }}0{{ end }}"
|
||||
leechers_optional:
|
||||
optional: true
|
||||
selector: table tr:nth-child(3) td:nth-child(6) font b:nth-child(2)
|
||||
leechers:
|
||||
text: "{{ if .Result.leechers_optional }}{{ .Result.leechers_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
# between 1.00 and 1.50 is required, and above 1.50 prohibited
|
||||
text: 1.25
|
||||
# engine n/a
|
@@ -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:
|
||||
|
@@ -109,11 +109,7 @@ search:
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["javascript:ShowImage('/images/imdb/", "tt"]
|
||||
- name: replace
|
||||
args: [".jpg')", ""]
|
||||
- name: replace
|
||||
args: ["tt0000000", ""]
|
||||
args: ["javascript:ShowImage('/images/imdb/tt0000000.jpg')", ""]
|
||||
poster:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
@@ -124,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:
|
||||
|
@@ -28,7 +28,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -84,7 +84,7 @@ search:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range $i, $e := .Categories }}&categories[{{$i}}]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
|
142
src/Jackett.Common/Definitions/anthelion-api.yml
Normal file
142
src/Jackett.Common/Definitions/anthelion-api.yml
Normal file
@@ -0,0 +1,142 @@
|
||||
---
|
||||
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
|
||||
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,9 +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
|
||||
@@ -97,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
|
||||
|
@@ -16,7 +16,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
|
||||
@@ -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
|
||||
@@ -126,7 +128,7 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: time
|
||||
|
@@ -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 }}"
|
||||
@@ -109,6 +109,9 @@ search:
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
|
@@ -6,20 +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.llc/
|
||||
- https://audiobookbay.fi/
|
||||
- https://audiobookbay.se/
|
||||
- https://audiobookbay.unblockit.bet/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- https://audiobookbay.unblockit.app/
|
||||
- https://audiobookbay.unblockit.dev/
|
||||
- https://audiobookbay.unblockit.ltd/
|
||||
- https://audiobookbay.unblockit.link/
|
||||
- https://audiobookbay.unblockit.buzz/
|
||||
- https://audiobookbay.unblockit.club/
|
||||
- https://audiobookbay.unblockit.onl/
|
||||
- https://audiobookbay.unblockit.li/
|
||||
- https://audiobookbay.unblockit.uno/
|
||||
- https://audiobookbay.unblockit.ch/
|
||||
- https://audiobookbay.unblockit.ws/
|
||||
@@ -31,7 +22,15 @@ legacylinks:
|
||||
- http://audiobookbay.ws/
|
||||
- https://audiobookbay.unblockit.how/
|
||||
- https://audiobookbay.unblockit.cam/
|
||||
- https://audiobookbay.unblockit.biz/
|
||||
- https://audiobookbay.unblockit.day/
|
||||
- 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/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -84,15 +83,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]
|
||||
@@ -145,6 +144,7 @@ search:
|
||||
selector: img
|
||||
attribute: src
|
||||
date_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
@@ -154,6 +154,7 @@ search:
|
||||
date:
|
||||
text: "{{ if .Result.date_optional }}{{ .Result.date_optional }}{{ else }}now{{ end }}"
|
||||
size_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
|
@@ -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 }}"
|
||||
|
@@ -15,7 +15,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
tv-search: [q, season, ep, imdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
|
||||
settings:
|
||||
@@ -120,7 +120,7 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
|
||||
attribute: href
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
|
@@ -65,6 +65,10 @@ settings:
|
||||
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: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -83,7 +87,7 @@ settings:
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrentek száma egy oldalon:</b> setting to <b>100</b> on your account profile.
|
||||
default: For best results, change the <b>Torrentek száma egy oldalon:</b> setting to <b>50</b> on your account profile.
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
@@ -96,25 +100,37 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: ["!", 33, 66, 99]
|
||||
inputs:
|
||||
# 0 all, 1 active, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 0
|
||||
- path: browse_xxx.php
|
||||
categories: [33, 66, 99]
|
||||
inputs:
|
||||
# 0 active, 1 all, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 1
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 deadonly, 3 myuploads, 4 zeroseed
|
||||
incldead: 1
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# site does not support imdbid searching or appear to have freeleech
|
||||
# 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(a[href^="userdetails.php?id="]):has(a[href^="download.php?torrent="])
|
||||
selector: "table[width=\"100%\"]:last-child tbody tr:has(div.tooltip){{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
selector: a[href*=".php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
genre:
|
||||
selector: span.tooltiptext
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
title:
|
||||
selector: div.tooltip
|
||||
remove: span
|
||||
@@ -124,19 +140,44 @@ search:
|
||||
poster:
|
||||
selector: a.preview
|
||||
attribute: href
|
||||
download:
|
||||
download_1:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
optional: true
|
||||
attribute: href
|
||||
download_2:
|
||||
selector: input[onclick*="download.php?torrent="]
|
||||
optional: true
|
||||
attribute: onclick
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["window.open('", ""]
|
||||
- name: replace
|
||||
args: ["', '_self');", ""]
|
||||
download:
|
||||
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:
|
||||
# 2022<br>03/15.
|
||||
selector: td:nth-child(7)
|
||||
# 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: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "200601/02. -07:00"
|
||||
- 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]
|
||||
|
@@ -108,18 +108,16 @@ search:
|
||||
- name: replace
|
||||
args: ["details", "download"]
|
||||
description:
|
||||
selector: img[src="styles/images/adwarn.png"]
|
||||
optional: true
|
||||
selector: i.fa-ad
|
||||
attribute: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Присутствует реклама", "Contains Adverts"]
|
||||
poster:
|
||||
args: ["Присутствует реклама", "[Contains Adverts] "]
|
||||
description|append:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) "
|
||||
poster:
|
||||
selector: div.it-image > img
|
||||
attribute: src
|
||||
date_today:
|
||||
# Сегодня в 09:09 от
|
||||
# Вчера в 22:47 от
|
||||
|
@@ -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:
|
||||
|
@@ -23,6 +23,8 @@ caps:
|
||||
- {id: 71, cat: Movies, desc: "NFLIX"}
|
||||
- {id: 78, cat: TV, desc: "EXXEN"}
|
||||
- {id: 79, cat: TV, desc: "BLUTV"}
|
||||
- {id: 90, cat: TV, desc: "Disney+"}
|
||||
- {id: 91, cat: TV, desc: "Prime Video"}
|
||||
- {id: 58, cat: Movies, desc: "Film"}
|
||||
- {id: 72, cat: Movies, desc: "Belgesel"}
|
||||
- {id: 60, cat: Movies/3D, desc: "3D"}
|
||||
@@ -53,9 +55,16 @@ caps:
|
||||
- {id: 46, cat: Audio, desc: "Yab@ncı MüziK"}
|
||||
- {id: 21, cat: Audio/Video, desc: "Video Klipler"}
|
||||
- {id: 2, cat: Console, desc: "Oyun"}
|
||||
- {id: 74, cat: PC/Games, desc: "PC"}
|
||||
- {id: 73, cat: Console, desc: "SONY-PS"}
|
||||
- {id: 74, cat: PC/Games, desc: "Oyun PC"}
|
||||
- {id: 84, cat: Console/PS3, desc: "Oyun Playstation"}
|
||||
- {id: 85, cat: Console/PS3, desc: "Oyun Playstation 2"}
|
||||
- {id: 82, cat: Console/PSP, desc: " Oyun PSP"}
|
||||
- {id: 83, cat: Console/Other, desc: "Oyun Gameboy"}
|
||||
- {id: 87, cat: Console/XBox, desc: "Oyun XBOX"}
|
||||
- {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:
|
||||
|
@@ -17,7 +17,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
|
||||
settings:
|
||||
@@ -96,8 +96,10 @@ search:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
@@ -107,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:
|
||||
@@ -142,4 +155,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.0.6 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:
|
||||
|
@@ -27,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]
|
||||
|
@@ -1,140 +0,0 @@
|
||||
---
|
||||
id: brasiltracker
|
||||
name: BrasilTracker
|
||||
description: "BrasilTracker is a BRAZILIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pt-BR
|
||||
encoding: UTF-8
|
||||
type: private
|
||||
links:
|
||||
- https://brasiltracker.org/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q, imdbid]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: info_8000
|
||||
type: info
|
||||
label: About BrasilTracker Categories
|
||||
default: BrasilTracker does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: time
|
||||
options:
|
||||
time: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_results
|
||||
type: info
|
||||
label: "Search results"
|
||||
default: "This indexer does not support <b>Torrent Groups</b><br />Un-tick the <b>Torrent grouping</b><i> (Habilitar Grupo de Torrents)</i> checkbox in your <b>Configurações</b>."
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form#loginform
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
keeplogged: 1
|
||||
error:
|
||||
- selector: form#loginform:contains("incorretos")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?auth="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://brasiltracker.org/torrents.php?order_by=time&order_way=desc&freetorrent=1&filter_cat[6]=1&filter_cat[3]=1&action=basic&searchsubmit=1
|
||||
# https://brasiltracker.org/torrents.php?searchstr=mandalorain&order_by=size&order_way=desc&action=basic&searchsubmit=1
|
||||
# https://brasiltracker.org/torrents.php?searchstr=tt8179024&order_by=time&order_way=desc&action=basic&searchsubmit=1
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
searchstr: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
order_by: "{{ .Config.sort }}"
|
||||
order_way: "{{ .Config.type }}"
|
||||
action: basic
|
||||
freetorrent: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
searchsubmit: 1
|
||||
|
||||
rows:
|
||||
selector: table#torrent_table > tbody > tr.torrent
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
details:
|
||||
selector: a[href^="torrents.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents.php?action=download&id="]
|
||||
attribute: href
|
||||
description:
|
||||
selector: div.tags
|
||||
poster:
|
||||
selector: img[alt="Cover"]
|
||||
attribute: src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: span.time
|
||||
attribute: title
|
||||
filters:
|
||||
- name: append
|
||||
args: " -03:00" # BRT
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006, 15:04 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
strong.tl_free: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
title_details:
|
||||
selector: div.torrent_info
|
||||
remove: strong
|
||||
title:
|
||||
selector: a[href^="torrents.php?id="]
|
||||
filters:
|
||||
- name: append
|
||||
args: " {{ .Result.title_details }}"
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# Project Gazelle
|
187
src/Jackett.Common/Definitions/breizhpeers.yml
Normal file
187
src/Jackett.Common/Definitions/breizhpeers.yml
Normal file
@@ -0,0 +1,187 @@
|
||||
---
|
||||
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
|
||||
magnet:
|
||||
selector: magnet_link
|
||||
optional: true
|
||||
infohash:
|
||||
selector: info_hash
|
||||
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
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.2.1 custom
|
@@ -7,10 +7,12 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btdig.com/
|
||||
- https://btdiggwzoyrwwbiv.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ws/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/
|
||||
legacylinks:
|
||||
- http://btdiggwzoyrwwbiv.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
|
||||
- https://btdiggwzoyrwwbiv.onion.ly/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
105
src/Jackett.Common/Definitions/btmet.yml
Normal file
105
src/Jackett.Common/Definitions/btmet.yml
Normal file
@@ -0,0 +1,105 @@
|
||||
---
|
||||
id: btmet
|
||||
name: BTMET
|
||||
description: "BTMET is a Public magnet indexer"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btmet.com/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Audio: Audio
|
||||
Compressed: Other
|
||||
Document: Books
|
||||
Image: Other
|
||||
Installation: PC
|
||||
Other: Other
|
||||
TV: TV # dummy cat to allow both Movies,TV to be categorised when Video is found.
|
||||
Video: Movies
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 0
|
||||
options:
|
||||
0: relevance
|
||||
1: created
|
||||
2: size
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://btmet.com/search.php?q=2022&c=&l=&o=1
|
||||
- path: search.php
|
||||
inputs:
|
||||
q: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
# does not support multi cats so defaulting to all
|
||||
c: ""
|
||||
# 1 Chinese, 2 Japanese, 3 Korean
|
||||
l: ""
|
||||
o: "{{ if .Keywords }}{{ .Config.sort }}{{ else }}1{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: div.search-item:has(a[href^="magnet"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div.item-bar > span[class="cpill blue-pill"]
|
||||
category|append:
|
||||
# add tv to video
|
||||
optional: true
|
||||
selector: div.item-bar > span[class="cpill blue-pill"]
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Video", "TV"]
|
||||
title:
|
||||
selector: a.smashTitle > script
|
||||
filters:
|
||||
- name: urldecode
|
||||
- name: replace
|
||||
args: ['document.write(decodeURIComponent("', ""]
|
||||
- name: replace
|
||||
args: ['"));', ""]
|
||||
- name: replace
|
||||
args: ["<b style='color:#ea644a'>", ""]
|
||||
- name: replace
|
||||
args: ["</b>", ""]
|
||||
details:
|
||||
selector: a.smashTitle
|
||||
attribute: href
|
||||
infohash:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([a-f|0-9]{40})
|
||||
date:
|
||||
# unix
|
||||
selector: div.item-bar > span:nth-child(2) > b
|
||||
attribute: t
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{10})
|
||||
size:
|
||||
selector: div.item-bar > span:nth-child(3) > b
|
||||
files:
|
||||
selector: div.item-bar > span:nth-child(4) > b
|
||||
seeders:
|
||||
selector: div.item-bar > span:nth-child(5) > b
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
100
src/Jackett.Common/Definitions/btmirror.yml
Normal file
100
src/Jackett.Common/Definitions/btmirror.yml
Normal file
@@ -0,0 +1,100 @@
|
||||
---
|
||||
id: btmirror
|
||||
name: BTmirror
|
||||
description: "BTmirror is a Public BitTorrent DHT search engine."
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btsao.com/
|
||||
- https://btmirror.unblockit.bet/
|
||||
legacylinks:
|
||||
- https://btmirror.unblockit.blue/
|
||||
- https://btmirror.unblockit.name/
|
||||
- https://btmirror.unblockit.ist/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: info_8000
|
||||
type: info
|
||||
label: About BTmirror Categories
|
||||
default: BTmirror does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: create_time
|
||||
options:
|
||||
relavance: relevance
|
||||
create_time: created
|
||||
length: size
|
||||
|
||||
download:
|
||||
infohash:
|
||||
hash:
|
||||
selector: p.magnet a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([A-F|a-f|0-9]{40})
|
||||
title:
|
||||
selector: p.magnet a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "&dn=(.+?)$"
|
||||
- name: validfilename
|
||||
|
||||
search:
|
||||
# https://btsao.com/en/search/2022/?c=&s=create_time
|
||||
# returns 10 results per page
|
||||
paths:
|
||||
- path: "en/search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}/"
|
||||
- path: "en/search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}/2"
|
||||
inputs:
|
||||
c: ""
|
||||
s: "{{ .Config.sort }}"
|
||||
|
||||
rows:
|
||||
selector: div.ssbox
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
title:
|
||||
selector: h3
|
||||
details:
|
||||
selector: h3 a
|
||||
attribute: href
|
||||
download:
|
||||
selector: h3 a
|
||||
attribute: href
|
||||
date:
|
||||
selector: span:contains("date:") b
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "2006-01-02"
|
||||
size:
|
||||
selector: span:contains("size:") b
|
||||
files:
|
||||
selector: span:contains("files:") b
|
||||
grabs:
|
||||
selector: span:contains("人气:") b
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine: n/a
|
@@ -208,9 +208,6 @@ search:
|
||||
# a href="http://tracker.btnext.com/data/torrents/imdb/tt0249677.jpg"
|
||||
selector: a[href*="/imdb/tt"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: tt(\d+)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"img[title=\"FREE!\"]": 0
|
||||
|
@@ -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.click/
|
||||
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,7 @@ legacylinks:
|
||||
- https://btsow.us/
|
||||
- https://btsow.one/
|
||||
- https://btsow.rest/
|
||||
- https://btsow.bar/
|
||||
|
||||
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="]
|
||||
|
@@ -256,7 +256,7 @@ settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a.itemtop_games
|
||||
- selector: a.itemdown_games
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
@@ -282,7 +282,8 @@ search:
|
||||
resorder: desc
|
||||
|
||||
rows:
|
||||
selector: div.short_search
|
||||
# results without sizes are just pre-release announcements
|
||||
selector: div.short_search:has(div.shor_subtitles span:nth-child(2):contains(" "))
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -318,9 +319,7 @@ search:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
size:
|
||||
text: 0B
|
||||
size:
|
||||
size_rus:
|
||||
selector: div.shor_subtitles span:nth-child(2):contains("Б")
|
||||
optional: true
|
||||
filters:
|
||||
@@ -332,6 +331,11 @@ search:
|
||||
args: ["МБ", "MB"]
|
||||
- name: replace
|
||||
args: ["КБ", "KB"]
|
||||
size_eng:
|
||||
selector: div.shor_subtitles span:nth-child(2):contains("B")
|
||||
optional: true
|
||||
size:
|
||||
text: "{{ if or .Result.size_rus .Result.size_eng }}{{ or .Result.size_rus .Result.size_eng }}{{ else }}0 B{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
|
@@ -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
|
||||
|
@@ -100,9 +100,10 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .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^=\"letoltes.php?cat=\"])"
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -126,6 +127,11 @@ 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
|
||||
@@ -133,8 +139,7 @@ search:
|
||||
- name: regexp
|
||||
args: "src=(.*?) width"
|
||||
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
|
||||
|
@@ -24,7 +24,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -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:
|
||||
@@ -136,7 +148,7 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: time
|
||||
|
@@ -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:
|
||||
|
77
src/Jackett.Common/Definitions/cloudtorrents.yml
Normal file
77
src/Jackett.Common/Definitions/cloudtorrents.yml
Normal file
@@ -0,0 +1,77 @@
|
||||
---
|
||||
id: cloudtorrents
|
||||
name: CloudTorrents
|
||||
description: "CloudTorrents is a Public Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://cloudtorrents.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: anime, cat: TV/Anime, desc: Anime}
|
||||
- {id: applications, cat: PC, desc: Applications}
|
||||
- {id: books, cat: Books, desc: Books}
|
||||
- {id: games, cat: Console, desc: Games}
|
||||
- {id: movies, cat: Movies, desc: Movies}
|
||||
- {id: music, cat: Audio, desc: Music}
|
||||
- {id: other, cat: Other, desc: Other}
|
||||
- {id: tv, cat: TV, desc: TV}
|
||||
- {id: xxx, cat: XXX, desc: XXX}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search?query={{ .Keywords }}{{ else }}latest{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: split
|
||||
args: ["/", 1]
|
||||
title:
|
||||
selector: a b
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a
|
||||
attribute: href
|
||||
seeders:
|
||||
selector: td[data-title="Se"]
|
||||
leechers:
|
||||
selector: td[data-title="Le"]
|
||||
date:
|
||||
selector: span[title]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: append
|
||||
args: " -09:00" # CUS
|
||||
- name: dateparse
|
||||
args: "02 Jan, 2006 15:04 -07:00"
|
||||
size:
|
||||
selector: td[data-title="Size"]
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -10,7 +10,8 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 62, cat: Books, desc: "EBook"}
|
||||
- {id: 62, cat: Books/EBook, desc: "EBook"}
|
||||
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
|
||||
- {id: 30, cat: TV/Anime, desc: "Filme - Animie"}
|
||||
- {id: 28, cat: Movies/BluRay, desc: "Filme - Bluray"}
|
||||
- {id: 31, cat: Movies/Other, desc: "Filme - Bollywood"}
|
||||
@@ -159,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://www.cpasbien.gg/
|
||||
- https://www.cpasbien.tw/
|
||||
legacylinks:
|
||||
- https://www1.cpasbiens.ws/
|
||||
- https://www2.cpasbiens.ws/
|
||||
@@ -19,6 +19,8 @@ legacylinks:
|
||||
- https://cpasbiens.proxyportal.fun/
|
||||
- https://cpasbiens.uk-unblock.xyz/
|
||||
- https://cpasbiens.ind-unblock.xyz/
|
||||
- https://www.cpasbien.gg/
|
||||
- https://www.cpasbien.vip/
|
||||
- https://cpasbien.to/
|
||||
|
||||
caps:
|
||||
@@ -83,26 +85,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})$", ""]
|
||||
|
@@ -90,13 +90,12 @@ caps:
|
||||
book-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
|
||||
@@ -119,9 +118,14 @@ settings:
|
||||
1: asc
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
path: index.php
|
||||
method: form
|
||||
form: form[action="index.php?page=login"]
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.lista span[style="color:#FF0000;"]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -180,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,18 +7,13 @@ type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.crazyspirits.com/
|
||||
certificates:
|
||||
- cb68471b631304b3b4cec6315cfbad5a6780eb84 # self-signed 13 Mar 2022
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Documentaire
|
||||
- {id: 96, cat: TV/Documentary, desc: "Docus TV"}
|
||||
- {id: 124, cat: TV/Documentary, desc: "Docus Formation Video"}
|
||||
# Films
|
||||
- {id: 1, cat: XXX, desc: "3X"}
|
||||
- {id: 47, cat: XXX, desc: "3X HD720p"}
|
||||
- {id: 48, cat: XXX, desc: "3X HD1080p"}
|
||||
- {id: 1, cat: XXX, desc: "Films 3X"}
|
||||
- {id: 47, cat: XXX, desc: "Films 3X HD720p"}
|
||||
- {id: 48, cat: XXX, desc: "Films 3X HD1080p"}
|
||||
- {id: 49, cat: Movies/3D, desc: "Films 3D"}
|
||||
- {id: 50, cat: Movies/UHD, desc: "Films 4K"}
|
||||
- {id: 51, cat: TV/UHD, desc: "Films 4K UHDTV"}
|
||||
@@ -28,25 +23,31 @@ caps:
|
||||
- {id: 61, cat: Movies/HD, desc: "Films HDRip"}
|
||||
- {id: 59, cat: Movies/DVD, desc: "Films DVDR"}
|
||||
- {id: 60, cat: Movies/DVD, desc: "Films DVDRip"}
|
||||
- {id: 57, cat: Movies/BluRay, desc: "Films BDRip"}
|
||||
- {id: 58, cat: Movies/BluRay, desc: "Films BRRip"}
|
||||
- {id: 57, cat: Movies/BluRay, desc: "Films BD-Rip"}
|
||||
- {id: 58, cat: Movies/BluRay, desc: "Films BR-Rip"}
|
||||
- {id: 63, cat: Movies/HD, desc: "Films MHD"}
|
||||
- {id: 64, cat: Movies, desc: "Films R5"}
|
||||
- {id: 65, cat: Movies, desc: "Films FSCR"}
|
||||
- {id: 66, cat: Movies, desc: "Films CamTS"}
|
||||
- {id: 66, cat: Movies, desc: "Films Cam-TS"}
|
||||
- {id: 67, cat: Movies, desc: "Films Pack Films"}
|
||||
- {id: 68, cat: Movies, desc: "Films VostFR"}
|
||||
- {id: 68, cat: Movies, desc: "Films Vost-FR"}
|
||||
- {id: 69, cat: Movies, desc: "Films VO"}
|
||||
- {id: 70, cat: Movies/WEB-DL, desc: "Films WebRip 1080p"}
|
||||
- {id: 71, cat: Movies/WEB-DL, desc: "Films WebRip 720p"}
|
||||
- {id: 73, cat: Movies/WEB-DL, desc: "Films Webrip"}
|
||||
- {id: 129, cat: Movies, desc: "Films QC~Film"}
|
||||
- {id: 72, cat: Movies/WEB-DL, desc: "Films WEB DL"}
|
||||
- {id: 72, cat: Movies/WEB-DL, desc: "Films WEBRip-DL"}
|
||||
- {id: 99, cat: Movies, desc: "Films Remux"}
|
||||
- {id: 98, cat: Movies/Other, desc: "Films Film Animées"}
|
||||
- {id: 98, cat: Movies/Other, desc: "Films Animé"}
|
||||
- {id: 122, cat: Movies/WEB-DL, desc: "Films Web-DL 1080P"}
|
||||
- {id: 123, cat: Movies/WEB-DL, desc: "Films WEB-DL 720p"}
|
||||
- {id: 126, cat: Movies, desc: "Films HDTV"}
|
||||
- {id: 137, cat: Movies/UHD, desc: "Films HDR 2160p"}
|
||||
- {id: 138, cat: Movies/WEB-DL, desc: "Films WEB-DL 2160p"}
|
||||
- {id: 139, cat: Movies/WEB-DL, desc: "Films WEB-RIP 2160p"}
|
||||
- {id: 126, cat: TV/HD, desc: "Films HDTV"}
|
||||
# Documentaire
|
||||
- {id: 96, cat: TV/Documentary, desc: "Docus TV"}
|
||||
- {id: 124, cat: TV/Documentary, desc: "Docus Formation Video"}
|
||||
# Jeux
|
||||
- {id: 114, cat: PC/Games, desc: "Jeux PC"}
|
||||
- {id: 115, cat: Console/PS3, desc: "Jeux PS3"}
|
||||
@@ -77,18 +78,18 @@ caps:
|
||||
- {id: 108, cat: Audio/Lossless, desc: "Musiques FLAC"}
|
||||
- {id: 109, cat: Audio, desc: "Musiques WMA"}
|
||||
# Séries
|
||||
- {id: 77, cat: TV/HD, desc: "Series HDTV"}
|
||||
- {id: 84, cat: TV/HD, desc: "Series Épisodes HD"}
|
||||
- {id: 85, cat: TV/SD, desc: "Series Épisodes SD"}
|
||||
- {id: 86, cat: TV, desc: "Series VosFR"}
|
||||
- {id: 97, cat: TV/Anime, desc: "Series Animée"}
|
||||
- {id: 88, cat: TV, desc: "Series Pack HD"}
|
||||
- {id: 128, cat: TV, desc: "Series Pack SD"}
|
||||
- {id: 130, cat: TV, desc: "SeriesQC~Serie"}
|
||||
- {id: 130, cat: TV, desc: "Séries QC~Serie"}
|
||||
- {id: 77, cat: TV/HD, desc: "Séries HDTV"}
|
||||
- {id: 84, cat: TV/HD, desc: "Séries Épisodes HD"}
|
||||
- {id: 85, cat: TV/SD, desc: "Séries Épisodes SD"}
|
||||
- {id: 97, cat: TV/Anime, desc: "Séries Animée"}
|
||||
- {id: 88, cat: TV, desc: "Séries Pack HD"}
|
||||
- {id: 128, cat: TV, desc: "Séries Pack SD"}
|
||||
# Spéctacle
|
||||
- {id: 131, cat: TV, desc: "SeriesQC~Spectacle"}
|
||||
- {id: 131, cat: TV/Other, desc: "Spectacle QC~Spectacle"}
|
||||
- {id: 91, cat: TV/Other, desc: "Spectacle 720p"}
|
||||
- {id: 90, cat: TV/Other, desc: "Spectacle 1080p"}
|
||||
- {id: 136, cat: TV/Other, desc: "Spectacle SD"}
|
||||
# Télévision
|
||||
- {id: 74, cat: TV/HD, desc: "TV TVHD"}
|
||||
- {id: 75, cat: TV, desc: "TV TVRip"}
|
||||
|
@@ -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:
|
||||
|
@@ -24,7 +24,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -87,18 +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:
|
||||
|
@@ -16,6 +16,7 @@ caps:
|
||||
- {id: 28, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
|
||||
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
|
||||
# Serien
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
@@ -29,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"}
|
||||
@@ -146,12 +148,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:
|
||||
@@ -218,4 +220,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# engine n/a
|
||||
# 3xT
|
||||
|
@@ -24,7 +24,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
@@ -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
|
||||
|
@@ -10,19 +10,13 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoid.unblockit.llc/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.bet/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.nocensor.world/
|
||||
legacylinks:
|
||||
- https://demonoid.unblockit.lat/
|
||||
- https://demonoid.unblockit.app/
|
||||
- https://demonoid.unblockit.dev/
|
||||
- https://demonoid.unblockit.ltd/
|
||||
- https://demonoid.unblockit.link/
|
||||
- https://demonoid.unblockit.buzz/
|
||||
- https://demonoid.unblockit.club/
|
||||
- https://demonoid.unblockit.onl/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoid.unblockit.li/
|
||||
- https://demonoid.unblockit.uno/
|
||||
- https://demonoid.unblockit.ch/
|
||||
@@ -36,6 +30,11 @@ legacylinks:
|
||||
- https://demonoid.unblockit.cam/
|
||||
- https://demonoid.nocensor.biz/
|
||||
- https://demonoid.unblockit.day/
|
||||
- https://demonoid.unblockit.llc/
|
||||
- https://demonoid.unblockit.blue/
|
||||
- https://demonoid.unblockit.name/
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.unblockit.ist/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -17,7 +17,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
|
||||
|
@@ -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]
|
||||
|
@@ -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
|
||||
|
@@ -121,7 +121,7 @@ search:
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) width"
|
||||
args: src=([^\s]+)
|
||||
files:
|
||||
selector: div.torrenttable:nth-last-child(6)
|
||||
size:
|
||||
|
@@ -1,209 +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:
|
||||
# Kino
|
||||
- {id: 118, cat: Movies/HD, desc: "Kino - HD"}
|
||||
- {id: 141, cat: Movies/UHD, desc: "Kino - UHD"}
|
||||
- {id: 4, cat: Movies/SD, desc: "Kino - SD"}
|
||||
# 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: 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"}
|
||||
# Empfohlene
|
||||
- {id: 150, cat: Other, desc: "Empfohlene - Torrents"}
|
||||
# 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
|
||||
# engine n/a
|
@@ -87,6 +87,7 @@ caps:
|
||||
- {id: 77, cat: Audio/Foreign, desc: "Music Foreign"}
|
||||
- {id: 78, cat: Audio/Foreign, desc: "Music Foreign Discographies"}
|
||||
- {id: 94, cat: Audio/Lossless, desc: "Foreign Flac"}
|
||||
- {id: 117, cat: Audio, desc: "Compact Disc Club"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
|
||||
|
||||
modes:
|
||||
|
@@ -44,16 +44,13 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: flaresolverr
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
default: This site may use DDoS-Guard Protection, therefore Jackett requires <a href="https://github.com/Jackett/Jackett#configuring-flaresolverr" target="_blank">FlareSolverr</a> to access it.
|
||||
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: Filter freeleech only
|
||||
@@ -67,15 +64,9 @@ settings:
|
||||
default: This site requires you to leave a Thank You comment before you can download. Enter your personalised comment above.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
method: cookie
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: "/"
|
||||
error:
|
||||
- selector: td.embedded:contains("fout")
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="logout.php"]
|
||||
|
@@ -6,8 +6,8 @@ language: es-ES
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.elitetorrent.dev/
|
||||
- https://elitetorrent.nocensor.sbs/
|
||||
- https://www.elitetorrent.com/
|
||||
- https://elitetorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://www.elitetorrent.biz/
|
||||
- https://www.elitetorrent.io/
|
||||
@@ -23,7 +23,6 @@ legacylinks:
|
||||
- https://vvww.elitetorrent.nl/
|
||||
- https://www.elitetorrent.to/
|
||||
- https://www.elitetorrent.se/
|
||||
- https://www.elitetorrent.com/
|
||||
- https://elitetorrent.si/
|
||||
- https://elitetorrent.nocensor.work/
|
||||
- https://elitetorrent.com/
|
||||
@@ -31,6 +30,8 @@ legacylinks:
|
||||
- https://elitetorrent.nocensor.biz/
|
||||
- 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
|
||||
|
@@ -42,7 +42,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
|
||||
@@ -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:
|
||||
@@ -154,7 +166,7 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
tmdbid:
|
||||
selector: a[href*="themoviedb.org/movie/"]
|
||||
selector: a[href*="themoviedb.org/movie/"], a[href*="themoviedb.org/tv/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: time
|
||||
|
@@ -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.llc/
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.bet/
|
||||
- https://extratorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.kim/
|
||||
@@ -18,6 +18,11 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.cam/
|
||||
- https://extratorrent.nocensor.biz/
|
||||
- https://extratorrent.unblockit.day/
|
||||
- https://extratorrent.unblockit.llc/
|
||||
- https://extratorrent.unblockit.blue/
|
||||
- https://extratorrent.unblockit.name/
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.ist/
|
||||
|
||||
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
|
||||
|
@@ -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,7 +126,7 @@ search:
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
language:
|
||||
_language:
|
||||
selector: td:nth-last-child(5)
|
||||
description:
|
||||
selector: img[src="/images/vip-icon.png"]
|
||||
@@ -140,7 +138,7 @@ search:
|
||||
selector: a[href^="file.php?id="] b
|
||||
filters:
|
||||
- name: append
|
||||
args: " {{ .Result.language }}{{ .Result.description }}"
|
||||
args: " {{ .Result._language }}{{ .Result.description }}"
|
||||
details:
|
||||
selector: a[href^="file.php?id="]
|
||||
attribute: href
|
||||
|
@@ -11,18 +11,16 @@ links:
|
||||
- https://eztv.wf/
|
||||
- https://eztv.tf/
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.llc/
|
||||
- https://eztv.nocensor.sbs/
|
||||
- https://eztv.unblockit.bet/
|
||||
- https://eztv.nocensor.world/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
- https://eztv.it/ # redirects to .re
|
||||
- https://eztv.ch/ # redirects to .re
|
||||
- https://eztv.io/
|
||||
- https://eztv.unblockit.buzz/
|
||||
- https://eztv.unblocked.monster/
|
||||
- https://eztv.unblockit.club/
|
||||
- https://eztv.unblockit.onl/
|
||||
- https://eztv.unblockit.li/
|
||||
- https://eztv.unblockit.uno/
|
||||
- https://eztv.unblockit.ch/
|
||||
@@ -36,6 +34,11 @@ legacylinks:
|
||||
- https://eztv.unblockit.cam/
|
||||
- https://eztv.nocensor.biz/
|
||||
- https://eztv.unblockit.day/
|
||||
- https://eztv.unblockit.llc/
|
||||
- https://eztv.unblockit.blue/
|
||||
- https://eztv.unblockit.name/
|
||||
- https://eztv.nocensor.sbs/
|
||||
- https://eztv.unblockit.ist/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -54,6 +57,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,85 +10,53 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 54, cat: Movies/SD, desc: "kino SD x264/x265"}
|
||||
- {id: 56, cat: Movies/HD, desc: "kino 720p"}
|
||||
- {id: 57, cat: Movies/HD, desc: "kino 1080p"}
|
||||
- {id: 100, cat: Movies/3D, desc: "kino 3D"}
|
||||
- {id: 58, cat: Movies/SD, desc: "Filme SD x264/x265"}
|
||||
- {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: 62, cat: Movies/3D, desc: "Filme 3D"}
|
||||
- {id: 170, cat: Movies/BluRay, desc: "Filme Bluray"}
|
||||
- {id: 101, cat: Movies/DVD, desc: "Filme DVD"}
|
||||
- {id: 63, cat: Movies/HD, desc: "Filme Remux"}
|
||||
- {id: 129, cat: Movies/SD, desc: "Filme Packs SD x264/265"}
|
||||
- {id: 130, cat: Movies/HD, desc: "Filme Packs 720p"}
|
||||
- {id: 131, cat: Movies/HD, desc: "Filme Packs 1080p"}
|
||||
- {id: 64, cat: TV/SD, desc: "Serien SD x264/x265"}
|
||||
- {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: 70, cat: TV/Foreign, desc: "Serien International"}
|
||||
- {id: 76, cat: TV/SD, desc: "Serienpacks SD x264/x265"}
|
||||
- {id: 77, cat: TV/HD, desc: "Serienpacks 720p"}
|
||||
- {id: 78, cat: TV/HD, desc: "Serienpacks 1080p"}
|
||||
- {id: 81, cat: TV/UHD, desc: "Serienpacks 2160p"}
|
||||
- {id: 79, cat: TV/Foreign, desc: "Serienpacks Ger-Subbed"}
|
||||
- {id: 80, cat: TV/Foreign, desc: "Serienpacks International"}
|
||||
- {id: 115, cat: Movies/SD, desc: "Kids-Filme SD x264/x265"}
|
||||
- {id: 116, cat: Movies/HD, desc: "Kids-Filme 720p"}
|
||||
- {id: 117, cat: Movies/HD, desc: "Kids-Filme 1080p"}
|
||||
- {id: 109, cat: TV/SD, desc: "Kids-Serien SD x264/x265"}
|
||||
- {id: 110, cat: TV/HD, desc: "Kids-Serien 720p"}
|
||||
- {id: 111, cat: TV/HD, desc: "Kids-Serien 1080p"}
|
||||
- {id: 112, cat: TV/SD, desc: "Kids-Serien Packs SD"}
|
||||
- {id: 113, cat: TV/HD, desc: "Kids-Serien Packs 720p"}
|
||||
- {id: 114, cat: TV/HD, desc: "Kids-Serien Packs 1080p"}
|
||||
- {id: 127, cat: TV/Foreign, desc: "Kids-Serien International"}
|
||||
- {id: 98, cat: TV/SD, desc: "Tatort SD x264/x265"}
|
||||
- {id: 99, cat: TV/HD, desc: "Tatort 720p"}
|
||||
- {id: 105, cat: TV/SD, desc: "Daily Soaps SD x264/x265"}
|
||||
- {id: 103, cat: TV/HD, desc: "Daily Soaps 720p"}
|
||||
- {id: 104, cat: TV/HD, desc: "Daily Soaps 1080p"}
|
||||
- {id: 106, cat: TV/Documentary, desc: "Dokus SD x264/x265"}
|
||||
- {id: 107, cat: TV/Documentary, desc: "Dokus 720p"}
|
||||
- {id: 108, cat: TV/Documentary, desc: "Dokus 1080p"}
|
||||
- {id: 83, cat: Movies/SD, desc: "TV-Filme SD x264/x265"}
|
||||
- {id: 84, cat: Movies/HD, desc: "TV-Filme 720p"}
|
||||
- {id: 85, cat: Movies/HD, desc: "TV-Filme 1080p"}
|
||||
- {id: 86, cat: TV/SD, desc: "TV-Shows SD x264/x265"}
|
||||
- {id: 87, cat: TV/HD, desc: "TV-Shows 720p"}
|
||||
- {id: 88, cat: TV/HD, desc: "TV-Shows 1080p"}
|
||||
- {id: 118, cat: TV/Sport, desc: "SportSD x264/x265"}
|
||||
- {id: 119, cat: TV/Sport, desc: "Sport720p"}
|
||||
- {id: 120, cat: TV/Sport, desc: "Sport1080p"}
|
||||
- {id: 122, cat: TV/Sport, desc: "Sport2160p"}
|
||||
- {id: 121, cat: TV/Sport, desc: "SportInternational"}
|
||||
- {id: 82, cat: Audio/Audiobook, desc: "Audio Audiobooks"}
|
||||
- {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: 135, cat: Audio/Lossless, desc: "Audio WAV"}
|
||||
- {id: 73, cat: Audio/MP3, desc: "Audio MP3 Packs"}
|
||||
- {id: 74, cat: Audio/Lossless, desc: "Audio Flac Packs"}
|
||||
- {id: 128, cat: Audio, desc: "Audio Kids"}
|
||||
- {id: 75, cat: Audio/Video, desc: "Audio Musikvideo"}
|
||||
- {id: 123, cat: PC, desc: "Software Windows"}
|
||||
- {id: 124, cat: PC, desc: "Software Linux"}
|
||||
- {id: 125, cat: PC/Mobile-Android, desc: "Software Android"}
|
||||
- {id: 126, cat: PC/Mac, desc: "Software MacOS"}
|
||||
- {id: 132, cat: PC/Games, desc: "Spiele Windows"}
|
||||
- {id: 133, cat: PC/Mac, desc: "Spiele MacOS"}
|
||||
- {id: 134, cat: Console, desc: "Spiele Nintendo"}
|
||||
- {id: 90, cat: Books/Mags, desc: "Diverses Zeitschriften"}
|
||||
- {id: 89, cat: Books/EBook, desc: "Diverses E-Books"}
|
||||
- {id: 91, cat: XXX/x264, desc: "XXX SD x264/x265"}
|
||||
- {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: 95, cat: XXX/Pack, desc: "XXX Packs SD"}
|
||||
- {id: 96, cat: XXX/Pack, desc: "XXX Packs HD"}
|
||||
- {id: 171, cat: XXX/Pack, desc: "XXX Packs"}
|
||||
- {id: 94, cat: XXX/ImageSet, desc: "XXX Magazine"}
|
||||
- {id: 97, cat: XXX/ImageSet, desc: "XXX Pics"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -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"]
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})\\s*", "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:
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user