mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-25 15:15:09 +01:00
Compare commits
622 Commits
v0.20.2063
...
v0.20.3105
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fc79f23d32 | ||
|
|
0d3bc6a503 | ||
|
|
008f6307ec | ||
|
|
bb7c97a590 | ||
|
|
f78bc29140 | ||
|
|
5c81983434 | ||
|
|
a445696bc6 | ||
|
|
91710c8454 | ||
|
|
b03d3fb8e2 | ||
|
|
cfc23d1b45 | ||
|
|
a595432b87 | ||
|
|
eb63aecf8b | ||
|
|
d7437f2a0f | ||
|
|
bd3baeb657 | ||
|
|
e27f784736 | ||
|
|
2125c9a42e | ||
|
|
325a998c8f | ||
|
|
7f7437c7f1 | ||
|
|
c454973730 | ||
|
|
cc86e63b57 | ||
|
|
0d06426aed | ||
|
|
35628e93d8 | ||
|
|
f00b421539 | ||
|
|
5fe25448fa | ||
|
|
99d67575f0 | ||
|
|
b6634f8329 | ||
|
|
49ec063ee7 | ||
|
|
4791401843 | ||
|
|
45a68fa915 | ||
|
|
cc628ff5b9 | ||
|
|
eb93dbb903 | ||
|
|
f7c08f69e1 | ||
|
|
372b526ad0 | ||
|
|
a2729841c0 | ||
|
|
8572ebf3b6 | ||
|
|
9231506ddb | ||
|
|
66c8dad9ca | ||
|
|
d733a71bac | ||
|
|
ebf6838b3f | ||
|
|
a53b5d4ce0 | ||
|
|
c50b9dfb0b | ||
|
|
2fbcea8b5b | ||
|
|
4e0538fa2a | ||
|
|
7f9de141e3 | ||
|
|
971934dbad | ||
|
|
bbc0706c0a | ||
|
|
300825ebbf | ||
|
|
04872dfc4c | ||
|
|
64503396c7 | ||
|
|
4f817e9dfb | ||
|
|
be6c5c49db | ||
|
|
3e1270f961 | ||
|
|
fe93e54ac1 | ||
|
|
8a35175d31 | ||
|
|
8545e4d59b | ||
|
|
91436118a6 | ||
|
|
43fcefdceb | ||
|
|
a034a988c3 | ||
|
|
189d380b1d | ||
|
|
f4f1708090 | ||
|
|
b2e1ea1bb2 | ||
|
|
7e599b5448 | ||
|
|
99a987decc | ||
|
|
7cc4251ef9 | ||
|
|
7a8aedd8e8 | ||
|
|
dfc50f9852 | ||
|
|
e0c6a3b469 | ||
|
|
b55e053417 | ||
|
|
c5e2ee2e79 | ||
|
|
384b7bb3e4 | ||
|
|
8ce9aeaae9 | ||
|
|
8c9e327ae6 | ||
|
|
30854838c1 | ||
|
|
3dc9b6c532 | ||
|
|
aa484e4618 | ||
|
|
cd0ca16d9b | ||
|
|
871b857f48 | ||
|
|
d74aa2317a | ||
|
|
44adbb1033 | ||
|
|
d2b0d7b21e | ||
|
|
34eb822137 | ||
|
|
a0afe0aaa1 | ||
|
|
14bcfcc018 | ||
|
|
470b18d664 | ||
|
|
3b7110880f | ||
|
|
74fdceba96 | ||
|
|
6fca20b776 | ||
|
|
733b4c854b | ||
|
|
b3c7ce5818 | ||
|
|
cd582ced27 | ||
|
|
8788ce1e93 | ||
|
|
eb3a9ab300 | ||
|
|
690265d45e | ||
|
|
435b7e84e4 | ||
|
|
489e0c895a | ||
|
|
7e819a2b47 | ||
|
|
5d7ee40a04 | ||
|
|
a2e5fc88cb | ||
|
|
3b7962210a | ||
|
|
771519385c | ||
|
|
8171a7986a | ||
|
|
38a3314f6f | ||
|
|
d756ff0ccf | ||
|
|
5aae699e91 | ||
|
|
62aa75b7ad | ||
|
|
e8875d38fc | ||
|
|
22af3a09a2 | ||
|
|
749167ba4a | ||
|
|
872c8674bf | ||
|
|
aac8469ffc | ||
|
|
f8a9c57656 | ||
|
|
0d2621b24d | ||
|
|
231352dad5 | ||
|
|
aef0802c21 | ||
|
|
ef9a4fbaa6 | ||
|
|
aad95a64ae | ||
|
|
2ca375c33f | ||
|
|
0ba4d305b0 | ||
|
|
40fcb1e43b | ||
|
|
24d4198e59 | ||
|
|
d529b340ea | ||
|
|
94b7f5434e | ||
|
|
e45e8a9e4f | ||
|
|
d1f078b36b | ||
|
|
8cb43e3bdd | ||
|
|
c886faf7df | ||
|
|
885da5d30f | ||
|
|
c61526182a | ||
|
|
a950ee0071 | ||
|
|
0d45b29a8e | ||
|
|
c1fc63b8c6 | ||
|
|
df46540efc | ||
|
|
40acf3c4a7 | ||
|
|
329c17ab25 | ||
|
|
c479596a49 | ||
|
|
993d5f2045 | ||
|
|
5b7deb8250 | ||
|
|
fba7b11697 | ||
|
|
44caa63a2e | ||
|
|
cf6f67d7cc | ||
|
|
137e112964 | ||
|
|
3ee74aa52a | ||
|
|
7fb648d786 | ||
|
|
19a556cd8f | ||
|
|
33be5ec331 | ||
|
|
12bd05422a | ||
|
|
691a8c3757 | ||
|
|
a63c8b012c | ||
|
|
abe345a803 | ||
|
|
ce583219a9 | ||
|
|
ab76dde943 | ||
|
|
c7a5d8c9a5 | ||
|
|
2b66e79a39 | ||
|
|
6d5f8dac65 | ||
|
|
b0c9419345 | ||
|
|
1dd08bd63c | ||
|
|
c3f62a1ac2 | ||
|
|
655ab08d57 | ||
|
|
2a593a195c | ||
|
|
e7cd1a8e68 | ||
|
|
21a6ce12c8 | ||
|
|
5b4596b54b | ||
|
|
059d46a715 | ||
|
|
4b9c1afc2a | ||
|
|
c3196b7243 | ||
|
|
2a93a26acd | ||
|
|
e3e575c622 | ||
|
|
bffd28b36b | ||
|
|
b2fded3edf | ||
|
|
696905a803 | ||
|
|
0c269d8761 | ||
|
|
9e91379df6 | ||
|
|
34dbae0464 | ||
|
|
6c8c947e4d | ||
|
|
093725d26f | ||
|
|
76a1801858 | ||
|
|
e04fb90ae7 | ||
|
|
ac0828aca8 | ||
|
|
283022abc0 | ||
|
|
8c5f12083e | ||
|
|
8b5d086bbc | ||
|
|
529cd42315 | ||
|
|
5739b9adff | ||
|
|
98867077bf | ||
|
|
956aad264c | ||
|
|
ea8404e18d | ||
|
|
ed9909ab9b | ||
|
|
3bee0a6014 | ||
|
|
a6a9fb73e9 | ||
|
|
da1f703aaa | ||
|
|
373a84722c | ||
|
|
f5ca7b5122 | ||
|
|
a18157bb9e | ||
|
|
d0bd6665d0 | ||
|
|
7192865a2d | ||
|
|
4ce5e2786c | ||
|
|
c4aed48398 | ||
|
|
8a0e353ad5 | ||
|
|
aaea3d1555 | ||
|
|
521a39275f | ||
|
|
23c241ec57 | ||
|
|
200d9dd376 | ||
|
|
b8116cd0c9 | ||
|
|
0cd30a0794 | ||
|
|
40e98be02a | ||
|
|
17c1a19ef5 | ||
|
|
32af28a80c | ||
|
|
578de3ca42 | ||
|
|
c6f5f365ca | ||
|
|
e16df84475 | ||
|
|
a69f5d62db | ||
|
|
e572804a86 | ||
|
|
54855a5822 | ||
|
|
970d57f9c4 | ||
|
|
b6e2996833 | ||
|
|
1eb056b569 | ||
|
|
394e9551d5 | ||
|
|
561c32a48a | ||
|
|
0d27645a8e | ||
|
|
7271abd193 | ||
|
|
821d92cfb2 | ||
|
|
f5c16520e4 | ||
|
|
988c486fd9 | ||
|
|
811dc3ed9a | ||
|
|
8fb0504e7f | ||
|
|
6350556850 | ||
|
|
bcd4637a67 | ||
|
|
eb67d1ad47 | ||
|
|
e827e727fb | ||
|
|
4c0a513c66 | ||
|
|
6de0e1535c | ||
|
|
c70e8bb189 | ||
|
|
967ce651ba | ||
|
|
f050791933 | ||
|
|
4521fceae4 | ||
|
|
16ae35a710 | ||
|
|
91cd7a82d5 | ||
|
|
0400bd81fd | ||
|
|
6aeb9e5d5b | ||
|
|
de00289965 | ||
|
|
d0ad1f0b52 | ||
|
|
bd24ec37cd | ||
|
|
79eaf5c152 | ||
|
|
8b76e04b7c | ||
|
|
60ea6edda9 | ||
|
|
54fd12428c | ||
|
|
b8c5a00b97 | ||
|
|
5e069e5d74 | ||
|
|
ac5d6f5764 | ||
|
|
1685c0c8b9 | ||
|
|
6e234ff303 | ||
|
|
462860e6b0 | ||
|
|
c31ce0a8be | ||
|
|
d0ebdea164 | ||
|
|
d7c885306e | ||
|
|
33f59521aa | ||
|
|
3771801c41 | ||
|
|
6485122cd3 | ||
|
|
cbd8d88bf6 | ||
|
|
d751eb84dc | ||
|
|
9a69317f68 | ||
|
|
761ec2b7f6 | ||
|
|
92c711eb19 | ||
|
|
89d6f4a656 | ||
|
|
9861c2565d | ||
|
|
263d26f8e6 | ||
|
|
034ca38368 | ||
|
|
e7384b73e4 | ||
|
|
f1470fc3c5 | ||
|
|
ac535dc7ad | ||
|
|
cb10294900 | ||
|
|
8442a7980f | ||
|
|
aac2e5500e | ||
|
|
c95d268a94 | ||
|
|
b6611b1bb5 | ||
|
|
733c8d0249 | ||
|
|
ad635c442b | ||
|
|
1ca2edf9b7 | ||
|
|
d76325d6bc | ||
|
|
f2a3de351a | ||
|
|
b77177bbf3 | ||
|
|
9cfffe4ea1 | ||
|
|
1036f2c462 | ||
|
|
df515dc38a | ||
|
|
9eb5d0de3f | ||
|
|
ba19357572 | ||
|
|
db901dc3ec | ||
|
|
77a8a60136 | ||
|
|
5a4b0e4e30 | ||
|
|
35c051b97e | ||
|
|
8c57a6a03d | ||
|
|
df50d290c5 | ||
|
|
6f6cc47cab | ||
|
|
ee86c57ac8 | ||
|
|
6cc81b6266 | ||
|
|
6d3b40b80d | ||
|
|
6409a8e119 | ||
|
|
a1e0aa8efe | ||
|
|
a9bd16f681 | ||
|
|
24e3d930ec | ||
|
|
c82e4ae627 | ||
|
|
ef71118f74 | ||
|
|
fc4f36e68e | ||
|
|
0a18ddfe4e | ||
|
|
89858199ed | ||
|
|
29be6f4c80 | ||
|
|
aa72f5b80e | ||
|
|
db6457319b | ||
|
|
ef269a1358 | ||
|
|
8f7375ff90 | ||
|
|
18ac5ddf31 | ||
|
|
1fd731aaf8 | ||
|
|
01e9a73fa7 | ||
|
|
8ffe670b29 | ||
|
|
279caca6af | ||
|
|
ec8eb929e6 | ||
|
|
9678329b2e | ||
|
|
34f77fc376 | ||
|
|
1774fda60a | ||
|
|
c413f72db0 | ||
|
|
de6effabb2 | ||
|
|
3a0403958a | ||
|
|
134c6b34a6 | ||
|
|
cc6acd8efb | ||
|
|
f3a785bd2d | ||
|
|
33c82015af | ||
|
|
9490a8382f | ||
|
|
07081bcf42 | ||
|
|
5500a0e66f | ||
|
|
451bd7809e | ||
|
|
9fece7551b | ||
|
|
59c2801528 | ||
|
|
d60ae9f408 | ||
|
|
0c82b4144e | ||
|
|
23f1ea6a7b | ||
|
|
b415098e5a | ||
|
|
7467dc7768 | ||
|
|
06956717ad | ||
|
|
2b6184c020 | ||
|
|
2afdd4872b | ||
|
|
afdd007a3b | ||
|
|
8f25af8c16 | ||
|
|
572e422569 | ||
|
|
fe9586bfdc | ||
|
|
ba0fcef316 | ||
|
|
f2086fae20 | ||
|
|
d9dd7d4724 | ||
|
|
b9f820f1c1 | ||
|
|
8fa0e6d3bc | ||
|
|
d29bcf4301 | ||
|
|
5fef170942 | ||
|
|
66c7af1769 | ||
|
|
07c3f64f01 | ||
|
|
84ec02539e | ||
|
|
65c8c57609 | ||
|
|
61de21b19a | ||
|
|
75b0cf089d | ||
|
|
f935062818 | ||
|
|
1da8c25efb | ||
|
|
9e6dab885a | ||
|
|
9d51a9c10f | ||
|
|
ae18515a59 | ||
|
|
e2b741f918 | ||
|
|
99300a1149 | ||
|
|
8d75884850 | ||
|
|
af0718a482 | ||
|
|
42bfba7b6f | ||
|
|
b3957207c5 | ||
|
|
6a6ff05473 | ||
|
|
c398c75e33 | ||
|
|
c46ece6147 | ||
|
|
dbd3935708 | ||
|
|
eabcac471e | ||
|
|
91b2e4f7be | ||
|
|
afe2a1fe3a | ||
|
|
9ad04329a3 | ||
|
|
0d178c746d | ||
|
|
c0bd28227d | ||
|
|
5c87d043ea | ||
|
|
23c88fdbb3 | ||
|
|
077f80bf6f | ||
|
|
05fb6b36a0 | ||
|
|
63f3cf28ec | ||
|
|
79c4ad207b | ||
|
|
cd83a369e5 | ||
|
|
f855b4c4da | ||
|
|
ff4d7f945a | ||
|
|
9dcb2de745 | ||
|
|
218c7e155f | ||
|
|
990ad1b7f2 | ||
|
|
22e10d8736 | ||
|
|
37c12423b2 | ||
|
|
80afa6060e | ||
|
|
190a6e7e06 | ||
|
|
b1dc291011 | ||
|
|
22e933bdb9 | ||
|
|
9006f3c330 | ||
|
|
6ecb3f3931 | ||
|
|
630123bb6a | ||
|
|
9cbb3a05ad | ||
|
|
08d692f469 | ||
|
|
b57269c673 | ||
|
|
9eb88fd7e2 | ||
|
|
da3c72610f | ||
|
|
b4e33c0563 | ||
|
|
404004c69a | ||
|
|
735ef0780e | ||
|
|
f7a9da3cfa | ||
|
|
a94898b19c | ||
|
|
fd0fa83c0f | ||
|
|
acc6d5d370 | ||
|
|
8078c273df | ||
|
|
3ca1a08e30 | ||
|
|
9b826fa898 | ||
|
|
7f5114cbb3 | ||
|
|
52af9cc1ef | ||
|
|
b662db552b | ||
|
|
ad515c6c25 | ||
|
|
4a11ebe695 | ||
|
|
94337b88bc | ||
|
|
f9de21f65b | ||
|
|
1401676fb5 | ||
|
|
b28b1d689d | ||
|
|
3becb28f26 | ||
|
|
0d50097b80 | ||
|
|
66c8c62ffe | ||
|
|
af9fecdb16 | ||
|
|
e593689172 | ||
|
|
784a631405 | ||
|
|
bc1cf8fd8e | ||
|
|
668c07c8c1 | ||
|
|
6a3ee05cb3 | ||
|
|
abdc199efa | ||
|
|
e4342cea91 | ||
|
|
465adbfe47 | ||
|
|
e494cd0bc3 | ||
|
|
32fbdd7961 | ||
|
|
5022611d7a | ||
|
|
5cd2d07f41 | ||
|
|
bbb98bed79 | ||
|
|
e2376213a1 | ||
|
|
488dfb2851 | ||
|
|
1de7bdf028 | ||
|
|
0809b2f2ff | ||
|
|
58125a832d | ||
|
|
45ef8e0581 | ||
|
|
5ca5372ae0 | ||
|
|
a9349b62ce | ||
|
|
04000bea5d | ||
|
|
c723adf044 | ||
|
|
0bd82dda0c | ||
|
|
1fb92b204c | ||
|
|
9ced3c4fd5 | ||
|
|
4312d41a44 | ||
|
|
22647296cb | ||
|
|
8a062aa99f | ||
|
|
573aba97cb | ||
|
|
c299f26755 | ||
|
|
5a92e22640 | ||
|
|
068ea8ebc7 | ||
|
|
7b4f02b67b | ||
|
|
6444617554 | ||
|
|
e6b3f602ca | ||
|
|
9eb1081f2a | ||
|
|
f06e8569c8 | ||
|
|
80c2eddba7 | ||
|
|
69d5758ad9 | ||
|
|
db04d8c916 | ||
|
|
b8709711c9 | ||
|
|
6f10bcf138 | ||
|
|
75b96ae2ea | ||
|
|
78286d9cb1 | ||
|
|
60f666fba2 | ||
|
|
55513d059f | ||
|
|
d327e7ef37 | ||
|
|
c5031d3cba | ||
|
|
e59c149f35 | ||
|
|
0e7dca45f7 | ||
|
|
d9b205daa9 | ||
|
|
7ed5db2402 | ||
|
|
44c76cda9c | ||
|
|
a8fed28efe | ||
|
|
5424484f8a | ||
|
|
ac81ee0b9c | ||
|
|
e30f41c58f | ||
|
|
644ca23648 | ||
|
|
3153083075 | ||
|
|
094f9a3ee4 | ||
|
|
4759bea924 | ||
|
|
6e345f38f2 | ||
|
|
db0175b6dd | ||
|
|
8a13121d10 | ||
|
|
0c2c043554 | ||
|
|
3a004dcde4 | ||
|
|
220a73325c | ||
|
|
5ac8abdd73 | ||
|
|
d3e41cbffa | ||
|
|
60106dce94 | ||
|
|
e76a962fbc | ||
|
|
3e636cd23d | ||
|
|
aa69268bd4 | ||
|
|
4d33f93e10 | ||
|
|
24a36bc939 | ||
|
|
a560c092b0 | ||
|
|
6b69808183 | ||
|
|
8542d69023 | ||
|
|
00ddf5e288 | ||
|
|
93e5fb8ae0 | ||
|
|
4f82915235 | ||
|
|
42aa9762e9 | ||
|
|
3591bbe583 | ||
|
|
d635a79ce7 | ||
|
|
0929fc571a | ||
|
|
63bac46240 | ||
|
|
3b01258a38 | ||
|
|
62a9d701c9 | ||
|
|
fadc46c381 | ||
|
|
d7b35613b1 | ||
|
|
292986b170 | ||
|
|
f5a39988cc | ||
|
|
cab5c22735 | ||
|
|
d896d80133 | ||
|
|
a344956492 | ||
|
|
8929747480 | ||
|
|
03e03a1d34 | ||
|
|
540af2eb31 | ||
|
|
c62c1a2e57 | ||
|
|
9d27c791d3 | ||
|
|
ca1eb7ff7f | ||
|
|
c5b604c709 | ||
|
|
befa49ea80 | ||
|
|
d056a8e054 | ||
|
|
2a7878f487 | ||
|
|
360e18f1d5 | ||
|
|
42bc31c324 | ||
|
|
d740d478da | ||
|
|
aca9162c70 | ||
|
|
1b0ec029c9 | ||
|
|
8c33e64605 | ||
|
|
54b56a4be6 | ||
|
|
bf581f690e | ||
|
|
0a9ef3d586 | ||
|
|
9851993b23 | ||
|
|
3da72a6411 | ||
|
|
948c84cad5 | ||
|
|
b9170c83d9 | ||
|
|
ae46abdc67 | ||
|
|
e2b6cea9b4 | ||
|
|
db0f8a9a4b | ||
|
|
00c94fd05b | ||
|
|
64e0913e07 | ||
|
|
9c6a73f611 | ||
|
|
b9add2b927 | ||
|
|
b8c39a90cc | ||
|
|
b0ba1ea226 | ||
|
|
55af1cf046 | ||
|
|
4cb2642139 | ||
|
|
cd47e95087 | ||
|
|
788c8e53f1 | ||
|
|
f53db2f016 | ||
|
|
6d4958c796 | ||
|
|
c507dc255a | ||
|
|
e42c149979 | ||
|
|
85585c2c02 | ||
|
|
0f0822f52e | ||
|
|
00dc9f5dcc | ||
|
|
4502f5f771 | ||
|
|
878460d509 | ||
|
|
628fd32385 | ||
|
|
924861c96a | ||
|
|
933f33aa4e | ||
|
|
ab7e42ec84 | ||
|
|
9709db9aac | ||
|
|
4179392d52 | ||
|
|
6194160d17 | ||
|
|
f347e9560c | ||
|
|
88242ba999 | ||
|
|
a6032c46da | ||
|
|
10499c6919 | ||
|
|
fd5a765d98 | ||
|
|
3c81760067 | ||
|
|
24b472d8e1 | ||
|
|
6663bea1f5 | ||
|
|
68d9a2eb3e | ||
|
|
8c2f1398e8 | ||
|
|
31eb00c30d | ||
|
|
460089d09a | ||
|
|
09184fc5bc | ||
|
|
3bc25ea784 | ||
|
|
9415b24d2e | ||
|
|
8b3ca306e1 | ||
|
|
22f19a2a5f | ||
|
|
8029f87430 | ||
|
|
8a1f2cdc9b | ||
|
|
fc07995b38 | ||
|
|
69e147929f | ||
|
|
f8ee6a5c80 | ||
|
|
270697b439 | ||
|
|
d638719f3a | ||
|
|
7eb4425efa | ||
|
|
d6dc7ee53f | ||
|
|
636fb2348e | ||
|
|
be9f7ffa3e | ||
|
|
33923913f5 | ||
|
|
2f0ac6190f | ||
|
|
91dd3f6a4a | ||
|
|
10f6b5779e | ||
|
|
26b4a27311 | ||
|
|
d51d005476 | ||
|
|
ed6f79661a | ||
|
|
4f596e14b2 | ||
|
|
6a81366206 | ||
|
|
e71cd1105f | ||
|
|
548b2801ee | ||
|
|
efa1071e09 | ||
|
|
9c526c17c0 | ||
|
|
46517f2a06 | ||
|
|
641a2f39da | ||
|
|
280572b3aa | ||
|
|
06ddc9d037 | ||
|
|
1a3e846a0f | ||
|
|
056727b36a |
12
.github/workflows/codeql-analysis.yml
vendored
12
.github/workflows/codeql-analysis.yml
vendored
@@ -18,6 +18,7 @@ on:
|
||||
- src/**/*.cs
|
||||
- src/**/*.js
|
||||
- '!src/Jackett.Common/Indexers/**'
|
||||
- '!src/Jackett.Common/Models/IndexerConfig/**'
|
||||
- '!src/Jackett.IntegrationTests/**'
|
||||
- '!src/Jackett.Test/**'
|
||||
pull_request:
|
||||
@@ -27,6 +28,7 @@ on:
|
||||
- src/**/*.cs
|
||||
- src/**/*.js
|
||||
- '!src/Jackett.Common/Indexers/**'
|
||||
- '!src/Jackett.Common/Models/IndexerConfig/**'
|
||||
- '!src/Jackett.IntegrationTests/**'
|
||||
- '!src/Jackett.Test/**'
|
||||
schedule:
|
||||
@@ -35,7 +37,7 @@ on:
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
runs-on: windows-2019
|
||||
runs-on: windows-2022
|
||||
permissions:
|
||||
actions: read
|
||||
contents: read
|
||||
@@ -62,11 +64,6 @@ jobs:
|
||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||
|
||||
- name: Set up dotnet
|
||||
uses: actions/setup-dotnet@v2
|
||||
with:
|
||||
dotnet-version: '6.0.*'
|
||||
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
|
||||
@@ -85,5 +82,4 @@ jobs:
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v1
|
||||
|
||||
uses: github/codeql-action/analyze@v2
|
||||
|
||||
2
.github/workflows/winget.yml
vendored
2
.github/workflows/winget.yml
vendored
@@ -8,7 +8,7 @@ jobs:
|
||||
publish:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: vedantmgoyal2009/winget-releaser@v1
|
||||
- uses: vedantmgoyal2009/winget-releaser@v2
|
||||
with:
|
||||
identifier: Jackett.Jackett
|
||||
token: ${{ secrets.WINGET }}
|
||||
|
||||
132
README.md
132
README.md
@@ -14,7 +14,7 @@ Please see our [troubleshooting and contributing guidelines](CONTRIBUTING.md) be
|
||||
|
||||
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar3](https://github.com/mylar3/mylar3), [Lidarr](https://github.com/lidarr/lidarr), [DuckieTV](https://github.com/SchizoDuckie/DuckieTV), [qBittorrent](https://www.qbittorrent.org/), [Nefarious](https://github.com/lardbit/nefarious) etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
|
||||
|
||||
Developer note: The software implements the [Torznab](https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
Developer note: The software implements the [Torznab](https://web.archive.org/web/20220517013745/https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
|
||||
A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](https://github.com/webtor-io/go-jackett)
|
||||
|
||||
@@ -31,8 +31,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ACGsou (36DM)
|
||||
* Anidex
|
||||
* AniLibria
|
||||
* AnimeClipse
|
||||
* Animedia
|
||||
* Anime Tosho
|
||||
* AniRena
|
||||
* AniSource
|
||||
@@ -46,8 +44,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BT4G
|
||||
* BTDIGG
|
||||
* BTMET
|
||||
* BTmirror
|
||||
* BTSOW
|
||||
* BullTorrent
|
||||
* Byrutor
|
||||
* CloudTorrents
|
||||
* comicat
|
||||
@@ -58,9 +56,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Demonoid
|
||||
* DivxTotal
|
||||
* dmhy
|
||||
* Dodder (菟丝子资源社区)
|
||||
* DonTorrent
|
||||
* EBook Bay (EBB)
|
||||
* E-Hentai
|
||||
* elitetorrent
|
||||
* EpubLibre
|
||||
* EXT Torrents
|
||||
* ExtraTorrent.st
|
||||
@@ -74,7 +73,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* GkTorrent
|
||||
* GloDLS
|
||||
* GTorrent.pro
|
||||
* IBit
|
||||
* Idope
|
||||
* Il CorSaRo Blu
|
||||
* Il Corsaro Nero
|
||||
@@ -101,23 +99,19 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* MyPornClub
|
||||
* Newstudio
|
||||
* Nipponsei
|
||||
* Nitro
|
||||
* NNTT
|
||||
* NoNaMe Club (NNM-Club)
|
||||
* Nyaa.si
|
||||
* OneJAV
|
||||
* OpenSharing
|
||||
* ParnuXi
|
||||
* PC-torrent
|
||||
* PiratBit
|
||||
* Pornforall
|
||||
* PornLeech
|
||||
* PornosLab
|
||||
* PornoTor
|
||||
* PornoTorrent
|
||||
* Portugas
|
||||
* ProPorn
|
||||
* ProStyleX
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTor
|
||||
@@ -129,7 +123,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* seleZen
|
||||
* Sexy-Pics
|
||||
* Shana Project
|
||||
* ShizaProject
|
||||
* ShowRSS
|
||||
* Solid Torrents
|
||||
* sosulki
|
||||
@@ -138,7 +131,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* The Pirate Bay (TPB)
|
||||
* Tokyo Tosho
|
||||
* Torlock
|
||||
* Torlook
|
||||
* Torrent[CORE]
|
||||
* Torrent Downloads (TD)
|
||||
* Torrent Oyun indir
|
||||
@@ -160,8 +152,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentWhiz ( 토렌트위즈)
|
||||
* Torrentz2eu
|
||||
* Torrentz2nz
|
||||
* TrahT
|
||||
* truPornolabs
|
||||
* Underverse
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
* VST Torrents
|
||||
@@ -180,26 +172,27 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Anime-Free
|
||||
* AnimeLayer
|
||||
* ArenaBG
|
||||
* BitNova
|
||||
* BookTracker
|
||||
* BootyTape
|
||||
* Catorrent
|
||||
* Devil-Torrents
|
||||
* Darmowe torrenty
|
||||
* Deildu
|
||||
* DimeADozen (EzTorrent)
|
||||
* DXP (Deaf Experts)
|
||||
* Electro-Torrent
|
||||
* EniaHD
|
||||
* Erai-Raws
|
||||
* ExKinoRay
|
||||
* ExtremlymTorrents
|
||||
* Fenyarnyek-Tracker
|
||||
* File-Tracker
|
||||
* Fou-Du-Cinema
|
||||
* Gay-Torrents.net
|
||||
* Genesis-Movement
|
||||
* HD-CzTorrent
|
||||
* HDGalaKtik
|
||||
* HunTorrent
|
||||
* KinoNaVse100
|
||||
* Kinorun
|
||||
* Kinozal
|
||||
* LostFilm.tv
|
||||
@@ -224,14 +217,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Sharewood
|
||||
* SkTorrent
|
||||
* SkTorrent-org
|
||||
* SoundPark
|
||||
* themixingbowl (TMB)
|
||||
* Toloka.to
|
||||
* Torrent-Explosiv
|
||||
* Torrents-Local
|
||||
* Torrents-Town (T-T)
|
||||
* TribalMixes
|
||||
* Union Fansub
|
||||
* UniOtaku
|
||||
* vTorrent
|
||||
* xTorrenty
|
||||
* YggTorrent (YGG)
|
||||
* ZOMB
|
||||
* Ztracker
|
||||
@@ -242,14 +236,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 0day.kiev
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 2xFree
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3D Torrents (3DT)
|
||||
* 3Evils
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* Abnormal
|
||||
* ABtorrents (ABT + RNS)
|
||||
* Acervos
|
||||
* Acervos [![(invite needed)][inviteneeded]](#)
|
||||
* Acid Lounge (A-L)
|
||||
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
|
||||
* Aftershock
|
||||
@@ -257,7 +251,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Aither
|
||||
* AlphaRatio (AR)
|
||||
* AmigosShareClub
|
||||
* anasch.cc
|
||||
* AnimeBytes (AB)
|
||||
* AnimeTracker
|
||||
* AnimeTorrents (AnT) [![(invite needed)][inviteneeded]](#)
|
||||
@@ -267,6 +260,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ArabP2P
|
||||
* aro.lol
|
||||
* AsianCinema
|
||||
* AsianDVDClub
|
||||
* Audiences
|
||||
* AudioNews (AN)
|
||||
* Aussierul.es [![(invite needed)][inviteneeded]](#)
|
||||
@@ -278,18 +272,17 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BeyondHD (BHD)
|
||||
* Bibliotik
|
||||
* Bit-Bázis
|
||||
* Bit-City Reloaded
|
||||
* BIT-HDTV
|
||||
* Bitded
|
||||
* Bithorlo (BHO)
|
||||
* BitHUmen [![(invite needed)][inviteneeded]](#)
|
||||
* Bit Of Valor
|
||||
* BitSexy
|
||||
* Bitspyder
|
||||
* BitTorrentFiles
|
||||
* BiTTuRK
|
||||
* BJ-Share (BJ)
|
||||
* BlueBird [![(invite needed)][inviteneeded]](#)
|
||||
* Blues-Brothers
|
||||
* Blutopia (BLU)
|
||||
* Borgzelle [![(invite needed)][inviteneeded]](#)
|
||||
* Boxing Torrents
|
||||
@@ -297,8 +290,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BreizhPeers
|
||||
* BrSociety
|
||||
* BrSociety [![(invite needed)][inviteneeded]](#)
|
||||
* BTNext (BTNT) [![(invite needed)][inviteneeded]](#)
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
@@ -324,7 +316,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CrazyHD
|
||||
* CrazySpirits
|
||||
* CrnaBerza
|
||||
* CrypticHaven Comedy Club (CCC)
|
||||
* DANISH BYTES
|
||||
* Darius Tracker
|
||||
* Dark-Shadow
|
||||
@@ -337,7 +328,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* DivTeam
|
||||
* DocsPedia
|
||||
* Dream Tracker
|
||||
* EbookParadijs
|
||||
* Ebooks-Shares
|
||||
* Empornium (EMP) [![(invite needed)][inviteneeded]](#)
|
||||
* eShareNet
|
||||
@@ -351,17 +341,17 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Fantastiko
|
||||
* Femdomcult
|
||||
* FileList (FL)
|
||||
* Film-Paleis
|
||||
* FinElite (FE)
|
||||
* FinVip
|
||||
* Flux-Zone
|
||||
* FunFile (FF)
|
||||
* FunkyTorrents (FT)
|
||||
* Fuzer (FZ)
|
||||
* GainBound
|
||||
* Gay-Torrents.org
|
||||
* GAYtorrent.ru
|
||||
* GazelleGames (GGn) [![(invite needed)][inviteneeded]](#)
|
||||
* Generation-Free
|
||||
* GFXPeers
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT)
|
||||
* GiroTorrent
|
||||
@@ -377,10 +367,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HD-Olimpo
|
||||
* HD-Only (HDO) [![(invite needed)][inviteneeded]](#)
|
||||
* HD-Space (HDS)
|
||||
* HD-Spain [![(invite needed)][inviteneeded]](#)
|
||||
* HD-Torrents (HDT)
|
||||
* HD-UNiT3D
|
||||
* HD4FANS [![(invite needed)][inviteneeded]](#)
|
||||
* HDAI
|
||||
* HDArea (HDA)
|
||||
* HDAtmos
|
||||
* HDBits [![(invite needed)][inviteneeded]](#)
|
||||
@@ -388,6 +377,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDCity [![(invite needed)][inviteneeded]](#)
|
||||
* HDFans
|
||||
* HDHome (HDBigger) [![(invite needed)][inviteneeded]](#)
|
||||
* HDMaYi
|
||||
* HDMonkey
|
||||
* HDRoute [![(invite needed)][inviteneeded]](#)
|
||||
* HDSky [![(invite needed)][inviteneeded]](#)
|
||||
@@ -397,15 +387,19 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDU
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasHut
|
||||
* HHanClub
|
||||
* HQMusic
|
||||
* House of Devil
|
||||
* HQSource (HQS)
|
||||
* ICC2022
|
||||
* iHDBits
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* JME-REUNIT3D
|
||||
* JoyHD [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
* JPTV
|
||||
* Karagarga
|
||||
@@ -416,12 +410,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* LastFiles
|
||||
* Lat-Team [![(invite needed)][inviteneeded]](#)
|
||||
* Le Saloon
|
||||
* LearnBits [![(invite needed)][inviteneeded]](#)
|
||||
* LearnFlakes [![(invite needed)][inviteneeded]](#)
|
||||
* LearnBits
|
||||
* LearnFlakes
|
||||
* leech24
|
||||
* LegacyHD (HD4Free)
|
||||
* LemonHD
|
||||
* Libble [![(invite needed)][inviteneeded]](#)
|
||||
* Les-Cinephiles
|
||||
* Libble
|
||||
* LibraNet (LN)
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
* Locadora
|
||||
@@ -432,49 +427,45 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* magic-heaven
|
||||
* Magico (Trellas) [![(invite needed)][inviteneeded]](#)
|
||||
* Majomparádé (TurkDepo)
|
||||
* MediaMaatjes
|
||||
* MegamixTracker
|
||||
* MeseVilág (Fairytale World)
|
||||
* Milkie
|
||||
* MIRcrew
|
||||
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
|
||||
* MNV (Max-New-Vision)
|
||||
* Mononoké-BT [![(invite needed)][inviteneeded]](#)
|
||||
* MOJBLiNK
|
||||
* MoreThanTV (MTV)
|
||||
* MouseBits
|
||||
* Movie-Torrentz
|
||||
* Moviesite
|
||||
* MyAnonamouse (MAM)
|
||||
* MySpleen [![(invite needed)][inviteneeded]](#)
|
||||
* NBTorrents
|
||||
* NCore
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NetCosmo
|
||||
* NicePT
|
||||
* NorBits
|
||||
* Old Toons World
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
* Orpheus
|
||||
* OshenPT
|
||||
* Ourbits (HDPter) [![(invite needed)][inviteneeded]](#)
|
||||
* OurBits (HDPter)
|
||||
* P2PBG
|
||||
* P2PElite
|
||||
* Partis
|
||||
* PassThePopcorn (PTP)
|
||||
* Peeratiko
|
||||
* PeerJunkies
|
||||
* Peers.FM
|
||||
* PigNetwork
|
||||
* PirateTheNet (PTN)
|
||||
* Pixelados
|
||||
* PixelCove (Ultimate Gamer)
|
||||
* PiXELHD (PxHD) [![(invite needed)][inviteneeded]](#)
|
||||
* PolishSource (PS)
|
||||
* PolishTracker
|
||||
* Pornbay [![(invite needed)][inviteneeded]](#)
|
||||
* PornBits (PB)
|
||||
* PotUK
|
||||
* Pretome
|
||||
* PrivateHD (PHD)
|
||||
* ProAudioTorrents (PAT)
|
||||
* PTChina (铂金学院)
|
||||
* PTerClub
|
||||
* PTFiles (PTF)
|
||||
* PThome [![(invite needed)][inviteneeded]](#)
|
||||
@@ -483,7 +474,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PTtime
|
||||
* Punk's Horror Tracker
|
||||
* PuntoTorrent
|
||||
* PuroVicio
|
||||
* PuTao
|
||||
* Puur-Hollands
|
||||
* PWTorrents (PWT)
|
||||
@@ -499,12 +489,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Romanian Metal Torrents (RMT) [![(invite needed)][inviteneeded]](#)
|
||||
* RPTorrents
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* ScenePalace (SP)
|
||||
* SceneRush
|
||||
* SceneTime
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* Secret Cinema
|
||||
* SeedFile
|
||||
* Shareisland
|
||||
* SharkPT
|
||||
* Shazbat [![(invite needed)][inviteneeded]](#)
|
||||
* SiamBIT
|
||||
* SkipTheCommercials
|
||||
@@ -525,31 +516,32 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Superbits (SBS)
|
||||
* Swarmazon
|
||||
* Tapochek
|
||||
* Tasmanit [![(invite needed)][inviteneeded]](#)
|
||||
* Tasmanit
|
||||
* Team CT Game (TCTG)
|
||||
* TeamHD
|
||||
* TeamOS
|
||||
* TEKNO3D [![(invite needed)][inviteneeded]](#)
|
||||
* TellyTorrent
|
||||
* teracod (Movie Zone)
|
||||
* The Falling Angels (TFA) [![(invite needed)][inviteneeded]](#)
|
||||
* The Falling Angels (TFA)
|
||||
* The Geeks
|
||||
* The Horror Charnel (THC)
|
||||
* The New Retro
|
||||
* The Occult [![(invite needed)][inviteneeded]](#)
|
||||
* The Old School
|
||||
* The Place [![(invite needed)][inviteneeded]](#)
|
||||
* The Shinning (TsH)
|
||||
* The Show
|
||||
* The Vault [![(invite needed)][inviteneeded]](#)
|
||||
* The-Crazy-Ones
|
||||
* The-New-Fun
|
||||
* TheAudioScene
|
||||
* TheDarkCommunity (TDC)
|
||||
* TheEmpire (TE)
|
||||
* TheLeachZone (TLZ)
|
||||
* TheScenePlace (TSP)
|
||||
* TJUPT
|
||||
* TLFBits [![(invite needed)][inviteneeded]](#)
|
||||
* TmGHuB
|
||||
* Tornado
|
||||
* Torrent Network (TN)
|
||||
* Torrent Sector Crew (TSC)
|
||||
* Torrent Surf
|
||||
@@ -560,7 +552,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentBytes (TBy)
|
||||
* TorrentCCF (TCCF)
|
||||
* TorrentDay (TD)
|
||||
* TorrentDB
|
||||
* TorrentHeaven [![(invite needed)][inviteneeded]](#)
|
||||
* TorrentHR [![(invite needed)][inviteneeded]](#)
|
||||
* Torrenting (TT)
|
||||
@@ -579,12 +570,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TvRoad
|
||||
* TVstore
|
||||
* Twilight Torrents
|
||||
* Twilights Zoom
|
||||
* U2 (U2分享園@動漫花園) [![(invite needed)][inviteneeded]](#)
|
||||
* UHDBits
|
||||
* UnionGang
|
||||
* UnleashTheCartoons
|
||||
* UnlimitZ
|
||||
* WDT (Wrestling Desires Torrents / Ultimate Wrestling Torrents)
|
||||
* White Angel
|
||||
* wOOt [![(invite needed)][inviteneeded]](#)
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
@@ -598,6 +588,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* YDYPT
|
||||
* Zamunda.net
|
||||
* Zelka.org
|
||||
* ZmPT (织梦)
|
||||
* ZonaQ
|
||||
</details>
|
||||
|
||||
@@ -645,6 +636,39 @@ The "filter" indexer at `/api/v2.0/indexers/tag:group1,!type:private+lang:en/res
|
||||
Example 2:
|
||||
The "filter" indexer at `/api/v2.0/indexers/!status:failing,test:passed` will query all the configured indexers not `failing` or which `passed` its last test.
|
||||
|
||||
### Search modes and parameters
|
||||
|
||||
A list of supported API search modes and parameters:
|
||||
|
||||
```
|
||||
t=search:
|
||||
params : q
|
||||
t=tvsearch:
|
||||
params : q, season, ep, imdbid, tvdbid, rid, tmdbid, tvmazeid, traktid, doubanid, year, genre
|
||||
t=movie:
|
||||
params : q, imdbid, tmdbid, traktid, doubanid, year, genre
|
||||
t=music:
|
||||
params : q, album, artist, label, track, year, genre
|
||||
t=book:
|
||||
params : q, title, author, publisher, year, genre
|
||||
```
|
||||
|
||||
Examples:
|
||||
|
||||
```
|
||||
.../api?apikey=APIKEY&t=search&cat=1,3&q=Show+Title+S01E02
|
||||
|
||||
.../api?apikey=APIKEY&t=tvsearch&cat=1,3&q=Show+Title&season=1&ep=2
|
||||
.../api?apikey=APIKEY&t=tvsearch&cat=1,3&genre=comedy&season=2023&ep=02/13
|
||||
|
||||
.../api?apikey=APIKEY&t=movie&cat=2&q=Movie+Title&year=2023
|
||||
.../api?apikey=APIKEY&t=movie&cat=2&imdbid=tt1234567
|
||||
|
||||
.../api?apikey=APIKEY&t=music&cat=4&album=Title&artist=Name
|
||||
|
||||
.../api?apikey=APIKEY&t=book&cat=5,6&genre=horror&publisher=Stuff
|
||||
```
|
||||
|
||||
## Installation on Windows
|
||||
We recommend you install Jackett as a Windows service using the supplied installer. You may also download the zipped version if you would like to configure everything manually.
|
||||
|
||||
@@ -831,7 +855,7 @@ To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/a
|
||||
|
||||
- `-d, --DataFolder` Specify the location of the data folder (Must be an admin on Windows)
|
||||
- e.g. --DataFolder="D:\Your Data\Jackett\".
|
||||
- Don't use this on Unix (mono) systems. On Unix just adjust the HOME directory of the user to the datadir or set the XDG_CONFIG_HOME environment variable.
|
||||
- Don't use this on Unix (mono) systems. On Unix just adjust the HOME directory of the user to the data folder or set the XDG_CONFIG_HOME environment variable.
|
||||
|
||||
- `--NoRestart` Don't restart after update
|
||||
|
||||
@@ -847,7 +871,7 @@ To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/a
|
||||
## Building from source
|
||||
|
||||
### Windows
|
||||
* Install the .NET 5 [SDK](https://www.microsoft.com/net/download/windows)
|
||||
* Install the .NET 6 [SDK](https://www.microsoft.com/net/download/windows)
|
||||
* Clone Jackett
|
||||
* Open PowerShell and from the `src` directory:
|
||||
* - run `dotnet msbuild /restore`
|
||||
|
||||
@@ -26,7 +26,7 @@ stages:
|
||||
jobs:
|
||||
- job: Build
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -52,50 +52,50 @@ stages:
|
||||
artifactName: Jackett.Binaries.macOSARM64.tar.gz
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
LinuxARM32:
|
||||
buildDescription: Linux ARM32
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxARM32.tar.gz
|
||||
LinuxARM64:
|
||||
buildDescription: Linux ARM64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxARM64.tar.gz
|
||||
LinuxMuslAMDx64:
|
||||
buildDescription: Linux musl AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslAMDx64.tar.gz
|
||||
LinuxMuslARM32:
|
||||
buildDescription: Linux musl ARM32
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM32.tar.gz
|
||||
LinuxMuslARM64:
|
||||
buildDescription: Linux musl ARM64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-musl-arm64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.LinuxMuslARM64.tar.gz
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
imageName: ubuntu-22.04
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
archiveType: tar
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
@@ -104,7 +104,6 @@ stages:
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -113,8 +112,23 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Build DateTimeRoutines
|
||||
# this task is not mandatory since DateTimeRoutines is build in the next task, but the purpose is to fix:
|
||||
# error MSB4018: System.IO.IOException: The process cannot access the file
|
||||
# '/home/vsts/work/1/net6.0-linux-musl-arm/src/DateTimeRoutines/bin/Release/netstandard2.0/DateTimeRoutines.deps.json'
|
||||
# because it is being used by another process.
|
||||
inputs:
|
||||
command: build
|
||||
projects: 'src/DateTimeRoutines/DateTimeRoutines.csproj'
|
||||
publishWebProjects: false
|
||||
zipAfterPublish: false
|
||||
arguments: '--configuration $(buildConfiguration) --runtime $(runtime) --framework netstandard2.0'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Build Jackett Server
|
||||
# the retries are just in case the previous task doesn't fix the error
|
||||
retryCountOnTaskFailure: 3
|
||||
inputs:
|
||||
command: publish
|
||||
projects: 'src/Jackett.Server/Jackett.Server.csproj'
|
||||
@@ -303,12 +317,11 @@ stages:
|
||||
- job: Linting_Dotnet
|
||||
displayName: Linting Dotnet
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -337,12 +350,11 @@ stages:
|
||||
- job: Linting_YAML
|
||||
displayName: Linting YAML
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UsePythonVersion@0
|
||||
displayName: Install Python
|
||||
@@ -358,12 +370,11 @@ stages:
|
||||
- job: Validate_YAML_Schema
|
||||
displayName: Validate YAML Schema
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: Bash@3
|
||||
displayName: Validate YAML Schema
|
||||
@@ -393,7 +404,7 @@ stages:
|
||||
jobs:
|
||||
- job: UnitTest
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -408,20 +419,19 @@ stages:
|
||||
runtime: osx-x64
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
framework: net461
|
||||
imageName: ubuntu-22.04
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: Install .NET Core SDK
|
||||
@@ -430,15 +440,6 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
# this task is a workaround to fix a bug in Azure (not required under normal circumstances)
|
||||
# https://developercommunity.visualstudio.com/content/problem/983843/dotnet-build-task-does-not-use-nugetorg-for-one-pr.html
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Restore Test Project
|
||||
inputs:
|
||||
command: restore
|
||||
projects: '**/*.Test*/*.csproj'
|
||||
includeNuGetOrg: true
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Unit Tests (Mono, Linux and macOS)
|
||||
condition: and(succeeded(), not(startsWith(variables['runtime'], 'win')))
|
||||
@@ -487,7 +488,7 @@ stages:
|
||||
jobs:
|
||||
- job: IntegrationTest
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
strategy:
|
||||
matrix:
|
||||
Windows:
|
||||
@@ -504,22 +505,21 @@ stages:
|
||||
runtime: osx-x64
|
||||
LinuxAMDx64:
|
||||
buildDescription: Linux AMD x64
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
artifactName: Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
framework: $(netCoreFramework)
|
||||
runtime: linux-x64
|
||||
Mono:
|
||||
buildDescription: Mono
|
||||
imageName: ubuntu-20.04
|
||||
imageName: ubuntu-22.04
|
||||
artifactName: Jackett.Binaries.Mono.tar.gz
|
||||
framework: net461
|
||||
framework: net462
|
||||
runtime: linux-x64
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
displayName: ${{ variables.buildDescription }}
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download artifacts for integration tests
|
||||
@@ -556,15 +556,6 @@ stages:
|
||||
version: $(netCoreSdkVersion)
|
||||
installationPath: $(Agent.ToolsDirectory)/dotnet
|
||||
|
||||
# this task is a workaround to fix a bug in Azure (not required under normal circumstances)
|
||||
# https://developercommunity.visualstudio.com/content/problem/983843/dotnet-build-task-does-not-use-nugetorg-for-one-pr.html
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Restore IntegrationTest Project
|
||||
inputs:
|
||||
command: restore
|
||||
projects: '**/*IntegrationTest*/*.csproj'
|
||||
includeNuGetOrg: true
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Integration Tests (Mono, Linux and macOS)
|
||||
condition: and(succeeded(), not(startsWith(variables['runtime'], 'win')))
|
||||
@@ -592,12 +583,11 @@ stages:
|
||||
jobs:
|
||||
- job: Publish
|
||||
workspace:
|
||||
clean: outputs
|
||||
clean: all
|
||||
pool:
|
||||
vmImage: ubuntu-20.04
|
||||
vmImage: ubuntu-22.04
|
||||
steps:
|
||||
- checkout: self
|
||||
clean: false
|
||||
|
||||
- task: DownloadBuildArtifacts@0
|
||||
displayName: Download Artifacts for Publish
|
||||
|
||||
@@ -5,8 +5,11 @@ BOLDRED="$(printf '\033[1;31m')"
|
||||
BOLDGREEN="$(printf '\033[1;32m')"
|
||||
NC="$(printf '\033[0m')" # No Color
|
||||
|
||||
|
||||
userid=$(id -u)
|
||||
|
||||
# Stop and unload the service if it's running
|
||||
launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist &>/dev/null
|
||||
launchctl bootout gui/${userid}/org.user.Jackett &>/dev/null
|
||||
|
||||
# Move working directory to Jackett's
|
||||
cd "$(dirname "$0")"
|
||||
@@ -64,11 +67,14 @@ if [[ $qstr ]]; then
|
||||
fi
|
||||
|
||||
# Run the agent
|
||||
launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
echo "Launching agent..."
|
||||
#launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
launchctl bootstrap gui/${userid} ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
sleep .5
|
||||
|
||||
# Check that it's launched
|
||||
userid=$(id -u)
|
||||
# Check that it's loaded
|
||||
if [[ $(launchctl list | grep org.user.Jackett) ]]; then
|
||||
# Check that service is running
|
||||
if [[ $(launchctl print gui/${userid}/org.user.Jackett | grep 'state') =~ "running" ]]; then
|
||||
echo "${BOLDGREEN}Agent successfully installed and running!${NC}"
|
||||
echo "Jackett location: ${jackettdir}"
|
||||
|
||||
@@ -8,6 +8,7 @@ JACKETT_DIR="$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
# Launch Jackett (with CLI parameters)
|
||||
"${JACKETT_DIR}/jackett" --NoRestart "$@"
|
||||
ec=$?
|
||||
|
||||
# Get user running the service
|
||||
JACKETT_USER=$(whoami)
|
||||
@@ -16,3 +17,5 @@ JACKETT_USER=$(whoami)
|
||||
while pgrep -u "${JACKETT_USER}" JackettUpdater > /dev/null; do
|
||||
sleep 1
|
||||
done
|
||||
|
||||
exit $ec
|
||||
|
||||
@@ -1 +1 @@
|
||||
span.multiselect-native-select{position:relative}span.multiselect-native-select select{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px -1px -1px -3px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;left:50%;top:30px}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .input-group{margin:5px}.multiselect-container>li{padding:0}.multiselect-container>li>a.multiselect-all label{font-weight:700}.multiselect-container>li.multiselect-group label{margin:0;padding:3px 20px 3px 20px;height:100%;font-weight:700}.multiselect-container>li.multiselect-group-clickable label{cursor:pointer}.multiselect-container>li>a{padding:0}.multiselect-container>li>a>label{margin:0;height:100%;cursor:pointer;font-weight:400;padding:3px 20px 3px 40px}.multiselect-container>li>a>label.radio,.multiselect-container>li>a>label.checkbox{margin:0}.multiselect-container>li>a>label>input[type=checkbox]{margin-bottom:5px}.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.form-inline .multiselect-container label.checkbox,.form-inline .multiselect-container label.radio{padding:3px 20px 3px 40px}.form-inline .multiselect-container li a label.checkbox input[type=checkbox],.form-inline .multiselect-container li a label.radio input[type=radio]{margin-left:-20px;margin-right:0}
|
||||
span.multiselect-native-select{position:relative}span.multiselect-native-select select{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px -1px -1px -3px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;left:50%;top:30px}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .input-group{margin:5px}.multiselect-container .multiselect-reset .input-group{width:93%}.multiselect-container>li{padding:0}.multiselect-container>li>a.multiselect-all label{font-weight:700}.multiselect-container>li.multiselect-group label{margin:0;padding:3px 20px;height:100%;font-weight:700}.multiselect-container>li.multiselect-group-clickable label{cursor:pointer}.multiselect-container>li>a{padding:0}.multiselect-container>li>a>label{margin:0;height:100%;cursor:pointer;font-weight:400;padding:3px 20px 3px 40px}.multiselect-container>li>a>label.checkbox,.multiselect-container>li>a>label.radio{margin:0}.multiselect-container>li>a>label>input[type=checkbox]{margin-bottom:5px}.btn-group>.btn-group:nth-child(2)>.multiselect.btn{border-top-left-radius:4px;border-bottom-left-radius:4px}.form-inline .multiselect-container label.checkbox,.form-inline .multiselect-container label.radio{padding:3px 20px 3px 40px}.form-inline .multiselect-container li a label.checkbox input[type=checkbox],.form-inline .multiselect-container li a label.radio input[type=radio]{margin-left:-20px;margin-right:0}
|
||||
|
||||
@@ -917,8 +917,7 @@ function doErrorNotify(indexerId, errorMessage, errorEvent) {
|
||||
var githubTemplate = "?template=bug_report.yml&"
|
||||
if (errorMessage.includes("FlareSolverr")) {
|
||||
githubRepo = "FlareSolverr/FlareSolverr";
|
||||
githubText = "FlareSolverr";
|
||||
githubTemplate = "?"
|
||||
githubText = "FlareSolverr"
|
||||
}
|
||||
var githubUrl = "https://github.com/" + githubRepo + "/issues/new" + githubTemplate + "title=[" + indexerId + "] (" + errorEvent + ")";
|
||||
var indexEnd = 2000 - githubUrl.length; // keep url <= 2k #5104
|
||||
@@ -1238,6 +1237,59 @@ function clearSearchResultTable(element) {
|
||||
element.find("#jackett-search-results-datatable_paginate").empty();
|
||||
}
|
||||
|
||||
function getSavedPresets() {
|
||||
var lsKey = "jackett_saved_presets";
|
||||
if (JSON !== undefined && localStorage !== undefined) {
|
||||
var lsSavedPresets = localStorage.getItem(lsKey);
|
||||
var presets = lsSavedPresets !== null ? JSON.parse(lsSavedPresets) : [];
|
||||
return presets;
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
function setSavedPresets(presets) {
|
||||
var lsKey = "jackett_saved_presets";
|
||||
if (JSON !== undefined && localStorage !== undefined) {
|
||||
localStorage.setItem(lsKey, JSON.stringify(presets));
|
||||
}
|
||||
}
|
||||
|
||||
function setSavePresetsButtonState(table, element, state = false) {
|
||||
var button = element.find("button[id=jackett-search-results-datatable_savepreset_button]")
|
||||
if (state) {
|
||||
button.attr("class", "btn btn-danger btn-sm");
|
||||
button.on("click", function () {
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
var preset = inputSearch.val().trim();
|
||||
if (preset !== "") {
|
||||
var presets = getSavedPresets();
|
||||
if (presets.includes(preset)) {
|
||||
presets = presets.filter(item => item != preset);
|
||||
setSavedPresets(presets);
|
||||
var datalist = element.find("datalist[id=jackett-search-saved-presets]")
|
||||
datalist.empty();
|
||||
table.api().draw();
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
button.attr("class", "btn btn-success btn-sm");
|
||||
button.on("click", function () {
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
var preset = inputSearch.val().trim();
|
||||
if (preset !== "") {
|
||||
var presets = getSavedPresets();
|
||||
if (!presets.includes(preset)) {
|
||||
presets.push(preset);
|
||||
setSavedPresets(presets);
|
||||
table.api().draw();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// dataTable dead torrent filter
|
||||
$.fn.dataTable.ext.search = [
|
||||
function (settings, data, dataIndex) {
|
||||
@@ -1313,16 +1365,34 @@ function updateSearchResultTable(element, results) {
|
||||
],
|
||||
fnPreDrawCallback: function () {
|
||||
var table = this;
|
||||
var datalist = element.find("datalist[id=jackett-search-saved-presets]")
|
||||
|
||||
var presets = getSavedPresets();
|
||||
if (presets.length > 0) {
|
||||
datalist.empty();
|
||||
presets.forEach(preset => {
|
||||
var option = $('<option></option>');
|
||||
option.attr("value", preset);
|
||||
datalist.append(option);
|
||||
})
|
||||
}
|
||||
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
setSavePresetsButtonState(table, element, presets.includes(inputSearch.val().trim()));
|
||||
|
||||
if (!inputSearch.attr("custom")) {
|
||||
var newInputSearch = inputSearch.clone();
|
||||
newInputSearch.attr("custom", "true");
|
||||
newInputSearch.attr("data-toggle", "tooltip");
|
||||
newInputSearch.attr("title", "Search query consists of several keywords.\nKeyword starting with \"-\" is considered a negative match.\nKeywords separated by \"|\" are considered as OR filters.");
|
||||
newInputSearch.attr("list", "jackett-search-saved-presets");
|
||||
newInputSearch.on("input", function () {
|
||||
var newKeywords = [];
|
||||
var filterTextKeywords = $(this).val().split(" ");
|
||||
var filterText = $(this).val().trim();
|
||||
var presets = getSavedPresets();
|
||||
setSavePresetsButtonState(table, element, presets.includes(filterText));
|
||||
|
||||
var filterTextKeywords = filterText.split(" ");
|
||||
$.each(filterTextKeywords, function (index, keyword) {
|
||||
if (keyword === "" || keyword === "+" || keyword === "-")
|
||||
return;
|
||||
@@ -1333,6 +1403,8 @@ function updateSearchResultTable(element, results) {
|
||||
newKeyword = "^((?!" + $.fn.dataTable.util.escapeRegex(keyword.substring(1)) + ").)*$";
|
||||
else
|
||||
newKeyword = '(' + keyword.split('|').map(k => $.fn.dataTable.util.escapeRegex(k)).join('|') + ')';
|
||||
// fix search filters with "-", "." or "_" characters in the middle of the word => #13628
|
||||
newKeyword = newKeyword.replace("\\-", "\\-\u200B?").replace("\\.", "\\.\u200B?").replace("_", "_\u200B?");
|
||||
newKeywords.push(newKeyword);
|
||||
});
|
||||
var filterText = newKeywords.join(" ");
|
||||
@@ -1352,6 +1424,10 @@ function updateSearchResultTable(element, results) {
|
||||
table.api().draw();
|
||||
});
|
||||
deadfiltercheckbox.prop('checked', settings.deadfilter);
|
||||
|
||||
savepresetlabel = $('<button id="jackett-search-results-datatable_savepreset_button" title="Save Search Preset" class="btn btn-success btn-sm" style="margin-left: 10px;"><span class="fa fa-save"></span></button>');
|
||||
var searchfilterdiv = element.find("#jackett-search-results-datatable_filter");
|
||||
searchfilterdiv.append(savepresetlabel);
|
||||
}
|
||||
},
|
||||
initComplete: function () {
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<meta charset="utf-8" />
|
||||
<meta name="referrer" content="no-referrer" /> <!-- Don't send referrer when loading third party resources (E.g. Empornium poster images won't load) -->
|
||||
<meta name="robots" content="noindex, nofollow"/>
|
||||
<link rel="apple-touch-icon" href="../apple-touch-icon.png" />
|
||||
<link rel="mask-icon" href="../jackett_medium.png" color="#35c5f4">
|
||||
<link rel="icon" type="image/ico" href="../favicon.ico" />
|
||||
@@ -21,7 +22,7 @@
|
||||
<script type="text/javascript" src="../libs/handlebarsextend.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../bootstrap/bootstrap.min.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-notify.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../libs/bootstrap-multiselect.js?changed=20230107001"></script>
|
||||
<script type="text/javascript" src="../libs/tagify.min.js?changed=11662"></script>
|
||||
<script type="text/javascript" src="../libs/jQuery.tagify.min.js?changed=11662"></script>
|
||||
|
||||
@@ -31,7 +32,7 @@
|
||||
<link rel="stylesheet" type="text/css" href="../custom.css?changed=20220721002" media="only screen and (min-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../custom_mobile.css?changed=20220721002" media="only screen and (max-device-width: 480px)">
|
||||
<link rel="stylesheet" type="text/css" href="../css/jquery.dataTables.min.css?changed=2017083001">
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=2017083001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/bootstrap-multiselect.css?changed=20230107001" />
|
||||
<link rel="stylesheet" type="text/css" href="../css/font-awesome.min.css?changed=2017083001">
|
||||
<title>Jackett</title>
|
||||
</head>
|
||||
@@ -565,42 +566,43 @@
|
||||
{{/if}}
|
||||
, {{/each}}
|
||||
</p>
|
||||
<datalist id="jackett-search-saved-presets"></datalist>
|
||||
<table id="jackett-search-results-datatable" class="dataTable compact cell-border hover stripe">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Published</th>
|
||||
<th>Published</th>
|
||||
<th>Tracker</th>
|
||||
<th class="text-center">Published</th>
|
||||
<th class="text-center">Published</th>
|
||||
<th class="text-center">Tracker</th>
|
||||
<th>Name</th>
|
||||
<th>Size</th>
|
||||
<th>Size</th>
|
||||
<th title="Files">F</th>
|
||||
<th>Category</th>
|
||||
<th title="Grabs">G</th>
|
||||
<th title="Seeders">S</th>
|
||||
<th title="Leechers">L</th>
|
||||
<th title="DownloadVolumeFactor" class="fit">DLF</th>
|
||||
<th title="UploadVolumeFactor" class="fit">ULF</th>
|
||||
<th title="Download">DL</th>
|
||||
<th class="text-center">Size</th>
|
||||
<th class="text-center">Size</th>
|
||||
<th class="text-center" title="Files">F</th>
|
||||
<th class="text-center">Category</th>
|
||||
<th class="text-center" title="Grabs">G</th>
|
||||
<th class="text-center" title="Seeders">S</th>
|
||||
<th class="text-center" title="Leechers">L</th>
|
||||
<th class="text-center fit" title="DownloadVolumeFactor">DLF</th>
|
||||
<th class="text-center fit" title="UploadVolumeFactor">ULF</th>
|
||||
<th class="text-center" title="Download">DL</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each Results}}
|
||||
<tr class="jackett-search-results-row" data-imdb="{{Imdb}}" data-tmdb="{{TMDb}}" data-tvdb="{{TVDBId}}" data-tvmaze="{{TVMazeId}}" data-trakt="{{TraktId}}" data-douban="{{DoubanId}}" data-poster="{{Poster}}" data-description="{{Description}}">
|
||||
<td>{{PublishDate}}</td>
|
||||
<td>{{jacketTimespan PublishDate}}</td>
|
||||
<td>{{Tracker}}</td>
|
||||
<td class="text-center">{{PublishDate}}</td>
|
||||
<td class="text-center" title="{{dateFormat PublishDate format="YYYY-MM-DD HH:mm:ss Z"}}">{{jacketTimespan PublishDate}}</td>
|
||||
<td class="text-center">{{Tracker}}</td>
|
||||
<td class="Title"><a href="{{Details}}" target="_blank">{{Title}}</a> <span class="release-labels"></span></td>
|
||||
<td>{{Size}}</td>
|
||||
<td class="fit">{{jacketSize Size}}</td>
|
||||
<td>{{Files}}</td>
|
||||
<td class="Cat">{{CategoryDesc}}</td>
|
||||
<td>{{Grabs}}</td>
|
||||
<td>{{Seeders}}</td>
|
||||
<td>{{Peers}}</td>
|
||||
<td class="DownloadVolumeFactor">{{DownloadVolumeFactor}}</td>
|
||||
<td class="UploadVolumeFactor">{{UploadVolumeFactor}}</td>
|
||||
<td class="downloadcolumn">
|
||||
<td class="text-right">{{Size}}</td>
|
||||
<td class="text-right fit">{{jacketSize Size}}</td>
|
||||
<td class="text-center">{{Files}}</td>
|
||||
<td class="text-center Cat">{{CategoryDesc}}</td>
|
||||
<td class="text-center">{{Grabs}}</td>
|
||||
<td class="text-center">{{Seeders}}</td>
|
||||
<td class="text-center">{{Peers}}</td>
|
||||
<td class="text-center DownloadVolumeFactor">{{DownloadVolumeFactor}}</td>
|
||||
<td class="text-center UploadVolumeFactor">{{UploadVolumeFactor}}</td>
|
||||
<td class="text-center downloadcolumn">
|
||||
{{#if Link}}
|
||||
<a class="downloadlink" title="Download locally" href="{{Link}}"><i class="fa fa-download"></i></a>
|
||||
{{/if}}
|
||||
@@ -754,6 +756,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20221002"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023010701"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
3248
src/Jackett.Common/Content/libs/bootstrap-multiselect.js
vendored
3248
src/Jackett.Common/Content/libs/bootstrap-multiselect.js
vendored
File diff suppressed because it is too large
Load Diff
@@ -3,6 +3,7 @@
|
||||
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="robots" content="noindex, nofollow"/>
|
||||
|
||||
<link rel='shortcut icon' type='image/x-icon' href='../favicon.ico' />
|
||||
|
||||
|
||||
@@ -6,26 +6,19 @@ language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://1337x.to/
|
||||
- https://1337x.st/
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.cat/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockit.bio/
|
||||
- https://1337x.mrunblock.guru/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.unblocked.monster/
|
||||
- https://1337x.unblockit.li/
|
||||
- https://1337x.unblockit.uno/
|
||||
- https://1337x.is/
|
||||
- https://1337x.unblockit.ch/
|
||||
- https://1337x.nocensor.space/
|
||||
- https://1337x.unblockit.ws/
|
||||
- https://1337x.nocensor.work/
|
||||
- https://1337x.unblockit.kim/
|
||||
- https://1337x.unblockit.bz/
|
||||
- https://1337x.unblockit.tv/
|
||||
- https://1337x.unblockit.how/
|
||||
- https://1337x.unblockit.cam/
|
||||
@@ -38,6 +31,14 @@ legacylinks:
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.ist/
|
||||
- https://1337x.unblockit.bet/
|
||||
- https://1337x.unblockit.cat/
|
||||
- https://1337x.unblockit.nz/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockit.page/
|
||||
- https://1337x.unblockit.pet/
|
||||
- https://1337x.nocensor.lol/
|
||||
- https://1337x.unblockit.ink/
|
||||
- https://1337x.nocensor.art/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -110,6 +110,9 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
@@ -159,4 +162,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 5
|
||||
# NexusPHP v1.7.32 2022-12-05
|
||||
|
||||
@@ -97,22 +97,22 @@ settings:
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
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"
|
||||
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
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
@@ -178,22 +178,20 @@ search:
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" - (Nouveau!)", ""]
|
||||
title_multilang:
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
|
||||
217
src/Jackett.Common/Definitions/2xfree.yml
Normal file
217
src/Jackett.Common/Definitions/2xfree.yml
Normal file
@@ -0,0 +1,217 @@
|
||||
---
|
||||
id: 2xfree
|
||||
name: 2xFree
|
||||
description: "2xFree is a CHINESE Private Torrent Tracker for HD MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://pt.2xfree.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 401, cat: Movies, desc: "Movies(电影)", default: true}
|
||||
- {id: 402, cat: TV, desc: "TV Series(电视剧)", default: true}
|
||||
- {id: 403, cat: TV, desc: "TV Shows(综艺)", default: true}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries(纪录片)", default: true}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations(动画)", default: true}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos(MV)", default: true}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports(体育运动)", default: true}
|
||||
- {id: 408, cat: Audio, desc: "HQ Audio(音乐)", default: true}
|
||||
- {id: 409, cat: Other, desc: "Misc(其他)", default: true}
|
||||
- {id: 410, cat: Books, desc: "eBook(电子书)", default: true}
|
||||
- {id: 411, cat: PC/Games, desc: "PCGame(游戏)", default: true}
|
||||
- {id: 413, cat: Audio/Video, desc: "AV(无码)", default: true}
|
||||
- {id: 414, cat: Audio/Video, desc: "AV(有码)", default: true}
|
||||
- {id: 420, cat: XXX, desc: "HAnime(H动画)", default: true}
|
||||
- {id: 421, cat: XXX, desc: "HComic(H漫画)", default: true}
|
||||
- {id: 422, cat: XXX, desc: "HGame(H游戏)", default: true}
|
||||
- {id: 423, cat: XXX, desc: "IV(写真影片)", default: true}
|
||||
- {id: 424, cat: XXX, desc: "IV(写真图集)", default: true}
|
||||
# special
|
||||
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: true}
|
||||
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: true}
|
||||
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: true}
|
||||
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: true}
|
||||
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: true}
|
||||
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: true}
|
||||
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the ICC2022 Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
- selector: td.embedded:has(h2:contains("Failed"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 413, 420, 421, 422, 423, 424]
|
||||
- path: special.php
|
||||
categories: [526, 527, 528, 529, 530, 531, 532]
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl (4 does not appear to work)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title_optional:
|
||||
optional: true
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
title:
|
||||
text: "{{ if .Result.title_optional }}{{ .Result.title_optional }}{{ else }}{{ .Result.title_default }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "2006-01-0215:04:05 -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 1 day (as seconds = 24 x 60 x 60)
|
||||
text: 86400
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.8.0 2023-01-26
|
||||
@@ -125,9 +125,15 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.lazyload
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td:nth-child(4) > span[title]
|
||||
selector: td.rowfollow:nth-child(5) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
@@ -137,7 +143,7 @@ search:
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td:nth-child(4):not(:has(span))
|
||||
selector: td.rowfollow:nth-child(5):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
@@ -147,13 +153,13 @@ search:
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
selector: td.rowfollow:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
@@ -171,4 +177,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP Standard v1.5 Beta 4
|
||||
# NexusPHP v3.0 2020-04-30
|
||||
|
||||
@@ -63,7 +63,7 @@ settings:
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: index.php?page=login&returnto=index.php
|
||||
path: index.php?page=login
|
||||
method: form
|
||||
form: form
|
||||
inputs:
|
||||
|
||||
@@ -77,7 +77,8 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}/{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# currently supports only one query id at one time.
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
|
||||
@@ -37,22 +37,22 @@ settings:
|
||||
label: Password
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
MULTi.FRENCH: MULTi.FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
MULTi.ENGLISH: MULTi.ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
MULTi.VOSTFR: MULTi.VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
@@ -124,22 +124,20 @@ search:
|
||||
args: SelectedCats
|
||||
title_phase1:
|
||||
selector: td.grid-release-column > a
|
||||
title_multilang:
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\.multi\\.)", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\.vostfr\\.)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\.subfrench\\.)", " ENGLISH "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/Torrent/Details?ReleaseId="]
|
||||
attribute: href
|
||||
|
||||
@@ -129,6 +129,7 @@ search:
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
remove: span
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
@@ -137,25 +138,23 @@ search:
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-last-child(9)
|
||||
date_yday:
|
||||
date_day:
|
||||
# Yesterday<br/>6:00 AM
|
||||
selector: td:nth-last-child(7):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Aug 6 2021<br/>7:25 PM
|
||||
selector: td:nth-last-child(7):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 3:04 PM -07:00"
|
||||
args: "Jan 2 2006 3:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_yday .Result.date_year }}{{ or .Result.date_yday .Result.date_year }}{{ else }}now{{ end }}"
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-last-child(6)
|
||||
grabs:
|
||||
|
||||
@@ -11,17 +11,22 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Filmes"}
|
||||
- {id: 2, cat: TV, desc: "TV Séries"}
|
||||
- {id: 3, cat: Other, desc: "Cursos"}
|
||||
- {id: 4, cat: Console, desc: "Jogos"}
|
||||
- {id: 5, cat: PC, desc: "Aplicativos"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 7, cat: Other, desc: "Materiais de Apoio"}
|
||||
- {id: 2, cat: TV, desc: "Séries"}
|
||||
- {id: 8, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 5, cat: Other, desc: "Cursos"}
|
||||
- {id: 6, cat: Other, desc: "Materiais de Apoio"}
|
||||
- {id: 7, cat: Books, desc: "eBooks / Revistas / Apostilas"}
|
||||
- {id: 9, cat: Audio/Video, desc: "Shows"}
|
||||
- {id: 10, cat: PC, desc: "Programas"}
|
||||
- {id: 11, cat: TV/Documentary, desc: "Documentários"}
|
||||
- {id: 4, cat: Console, desc: "Games"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
@@ -74,7 +79,7 @@ search:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -114,14 +119,12 @@ search:
|
||||
_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
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
@@ -131,6 +134,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._cat }} {{ .Result._type }} {{ .Result._res }} {{ .Result._reg }} {{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -140,8 +154,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
@@ -164,6 +183,6 @@ search:
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.1.0
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.5.0
|
||||
|
||||
@@ -61,6 +61,10 @@ search:
|
||||
# https://www.acgsou.com/search.php?keyword=test
|
||||
- path: "{{ if .Keywords }}search.php?keyword={{ .Keywords }}{{ else }}1.html{{ end }}"
|
||||
|
||||
headers:
|
||||
# site blocks Jackett's User-Agents, so slightly alter it here (e.g. Safari/537.36 > Safari/537.35)
|
||||
User-Agent: ["Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.35"]
|
||||
|
||||
rows:
|
||||
selector: table tbody tr[class^="alt"]:has(td:nth-child(3) a)
|
||||
|
||||
|
||||
@@ -115,11 +115,10 @@ search:
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: td:last-child
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "060102 15:04:05 -07:00"
|
||||
args: "060102 15:04:05"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/freeleech.png"]: 0 # dl not counted
|
||||
|
||||
@@ -79,7 +79,7 @@ search:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -137,8 +137,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
@@ -163,4 +168,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.4.0
|
||||
# json UNIT3D 6.5.0
|
||||
|
||||
@@ -5,6 +5,7 @@ description: "Amigos Share Club is a Brazilian Private site for TV / MOVIES / GE
|
||||
language: pt-BR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://cliente.amigos-share.club/
|
||||
legacylinks:
|
||||
@@ -298,16 +299,15 @@ search:
|
||||
"[src$=\"/outros2.png\"]": 130
|
||||
date_optional:
|
||||
selector: p:contains("Lançado:")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Lançado: (.+?)$"
|
||||
- name: re_replace
|
||||
args: [" (\\d:)", " 0$1"]
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02/01/06 15:04:05 -07:00"
|
||||
args: "02/01/06 15:04:05"
|
||||
date:
|
||||
text: "{{ if .Result.date_optional }}{{ .Result.date_optional }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
|
||||
@@ -1,161 +0,0 @@
|
||||
---
|
||||
id: anaschcc
|
||||
name: anasch.cc
|
||||
description: "anasch.cc is a Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://anasch.cc/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: Movies}
|
||||
- {id: 2, cat: TV, desc: TV}
|
||||
- {id: 3, cat: TV, desc: Animation}
|
||||
- {id: 5, cat: Audio, desc: Music}
|
||||
- {id: 12, cat: XXX, desc: Porn}
|
||||
- {id: 29, cat: TV/Sport, desc: Sports}
|
||||
- {id: 37, cat: PC, desc: Software}
|
||||
- {id: 38, cat: Console, desc: Games}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 3
|
||||
options:
|
||||
3: created
|
||||
5: seeders
|
||||
4: size
|
||||
2: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: 2
|
||||
options:
|
||||
2: desc
|
||||
1: asc
|
||||
|
||||
login:
|
||||
path: index.php?page=login
|
||||
method: form
|
||||
form: form[action^="index.php?page=login"]
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div[data-validate^="Valid"]
|
||||
message:
|
||||
selector: div[data-validate^="Valid"]
|
||||
attribute: data-validate
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: index.php
|
||||
inputs:
|
||||
page: torrents
|
||||
active: 0
|
||||
search: "{{ .Keywords }}"
|
||||
$raw: "{{ range .Categories }}category[]={{.}}&{{end}}"
|
||||
# 1 freeleech, 2 2x upload, 3 featured
|
||||
discount[]: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "table.lista tbody tr:has(a[href^=\"index.php?page=torrent-details\"])"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td a[href^="index.php?page=torrents&category[]="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category[]
|
||||
title:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
details:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: td a[href^="download.php"]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["javascript:ShowImage('/images/imdb/tt0000000.jpg')", ""]
|
||||
poster:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["javascript:ShowImage('", ""]
|
||||
- name: replace
|
||||
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:
|
||||
# 22/01/21 01:28
|
||||
selector: td:nth-child(6)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile - doesn't adjust for DST
|
||||
- name: dateparse
|
||||
args: "02/01/06 15:04 -07:00"
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src*="freeleech.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src*="x2u.png"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 3.0
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# xbtit
|
||||
@@ -51,8 +51,9 @@ search:
|
||||
selector: quality.string
|
||||
_series:
|
||||
selector: series.string
|
||||
optional: true
|
||||
title:
|
||||
text: "{{ .Result.title_ru }} / {{ .Result.title_en }}{{ if .Result.title_alternative }} / {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}] - {{ .Result._series }}"
|
||||
text: "{{ .Result.title_ru }} / {{ .Result.title_en }}{{ if .Result.title_alternative }} / {{ .Result.title_alternative }}{{ else }}{{ end }} ({{ .Result.year }}) [{{ .Result._quality }}]{{ if .Result._series }} - {{ .Result._series }}{{ else }}{{ end }}"
|
||||
_code:
|
||||
selector: ..code
|
||||
details:
|
||||
|
||||
@@ -7,9 +7,11 @@ type: semi-private
|
||||
encoding: windows-1251
|
||||
testlinktorrent: false
|
||||
links:
|
||||
- https://anime-free.biz/
|
||||
- https://anime-free.one/
|
||||
legacylinks:
|
||||
- https://anime-free.net/ # redirects to *.biz
|
||||
- https://anime-free.biz/
|
||||
- http://anime-free.one/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -50,7 +52,6 @@ login:
|
||||
inputs:
|
||||
login_name: "{{ .Config.email }}"
|
||||
login_password: "{{ .Config.password }}"
|
||||
login: submit
|
||||
error:
|
||||
- selector: div.berrors
|
||||
test:
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
---
|
||||
id: animeclipse
|
||||
name: AnimeClipse
|
||||
description: "AnimeClipse is a Public site for Hellenic Fansubs Anime."
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.animeclipse.com/ # does not support https ERR_CONNECTION_REFUSED
|
||||
|
||||
settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: DESC
|
||||
options:
|
||||
DESC: desc
|
||||
ASC: asc
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV/Anime, desc: "Anime"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# http://www.animeclipse.com/index.php?ind=btitracker&search=sword&category=0&active=0&tor_page=10
|
||||
- path: index.php
|
||||
inputs:
|
||||
ind: btitracker
|
||||
# replace spaces with wildcard (percent symbol) as site's default search is exact string.
|
||||
search: "{{ re_replace .Keywords \"[\\s]+\" \"%\" }}"
|
||||
# does not support multi cats searching so defaulting to all.
|
||||
category: 0
|
||||
# 0 all, 1 active, 2 dead
|
||||
active: 0
|
||||
tor_page: 50
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: tr.torrentRow
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 1
|
||||
title:
|
||||
selector: a[href*="/download/"]
|
||||
filters:
|
||||
# move group to the end
|
||||
- name: re_replace
|
||||
args: ["^(\\[.+?\\])(.+?)$", "$2 $1"]
|
||||
- name: re_replace
|
||||
args: ["(_|\\[|\\])", " "]
|
||||
details:
|
||||
text: "{{ .Config.sitelink }}"
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:contains("[size:") > span.torrentInfoData
|
||||
date:
|
||||
selector: td:contains("[Added:") > span.torrentInfoData
|
||||
filters:
|
||||
- name: append
|
||||
args: " +02:00" # EET
|
||||
- name: dateparse
|
||||
args: "02/01/2006 15:04:05 -07:00"
|
||||
grabs:
|
||||
selector: td:contains("[Completed:") > span.torrentInfoData
|
||||
seeders:
|
||||
selector: td:contains("Seeders") > span.torrentInfoData
|
||||
leechers:
|
||||
selector: td:contains("Leechers") > span.torrentInfoData
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# btitracker
|
||||
@@ -11,11 +11,14 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 7, cat: TV/Anime, desc: "Series English"}
|
||||
- {id: 16, cat: TV/Anime, desc: "ongoing"}
|
||||
- {id: 11, cat: TV/Anime, desc: "Series Non-English"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Raws"}
|
||||
- {id: 2, cat: TV/Anime, desc: "OVA"}
|
||||
- {id: 4, cat: Movies, desc: "Movie"}
|
||||
- {id: 6, cat: XXX, desc: "Hentai OVA"}
|
||||
- {id: 15, cat: Books/Comics, desc: "Manga"}
|
||||
- {id: 6, cat: XXX, desc: "Hentai Censored"}
|
||||
- {id: 14, cat: XXX, desc: "Hentai Uncensored"}
|
||||
- {id: 9, cat: XXX, desc: "Hentai Manga"}
|
||||
- {id: 10, cat: Movies, desc: "Live Action"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
@@ -25,6 +28,7 @@ caps:
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
@@ -133,8 +137,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
|
||||
@@ -125,8 +125,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
|
||||
@@ -5,8 +5,9 @@ description: "AniSource is a Public site for HD Anime raws."
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
certificates:
|
||||
- f400d50a4dac4dd6546c869ac75669846205a0d2 # expired 26 Aug 2022
|
||||
- 7b36f0dc75d3340727b6f74bbdbde46ec59b7037 # expired 12 Feb 2023
|
||||
links:
|
||||
- https://asnet.pw/
|
||||
|
||||
|
||||
@@ -84,6 +84,9 @@ search:
|
||||
selector: container
|
||||
_media:
|
||||
selector: media
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["WEB", "WEB-DL"]
|
||||
_resolution:
|
||||
selector: resolution
|
||||
_audioFormat:
|
||||
@@ -100,20 +103,23 @@ search:
|
||||
_language:
|
||||
selector: language
|
||||
optional: true
|
||||
_releaseGroup:
|
||||
selector: releaseGroup
|
||||
optional: true
|
||||
filters:
|
||||
- name: trim
|
||||
title:
|
||||
selector: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["'", "'"]
|
||||
- name: htmldecode
|
||||
- name: append
|
||||
args: " {{ .Result.year }} {{ .Result._codec }} {{ .Result._container }} {{ .Result._media }} {{ .Result._resolution }} {{ .Result._audioFormat }}{{ if .Result._subbing }} Subs{{ else }}{{ end }}{{ if .Result._flags }} {{ .Result._flags }}{{ else }}{{ end }}{{ if .Result._language }} {{ .Result._language }}{{ else }}{{ end }}"
|
||||
args: " {{ .Result.year }} {{ .Result._codec }} {{ .Result._container }} {{ .Result._media }} {{ .Result._resolution }} {{ .Result._audioFormat }}{{ if .Result._subbing }} Subs{{ else }}{{ end }}{{ if .Result._flags }} {{ .Result._flags }}{{ else }}{{ end }}{{ if .Result._language }} {{ .Result._language }}{{ else }}{{ end }}{{ if and (.Result._releaseGroup) (ne .Result._releaseGroup \"NULL\") }} -{{ .Result._releaseGroup }}{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: guid
|
||||
download:
|
||||
selector: link
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&", "&"]
|
||||
- name: htmldecode
|
||||
infohash:
|
||||
selector: infohash
|
||||
imdbid:
|
||||
|
||||
@@ -48,15 +48,14 @@ caps:
|
||||
- {id: 52, cat: TV, desc: "مسرحيات (Plays)"}
|
||||
- {id: 71, cat: TV, desc: "مسلسلات مدبلجه عربي (Arabic Dubbed Series)"}
|
||||
- {id: 90, cat: TV, desc: "برامج ومسابقات (Shows)"}
|
||||
- {id: 111, cat: TV, desc: "2022 رمضان (2022 Ramadan)"}
|
||||
# المرئيات الاجنبية Foreign Movies
|
||||
- {id: 92, cat: TV/Foreign, desc: "تعليمي (Educational)"}
|
||||
- {id: 93, cat: TV/Documentary, desc: "وثائقي (Documentary)"}
|
||||
- {id: 45, cat: TV/Foreign, desc: "مسلسلات وبرامج اجنبيه (Serials)"}
|
||||
- {id: 57, cat: TV/Foreign, desc: "مسلسلات آسيوية (Asian Series)"}
|
||||
- {id: 42, cat: Movies/Foreign, desc: "افلام اجنبيه (Foreign)"}
|
||||
- {id: 76, cat: Movies/3D, desc: "&ثلاثي الابعاد 3D (3D)"}
|
||||
- {id: 74, cat: Movies/HD, desc: "جودة عالية HD"}
|
||||
- {id: 76, cat: Movies/3D, desc: "&ثلاثي الابعاد 3D (3D)"}
|
||||
- {id: 59, cat: Movies/Foreign, desc: "افلام آسيوية (Asian Movies)"}
|
||||
- {id: 86, cat: Movies/Foreign, desc: "افلام هنديه (Indian Movies)"}
|
||||
# انمي مدبلج عربي Anime Arabic dubbed
|
||||
@@ -149,11 +148,10 @@ search:
|
||||
date:
|
||||
selector: td:nth-child(4) span
|
||||
attribute: title
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
args: "2006-01-02 15:04:05"
|
||||
seeders:
|
||||
selector: td:nth-child(5)
|
||||
leechers:
|
||||
|
||||
@@ -5,6 +5,8 @@ description: "ArenaBG is a BULGARIAN Semi-Private Torrent Tracker for 0DAY / GEN
|
||||
language: bg-BG
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- d5d96eaf33f4b7470a7009f1e591a45f6af0430d # expired 15 Oct 2022
|
||||
links:
|
||||
- https://arenabg.com/
|
||||
legacylinks:
|
||||
@@ -158,18 +160,18 @@ search:
|
||||
attribute: title
|
||||
optional: true
|
||||
title:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
selector: td.filename a.title
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if .Result._bulgarian }} {{ .Result._bulgarian }}{{ else }}{{ end }}{{ if .Result._english }} {{ .Result._english }}{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
selector: td.filename a.title
|
||||
attribute: href
|
||||
download:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
selector: td.filename a.title
|
||||
attribute: href
|
||||
poster:
|
||||
selector: td.filename a[href^="/en/torrents/"]
|
||||
selector: td.filename a.title
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
|
||||
155
src/Jackett.Common/Definitions/asiandvdclub.yml
Normal file
155
src/Jackett.Common/Definitions/asiandvdclub.yml
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
id: asiandvdclub
|
||||
name: AsianDVDClub
|
||||
description: "AsianDVDClub (ADC) is a Private Torrent Tracker for Asian DVD and BluRay"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://asiandvdclub.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 3, cat: Movies, desc: "Japan"}
|
||||
- {id: 5, cat: Movies, desc: "China"}
|
||||
- {id: 4, cat: Movies, desc: "Korea"}
|
||||
- {id: 2, cat: Movies, desc: "Hong Kong"}
|
||||
- {id: 6, cat: Movies, desc: "Philippines"}
|
||||
- {id: 7, cat: Movies, desc: "Taiwan"}
|
||||
- {id: 8, cat: Movies, desc: "Thailand"}
|
||||
- {id: 9, cat: Movies, desc: "Vietnam"}
|
||||
- {id: 10, cat: Movies, desc: "Malaysia"}
|
||||
- {id: 11, cat: Movies, desc: "Other Asian"}
|
||||
- {id: 12, cat: Other, desc: "Miscellaneous"}
|
||||
- {id: 15, cat: TV, desc: "TV Series"}
|
||||
- {id: 16, cat: Audio, desc: "Music/OST"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
up: seeders
|
||||
size: size
|
||||
title: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login
|
||||
method: post
|
||||
inputs:
|
||||
apple: evil
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: b:contains("Try again")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="/logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents/
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}countries[]={{.}}&{{end}}"
|
||||
searchbox: "{{ .Keywords }}"
|
||||
search: Search
|
||||
golden: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
column: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.torrenttable_helper > tbody > tr:has(img)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: img[class^="cat-"]
|
||||
attribute: class
|
||||
case:
|
||||
img.cat-anime: 1
|
||||
img.cat-hk: 2
|
||||
img.cat-japan: 3
|
||||
img.cat-korea: 4
|
||||
img.cat-china: 5
|
||||
img.cat-phil: 6
|
||||
img.cat-taiwan: 7
|
||||
img.cat-thai: 8
|
||||
img.cat-viet: 9
|
||||
img.cat-malaysia: 10
|
||||
img.cat-rest: 11
|
||||
img.cat-india: 11
|
||||
img.cat-misc: 12
|
||||
img.cat-pinku: 12
|
||||
img.cat-drama: 15
|
||||
img.cat-ost: 16
|
||||
title:
|
||||
selector: span[id]
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["torrent", "download"]
|
||||
poster:
|
||||
selector: span[id]
|
||||
attribute: data-ot
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src='(.+?)'
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
date:
|
||||
selector: td:nth-child(9) span.small
|
||||
filters:
|
||||
- name: timeago
|
||||
grabs:
|
||||
selector: td:nth-child(10)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="images/golden.gif"]: 0
|
||||
img[src$="images/silver.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.5
|
||||
minimumseedtime:
|
||||
# 45 days (as seconds = 45 x 24 x 60 x 60)
|
||||
text: 3888000
|
||||
# Engine n/a
|
||||
@@ -75,7 +75,7 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 justdead
|
||||
incldead: 0
|
||||
# promotion: 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x 50%, 7 30%
|
||||
|
||||
@@ -1,179 +0,0 @@
|
||||
---
|
||||
id: audiobookbay
|
||||
name: AudioBookBay
|
||||
description: "AudioBook Bay (ABB) is a public Torrent Tracker for AUDIOBOOKS"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://audiobookbay.fi/
|
||||
- https://audiobookbay.se/
|
||||
- https://audiobookbay.unblockit.cat/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- https://audiobookbay.unblockit.uno/
|
||||
- https://audiobookbay.unblockit.ch/
|
||||
- https://audiobookbay.unblockit.ws/
|
||||
- http://audiobookbay.net/
|
||||
- https://audiobookbay.unblockit.kim/
|
||||
- https://audiobookbay.unblockit.bz/
|
||||
- https://audiobookbay.unblockit.tv/
|
||||
- http://audiobookbay.nl/
|
||||
- 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/
|
||||
- https://audiobookbay.unblockit.bet/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: "(Post)apocalyptic", cat: Audio/Audiobook, desc: "(Post)apocalyptic"}
|
||||
- {id: Action, cat: Audio/Audiobook, desc: "Action"}
|
||||
- {id: Adults, cat: Audio/Audiobook, desc: "Adults"}
|
||||
- {id: Adventure, cat: Audio/Audiobook, desc: "Adventure"}
|
||||
- {id: Anthology, cat: Audio/Audiobook, desc: "Anthology"}
|
||||
- {id: Art, cat: Audio/Audiobook, desc: "Art"}
|
||||
- {id: Autobiography, cat: Audio/Audiobook, desc: "Autobiography & Biographies"}
|
||||
- {id: Bestsellers, cat: Audio/Audiobook, desc: "Bestsellers"}
|
||||
- {id: Business, cat: Audio/Audiobook, desc: "Business"}
|
||||
- {id: Children, cat: Audio/Audiobook, desc: "Children"}
|
||||
- {id: Classic, cat: Audio/Audiobook, desc: "Classic"}
|
||||
- {id: Computer, cat: Audio/Audiobook, desc: "Computer"}
|
||||
- {id: Contemporary, cat: Audio/Audiobook, desc: "Contemporary"}
|
||||
- {id: Crime, cat: Audio/Audiobook, desc: "Crime"}
|
||||
- {id: Detective, cat: Audio/Audiobook, desc: "Detective"}
|
||||
- {id: Doctor, cat: Audio/Audiobook, desc: "Doctor Who"}
|
||||
- {id: Documentary, cat: Audio/Audiobook, desc: "Documentary"}
|
||||
- {id: Education, cat: Audio/Audiobook, desc: "Education"}
|
||||
- {id: Fantasy, cat: Audio/Audiobook, desc: "Fantasy"}
|
||||
- {id: Full, cat: Audio/Audiobook, desc: "Full Cast"}
|
||||
- {id: Gay, cat: Audio/Audiobook, desc: "Gay"}
|
||||
- {id: General, cat: Audio/Audiobook, desc: "General Fiction"}
|
||||
- {id: Historical, cat: Audio/Audiobook, desc: "Historical Fiction"}
|
||||
- {id: History, cat: Audio/Audiobook, desc: "History"}
|
||||
- {id: Horror, cat: Audio/Audiobook, desc: "Horror"}
|
||||
- {id: Humor, cat: Audio/Audiobook, desc: "Humor"}
|
||||
- {id: Lecture, cat: Audio/Audiobook, desc: "Lecture"}
|
||||
- {id: Lesbian, cat: Audio/Audiobook, desc: "Lesbian"}
|
||||
- {id: LGBT, cat: Audio/Audiobook, desc: "LGBT"}
|
||||
- {id: Libertarian, cat: Audio/Audiobook, desc: "Libertarian"}
|
||||
- {id: Literature, cat: Audio/Audiobook, desc: "Literature"}
|
||||
- {id: LitRPG, cat: Audio/Audiobook, desc: "LitRPG"}
|
||||
- {id: Military, cat: Audio/Audiobook, desc: "Military"}
|
||||
- {id: Misc., cat: Audio/Audiobook, desc: "Misc. Non-fiction"}
|
||||
- {id: Mystery, cat: Audio/Audiobook, desc: "Mystery"}
|
||||
- {id: Novel, cat: Audio/Audiobook, desc: "Novel"}
|
||||
- {id: Other, cat: Audio/Audiobook, desc: "Other"}
|
||||
- {id: Paranormal, cat: Audio/Audiobook, desc: "Paranormal"}
|
||||
- {id: Plays, cat: Audio/Audiobook, desc: "Plays & Theater"}
|
||||
- {id: Poetry, cat: Audio/Audiobook, desc: "Poetry"}
|
||||
- {id: Political, cat: Audio/Audiobook, desc: "Political"}
|
||||
- {id: Radio, cat: Audio/Audiobook, desc: "Radio Productions"}
|
||||
- {id: Romance, cat: Audio/Audiobook, desc: "Romance"}
|
||||
- {id: Sci-Fi, cat: Audio/Audiobook, desc: "Sci-Fi"}
|
||||
- {id: Science, cat: Audio/Audiobook, desc: "Science"}
|
||||
- {id: Self-help, cat: Audio/Audiobook, desc: "Self-help"}
|
||||
- {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: Sport, cat: Audio/Audiobook, desc: "Sport & Recreation"}
|
||||
- {id: Suspense, cat: Audio/Audiobook, desc: "Suspense"}
|
||||
- {id: Teen, cat: Audio/Audiobook, desc: "Teen & Young Adult"}
|
||||
- {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]
|
||||
book-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
infohash:
|
||||
hash:
|
||||
selector: td:contains("Info Hash:") ~ td
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([A-F|a-f|0-9]{40})
|
||||
title:
|
||||
selector: h1
|
||||
filters:
|
||||
- name: trim
|
||||
- name: validfilename
|
||||
|
||||
search:
|
||||
paths:
|
||||
# with just 7 results per page, try to grab up to 35 results
|
||||
# http://audiobookbay.nl/?s=teeth
|
||||
# http://audiobookbay.nl/page/2/?s=teeth
|
||||
- path: "{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/2/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/3/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/4/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/5/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: div.post:has(div[class="postTitle"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div.postInfo
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Category: (.+?)\\s"
|
||||
title:
|
||||
selector: div.postTitle
|
||||
details:
|
||||
selector: div.postTitle h2 a
|
||||
attribute: href
|
||||
download:
|
||||
selector: div.postTitle h2 a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
date_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(\\d{1,2} \\D{3} \\d{4})"
|
||||
- name: dateparse
|
||||
args: "2 Jan 2006"
|
||||
date:
|
||||
text: "{{ if .Result.date_optional }}{{ .Result.date_optional }}{{ else }}now{{ end }}"
|
||||
size_optional:
|
||||
optional: true
|
||||
selector: div.postContent
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "File Size: (.+?)$"
|
||||
- name: replace
|
||||
args: ["MBs", "MB"]
|
||||
- name: replace
|
||||
args: ["GBs", "GB"]
|
||||
- name: replace
|
||||
args: ["KBs", "KB"]
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}0 B{{ end }}"
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -184,11 +184,14 @@ caps:
|
||||
- {id: 228, cat: Other, desc: "GFXNEWS PHOTOSHOP Actions, Pattern & Styles"}
|
||||
- {id: 229, cat: Other, desc: "GFXNEWS PHOTOSHOP Background & PSD Source"}
|
||||
- {id: 230, cat: Other, desc: "GFXNEWS PHOTOSHOP Brushes & Gradient"}
|
||||
- {id: 246, cat: Other, desc: "GFXNEWS PHOTOSHOP Mockup"}
|
||||
- {id: 247, cat: Other, desc: "GFXNEWS PHOTOSHOP Overlays"}
|
||||
- {id: 249, cat: Other, desc: "GFXNEWS PHOTOSHOP Preset"}
|
||||
- {id: 231, cat: Other, desc: "GFXNEWS PHOTOSHOP Toolkits, Papers & Objects"}
|
||||
- {id: 245, cat: Other, desc: "GFXNEWS PLUGINS"}
|
||||
- {id: 225, cat: Other, desc: "GFXNEWS PLUGINS LINUX"}
|
||||
- {id: 223, cat: Other, desc: "GFXNEWS PLUGINS MAC"}
|
||||
- {id: 210, cat: Other, desc: "GFXNEWS PLUGINS WIN"}
|
||||
- {id: 223, cat: Other, desc: "GFXNEWS PLUGINS MAC"}
|
||||
- {id: 225, cat: Other, desc: "GFXNEWS PLUGINS LINUX"}
|
||||
- {id: 217, cat: Other, desc: "GFXNEWS SCRIPTS - WEB PROGRAMMING"}
|
||||
- {id: 218, cat: Other, desc: "GFXNEWS TEMPLATES"}
|
||||
- {id: 232, cat: Other, desc: "GFXNEWS TEXTURES"}
|
||||
|
||||
@@ -10,33 +10,50 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 12, cat: Console, desc: "XBOX360"}
|
||||
- {id: 9, cat: TV, desc: "TV-Boxsets"}
|
||||
- {id: 15, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 35, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 51, cat: PC/Mac, desc: "Apple"}
|
||||
- {id: 3, cat: PC, desc: "Apps"}
|
||||
- {id: 24, cat: PC, desc: "Apple"}
|
||||
- {id: 11, cat: TV, desc: "TV/x264"}
|
||||
- {id: 23, cat: Console, desc: "Visionary"}
|
||||
- {id: 14, cat: TV/Sport, desc: "WWE"}
|
||||
- {id: 26, cat: Console, desc: "Xbox"}
|
||||
- {id: 13, cat: Console, desc: "XBOX-JTAG"}
|
||||
- {id: 35, cat: Movies/Other, desc: "Anime"}
|
||||
- {id: 64, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
- {id: 71, cat: Console, desc: "Batocera"}
|
||||
- {id: 4, cat: Movies/BluRay, desc: "Blu-Ray"}
|
||||
- {id: 6, cat: Movies, desc: "Movies/XVID"}
|
||||
- {id: 10, cat: TV, desc: "TV/Xvid"}
|
||||
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 40, cat: TV, desc: "Soaps"}
|
||||
- {id: 27, cat: Console, desc: "Roms and Emulators"}
|
||||
- {id: 30, cat: Console, desc: "Playstation"}
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 22, cat: Console, desc: "CoinOps"}
|
||||
- {id: 42, cat: Console, desc: "CoinOPS Official"}
|
||||
- {id: 65, cat: Console, desc: "CoinOps Unofficial"}
|
||||
- {id: 63, cat: Books/Comics, desc: "Comics"}
|
||||
- {id: 60, cat: Console, desc: "Core"}
|
||||
- {id: 44, cat: Console, desc: "CP78"}
|
||||
- {id: 16, cat: TV/Documentary, desc: "Docu"}
|
||||
- {id: 41, cat: Console, desc: "Dragon"}
|
||||
- {id: 5, cat: Books, desc: "EBooks"}
|
||||
- {id: 38, cat: Console, desc: "Hyperspin Bolt-on Edition"}
|
||||
- {id: 61, cat: Console, desc: "emuxtras"}
|
||||
- {id: 69, cat: TV, desc: "Entertainment"}
|
||||
- {id: 34, cat: TV, desc: "Kids"}
|
||||
- {id: 8, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 22, cat: PC/Games, desc: "CoinOPS"}
|
||||
- {id: 43, cat: Console, desc: "LB No Intro"}
|
||||
- {id: 33, cat: TV/Sport, desc: "MMA/Boxing"}
|
||||
- {id: 32, cat: Movies, desc: "Movie Pack"}
|
||||
- {id: 6, cat: Movies, desc: "Movies/XVID"}
|
||||
- {id: 7, cat: Audio, desc: "Music"}
|
||||
- {id: 31, cat: Console, desc: "Nintendo"}
|
||||
- {id: 59, cat: Console, desc: "P-R-U"}
|
||||
- {id: 8, cat: PC/Games, desc: "PC Games"}
|
||||
- {id: 50, cat: Console, desc: "PlayBox"}
|
||||
- {id: 30, cat: Console, desc: "Playstation"}
|
||||
- {id: 62, cat: Console, desc: "RaspberryPi"}
|
||||
- {id: 56, cat: Console, desc: "Retro Minis"}
|
||||
- {id: 67, cat: Console, desc: "Retrobat"}
|
||||
- {id: 27, cat: Console, desc: "Roms and Emulators"}
|
||||
- {id: 68, cat: Console, desc: "Schmoomer's"}
|
||||
- {id: 57, cat: Console, desc: "Sega"}
|
||||
- {id: 40, cat: TV, desc: "Soaps"}
|
||||
- {id: 29, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 9, cat: TV, desc: "TV-Boxsets"}
|
||||
- {id: 11, cat: TV, desc: "TV/x264"}
|
||||
- {id: 10, cat: TV, desc: "TV/Xvid"}
|
||||
- {id: 14, cat: TV/Sport, desc: "WWE"}
|
||||
- {id: 26, cat: Console, desc: "Xbox"}
|
||||
- {id: 12, cat: Console, desc: "XBOX360"}
|
||||
- {id: 23, cat: XXX, desc: "xxx18+"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -45,6 +62,22 @@ caps:
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>40</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
@@ -67,12 +100,15 @@ search:
|
||||
inputs:
|
||||
do: search
|
||||
keywords: "{{ .Keywords }}"
|
||||
# t_name, t_description, t_both, t_uploader, t_genre
|
||||
search_type: t_name
|
||||
category: 0 # multi cat search not supported
|
||||
# yes, no
|
||||
include_dead_torrents: yes
|
||||
# sort is done via do=quick_sort, and freeleech sorting is part of that set
|
||||
|
||||
rows:
|
||||
selector: table#sortabletable > tbody > tr:has(a[href*="/details.php?id="])
|
||||
selector: "table#sortabletable > tbody > tr:has(a[href*=\"/details.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"freedownload.gif\"]){{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: andmatch
|
||||
args: 66
|
||||
@@ -108,6 +144,18 @@ search:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
poster:
|
||||
selector: div.tooltip-content > img
|
||||
attribute: src
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freedownload.gif"]: 0
|
||||
img[src$="silverdownload.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="x2.gif"]: 2
|
||||
"*": 1
|
||||
date:
|
||||
selector: "td:nth-child(2) > div:has(span[style=\"float: right;\"])"
|
||||
remove: span
|
||||
@@ -116,14 +164,4 @@ search:
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04 -07:00"
|
||||
poster:
|
||||
selector: div.tooltip-content > img
|
||||
attribute: src
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[alt^="Free Torrent "]: 0
|
||||
img[alt^="Silver Torrent "]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine tbd
|
||||
# TS Special Edition v.8.0
|
||||
|
||||
@@ -5,13 +5,17 @@ description: "Badass Torrents is a Public torrent site for MOVIES / TV / GENERAL
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://badasstorrents.com/
|
||||
- https://badasstorrents.nocensor.world/
|
||||
- https://badasstorrents.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://badasstorrents.nocensor.work/
|
||||
- https://badasstorrents.nocensor.biz/
|
||||
- https://badasstorrents.nocensor.sbs/
|
||||
- https://badasstorrents.nocensor.world/
|
||||
- https://badasstorrents.nocensor.lol/
|
||||
- https://badasstorrents.nocensor.art/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -22,7 +22,7 @@ settings:
|
||||
- name: info_oid
|
||||
type: info
|
||||
label: "About 2FA"
|
||||
default: "If you want to enable 2FA then use the Beyond-HD (OneURL) indexer instead."
|
||||
default: "If you want to enable 2FA then use the Beyond-HD (API) indexer instead."
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
|
||||
@@ -80,15 +80,15 @@ search:
|
||||
div[title="Comics"]: 4
|
||||
div[title="Ebooks"]: 5
|
||||
div[title="Magazines"]: 7
|
||||
_author:
|
||||
author_optional:
|
||||
selector: .authorLink
|
||||
optional: true
|
||||
_editor:
|
||||
selector: .editorLink
|
||||
optional: true
|
||||
author:
|
||||
text: "{{ or .Result._author .Result._editor }}"
|
||||
_year:
|
||||
text: "{{ or .Result.author_optional .Result._editor }}"
|
||||
year:
|
||||
selector: .torYear
|
||||
optional: true
|
||||
_filetype:
|
||||
@@ -103,7 +103,7 @@ search:
|
||||
text: "{{ .Result.booktitle }}"
|
||||
filters:
|
||||
- name: append
|
||||
args: "{{ if .Result.author }} by {{ .Result.author }}{{ else }}{{ end }}{{ if .Result._year }} {{ .Result._year }}{{ else }}{{ end }}{{ if .Result._filetype }} {{ .Result._filetype }}{{ else }}{{ end }}{{ if .Result._retail }} {{ .Result._retail }}{{ else }}{{ end }}"
|
||||
args: "{{ if .Result.author }} by {{ .Result.author }}{{ else }}{{ end }}{{ if .Result.year }} {{ .Result.year }}{{ else }}{{ end }}{{ if .Result._filetype }} {{ .Result._filetype }}{{ else }}{{ end }}{{ if .Result._retail }} {{ .Result._retail }}{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: .title a
|
||||
attribute: href
|
||||
|
||||
@@ -5,50 +5,49 @@ description: "Bit-Bázis is a HUNGARIAN Private Tracker for MOVIES / TV"
|
||||
language: hu-HU
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://bitbazis.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 85, cat: Movies/SD, desc: "Film/Cam/Hun"}
|
||||
- {id: 86, cat: Movies/SD, desc: "Film/Cam/Eng"}
|
||||
- {id: 15, cat: Movies/SD, desc: "Film/XviD/Hun"}
|
||||
- {id: 16, cat: Movies/SD, desc: "Film/XviD/Eng"}
|
||||
- {id: 34, cat: Movies/HD, desc: "Film/x264/Hun"}
|
||||
- {id: 48, cat: Movies/HD, desc: "Film/x264/Eng"}
|
||||
- {id: 83, cat: Movies/HD, desc: "Film/HD/Hun"}
|
||||
- {id: 82, cat: Movies/HD, desc: "Film/HD/Eng"}
|
||||
- {id: 94, cat: Movies/HD, desc: "Film/FHD/Hun"}
|
||||
- {id: 95, cat: Movies/HD, desc: "Film/FHD/Eng"}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Film/UHD/Hun"}
|
||||
- {id: 93, cat: Movies/UHD, desc: "Film/UHD/Eng"}
|
||||
- {id: 22, cat: TV, desc: "Sorozat/Hun"}
|
||||
- {id: 58, cat: TV, desc: "Sorozat/Eng"}
|
||||
- {id: 69, cat: TV/Anime, desc: "Mese/SD"}
|
||||
- {id: 68, cat: TV/Anime, desc: "Mese/DVD"}
|
||||
- {id: 91, cat: TV/Anime, desc: "Mese/HD"}
|
||||
- {id: 25, cat: Audio/MP3, desc: "Mp3/Hun"}
|
||||
- {id: 26, cat: Audio/MP3, desc: "Mp3/Eng"}
|
||||
- {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun"}
|
||||
- {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng"}
|
||||
- {id: 31, cat: PC/Games, desc: "Játék/PC"}
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol"}
|
||||
- {id: 81, cat: PC/0day, desc: "Program/PC"}
|
||||
- {id: 49, cat: PC/0day, desc: "Program/Rip"}
|
||||
- {id: 14, cat: PC, desc: "Program/Egyéb"}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack"}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv"}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun"}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng"}
|
||||
- {id: 65, cat: Other, desc: "Egyéb"}
|
||||
- {id: 85, cat: Movies/SD, desc: "Film/Cam/Hun", default: true}
|
||||
- {id: 86, cat: Movies/SD, desc: "Film/Cam/Eng", default: true}
|
||||
- {id: 15, cat: Movies/SD, desc: "Film/SD/Hun", default: true}
|
||||
- {id: 16, cat: Movies/SD, desc: "Film/SD/Eng", default: true}
|
||||
- {id: 17, cat: Movies/DVD, desc: "Film/DVD/Hun", default: true}
|
||||
- {id: 19, cat: Movies/DVD, desc: "Film/DVD/Eng", default: true}
|
||||
- {id: 83, cat: Movies/HD, desc: "Film/HD/Hun", default: true}
|
||||
- {id: 82, cat: Movies/HD, desc: "Film/HD/Eng", default: true}
|
||||
- {id: 94, cat: Movies/HD, desc: "Film/FHD/Hun", default: true}
|
||||
- {id: 95, cat: Movies/HD, desc: "Film/FHD/Eng", default: true}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Film/UHD/Hun", default: true}
|
||||
- {id: 93, cat: Movies/UHD, desc: "Film/UHD/Eng", default: true}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
|
||||
- {id: 22, cat: TV, desc: "Sorozat/Hun", default: true}
|
||||
- {id: 58, cat: TV, desc: "Sorozat/Eng", default: true}
|
||||
- {id: 69, cat: TV/Anime, desc: "Mese/SD", default: true}
|
||||
- {id: 68, cat: TV/Anime, desc: "Mese/DVD", default: true}
|
||||
- {id: 91, cat: TV/Anime, desc: "Mese/HD", default: true}
|
||||
- {id: 25, cat: Audio/MP3, desc: "Mp3/Hun", default: true}
|
||||
- {id: 26, cat: Audio/MP3, desc: "Mp3/Eng", default: true}
|
||||
- {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun", default: true}
|
||||
- {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng", default: true}
|
||||
- {id: 31, cat: PC/Games, desc: "Játék/PC", default: true}
|
||||
- {id: 81, cat: PC/0day, desc: "Program/PC", default: true}
|
||||
- {id: 49, cat: PC/0day, desc: "Program/Rip", default: true}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
|
||||
- {id: 14, cat: PC, desc: "Program/Egyéb", default: true}
|
||||
- {id: 65, cat: Other, desc: "Egyéb", default: true}
|
||||
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
|
||||
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
|
||||
# the following are no longer in the cat list in the search page, but are still in the profile cat list
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Android"}
|
||||
- {id: 17, cat: Movies/DVD, desc: "Film/DVD/Hun"}
|
||||
- {id: 19, cat: Movies/DVD, desc: "Film/DVD/Eng"}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklipp"}
|
||||
- {id: 33, cat: XXX/SD, desc: "Film/SD/XXX"}
|
||||
- {id: 89, cat: XXX/x264, desc: "Film/HD/XXX"}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX"}
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -95,17 +94,17 @@ login:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?k="]
|
||||
selector: i[onclick^="window.open('logout.php?k="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: ["!", 33, 66, 99]
|
||||
categories: [85, 86, 15, 16, 17, 19, 83, 82, 94, 95, 92, 93, 64, 24, 22, 58, 69, 68, 91, 25, 26, 84, 71, 31, 81, 49, 27, 50, 14, 65, 54, 67, 70]
|
||||
inputs:
|
||||
# 0 all, 1 active, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 0
|
||||
- path: browse_xxx.php
|
||||
categories: [33, 66, 99]
|
||||
categories: [33, 66, 89]
|
||||
inputs:
|
||||
# 0 active, 1 all, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 1
|
||||
@@ -118,15 +117,12 @@ search:
|
||||
# can support genre searching but you need to know the id, eg &genre23=1 for Comedy (id is 23)
|
||||
|
||||
rows:
|
||||
selector: "table[width=\"100%\"][align=\"center\"]:first-child tbody tr:has(div.tooltip){{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
selector: "tr[class^=\"toriadatok_\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*=".php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
categorydesc:
|
||||
selector: img[src^="pic/kategoria/"]
|
||||
attribute: title
|
||||
genre:
|
||||
selector: span.tooltiptext
|
||||
description:
|
||||
@@ -145,7 +141,7 @@ search:
|
||||
optional: true
|
||||
attribute: href
|
||||
download_2:
|
||||
selector: input[onclick*="download.php?torrent="]
|
||||
selector: span[onclick*="download.php?torrent="]
|
||||
optional: true
|
||||
attribute: onclick
|
||||
filters:
|
||||
@@ -155,6 +151,9 @@ search:
|
||||
args: ["', '_self');", ""]
|
||||
download:
|
||||
text: "{{ if or .Result.download_1 .Result.download_2 }}{{ or .Result.download_1 .Result.download_2 }}{{ else }}{{ end }}"
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
date:
|
||||
@@ -163,7 +162,7 @@ search:
|
||||
# 2 napja és 10 órája
|
||||
# 1 hete és 1 napja
|
||||
# 1 éve és 30 hete
|
||||
selector: td:nth-child(7) span:last-child
|
||||
selector: td[id^="t_added_"] > span
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["és ", " "]
|
||||
|
||||
@@ -1,161 +0,0 @@
|
||||
---
|
||||
id: bitcityreloaded
|
||||
name: Bit-City Reloaded
|
||||
description: "Bit-City Reloaded is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: ISO-8859-1
|
||||
links:
|
||||
- https://bc-reloaded.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Other, desc: "Anderes"}
|
||||
- {id: 34, cat: PC, desc: "Appz/Linux"}
|
||||
- {id: 35, cat: PC/Mac, desc: "Appz/Mac"}
|
||||
- {id: 36, cat: PC, desc: "Appz/Other"}
|
||||
- {id: 20, cat: PC/0day, desc: "Appz/Win"}
|
||||
- {id: 4, cat: Books/EBook, desc: "EBooks"}
|
||||
- {id: 10, cat: PC/Games, desc: "Games/PC"}
|
||||
- {id: 15, cat: PC/Mobile-Android, desc: "Handy & PDA"}
|
||||
- {id: 16, cat: Audio/Audiobook, desc: "Hörspiel/Hörbuch"}
|
||||
- {id: 30, cat: Movies/Foreign, desc: "International"}
|
||||
- {id: 43, cat: Movies/3D, desc: "Movie/3D"}
|
||||
- {id: 6, cat: Movies/HD, desc: "Movie/HD 1080p"}
|
||||
- {id: 7, cat: Movies/HD, desc: "Movie/HD 720p"}
|
||||
- {id: 17, cat: Movies/Other, desc: "Movie/MegaPack"}
|
||||
- {id: 9, cat: Movies/SD, desc: "Movie/SD"}
|
||||
- {id: 26, cat: XXX, desc: "Movie/XXX"}
|
||||
- {id: 41, cat: XXX/Other, desc: "Movie/XXX/Other"}
|
||||
- {id: 42, cat: XXX/Pack, desc: "Movie/XXX/Pack"}
|
||||
- {id: 45, cat: Movies/UHD, desc: "Movies/4K"}
|
||||
- {id: 33, cat: Movies/BluRay, desc: "Movies/BluRay"}
|
||||
- {id: 19, cat: Audio/Video, desc: "Musik Videos"}
|
||||
- {id: 18, cat: Audio, desc: "Musik/MP3/Flac"}
|
||||
- {id: 13, cat: Console/WiiU, desc: "Nintendo"}
|
||||
- {id: 12, cat: Console/PS4, desc: "Playstation"}
|
||||
- {id: 22, cat: TV/HD, desc: "Serie/HD"}
|
||||
- {id: 38, cat: TV, desc: "Serie/Pack"}
|
||||
- {id: 23, cat: TV/SD, desc: "Serie/SD"}
|
||||
- {id: 25, cat: TV/Sport, desc: "Sport"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Anzahl der Torrents beim Durchsuchen</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login/index.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://bc-reloaded.net/uebersicht.php?c7=1&c17=1&showsearch=1&search=2021+720p&blah=0&incldead=1&orderby=added&sort=desc
|
||||
- path: uebersicht.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
showsearch: 1
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both, 3 noDVDRip
|
||||
blah: 0
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
# site does not support imdbid searching or display imdb links in results.
|
||||
|
||||
rows:
|
||||
selector: "table.tableinborder[cellpadding=0] > tbody > tr{{ if .Config.freeleech }}:has(img[src$=\"torrent_ou.gif\"]){{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="uebersicht.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: table tbody tr:nth-of-type(2) td:nth-of-type(5)
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\u00a0", " "]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "02.01.2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: table tbody tr:nth-of-type(2) > td > b
|
||||
files:
|
||||
selector: td:has(a[href*="&filelist=1"])> b:nth-child(2)
|
||||
grabs:
|
||||
selector: td:has(a[href*="&tosnatchers=1"])> b:nth-child(1)
|
||||
seeders:
|
||||
selector: table tbody tr:nth-of-type(2) td:nth-of-type(2) b:nth-of-type(1) font
|
||||
leechers:
|
||||
selector: table tbody tr:nth-of-type(2) td:nth-of-type(2) b:nth-of-type(2) font
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="torrent_ou.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="torrent_2u.gif"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 0.7
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# engine n/a
|
||||
@@ -12,7 +12,7 @@ caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Other, desc: "ในพระราชสำนัก (in the royal court)"}
|
||||
- {id: 4, cat: TV, desc: "รายการทีวี (TV)"}
|
||||
- {id: 7, cat: Movies, desc: "ภาพยนตร์ชุด (Movie Packs)"}
|
||||
- {id: 7, cat: TV, desc: "ภาพยนตร์ชุด (Series)"}
|
||||
- {id: 12, cat: Books/EBook, desc: "หนังสือ สื่อการสอน (Books)"}
|
||||
- {id: 13, cat: Other/Misc, desc: "ทั่วไป (General)"}
|
||||
- {id: 14, cat: TV/Sport, desc: "กีฬา (Sport)"}
|
||||
|
||||
119
src/Jackett.Common/Definitions/bitnova.yml
Normal file
119
src/Jackett.Common/Definitions/bitnova.yml
Normal file
@@ -0,0 +1,119 @@
|
||||
---
|
||||
id: bitnova
|
||||
name: BitNova
|
||||
description: "BitNova is a POLISH Semi-Private Torrent Tracker for 0DAY / GENERAL"
|
||||
language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bitnova.info/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: PC, desc: "Programy"}
|
||||
- {id: 2, cat: PC/0day, desc: "Programy dla Windows"}
|
||||
- {id: 3, cat: PC, desc: "Programy dla Linux"}
|
||||
- {id: 4, cat: PC/Mac, desc: "Programy dla Mac"}
|
||||
- {id: 5, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 6, cat: Books, desc: "eBooki"}
|
||||
- {id: 8, cat: Movies, desc: "Dla dzieci"}
|
||||
- {id: 9, cat: Movies, desc: "Filmy"}
|
||||
- {id: 10, cat: Movies/SD, desc: "Filmy (S)VCD"}
|
||||
- {id: 11, cat: Movies/SD, desc: "DivX/XviD"}
|
||||
- {id: 12, cat: Movies/DVD, desc: "Filmy DVD"}
|
||||
- {id: 13, cat: Movies/BluRay, desc: "Filmy HDDVD/BluRay"}
|
||||
- {id: 14, cat: Movies/SD, desc: "Filmy RMVB"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Filmy x264"}
|
||||
- {id: 342, cat: Movies/3D, desc: "Filmy 3D"}
|
||||
- {id: 16, cat: Console, desc: "Gry"}
|
||||
- {id: 17, cat: Console, desc: "Gry na konsole"}
|
||||
- {id: 18, cat: PC/Games, desc: "Gry komputerowe"}
|
||||
- {id: 19, cat: PC/Mobile-Other, desc: "GSM/PDA"}
|
||||
- {id: 20, cat: PC/Mobile-Other, desc: "GSM/PDA Dodatki"}
|
||||
- {id: 21, cat: PC/Mobile-Other, desc: "GSM/PDA Filmy"}
|
||||
- {id: 22, cat: PC/Mobile-Other, desc: "GSM/PDA Gry"}
|
||||
- {id: 23, cat: PC/Mobile-Other, desc: "GSM/PDA Programy"}
|
||||
- {id: 24, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 25, cat: Audio/MP3, desc: "Muzyka Albumy"}
|
||||
- {id: 26, cat: Audio/Video, desc: "Muzyka Teledyski/Koncerty"}
|
||||
- {id: 27, cat: Other, desc: "Różne"}
|
||||
- {id: 28, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 29, cat: TV, desc: "TV"}
|
||||
- {id: 30, cat: XXX, desc: "Erotyka"}
|
||||
|
||||
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
|
||||
|
||||
login:
|
||||
path: login.php?act=login
|
||||
method: post
|
||||
inputs:
|
||||
login: "{{ .Config.username }}"
|
||||
pass: "{{ .Config.password }}"
|
||||
remember: 1
|
||||
error:
|
||||
- selector: div#errmsg
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="/login.php?act=logout"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: search
|
||||
inputs:
|
||||
q: "{{ if .Query.Keywords }}{{ .Query.Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
cid: 0
|
||||
|
||||
rows:
|
||||
selector: table#searchRes > tbody > tr
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="/torrenty/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)-
|
||||
title:
|
||||
selector: a[href^="/torrent/"]
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["/torrent/", "/torrent/download/"]
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
grabs:
|
||||
selector: td:nth-last-child(2)
|
||||
date:
|
||||
selector: td:nth-last-child(1)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
downloadvolumefactor:
|
||||
text: 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine v2.0
|
||||
161
src/Jackett.Common/Definitions/bitofvalor.yml
Normal file
161
src/Jackett.Common/Definitions/bitofvalor.yml
Normal file
@@ -0,0 +1,161 @@
|
||||
---
|
||||
id: bitofvalor
|
||||
name: Bit Of Valor
|
||||
description: "Bit Of Valor is a HUNGARIAN Private Tracker for MOVIES / TV"
|
||||
language: hu-HU
|
||||
type: private
|
||||
encoding: ISO-8859-2
|
||||
links:
|
||||
- https://bitvalor.hu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 26, cat: Books, desc: "E-Book/ENG"}
|
||||
- {id: 27, cat: Books, desc: "E-Book/HUN"}
|
||||
- {id: 28, cat: PC/Games, desc: "Játék/ISO"}
|
||||
- {id: 29, cat: PC/Games, desc: "Játék/RIP"}
|
||||
- {id: 30, cat: Movies/SD, desc: "Cam/ENG"}
|
||||
- {id: 31, cat: Movies/SD, desc: "Cam/HUN"}
|
||||
- {id: 32, cat: Movies/HD, desc: "HD/ENG"}
|
||||
- {id: 33, cat: Movies/HD, desc: "HD/HUN"}
|
||||
- {id: 34, cat: Movies/DVD, desc: "Dvd9/HUN"}
|
||||
- {id: 35, cat: Movies/DVD, desc: "DVD/ENG"}
|
||||
- {id: 36, cat: Movies/DVD, desc: "DVD/HUN"}
|
||||
- {id: 37, cat: TV, desc: "Sorozat/ENG"}
|
||||
- {id: 38, cat: TV, desc: "Sorozat/HUN"}
|
||||
- {id: 39, cat: Movies/SD, desc: "Xvid/ENG"}
|
||||
- {id: 40, cat: Movies/SD, desc: "Xvid/HUN"}
|
||||
- {id: 41, cat: Audio, desc: "Zene/ENG"}
|
||||
- {id: 42, cat: Audio, desc: "Zene/HUN"}
|
||||
- {id: 43, cat: Other, desc: "Képek"}
|
||||
- {id: 44, cat: PC/Mobile-Other, desc: "Mobil"}
|
||||
- {id: 45, cat: PC, desc: "Program/ISO/RIP"}
|
||||
- {id: 46, cat: XXX/WEB-DL, desc: "XXX/Film"}
|
||||
- {id: 47, cat: XXX/ImageSet, desc: "XXX/Kép"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search FreeLeech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
1: title
|
||||
4: added
|
||||
5: size
|
||||
7: seeders
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrent oldalankén:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div.error
|
||||
test:
|
||||
path: /
|
||||
selector: a[href^="logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 deadonly, 3 freeleech, 4 seedless
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# does not support imdbid search nor has imdbid link in results
|
||||
|
||||
rows:
|
||||
selector: tr:has(a[onmouseover]):not(:has(td.outer))
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[onmouseover]
|
||||
details:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) "
|
||||
download:
|
||||
selector: a[onmouseover]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(4)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
genre:
|
||||
selector: i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: validate
|
||||
args: "Akció, Animációs, Kaland, Életrajzi, Vígjáték, Krimi, Dokumentum, Dráma, Családi, Fantasztikus, Film-noir, Bünügyi, Történelmi, Horror, Musical, Zenés, Misztikus, Hírek, Valóságshow, Romantikus, Sci-fi, Rövidfilm, Sport, Talkshow, Thriller, Háborús, Bemutató, XXX, Western, 60s, 70s, 80s, 90s, Alternative, Blues, Breaks, Classic, Country, Dance, Electronic, Folk, Funk, Hardcore, Hip.Hop, Haus, Metal, Pop, Pop.Rock, Rock, Soul, Techno, Disco, Trance, Live, Latin, Jazz"
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/free.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# Engine n/a
|
||||
@@ -7,10 +7,12 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.nocensor.world/
|
||||
- https://bitsearch.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
- https://bitsearch.nocensor.world/
|
||||
- https://bitsearch.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -99,9 +99,6 @@ login:
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
perm_ssl: ""
|
||||
returnto: "/"
|
||||
error:
|
||||
- selector: table.main:contains("failed")
|
||||
test:
|
||||
@@ -121,7 +118,7 @@ search:
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: div.torrentrow:has(a[href^="download.php?torrent="])
|
||||
@@ -151,20 +148,20 @@ search:
|
||||
args: "src=(.*?) width"
|
||||
files:
|
||||
selector: div.torrenttable:nth-last-child(7)
|
||||
date_year:
|
||||
# Jul 4 2019 08:04 AM
|
||||
selector: div.torrenttable:nth-last-child(5):not(:contains("day"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM -07:00"
|
||||
date_day:
|
||||
# Today 02:40 PM
|
||||
# Yesterday 09:10 AM
|
||||
selector: div.torrenttable:nth-last-child(5):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
# Jul 4 2019 08:04 AM
|
||||
selector: div.torrenttable:nth-last-child(5):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
|
||||
@@ -93,6 +93,7 @@ search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
@@ -101,10 +102,15 @@ search:
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\s+", " "] # More than 1 space to 1 space
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
- name: trim
|
||||
|
||||
rows:
|
||||
selector: table > tbody > tr[class]
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
# there are two styles, we support both
|
||||
|
||||
@@ -6,13 +6,15 @@ language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://bitturk.net/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
- https://bitturk.net/
|
||||
legacylinks:
|
||||
- http://www.bitturk.net/
|
||||
- http://bitturk.net/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 56, cat: Movies, desc: "BTRG"}
|
||||
- {id: 95, cat: Movies, desc: "BTRG HMAX"}
|
||||
- {id: 57, cat: Movies, desc: "Yerli Dizi"}
|
||||
- {id: 62, cat: Movies, desc: "Yab@ncı Dizi"}
|
||||
- {id: 63, cat: Movies, desc: "Türkçe Film"}
|
||||
@@ -25,6 +27,8 @@ caps:
|
||||
- {id: 79, cat: TV, desc: "BLUTV"}
|
||||
- {id: 90, cat: TV, desc: "Disney+"}
|
||||
- {id: 91, cat: TV, desc: "Prime Video"}
|
||||
- {id: 93, cat: TV, desc: "Gain"}
|
||||
- {id: 94, cat: TV, desc: "ATVP"}
|
||||
- {id: 58, cat: Movies, desc: "Film"}
|
||||
- {id: 72, cat: Movies, desc: "Belgesel"}
|
||||
- {id: 60, cat: Movies/3D, desc: "3D"}
|
||||
@@ -57,7 +61,6 @@ caps:
|
||||
- {id: 2, cat: Console, desc: "Oyun"}
|
||||
- {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"}
|
||||
@@ -170,34 +173,34 @@ search:
|
||||
download:
|
||||
selector: a[href*="?p=torrents&pid=10&action=download"]
|
||||
attribute: href
|
||||
date_year:
|
||||
# Uploaded 30-01-2019 15:02 by
|
||||
selector: td.torrent_name:not(:contains(" at ")):not(:has(abbr[data-time]))
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04 -07:00"
|
||||
date_day:
|
||||
# Uploaded Friday at 05:11 by
|
||||
# Uploaded Today at 00:48 by
|
||||
# Uploaded Yesterday at 23:57 by
|
||||
selector: td.torrent_name:contains(" at "):not(:has(abbr[data-time]))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Uploaded 30-01-2019 15:02 by
|
||||
selector: td.torrent_name:not(:contains(" at ")):not(:has(abbr[data-time]))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
date_unix:
|
||||
# within the hour (unix)
|
||||
selector: abbr[data-time]
|
||||
attribute: data-time
|
||||
optional: true
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_unix .Result.date_day }}{{ or .Result.date_year .Result.date_unix .Result.date_day }}{{ else }}now{{ end }}"
|
||||
text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: a[rel="torrent_size"]
|
||||
seeders:
|
||||
|
||||
@@ -1,192 +0,0 @@
|
||||
---
|
||||
id: bluesbrothers
|
||||
name: Blues-Brothers
|
||||
description: "Blues-Brothers is a Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://blues-brothers.biz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 9, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 1, cat: PC/0day, desc: "Apps"}
|
||||
- {id: 17, cat: Audio/Audiobook, desc: "AudioBooks"}
|
||||
- {id: 16, cat: Books/EBook, desc: "Ebooks"}
|
||||
- {id: 12, cat: PC/Games, desc: "Games PC"}
|
||||
- {id: 7, cat: Console/PS3, desc: "Games PS3"}
|
||||
- {id: 19, cat: Console/Wii, desc: "Games Wii"}
|
||||
- {id: 8, cat: Console/XBox 360, desc: "Games XBOX360"}
|
||||
- {id: 18, cat: PC/Mac, desc: "MAC"}
|
||||
- {id: 41, cat: PC/Mobile-Android, desc: "Mobile"}
|
||||
- {id: 26, cat: Movies, desc: "Movie BDRip"}
|
||||
- {id: 29, cat: Movies/HD, desc: "Movie BluRay 1080p"}
|
||||
- {id: 28, cat: Movies/HD, desc: "Movie BluRay 720p"}
|
||||
- {id: 27, cat: Movies/SD, desc: "Movie BRRip"}
|
||||
- {id: 24, cat: Movies/SD, desc: "Movie CAM/TS"}
|
||||
- {id: 23, cat: Movies/DVD, desc: "Movie DVD-R"}
|
||||
- {id: 11, cat: Movies/SD, desc: "Movie DVDRip"}
|
||||
- {id: 25, cat: Movies/SD, desc: "Movie DVDSCR/R5"}
|
||||
- {id: 30, cat: Movies, desc: "Movie Packs"}
|
||||
- {id: 10, cat: Movies/HD, desc: "Movie XviD x264"}
|
||||
- {id: 6, cat: XXX, desc: "Movie XXX"}
|
||||
- {id: 22, cat: Audio/Lossless, desc: "Music Flac"}
|
||||
- {id: 21, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 14, cat: Audio, desc: "Music Packs"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 34, cat: TV, desc: "TV Packs"}
|
||||
- {id: 36, cat: TV/HD, desc: "TV X264 HD"}
|
||||
- {id: 37, cat: TV/SD, desc: "TV X264 SD"}
|
||||
- {id: 35, cat: TV/SD, desc: "TV XviD"}
|
||||
- {id: 38, cat: Other, desc: "VIP"}
|
||||
- {id: 40, cat: Other, desc: "VIP ONLY"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, genre]
|
||||
movie-search: [q, genre]
|
||||
music-search: [q, genre]
|
||||
book-search: [q, genre]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
perm_ssl: ""
|
||||
returnto: /
|
||||
error:
|
||||
- selector: table.main:contains("Login failed!")
|
||||
message:
|
||||
selector: table tr td.colhead2
|
||||
test:
|
||||
path: /
|
||||
selector: a[href*="logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://blues-brothers.biz/browse.php?c27=1&c28=1&c29=1&search=&searchin=title&incldead=1&sort=4&type=desc
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.Genre }}{{ .Query.Genre }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
searchin: "{{ if .Query.Genre }}all{{ else }}title{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
only_free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
|
||||
rows:
|
||||
selector: table.table-bordered tr:has(a[href^="download.php?torrent="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Tip\\('<b>(.+?)</b>"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=\\'(.+?)\\'
|
||||
- name: replace
|
||||
args: ["./pic/noposter.png", ""]
|
||||
genre:
|
||||
selector: i
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
date_day:
|
||||
selector: td:nth-child(7):contains("day")
|
||||
optional: true
|
||||
filters:
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
selector: td:nth-child(7):not(:contains("day"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
seeders:
|
||||
selector: td:nth-child(10)
|
||||
leechers:
|
||||
selector: td:nth-child(11)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"a.info:contains(\"[FREE]\")": 0
|
||||
"a.info:contains(\"[SILVER]\")": 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# U-232 V5
|
||||
@@ -6,6 +6,8 @@ language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://blutopia.cc/
|
||||
legacylinks:
|
||||
- https://blutopia.xyz/
|
||||
|
||||
caps:
|
||||
@@ -27,7 +29,7 @@ settings:
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://blutopia.xyz/\" target =_blank>Blutopia</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://blutopia.cc/\" target =_blank>Blutopia</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -71,7 +73,7 @@ search:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -129,8 +131,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
@@ -155,4 +162,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.4.0b
|
||||
# json UNIT3D 6.5.0b
|
||||
|
||||
@@ -25,7 +25,6 @@ caps:
|
||||
- {id: 5, cat: Movies/WEB-DL, desc: "HD - WEB-DL"}
|
||||
- {id: 14, cat: Movies/HD, desc: "HD - WEBRip"}
|
||||
- {id: 40, cat: Movies/HD, desc: "PTer"}
|
||||
- {id: 32, cat: PC/Games, desc: "Oyunlar (Games)"}
|
||||
- {id: 9, cat: Movies/SD, desc: "SD"}
|
||||
- {id: 23, cat: Movies/SD, desc: "SD - BluRay"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "SD - DVD"}
|
||||
@@ -60,12 +59,19 @@ login:
|
||||
path: index.php
|
||||
selector: a[href*="/logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
selectors:
|
||||
- selector: a[href*="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
- name: re_replace # E01 to BL01
|
||||
args: ["(?i)\\bE(\\d+)\\b", "E$1"]
|
||||
inputs:
|
||||
# does not support multi categories so defaulting to ALL
|
||||
do: search
|
||||
@@ -86,14 +92,11 @@ search:
|
||||
args: category
|
||||
title:
|
||||
selector: div[id^="port-target-"] a
|
||||
filters:
|
||||
- name: re_replace # BL01 to E01
|
||||
args: ["(?i)\\bBL(\\d+)\\b", " E$1 "]
|
||||
details:
|
||||
selector: div[id^="port-target-"] a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="download.php?id="]
|
||||
selector: div[id^="port-target-"] a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="port-content-"] img
|
||||
|
||||
@@ -16,6 +16,7 @@ caps:
|
||||
- {id: 3, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
- {id: 4, cat: Other, desc: "Arquivos de Auxilio"}
|
||||
- {id: 6, cat: Other, desc: "Graduação"}
|
||||
- {id: 7, cat: TV/Documentary, desc: "Documentários"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -65,10 +66,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[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
@@ -76,32 +91,41 @@ search:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: category
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
size:
|
||||
selector: size
|
||||
magnet:
|
||||
selector: magnet_link
|
||||
optional: true
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: poster
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/400x600", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -111,14 +135,25 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
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
|
||||
@@ -130,4 +165,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 5.3.0
|
||||
# json UNIT3D 6.5.0
|
||||
|
||||
@@ -7,12 +7,13 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btdig.com/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ws/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.tor2web.to/
|
||||
legacylinks:
|
||||
- http://btdiggwzoyrwwbiv.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ly/
|
||||
- https://btdiggwzoyrwwbiv.onion.ly/
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.ws/ # redirects to spam
|
||||
- https://btdigggink2pdqzqrik3blmqemsbntpzwxottujilcdjfz56jumzfsyd.onion.pet/ # not found
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -1,101 +0,0 @@
|
||||
---
|
||||
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.cat/
|
||||
legacylinks:
|
||||
- https://btmirror.unblockit.blue/
|
||||
- https://btmirror.unblockit.name/
|
||||
- https://btmirror.unblockit.ist/
|
||||
- https://btmirror.unblockit.bet/
|
||||
|
||||
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
|
||||
@@ -7,13 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
# use https://tellme.pw/btsow to find the new domain
|
||||
links:
|
||||
- https://btsow.cfd/
|
||||
- https://btsow.beauty/
|
||||
legacylinks:
|
||||
- https://btsow.monster/
|
||||
- https://btsow.casa/
|
||||
- https://btsow.website/
|
||||
- https://btsow.online/
|
||||
- https://btsow.work/
|
||||
- https://btsow.store/
|
||||
- https://btsow.surf/
|
||||
- https://btsow.com/
|
||||
@@ -25,6 +20,10 @@ legacylinks:
|
||||
- https://btsow.rest/
|
||||
- https://btsow.bar/
|
||||
- https://btsow.click/
|
||||
- https://btsow.cfd/
|
||||
- https://btsow.sbs/
|
||||
- https://btsow.quest/
|
||||
- https://btsow.autos/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
125
src/Jackett.Common/Definitions/bulltorrent.yml
Normal file
125
src/Jackett.Common/Definitions/bulltorrent.yml
Normal file
@@ -0,0 +1,125 @@
|
||||
---
|
||||
id: bulltorrent
|
||||
name: BullTorrent
|
||||
description: "BullTorrent (formerly TOROS) is a Public torrent index"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.bulltorrent.com/
|
||||
- https://toros.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://toros.nocensor.space/
|
||||
- https://toros.nocensor.work/
|
||||
- https://www.toros.co/
|
||||
- https://toros.nocensor.biz/
|
||||
- https://toros.nocensor.lol/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: Movies}
|
||||
- {id: 2, cat: Audio, desc: Music}
|
||||
- {id: 3, cat: TV, desc: Television}
|
||||
- {id: 4, cat: PC/Games, desc: Games}
|
||||
- {id: 5, cat: PC, desc: Software}
|
||||
- {id: 6, cat: TV/Anime, desc: Anime}
|
||||
- {id: 7, cat: XXX, desc: Adult}
|
||||
- {id: 8, cat: Books, desc: Ebooks}
|
||||
- {id: 9, cat: TV/Anime, desc: Animation}
|
||||
- {id: 10, cat: Other, desc: Other}
|
||||
- {id: 0, cat: Other, desc: TBC}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- 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
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://www.bulltorrent.com/all/torrents/2022.html?v=&i=100&sort=added&o=desc
|
||||
- path: "{{ if .Keywords }}all/torrents/{{ .Keywords }}.html?v=&i=100&sort={{ .Config.sort }}&o={{ .Config.type }}{{ else }}trending.html{{ end }}"
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["[\\s]+", "-"]
|
||||
- name: tolower
|
||||
|
||||
rows:
|
||||
selector: table.table-responsive tr:has(a[href^="/torrent/"])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td:nth-child(1)
|
||||
attribute: class
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
title:
|
||||
selector: a[href^="/torrent/"]
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
date_day:
|
||||
selector: td:nth-child(2):contains("day"), td:nth-child(2):contains("Hoy"), td:nth-child(2):contains("Ayer")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Hoy", "Today"]
|
||||
- name: replace
|
||||
args: ["Ayer", "Yesterday"]
|
||||
- name: fuzzytime
|
||||
date_ago:
|
||||
selector: td:nth-child(2):contains("ago")
|
||||
optional: true
|
||||
filters:
|
||||
- name: timeago
|
||||
date_year:
|
||||
selector: td:nth-child(2):not(:contains("ago")):not(:contains("day")):not(:contains("Hoy")):not(:contains("Ayer"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2 Jan -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_ago .Result.date_day }}{{ or .Result.date_year .Result.date_ago .Result.date_day }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(3)
|
||||
seeders:
|
||||
selector: td:nth-child(4)
|
||||
leechers:
|
||||
selector: td:nth-child(5)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -184,11 +184,10 @@ search:
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02-01-200615:04:05 -07:00"
|
||||
args: "02-01-200615:04:05"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
download:
|
||||
|
||||
@@ -58,18 +58,12 @@ caps:
|
||||
- {id: 43, cat: PC/Games, desc: "Пошаговые стратегии (TBS)"}
|
||||
- {id: 44, cat: PC/Games, desc: "Глобальные стратегии"}
|
||||
- {id: 45, cat: PC/Games, desc: "Стратегии в реальном времени"}
|
||||
- {id: 46, cat: PC/Games, desc: "ММО"}
|
||||
- {id: 47, cat: PC/Games, desc: "MMORPG"}
|
||||
- {id: 48, cat: PC/Games, desc: "Для взрослых"}
|
||||
- {id: 49, cat: PC/Games, desc: "От первого лица"}
|
||||
- {id: 50, cat: PC/Games, desc: "От третьего лица"}
|
||||
- {id: 51, cat: PC/Games, desc: "Шутер от первого лица"}
|
||||
- {id: 52, cat: PC/Games, desc: "Шутер от третьего лица"}
|
||||
- {id: 53, cat: PC/Games, desc: "Игры для слабых ПК"}
|
||||
- {id: 54, cat: PC/Games, desc: "Игры для очень слабых ПК"}
|
||||
- {id: 55, cat: PC/Games, desc: "Новинки игр для слабых ПК"}
|
||||
- {id: 56, cat: PC/Games, desc: "Игры для 64 битной системы"}
|
||||
- {id: 57, cat: PC/Games, desc: "Игры для 32 битной системы"}
|
||||
- {id: 58, cat: PC/Games, desc: "Психологический хоррор"}
|
||||
- {id: 59, cat: PC/Games, desc: "Хоррор на выживание"}
|
||||
- {id: 60, cat: PC/Games, desc: "Ролевой экшен"}
|
||||
@@ -118,6 +112,7 @@ caps:
|
||||
- {id: 105, cat: PC/Games, desc: "Вождение"}
|
||||
- {id: 189, cat: PC/Games, desc: "Пошаговая"}
|
||||
- {id: 106, cat: PC/Games, desc: "Пошаговая тактика"}
|
||||
- {id: 328, cat: PC/Games, desc: "2D-платформер"}
|
||||
- {id: 107, cat: PC/Games, desc: "3D-платформер"}
|
||||
- {id: 108, cat: PC/Games, desc: "Одна жизнь"}
|
||||
- {id: 109, cat: PC/Games, desc: "Паркур"}
|
||||
@@ -175,7 +170,7 @@ caps:
|
||||
- {id: 161, cat: PC/Games, desc: "Редактор уровней"}
|
||||
- {id: 162, cat: PC/Games, desc: "Культовая классика"}
|
||||
- {id: 163, cat: PC/Games, desc: "Минимализм"}
|
||||
- {id: 164, cat: PC/Games, desc: "Shoot 'em up"}
|
||||
- {id: 164, cat: PC/Games, desc: "Shoot'em up"}
|
||||
- {id: 165, cat: PC/Games, desc: "Решения с последствиями"}
|
||||
- {id: 166, cat: PC/Games, desc: "Процедурная генерация"}
|
||||
- {id: 167, cat: PC/Games, desc: "Мультипликация"}
|
||||
@@ -185,7 +180,7 @@ caps:
|
||||
- {id: 171, cat: PC/Games, desc: "Изометрия"}
|
||||
- {id: 172, cat: PC/Games, desc: "Карточная игра"}
|
||||
- {id: 173, cat: PC/Games, desc: "Чёрный юмор"}
|
||||
- {id: 174, cat: PC/Games, desc: "Beat 'em up"}
|
||||
- {id: 174, cat: PC/Games, desc: "Beat'em up"}
|
||||
- {id: 175, cat: PC/Games, desc: "Свобода выбора"}
|
||||
- {id: 176, cat: PC/Games, desc: "Рисованная графика"}
|
||||
- {id: 177, cat: PC/Games, desc: "Инопланетяне"}
|
||||
@@ -193,19 +188,92 @@ caps:
|
||||
- {id: 179, cat: PC/Games, desc: "Настольная игра"}
|
||||
- {id: 180, cat: PC/Games, desc: "Полёты"}
|
||||
- {id: 181, cat: PC/Games, desc: "Лут"}
|
||||
- {id: 182, cat: PC/Games, desc: "В реальном времени"}
|
||||
- {id: 183, cat: PC/Games, desc: "MOBA"}
|
||||
- {id: 184, cat: PC/Games, desc: "Демоны"}
|
||||
- {id: 185, cat: PC/Games, desc: "Расследование"}
|
||||
- {id: 186, cat: PC/Games, desc: "Мифология"}
|
||||
- {id: 187, cat: PC/Games, desc: "VR"}
|
||||
- {id: 191, cat: PC/Games, desc: "Психологическая"}
|
||||
- {id: 192, cat: PC/Games, desc: "Нелинейная"}
|
||||
- {id: 193, cat: PC/Games, desc: "Подземелье"}
|
||||
- {id: 195, cat: PC/Games, desc: "Для нескольких игроков"}
|
||||
- {id: 196, cat: PC/Games, desc: "Шедевр"}
|
||||
- {id: 197, cat: PC/Games, desc: "Ретро"}
|
||||
- {id: 198, cat: PC/Games, desc: "Олдскул"}
|
||||
- {id: 251, cat: PC/Games, desc: "Визуальная новелла"}
|
||||
- {id: 252, cat: PC/Games, desc: "Образование"}
|
||||
- {id: 253, cat: PC/Games, desc: "Партийная RPG"}
|
||||
- {id: 254, cat: PC/Games, desc: "Симулятор ходьбы"}
|
||||
- {id: 255, cat: PC/Games, desc: "Симулятор жизни"}
|
||||
- {id: 256, cat: PC/Games, desc: "Автосимулятор"}
|
||||
- {id: 257, cat: PC/Games, desc: "Ритм-игра"}
|
||||
- {id: 258, cat: PC/Games, desc: "Королевская битва"}
|
||||
- {id: 259, cat: PC/Games, desc: "Симулятор колонии"}
|
||||
- {id: 260, cat: PC/Games, desc: "Симулятор фермы"}
|
||||
- {id: 261, cat: PC/Games, desc: "Иммерсивный симулятор"}
|
||||
- {id: 262, cat: PC/Games, desc: "Кликер"}
|
||||
- {id: 263, cat: PC/Games, desc: "Арена-шутер"}
|
||||
- {id: 264, cat: PC/Games, desc: "Платформер на точность"}
|
||||
- {id: 265, cat: PC/Games, desc: "Метроидвания"}
|
||||
- {id: 266, cat: PC/Games, desc: "Похожа на Dark Souls"}
|
||||
- {id: 267, cat: PC/Games, desc: "Коллектатон"}
|
||||
- {id: 268, cat: PC/Games, desc: "Idle-игра"}
|
||||
- {id: 269, cat: PC/Games, desc: "Поиск существ"}
|
||||
- {id: 270, cat: PC/Games, desc: "Зрелищные сражения"}
|
||||
- {id: 271, cat: PC/Games, desc: "Пасьянс"}
|
||||
- {id: 272, cat: PC/Games, desc: "Боевые гонки"}
|
||||
- {id: 273, cat: PC/Games, desc: "Лутер-шутер"}
|
||||
- {id: 274, cat: PC/Games, desc: "Политический симулятор"}
|
||||
- {id: 275, cat: PC/Games, desc: "Традиционный рогалик"}
|
||||
- {id: 276, cat: PC/Games, desc: "Милая"}
|
||||
- {id: 277, cat: PC/Games, desc: "Стилизация"}
|
||||
- {id: 278, cat: PC/Games, desc: "Псевдотрёхмерность"}
|
||||
- {id: 279, cat: PC/Games, desc: "Абстрактная"}
|
||||
- {id: 280, cat: PC/Games, desc: "Красивая"}
|
||||
- {id: 281, cat: PC/Games, desc: "Воксельная графика"}
|
||||
- {id: 282, cat: PC/Games, desc: "Логика"}
|
||||
- {id: 283, cat: PC/Games, desc: "Драма"}
|
||||
- {id: 284, cat: PC/Games, desc: "Романтика"}
|
||||
- {id: 285, cat: PC/Games, desc: "Сюрреалистичная"}
|
||||
- {id: 286, cat: PC/Games, desc: "Мемы"}
|
||||
- {id: 287, cat: PC/Games, desc: "Природа"}
|
||||
- {id: 288, cat: PC/Games, desc: "Роботы"}
|
||||
- {id: 289, cat: PC/Games, desc: "Проработанная вселенная"}
|
||||
- {id: 290, cat: PC/Games, desc: "Триллер"}
|
||||
- {id: 291, cat: PC/Games, desc: "Антиутопия"}
|
||||
- {id: 292, cat: PC/Games, desc: "Сверхъестественное"}
|
||||
- {id: 293, cat: PC/Games, desc: "Альтернативная история"}
|
||||
- {id: 294, cat: PC/Games, desc: "Сражения на мечах"}
|
||||
- {id: 295, cat: PC/Games, desc: "Котики"}
|
||||
- {id: 296, cat: PC/Games, desc: "Америка"}
|
||||
- {id: 297, cat: PC/Games, desc: "Иллюминаты"}
|
||||
- {id: 298, cat: PC/Games, desc: "Капитализм"}
|
||||
- {id: 299, cat: PC/Games, desc: "Заговор"}
|
||||
- {id: 300, cat: PC/Games, desc: "Сатира"}
|
||||
- {id: 301, cat: PC/Games, desc: "Готика"}
|
||||
- {id: 303, cat: PC/Games, desc: "Шахты"}
|
||||
- {id: 304, cat: PC/Games, desc: "Боевые искусства"}
|
||||
- {id: 305, cat: PC/Games, desc: "Танки"}
|
||||
- {id: 306, cat: PC/Games, desc: "Подводный мир"}
|
||||
- {id: 307, cat: PC/Games, desc: "Кулинария"}
|
||||
- {id: 308, cat: PC/Games, desc: "Флот"}
|
||||
- {id: 309, cat: PC/Games, desc: "Транспорт"}
|
||||
- {id: 311, cat: PC/Games, desc: "Марс"}
|
||||
- {id: 312, cat: PC/Games, desc: "Оборотни"}
|
||||
- {id: 313, cat: PC/Games, desc: "Бой"}
|
||||
- {id: 314, cat: PC/Games, desc: "Несколько концовок"}
|
||||
- {id: 315, cat: PC/Games, desc: "Игра против ИИ"}
|
||||
- {id: 316, cat: PC/Games, desc: "Линейная"}
|
||||
- {id: 192, cat: PC/Games, desc: "Нелинейная"}
|
||||
- {id: 317, cat: PC/Games, desc: "Повествовательная"}
|
||||
- {id: 318, cat: PC/Games, desc: "Набор очков"}
|
||||
- {id: 319, cat: PC/Games, desc: "Менеджмент инвентаря"}
|
||||
- {id: 320, cat: PC/Games, desc: "Перемещение по сетке"}
|
||||
- {id: 321, cat: PC/Games, desc: "Разделение на классы"}
|
||||
- {id: 322, cat: PC/Games, desc: "Кастомизация оружия"}
|
||||
- {id: 323, cat: PC/Games, desc: "Построение колоды"}
|
||||
- {id: 324, cat: PC/Games, desc: "Гонки на выживание"}
|
||||
- {id: 325, cat: PC/Games, desc: "Свобода движения"}
|
||||
- {id: 326, cat: PC/Games, desc: "Замедление времени"}
|
||||
- {id: 327, cat: PC/Games, desc: "Динамическое повествование"}
|
||||
- {id: 238, cat: PC/Games, desc: "Игры 2024 года"}
|
||||
- {id: 237, cat: PC/Games, desc: "Игры 2023 года"}
|
||||
- {id: 236, cat: PC/Games, desc: "Игры 2022 года"}
|
||||
@@ -246,6 +314,7 @@ caps:
|
||||
- {id: 23, cat: PC/Games, desc: "Ранний Доступ"}
|
||||
- {id: 246, cat: PC/Games, desc: "Обновление"}
|
||||
- {id: 230, cat: PC/Games, desc: "Все Топ игры"}
|
||||
- {id: 329, cat: PC/Games, desc: "Актуальные Топ игры"}
|
||||
- {id: 24, cat: PC/Games, desc: "Новинка"}
|
||||
- {id: 194, cat: PC/Games, desc: "Игры по сети"}
|
||||
|
||||
|
||||
@@ -5,42 +5,43 @@ description: "Carp-Hunter is a HUNGARIAN Private Torrent Tracker for MOVIES / TV
|
||||
language: hu-HU
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://carp-hunter.hu/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/SD, desc: "Film/Cam/Eng"}
|
||||
- {id: 2, cat: Movies/SD, desc: "Film/Cam/Hun"}
|
||||
- {id: 8, cat: Movies/DVD, desc: "Film/DVD/Eng"}
|
||||
- {id: 7, cat: Movies/DVD, desc: "Film/DVD/Hun"}
|
||||
- {id: 16, cat: Movies/HD, desc: "Film/HD1080P/Eng"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Film/HD1080P/Hun"}
|
||||
- {id: 14, cat: Movies/HD, desc: "Film/HD720P/Eng"}
|
||||
- {id: 13, cat: Movies/HD, desc: "Film/HD720P/Hun"}
|
||||
- {id: 4, cat: Movies/SD, desc: "Film/SD/Eng"}
|
||||
- {id: 3, cat: Movies/SD, desc: "Film/SD/Hun"}
|
||||
- {id: 18, cat: Movies/UHD, desc: "Film/UHD/Eng"}
|
||||
- {id: 17, cat: Movies/UHD, desc: "Film/UHD/Hun"}
|
||||
- {id: 23, cat: Audio/Audiobook, desc: "Hangosköny"}
|
||||
- {id: 19, cat: PC/Games, desc: "Játék/ISO"}
|
||||
- {id: 20, cat: PC/Games, desc: "Játék/RIP"}
|
||||
- {id: 24, cat: Other, desc: "Képek"}
|
||||
- {id: 21, cat: Books, desc: "Könyv/Eng"}
|
||||
- {id: 22, cat: Books, desc: "Könyv/Hun"}
|
||||
- {id: 35, cat: TV/Anime, desc: "Mese/Eng"}
|
||||
- {id: 36, cat: TV/Anime, desc: "Mese/Hun"}
|
||||
- {id: 25, cat: PC/Mobile-Other, desc: "Mobil"}
|
||||
- {id: 30, cat: PC/ISO, desc: "Programok/ISO"}
|
||||
- {id: 31, cat: PC/0day, desc: "Programok/RIP"}
|
||||
- {id: 33, cat: TV, desc: "Sorozat/Eng"}
|
||||
- {id: 32, cat: TV, desc: "Sorozat/Hun"}
|
||||
- {id: 29, cat: Audio/Lossless, desc: "Zene/FLAC/Eng"}
|
||||
- {id: 28, cat: Audio/Lossless, desc: "Zene/FLAC/Hun"}
|
||||
- {id: 27, cat: Audio/MP3, desc: "Zene/MP3/Eng"}
|
||||
- {id: 26, cat: Audio/MP3, desc: "Zene/MP3/Hun"}
|
||||
- {id: 34, cat: XXX, desc: "XXX/Filmek"}
|
||||
- {id: 39, cat: XXX/ImageSet, desc: "XXX/Képek"}
|
||||
- {id: 1, cat: Movies/SD, desc: "Film/Cam/Eng", default: true}
|
||||
- {id: 2, cat: Movies/SD, desc: "Film/Cam/Hun", default: true}
|
||||
- {id: 8, cat: Movies/DVD, desc: "Film/DVD/Eng", default: true}
|
||||
- {id: 7, cat: Movies/DVD, desc: "Film/DVD/Hun", default: true}
|
||||
- {id: 16, cat: Movies/HD, desc: "Film/HD1080P/Eng", default: true}
|
||||
- {id: 15, cat: Movies/HD, desc: "Film/HD1080P/Hun", default: true}
|
||||
- {id: 14, cat: Movies/HD, desc: "Film/HD720P/Eng", default: true}
|
||||
- {id: 13, cat: Movies/HD, desc: "Film/HD720P/Hun", default: true}
|
||||
- {id: 4, cat: Movies/SD, desc: "Film/SD/Eng", default: true}
|
||||
- {id: 3, cat: Movies/SD, desc: "Film/SD/Hun", default: true}
|
||||
- {id: 18, cat: Movies/UHD, desc: "Film/UHD/Eng", default: true}
|
||||
- {id: 17, cat: Movies/UHD, desc: "Film/UHD/Hun", default: true}
|
||||
- {id: 23, cat: Audio/Audiobook, desc: "Hangosköny", default: true}
|
||||
- {id: 19, cat: PC/Games, desc: "Játék/ISO", default: true}
|
||||
- {id: 20, cat: PC/Games, desc: "Játék/RIP", default: true}
|
||||
- {id: 24, cat: Other, desc: "Képek", default: true}
|
||||
- {id: 21, cat: Books, desc: "Könyv/Eng", default: true}
|
||||
- {id: 22, cat: Books, desc: "Könyv/Hun", default: true}
|
||||
- {id: 35, cat: TV/Anime, desc: "Mese/Eng", default: true}
|
||||
- {id: 36, cat: TV/Anime, desc: "Mese/Hun", default: true}
|
||||
- {id: 25, cat: PC/Mobile-Other, desc: "Mobil", default: true}
|
||||
- {id: 30, cat: PC/ISO, desc: "Programok/ISO", default: true}
|
||||
- {id: 31, cat: PC/0day, desc: "Programok/RIP", default: true}
|
||||
- {id: 33, cat: TV, desc: "Sorozat/Eng", default: true}
|
||||
- {id: 32, cat: TV, desc: "Sorozat/Hun", default: true}
|
||||
- {id: 29, cat: Audio/Lossless, desc: "Zene/FLAC/Eng", default: true}
|
||||
- {id: 28, cat: Audio/Lossless, desc: "Zene/FLAC/Hun", default: true}
|
||||
- {id: 27, cat: Audio/MP3, desc: "Zene/MP3/Eng", default: true}
|
||||
- {id: 26, cat: Audio/MP3, desc: "Zene/MP3/Hun", default: true}
|
||||
- {id: 34, cat: XXX, desc: "XXX/Filmek", default: false}
|
||||
- {id: 39, cat: XXX/ImageSet, desc: "XXX/Képek", default: false}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -88,7 +89,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: ["!", 34, 39]
|
||||
categories: [1, 2, 8, 7, 16, 15, 14, 13, 4, 3, 18, 17, 23, 19, 20, 24, 21, 22, 35, 36, 25, 30, 31, 33, 32, 29, 28, 27, 26]
|
||||
- path: browse.php
|
||||
categories: [34, 39]
|
||||
inputs:
|
||||
@@ -146,6 +147,8 @@ search:
|
||||
date:
|
||||
selector: td:nth-last-child(8)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2}.\d{2}:\d{2}:\d{2})
|
||||
- name: replace
|
||||
args: ["\u00a0", " "]
|
||||
- name: append
|
||||
|
||||
@@ -127,6 +127,9 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
@@ -186,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, img
|
||||
# NexusPHP v1.7.16
|
||||
# NexusPHP v1.7.31 2022-11-14
|
||||
|
||||
@@ -83,7 +83,7 @@ search:
|
||||
# http://www.cartoonchaos.org/index.php?page=torrents&search=transformers&category=30;21;20;26;15;16;17&options=0&active=0
|
||||
- path: index.php
|
||||
keywordsfilters:
|
||||
# if searching for season packs switch S01 to season 1 #11775
|
||||
# if searching for season packs switch S01 to season 1 #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(S0)(\\d{1,2})$", "season $2"]
|
||||
- name: re_replace
|
||||
@@ -103,6 +103,17 @@ search:
|
||||
selector: "table.lista tr td table.lista tr:has(a[href^=\"index.php?page=torrent-details\"]):not(:has(a[href=\"index.php?page=torrents&category=0\"])){{ if .Config.freeleech }}:has(img[src=\"gold/gold.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
title_torrent:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: f
|
||||
- name: htmldecode
|
||||
- name: re_replace
|
||||
args: ["(?i)\\.torrent$", ""]
|
||||
title_text:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
category:
|
||||
selector: td a[href^="index.php?page=torrents&category="]
|
||||
attribute: href
|
||||
@@ -110,11 +121,19 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}"
|
||||
filters:
|
||||
# #11775
|
||||
- name: re_replace
|
||||
args: ["(?i)(season )", "S"]
|
||||
- name: re_replace # Seasons X-Y --> S0X-S0Y
|
||||
args: ["(?i)\\bSeasons?[-.\\s]*(\\d)[-.\\s]*(?:-|to)[-.\\s]*(\\d)\\b", "S0$1-S0$2"]
|
||||
- name: re_replace # Seasons X-YY --> S0X-SYY
|
||||
args: ["(?i)\\bSeasons?[-.\\s]*(\\d)[-.\\s]*(?:-|to)[-.\\s]*(\\d+)\\b", "S0$1-S$2"]
|
||||
- name: re_replace # Seasons XX-YY --> SXX-SYY
|
||||
args: ["(?i)\\bSeasons?[-.\\s]*(\\d+)[-.\\s]*(?:-|to)[-.\\s]*(\\d+)\\b", "S$1-S$2"]
|
||||
- name: re_replace # Season X --> S0X
|
||||
args: ["(?i)\\bSeasons?[-.\\s]*(\\d)\\b", "S0$1"]
|
||||
- name: re_replace # Season XX --> SXX
|
||||
args: ["(?i)\\bSeasons?[-.\\s]*(\\d+)\\b", "S$1"]
|
||||
details:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
@@ -140,25 +159,23 @@ search:
|
||||
date_day:
|
||||
# Yesterday at 10:03:30 PM
|
||||
selector: td:nth-child(5):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[ ]at|[\\s+]|[//\xa0],\\/g", " "]
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
date_year:
|
||||
# February 09, 2019, 06:35:08 AM
|
||||
selector: td:nth-child(5):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[,]|[\\s+]|[//\xa0],\\/g", " "]
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "January 02 2006 03:04:05 PM -07:00"
|
||||
args: "January 02 2006 03:04:05 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
|
||||
@@ -104,12 +104,18 @@ search:
|
||||
title:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
filters:
|
||||
- name: re_replace # Seasons X-Y --> SX-SY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
|
||||
- name: re_replace # Seasons X-Y --> S0X-S0Y
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\s*-\\s*(\\d)\\b", "S0$1-S0$2"]
|
||||
- name: re_replace # Seasons X-YY --> S0X-SYY
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\s*-\\s*(\\d+)\\b", "S0$1-S$2"]
|
||||
- name: re_replace # Seasons XX-YY --> SXX-SYY
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d+)\\s*-\\s*(\\d+)\\b", "S$1-S$2"]
|
||||
- name: re_replace # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$"]
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\b", "S0$1"]
|
||||
- name: re_replace # Season XX --> SXX
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d+)\\b", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
args: ["(?i)\\bComplete\\s+Series\\b", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
@@ -137,11 +143,10 @@ search:
|
||||
date:
|
||||
selector: td:nth-child(5) > span
|
||||
attribute: title
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 02 2006, 15:04 -07:00"
|
||||
args: "Jan 02 2006, 15:04"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
|
||||
@@ -15,6 +15,7 @@ caps:
|
||||
- {id: PS2, cat: Console/Other, desc: "Playstation 2"}
|
||||
- {id: PS3, cat: Console/PS3, desc: "Playstation 3"}
|
||||
- {id: PS4, cat: Console/PS4, desc: "Playstation 4"}
|
||||
- {id: PS5, cat: Console/Other, desc: "Playstation 5"}
|
||||
- {id: SWITCH, cat: Console/Other, desc: "Nintendo Switch"}
|
||||
- {id: PSP, cat: Console/PSP, desc: "Playstation (portable) PSP"}
|
||||
- {id: PSVITA, cat: Console/PS Vita, desc: "Playstation Vita"}
|
||||
|
||||
@@ -56,15 +56,15 @@ settings:
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI & PL by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI & PL by this language
|
||||
label: Replace MULTi by this language
|
||||
default: POLISH
|
||||
options:
|
||||
POLISH: POLISH
|
||||
MULTI.POLISH: MULTI.POLISH
|
||||
MULTi POLISH: MULTi POLISH
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -122,9 +122,9 @@ search:
|
||||
text: "{{ .Result.title_raw }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\[multi\\])", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:POLISH|ENGLISH|\\bPL\\b)))\\b", "{{ .Config.multilanguage }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\[pl\\])", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(pl)\\b", "POLISH"]
|
||||
title_phase1:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_raw }}{{ end }}"
|
||||
title_stripped:
|
||||
|
||||
@@ -35,6 +35,10 @@ download:
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
headers:
|
||||
# site blocks automation User-Agents, so slightly alter it here (e.g. Safari/537.37 > Safari/537.36)
|
||||
User-Agent: ["Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"]
|
||||
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}search?query={{ .Keywords }}{{ else }}latest{{ end }}"
|
||||
|
||||
@@ -65,7 +69,7 @@ search:
|
||||
attribute: title
|
||||
filters:
|
||||
- name: append
|
||||
args: " -09:00" # CUS
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "02 Jan, 2006 15:04 -07:00"
|
||||
size:
|
||||
|
||||
@@ -5,6 +5,7 @@ description: "comicat is a CHINESE Public tracker for Anime / Hentai / Manga"
|
||||
language: zh-CN
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://www.comicat.org/
|
||||
|
||||
|
||||
@@ -3,12 +3,13 @@ id: cpasbien
|
||||
name: cpasbien
|
||||
description: "cpasbien is a FRENCH Public site for TV / MOVIES / GENERAL"
|
||||
language: fr-FR
|
||||
type: semi-private
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://vwwvwvwvvw.cpasbien-fr.nz/
|
||||
- https://cpasbiens911.fr/
|
||||
legacylinks:
|
||||
- https://labastidevivante.fr/
|
||||
- http://www.cpasbiens.cc/
|
||||
- http://www.cpabien.cm/
|
||||
- http://cpabien.cm/
|
||||
@@ -43,6 +44,8 @@ legacylinks:
|
||||
- https://wwwv.cpasbien-fr.fr/
|
||||
- https://www2.cpasbien-fr.fr/
|
||||
- https://www.cpasbien-fr.nz/
|
||||
- https://vwwvwvwvvw.cpasbien-fr.nz/
|
||||
- https://cpasbiens3.fr/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -54,13 +57,6 @@ caps:
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Solve the challenge<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<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: flaresolverr
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
@@ -71,29 +67,24 @@ settings:
|
||||
default: cpasbien does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
MULTi FRENCH: MULTi FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
MULTi ENGLISH: MULTi ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
MULTi VOSTFR: MULTi VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
@@ -114,7 +105,7 @@ search:
|
||||
args: ["(?i)(S)(\\d{1,3})$", "saison $2"]
|
||||
|
||||
rows:
|
||||
selector: div#gauche > table > tbody > tr:has(a)
|
||||
selector: div#gauche > table > tbody > tr:has(a), div#dle-content > table > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -142,22 +133,20 @@ search:
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
title_multilang:
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
|
||||
@@ -39,22 +39,22 @@ settings:
|
||||
default: cpasbienclone does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
MULTi FRENCH: MULTi FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
MULTi ENGLISH: MULTi ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
MULTi VOSTFR: MULTi VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
@@ -111,22 +111,20 @@ search:
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
title_multilang:
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
|
||||
121
src/Jackett.Common/Definitions/cpasbiensi.yml
Normal file
121
src/Jackett.Common/Definitions/cpasbiensi.yml
Normal file
@@ -0,0 +1,121 @@
|
||||
---
|
||||
id: cpasbiensi
|
||||
name: cpasbien.si
|
||||
description: "cpasbien.si is a FRENCH Public site for TV / MOVIES / GENERAL"
|
||||
language: fr-FR
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.cpasbien.si/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: info_8000
|
||||
type: info
|
||||
label: About cpasbiensi Categories
|
||||
default: cpasbiensi does not return categories in its search results.</br>To add to your Apps' Torznab indexer, replace all categories with 8000(Other).
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTi FRENCH: MULTi FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTi ENGLISH: MULTi ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTi VOSTFR: MULTi VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="/get_torrents/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "{{ if .Keywords }}recherche/{{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.table-corps > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
_site_date:
|
||||
selector: a
|
||||
filters:
|
||||
# year can be at the end of the title, so we get it and name it _site_date
|
||||
- name: regexp
|
||||
args: "(19|20\\d{2})$"
|
||||
title_phase1:
|
||||
selector: a
|
||||
filters:
|
||||
# now we put the date at the right place according scene naming rules using .Result._site_date
|
||||
- name: re_replace
|
||||
args: ["(?i)( FRENCH)", " {{ .Result._site_date }} FRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( MULTI)", " {{ .Result._site_date }} MULTI"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( TRUEFRENCH)", " {{ .Result._site_date }} TRUEFRENCH"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( VOSTFR)", " {{ .Result._site_date }} VOSTFR"]
|
||||
- name: re_replace
|
||||
args: ["(?i)( SUBFRENCH)", " {{ .Result._site_date }} SUBFRENCH"]
|
||||
# and we delete it at the end
|
||||
- name: re_replace
|
||||
args: ["(19|20\\d{2})$", ""]
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase1 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase2:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
details:
|
||||
selector: a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a
|
||||
attribute: href
|
||||
size:
|
||||
selector: div.poid
|
||||
date:
|
||||
text: now
|
||||
seeders_optional:
|
||||
selector: div.up
|
||||
optional: true
|
||||
seeders:
|
||||
text: "{{ if .Result.seeders_optional }}{{ .Result.seeders_optional }}{{ else }}0{{ end }}"
|
||||
leechers_optional:
|
||||
selector: div.down
|
||||
optional: true
|
||||
leechers:
|
||||
text: "{{ if .Result.leechers_optional }}{{ .Result.leechers_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -90,12 +90,20 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)<li>Refresh the page by pressing <b>F5</b><li>Click on the first row entry<li>Select the <b>Headers</b> tab on the Right panel<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
default: "<ol><li>From the same place you fetched the cookie,<li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -118,19 +126,16 @@ settings:
|
||||
1: asc
|
||||
|
||||
login:
|
||||
path: index.php
|
||||
method: form
|
||||
form: form[action="index.php?page=login"]
|
||||
method: cookie
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.lista span[style="color:#FF0000;"]
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
path: /
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
headers:
|
||||
User-Agent: ["{{ .Config.useragent }}"]
|
||||
paths:
|
||||
- path: index.php?page=searchlist
|
||||
method: post
|
||||
@@ -195,11 +200,10 @@ search:
|
||||
selector: div.torrent-size
|
||||
date:
|
||||
selector: div.torrent-time
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02/01/2006 -07:00"
|
||||
args: "02/01/2006"
|
||||
seeders:
|
||||
selector: div.torrent-seeder
|
||||
leechers:
|
||||
|
||||
@@ -120,22 +120,22 @@ settings:
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTI by another language in release name
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTI by this language
|
||||
label: Replace MULTi by this language
|
||||
default: FRENCH
|
||||
options:
|
||||
FRENCH: FRENCH
|
||||
MULTI.FRENCH: MULTI.FRENCH
|
||||
MULTi FRENCH: MULTi FRENCH
|
||||
ENGLISH: ENGLISH
|
||||
MULTI.ENGLISH: MULTI.ENGLISH
|
||||
MULTi ENGLISH: MULTi ENGLISH
|
||||
VOSTFR: VOSTFR
|
||||
MULTI.VOSTFR: MULTI.VOSTFR
|
||||
MULTi VOSTFR: MULTi VOSTFR
|
||||
- name: vostfr
|
||||
type: checkbox
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
label: Replace VOSTFR and SUBFRENCH with ENGLISH
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
@@ -208,22 +208,20 @@ search:
|
||||
args: ["-NoTag", ""]
|
||||
title_phase2:
|
||||
text: "{{ if .Result.title_phase1 }}{{ .Result.title_phase1 }}{{ else }}{{ .Result.title_phase0 }}{{ end }}"
|
||||
title_multilang:
|
||||
title_vostfr:
|
||||
text: "{{ .Result.title_phase2 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\smulti\\s)", " {{ .Config.multilanguage }} "]
|
||||
args: ["(?i)\\b(vostfr|subfrench)\\b", "ENGLISH"]
|
||||
title_phase3:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
title_vostfr:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase2 }}{{ end }}"
|
||||
title_multilang:
|
||||
text: "{{ .Result.title_phase3 }}"
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\svostfr\\s)", " ENGLISH "]
|
||||
- name: re_replace
|
||||
args: ["(?i)(\\ssubfrench\\s)", " ENGLISH "]
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))\\b", "{{ .Config.multilanguage }}"]
|
||||
title:
|
||||
text: "{{ if .Config.vostfr }}{{ .Result.title_vostfr }}{{ else }}{{ .Result.title_phase3 }}{{ end }}"
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase3 }}{{ end }}"
|
||||
category:
|
||||
selector: a[href^="torrents.php?cat="]
|
||||
attribute: href
|
||||
@@ -269,13 +267,12 @@ search:
|
||||
date:
|
||||
selector: a[onmouseover][href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Partagé Voilà : </b>(.*?)<br"
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "01-02-2006 -07:00"
|
||||
args: "01-02-2006"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/Torrents/free.png"]: 0
|
||||
@@ -284,4 +281,7 @@ search:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 day (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# TT3.1
|
||||
|
||||
@@ -26,6 +26,7 @@ caps:
|
||||
- {id: 61, cat: Movies/HD, desc: "HD Mesano"}
|
||||
- {id: 50, cat: PC/Games, desc: "Igre"}
|
||||
- {id: 44, cat: Books, desc: "Knjige"}
|
||||
- {id: 80, cat: TV, desc: "Paketi"}
|
||||
- {id: 46, cat: Audio, desc: "Koncerti"}
|
||||
- {id: 58, cat: Audio/Lossless, desc: "Lossless/Domaće"}
|
||||
- {id: 59, cat: Audio/Lossless, desc: "Lossless/Strano"}
|
||||
@@ -139,26 +140,24 @@ search:
|
||||
date_day:
|
||||
# Danas<br>08:10 AM
|
||||
# Juče<br>06:44 PM
|
||||
optional: true
|
||||
selector: td:nth-of-type(6):contains("Danas"), td:nth-of-type(6):contains("Juče")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Danas", "Today"]
|
||||
- name: replace
|
||||
args: ["Juče", "Yesterday"]
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
date_year:
|
||||
# Feb 14 2019<br>10:20 AM
|
||||
optional: true
|
||||
selector: td:nth-of-type(6):not(:contains("Juče")):not(:contains("Danas"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM -07:00"
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-of-type(7)
|
||||
grabs:
|
||||
|
||||
@@ -94,12 +94,18 @@ search:
|
||||
title:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
filters:
|
||||
- name: re_replace # Seasons X-Y --> SX-SY
|
||||
args: ["(?i)seasons?\\s*(\\d+)\\s*-\\s*(\\d+)", "S$1-S$2"]
|
||||
- name: re_replace # Seasons X-Y --> S0X-S0Y
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\s*-\\s*(\\d)\\b", "S0$1-S0$2"]
|
||||
- name: re_replace # Seasons X-YY --> S0X-SYY
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\s*-\\s*(\\d+)\\b", "S0$1-S$2"]
|
||||
- name: re_replace # Seasons XX-YY --> SXX-SYY
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d+)\\s*-\\s*(\\d+)\\b", "S$1-S$2"]
|
||||
- name: re_replace # Season X --> S0X
|
||||
args: ["(?i)season\\s*(\\d+)", "S$"]
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d)\\b", "S0$1"]
|
||||
- name: re_replace # Season XX --> SXX
|
||||
args: ["(?i)\\bSeasons?\\s*(\\d+)\\b", "S$1"]
|
||||
- name: re_replace
|
||||
args: ["(?i)Complete\\s+Series", ""]
|
||||
args: ["(?i)\\bComplete\\s+Series\\b", ""]
|
||||
details:
|
||||
selector: a[href^="/torrents.php?id="]
|
||||
attribute: href
|
||||
@@ -127,11 +133,10 @@ search:
|
||||
date:
|
||||
selector: td:nth-child(5) > span
|
||||
attribute: title
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 02 2006, 15:04 -07:00"
|
||||
args: "Jan 02 2006, 15:04"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
|
||||
@@ -1,186 +0,0 @@
|
||||
---
|
||||
id: cryptichaven
|
||||
name: CrypticHaven
|
||||
description: "CrypticHaven Comedy Club (CCC) is a Private Torrent Tracker dedicated to sharing the joy of Comedy."
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.cryptichaven.org/ # https not supported ERR_CONNECTION_REFUSED
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Stand-up
|
||||
- {id: 23, cat: TV, desc: "Stand-up DVD5/9"}
|
||||
- {id: 24, cat: TV, desc: "Stand-up AVI"}
|
||||
- {id: 25, cat: TV, desc: "Stand-up MKV"}
|
||||
- {id: 63, cat: TV, desc: "Stand-up MP4"}
|
||||
- {id: 72, cat: TV, desc: "Stand-up WMV"}
|
||||
- {id: 73, cat: TV, desc: "Stand-up MPG"}
|
||||
# TV Shows Seasons
|
||||
- {id: 27, cat: TV, desc: "USA/Canadian DVD5/9"}
|
||||
- {id: 28, cat: TV, desc: "USA/Canadian AVI"}
|
||||
- {id: 29, cat: TV, desc: "USA/Canadian MKV"}
|
||||
- {id: 66, cat: TV, desc: "USA/Canadian MP4"}
|
||||
- {id: 30, cat: TV, desc: "UK/Europe DVD5/9"}
|
||||
- {id: 31, cat: TV, desc: "UK/Europe AVI"}
|
||||
- {id: 32, cat: TV, desc: "UK/Europe MKV"}
|
||||
- {id: 67, cat: TV, desc: "UK/Europe MP4"}
|
||||
- {id: 33, cat: TV, desc: "NZ/Aussie DVD5/9"}
|
||||
- {id: 34, cat: TV, desc: "NZ/Aussie AVI"}
|
||||
- {id: 35, cat: TV, desc: "NZ/Aussie MKV"}
|
||||
- {id: 68, cat: TV, desc: "NZ/Aussie MP4"}
|
||||
# TV Shows Episodes
|
||||
- {id: 76, cat: TV, desc: "UK/Europe DVD"}
|
||||
- {id: 37, cat: TV, desc: "USA/Canadian eps AVI"}
|
||||
- {id: 38, cat: TV, desc: "USA/Canadian eps MKV"}
|
||||
- {id: 69, cat: TV, desc: "USA/Canadian eps MP4"}
|
||||
- {id: 39, cat: TV, desc: "UK/Europe eps AVI"}
|
||||
- {id: 40, cat: TV, desc: "UK/Europe eps MKV"}
|
||||
- {id: 70, cat: TV, desc: "UK/Europe eps MP4"}
|
||||
- {id: 41, cat: TV, desc: "NZ/Aussie eps AVI"}
|
||||
- {id: 42, cat: TV, desc: "NZ/Aussie eps MKV"}
|
||||
- {id: 71, cat: TV, desc: "NZ/Aussie eps MP4"}
|
||||
# Audio Comedy
|
||||
- {id: 54, cat: Audio, desc: "Comedy Albums"}
|
||||
- {id: 44, cat: Audio, desc: "Radio Shows"}
|
||||
- {id: 45, cat: Audio, desc: "Audio Stand-up"}
|
||||
- {id: 55, cat: Audio, desc: "Bootleg"}
|
||||
- {id: 47, cat: Audio, desc: "Musical Comedy"}
|
||||
- {id: 46, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
- {id: 56, cat: Audio, desc: "Prank Calls"}
|
||||
- {id: 57, cat: Audio, desc: "Skit/Sketch"}
|
||||
- {id: 58, cat: Audio, desc: "Compilations"}
|
||||
- {id: 61, cat: Audio, desc: "PodCast"}
|
||||
# Comics
|
||||
- {id: 49, cat: Books/Comics, desc: "Comics"}
|
||||
# Books
|
||||
- {id: 51, cat: Books/EBook, desc: "Books"}
|
||||
# Random Oddities
|
||||
- {id: 53, cat: TV, desc: "Random Oddities"}
|
||||
- {id: 59, cat: TV, desc: "Late Night Talkshows"}
|
||||
- {id: 77, cat: TV, desc: "Non-English language"}
|
||||
- {id: 78, cat: TV, desc: "Video Musical Comedy"}
|
||||
- {id: 79, cat: TV, desc: "Video Podcasts"}
|
||||
# BY REQUEST ONLY
|
||||
- {id: 19, cat: Movies, desc: "Movie DVD5/9"}
|
||||
- {id: 20, cat: Movies, desc: "Movie AVI"}
|
||||
- {id: 21, cat: Movies, desc: "Movie MKV"}
|
||||
- {id: 62, cat: Movies, desc: "Movie MP4"}
|
||||
- {id: 74, cat: Movies, desc: "Movie Xvid"}
|
||||
- {id: 75, cat: Movies, desc: "Movie Other"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: data
|
||||
options:
|
||||
data: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
filename: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: DESC
|
||||
options:
|
||||
DESC: desc
|
||||
ASC: asc
|
||||
|
||||
login:
|
||||
path: index.php?page=login
|
||||
method: form
|
||||
form: form[action^="index.php?page=login"]
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: span[style="color:#FF0000;"]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="/logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: index.php
|
||||
inputs:
|
||||
page: torrents
|
||||
# 0 all, 1 activeonly, 2 deadonly
|
||||
active: 0
|
||||
search: "{{ .Keywords }}"
|
||||
category: "{{ if .Categories }}{{ range .Categories }}{{.}};{{end}}{{ else }}0{{ end }}"
|
||||
fl: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "table.lista > tbody > tr:has(a[href^=\"index.php?page=torrent-details\"])"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td a[href^="index.php?page=torrents&category="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
details:
|
||||
selector: td a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
description:
|
||||
selector: td a[href^="index.php?page=torrents&category="]
|
||||
attribute: title
|
||||
download:
|
||||
selector: td a[href^="/download.php"]
|
||||
attribute: href
|
||||
date:
|
||||
# 22/01/21 01:28
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile - doesn't adjust for DST
|
||||
- name: dateparse
|
||||
args: "02/01/2006 -07:00"
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
size:
|
||||
selector: td:nth-child(10)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"strong:contains(\"FreeLeech\")": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 14 days (as seconds = 14 x 24 x 60 x 60)
|
||||
text: 1209600
|
||||
# xbtit
|
||||
@@ -118,8 +118,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2022-02-28T19:09:44.000000Z
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
|
||||
@@ -18,6 +18,12 @@ caps:
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
|
||||
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
|
||||
# Kids
|
||||
- {id: 143, cat: Movies, desc: "Kids Filme"}
|
||||
- {id: 144, cat: TV, desc: "Kids Serien"}
|
||||
- {id: 145, cat: Audio, desc: "Kids Music"}
|
||||
- {id: 146, cat: Audio, desc: "Kids Audio"}
|
||||
- {id: 147, cat: Books, desc: "Kids EBook"}
|
||||
# Serien
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 57, cat: TV/HD, desc: "Serien HD"}
|
||||
|
||||
@@ -138,8 +138,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
|
||||
@@ -10,22 +10,12 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.cat/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.world/
|
||||
legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoid.unblockit.li/
|
||||
- https://demonoid.unblockit.uno/
|
||||
- https://demonoid.unblockit.ch/
|
||||
- https://demonoid.nocensor.space/
|
||||
- https://demonoid.unblockit.ws/
|
||||
- https://demonoid.nocensor.work/
|
||||
- https://demonoid.unblockit.kim/
|
||||
- https://demonoid.unblockit.bz/
|
||||
- https://demonoid.unblockit.tv/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.to/
|
||||
- https://demonoid.unblockit.bio/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://demonoid.unblockit.how/
|
||||
- https://demonoid.unblockit.cam/
|
||||
- https://demonoid.nocensor.biz/
|
||||
@@ -36,10 +26,22 @@ legacylinks:
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.unblockit.ist/
|
||||
- https://demonoid.unblockit.bet/
|
||||
- https://demonoid.unblockit.cat/
|
||||
- https://demonoid.unblockit.nz/
|
||||
- https://demonoid.nocensor.world/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.page/
|
||||
- https://demonoid.unblockit.pet/
|
||||
- https://demonoid.nocensor.lol/
|
||||
- https://demonoid.unblockit.ink/
|
||||
- https://demonoid.nocensor.art/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# fetch these from https://www.demonoid.is/cached/torrent_categories_script.js?v5
|
||||
# Everything
|
||||
- {id: 0, cat: Other/Misc, desc: "Miscellaneous"}
|
||||
# Applications
|
||||
- {id: 1, cat: PC/Mobile-Android, desc: "Applications Android"}
|
||||
- {id: 2, cat: PC/Mobile-iOS, desc: "Applications phone / Ipod touch"}
|
||||
@@ -369,6 +371,8 @@ search:
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: 0
|
||||
category|noappend:
|
||||
selector: span.table__column__subtext > a:nth-child(2)
|
||||
attribute: href
|
||||
optional: true
|
||||
|
||||
@@ -73,7 +73,7 @@ search:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free[]=100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
@@ -98,6 +98,8 @@ search:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
@@ -129,8 +131,13 @@ search:
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
||||
selector: created_at
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # GMT
|
||||
- name: dateparse
|
||||
args: "01/02/2006 15:04:05 -07:00"
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
@@ -149,9 +156,10 @@ search:
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# global MR is 0.5 but torrents must be seeded for 7 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.5
|
||||
minimumseedtime:
|
||||
# 7 day (as seconds = 7 x 24 x 60 x 60)
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.4.1 (custom)
|
||||
# json UNIT3D 6.5.0 (custom)
|
||||
|
||||
171
src/Jackett.Common/Definitions/devil-torrents.yml
Normal file
171
src/Jackett.Common/Definitions/devil-torrents.yml
Normal file
@@ -0,0 +1,171 @@
|
||||
---
|
||||
id: devil-torrents
|
||||
name: Devil-Torrents
|
||||
description: "Devil-Torrents is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://devil-torrents.pl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/SD, desc: "Filmy XviD/DivX"}
|
||||
- {id: 748, cat: Movies/UHD, desc: "Filmy 4K"}
|
||||
- {id: 4, cat: Movies/BluRay, desc: "Filmy Blu-Ray/HD"}
|
||||
- {id: 642, cat: Movies/HD, desc: "Filmy x264/h264"}
|
||||
- {id: 596, cat: Movies/HD, desc: "Filmy x265/h265"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "Filmy DVD"}
|
||||
- {id: 5, cat: Movies/3D, desc: "Filmy 3D"}
|
||||
- {id: 2, cat: Movies/HD, desc: "Filmy RMVB"}
|
||||
- {id: 362, cat: Movies/SD, desc: "Filmy IVO"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 702, cat: Movies/SD, desc: "TS/CAM"}
|
||||
- {id: 8, cat: XXX, desc: "Erotyka"}
|
||||
- {id: 10, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 11, cat: PC, desc: "Programy"}
|
||||
- {id: 12, cat: PC/Mobile-Other, desc: "GSM/PDA"}
|
||||
- {id: 13, cat: Console, desc: "Konsole"}
|
||||
- {id: 14, cat: PC/Games, desc: "Gry PC"}
|
||||
- {id: 15, cat: Movies, desc: "Dla Dzieci"}
|
||||
- {id: 16, cat: Books, desc: "Książki"}
|
||||
- {id: 525, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 18, cat: PC, desc: "Linux"}
|
||||
- {id: 19, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 699, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 21, cat: Other, desc: "Inne"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTi by this language
|
||||
default: POLISH
|
||||
options:
|
||||
POLISH: POLISH
|
||||
MULTi POLISH: MULTi POLISH
|
||||
|
||||
login:
|
||||
path: logowanie
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="img.php?size=3"]
|
||||
input: vImageCodP
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: ""
|
||||
error:
|
||||
- selector: div#center-side:contains("Logowanie nie")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
# https://devil-torrents.pl/szukaj.php?search=%&typ=torrent&c4=1&c748=1
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
typ: torrent
|
||||
search: "{{ if .Keywords }}{{ .Keywords }}{{ else }}%{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.test5 > tbody > tr > td > div[id]:has(a[href^="download/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div#kategoria-gatunek-1
|
||||
case:
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy XviD/DivX\")": 1
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 4K\")": 748
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy Blu-Ray/HD\")": 4
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/h264\")": 642
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/h265\")": 596
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy DVD\")": 3
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 3D\")": 5
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy RMVB\")": 2
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy IVO\")": 362
|
||||
"div#kategoria-gatunek-1:contains(\"TV/Seriale\")": 7
|
||||
"div#kategoria-gatunek-1:contains(\"TS/CAM\")": 702
|
||||
"div#kategoria-gatunek-1:contains(\"Erotyka\")": 8
|
||||
"div#kategoria-gatunek-1:contains(\"Muzyka\")": 10
|
||||
"div#kategoria-gatunek-1:contains(\"Programy\")": 11
|
||||
"div#kategoria-gatunek-1:contains(\"GSM/PDA\")": 12
|
||||
"div#kategoria-gatunek-1:contains(\"Konsole\")": 13
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC\")": 14
|
||||
"div#kategoria-gatunek-1:contains(\"Dla Dzieci\")": 15
|
||||
"div#kategoria-gatunek-1:contains(\"Książki\")": 16
|
||||
"div#kategoria-gatunek-1:contains(\"Mac\")": 525
|
||||
"div#kategoria-gatunek-1:contains(\"Linux\")": 18
|
||||
"div#kategoria-gatunek-1:contains(\"Sport\")": 19
|
||||
"div#kategoria-gatunek-1:contains(\"Anime\")": 699
|
||||
"div#kategoria-gatunek-1:contains(\"Inne\")": 21
|
||||
title_phase1:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
title_multilang:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:POLISH|ENGLISH|\\bPL\\b)))\\b", "{{ .Config.multilanguage }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(pl)\\b", "POLISH"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download/"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.browse_poster
|
||||
attribute: src
|
||||
date:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}\.\d{2}\s+?[T|G|M|k]B)
|
||||
seeders:
|
||||
selector: font[color="green"] > b, font[color="red"] > b
|
||||
leechers:
|
||||
selector: font[color="green"]:nth-of-type(2) > b, font[color="red"]:nth-of-type(2) > b
|
||||
grabs:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}) razy
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -12,26 +12,18 @@ caps:
|
||||
categorymappings:
|
||||
- {id: 49, cat: Movies/SD, desc: "film / Cam"}
|
||||
- {id: 21, cat: Movies/SD, desc: "film / Cam [magyar]"}
|
||||
- {id: 6, cat: Movies/SD, desc: "film / DVDRip/XviD"}
|
||||
- {id: 5, cat: Movies/SD, desc: "film / DVDRip/XviD [magyar]"}
|
||||
- {id: 32, cat: Movies/SD, desc: "film / BDRip/XviD"}
|
||||
- {id: 33, cat: Movies/SD, desc: "film / BDRip/XviD [magyar]"}
|
||||
- {id: 50, cat: Movies/SD, desc: "film / BDRip/x264"}
|
||||
- {id: 51, cat: Movies/SD, desc: "film / BDRip/x264 [magyar]"}
|
||||
- {id: 4, cat: Movies/DVD, desc: "film / DVD-R"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "film / DVD-R [magyar]"}
|
||||
- {id: 45, cat: Movies/DVD, desc: "film / DVD9"}
|
||||
- {id: 46, cat: Movies/DVD, desc: "film / DVD9 [magyar]"}
|
||||
- {id: 30, cat: Movies/HD, desc: "film / HD"}
|
||||
- {id: 31, cat: Movies/HD, desc: "film / HD [magyar]"}
|
||||
- {id: 48, cat: Movies/BluRay, desc: "film / Bluray"}
|
||||
- {id: 47, cat: Movies/BluRay, desc: "film / Bluray [magyar]"}
|
||||
- {id: 10, cat: TV/SD, desc: "Sorozat / XviD"}
|
||||
- {id: 11, cat: TV/SD, desc: "Sorozat / XviD [magyar]"}
|
||||
- {id: 43, cat: TV/SD, desc: "Sorozat / DVD-R"}
|
||||
- {id: 41, cat: TV/SD, desc: "Sorozat / DVD-R [magyar]"}
|
||||
- {id: 44, cat: TV/HD, desc: "Sorozat / HD"}
|
||||
- {id: 42, cat: TV/HD, desc: "Sorozat / HD [magyar]"}
|
||||
- {id: 102, cat: Movies/SD, desc: "film / SD"}
|
||||
- {id: 101, cat: Movies/SD, desc: "film / SD [magyar]"}
|
||||
- {id: 106, cat: Movies/DVD, desc: "film / DVD-R"}
|
||||
- {id: 105, cat: Movies/DVD, desc: "film / DVD-R [magyar]"}
|
||||
- {id: 104, cat: Movies/HD, desc: "film / HD"}
|
||||
- {id: 103, cat: Movies/HD, desc: "film / HD [magyar]"}
|
||||
- {id: 108, cat: TV/SD, desc: "Sorozat / SD"}
|
||||
- {id: 107, cat: TV/SD, desc: "Sorozat / SD [magyar]"}
|
||||
- {id: 110, cat: TV/SD, desc: "Sorozat / DVD-R"}
|
||||
- {id: 109, cat: TV/SD, desc: "Sorozat / DVD-R [magyar]"}
|
||||
- {id: 112, cat: TV/HD, desc: "Sorozat / HD"}
|
||||
- {id: 111, cat: TV/HD, desc: "Sorozat / HD [magyar]"}
|
||||
- {id: 8, cat: Audio/MP3, desc: "Zene / MP3"}
|
||||
- {id: 9, cat: Audio/MP3, desc: "Zene / MP3 [magyar]"}
|
||||
- {id: 38, cat: Audio/Lossless, desc: "Zene / Lossless"}
|
||||
@@ -45,9 +37,9 @@ caps:
|
||||
- {id: 16, cat: PC/ISO, desc: "Programok / PC"}
|
||||
- {id: 24, cat: PC/Mobile-Other, desc: "Programok / Mobil"}
|
||||
- {id: 53, cat: PC/0day, desc: "Programok / Egyéb"}
|
||||
- {id: 17, cat: XXX/XviD, desc: "Pornó / XviD"}
|
||||
- {id: 113, cat: XXX/XviD, desc: "Pornó / SD"}
|
||||
- {id: 34, cat: XXX/DVD, desc: "Pornó / DVD-R"}
|
||||
- {id: 35, cat: XXX, desc: "Pornó / HD"}
|
||||
- {id: 114, cat: XXX, desc: "Pornó / HD"}
|
||||
- {id: 36, cat: XXX, desc: "Pornó / Képek"}
|
||||
- {id: 20, cat: Books, desc: "E-Book / Magyar"}
|
||||
- {id: 52, cat: Books, desc: "E-Book / Egyéb"}
|
||||
|
||||
@@ -37,8 +37,11 @@ caps:
|
||||
- {id: 39, cat: Audio/Video, desc: Music/DVD}
|
||||
- {id: 40, cat: Audio/Video, desc: Music/Bluray}
|
||||
- {id: 25, cat: PC/Games, desc: Games/PC}
|
||||
- {id: 26, cat: Console, desc: Games/NSW}
|
||||
- {id: 27, cat: PC/Mac, desc: Games/Mac}
|
||||
- {id: 26, cat: Console, desc: Games/Consoles}
|
||||
- {id: 43, cat: Console, desc: Games/ROMS}
|
||||
- {id: 42, cat: XXX/Other, desc: Games/XXX}
|
||||
- {id: 44, cat: Audio/Audiobook, desc: Audiobooks}
|
||||
- {id: 28, cat: Books/EBook, desc: Ebooks}
|
||||
- {id: 30, cat: XXX/SD, desc: XXX/SD}
|
||||
- {id: 31, cat: XXX, desc: XXX/HD}
|
||||
@@ -107,7 +110,7 @@ search:
|
||||
limit: 100
|
||||
order: "{{ .Config.type }}"
|
||||
page: search
|
||||
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
section: all
|
||||
sort: "{{ .Config.sort }}"
|
||||
stereoscopic: false
|
||||
@@ -174,7 +177,7 @@ search:
|
||||
title_desc:
|
||||
optional: true
|
||||
selector: title
|
||||
year_desc:
|
||||
year:
|
||||
optional: true
|
||||
selector: year
|
||||
genre:
|
||||
@@ -190,7 +193,7 @@ search:
|
||||
selector: rating
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["0", ""]
|
||||
args: ["^0$", ""]
|
||||
_section_desc:
|
||||
optional: true
|
||||
selector: section
|
||||
@@ -221,5 +224,5 @@ search:
|
||||
- name: regexp
|
||||
args: "(.+?), $"
|
||||
description:
|
||||
text: "{{ if .Result.title_desc }}Title: {{ .Result.title_desc }}</br>{{ else }}{{ end }}{{ if .Result.year_desc }}Year: {{ .Result.year_desc }}</br>{{ else }}{{ end }}{{ if .Result.genre }}Genres: {{ .Result.genre }}</br>{{ else }}{{ end }}{{ if .Result._tagline_desc }}Tagline: {{ .Result._tagline_desc }}</br>{{ else }}{{ end }}{{ if .Result._cast_desc }}Cast: {{ .Result._cast_desc }}</br>{{ else }}{{ end }}{{ if .Result._rating_desc }}Rating: {{ .Result._rating_desc }}</br>{{ else }}{{ end }}{{ if .Result._tag_desc }}Tags: {{ .Result._tag_desc }}</br>{{ else }}{{ end }}{{ if .Result._predate_desc }}PRE: {{ .Result._predate_desc }}</br>{{ else }}{{ end }}{{ if .Result._section_desc }}Section: {{ .Result._section_desc }}{{ else }}{{ end }}"
|
||||
text: "{{ if .Result.title_desc }}Title: {{ .Result.title_desc }}</br>{{ else }}{{ end }}{{ if .Result.year }}Year: {{ .Result.year }}</br>{{ else }}{{ end }}{{ if .Result.genre }}Genres: {{ .Result.genre }}</br>{{ else }}{{ end }}{{ if .Result._tagline_desc }}Tagline: {{ .Result._tagline_desc }}</br>{{ else }}{{ end }}{{ if .Result._cast_desc }}Cast: {{ .Result._cast_desc }}</br>{{ else }}{{ end }}{{ if .Result._rating_desc }}Rating: {{ .Result._rating_desc }}</br>{{ else }}{{ end }}{{ if .Result._tag_desc }}Tags: {{ .Result._tag_desc }}</br>{{ else }}{{ end }}{{ if .Result._predate_desc }}PRE: {{ .Result._predate_desc }}</br>{{ else }}{{ end }}{{ if .Result._section_desc }}Section: {{ .Result._section_desc }}{{ else }}{{ end }}"
|
||||
# json rartracker api v1
|
||||
|
||||
@@ -116,7 +116,7 @@ search:
|
||||
searchscope: 1
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
# does not support multi category filtering
|
||||
# does not support imdbid searches, does not return imdb link in results
|
||||
# does not support sorting
|
||||
|
||||
@@ -157,11 +157,10 @@ search:
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02/01/2006 -07:00"
|
||||
args: "02/01/2006"
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
|
||||
@@ -5,6 +5,8 @@ description: "DocsPedia is a Private Torrent Tracker for E-learning"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 0a9676d26d187ccc715189a5eea3bd43eff07c43 # Expired Jan 15 2023
|
||||
links:
|
||||
- https://www.docspedia.world/
|
||||
|
||||
@@ -139,22 +141,22 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
date_year:
|
||||
remove: a
|
||||
# Jul 4 2019 08:04 AM
|
||||
selector: div.torrenttable:nth-child(2):not(:contains("day"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM -07:00"
|
||||
date_day:
|
||||
remove: a
|
||||
# Today 02:40 PM
|
||||
# Yesterday 09:10 AM
|
||||
selector: div.torrenttable:nth-child(2):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
remove: a
|
||||
# Jul 4 2019 08:04 AM
|
||||
selector: div.torrenttable:nth-child(2):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
minimumratio:
|
||||
|
||||
75
src/Jackett.Common/Definitions/dodder.yml
Normal file
75
src/Jackett.Common/Definitions/dodder.yml
Normal file
@@ -0,0 +1,75 @@
|
||||
---
|
||||
id: dodder
|
||||
name: Dodder
|
||||
description: "Dodder (菟丝子资源社区) is a CHINESE Public BitTorrent DHT search engine"
|
||||
language: zh-CN
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://dodder.top/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
Other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
infohash:
|
||||
hash:
|
||||
selector: a[href^="magnet:?xt"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([A-F|a-f|0-9]{40})
|
||||
title:
|
||||
selector: b
|
||||
attribute: title
|
||||
filters:
|
||||
- name: validfilename
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: /
|
||||
inputs:
|
||||
fileName: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: table.dodder-torrent-list > tbody > tr
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
title:
|
||||
selector: a[href^="/info/"]
|
||||
attribute: title
|
||||
details:
|
||||
selector: a[href^="/info/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="/info/"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: div.layui-hide-xs
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05"
|
||||
size:
|
||||
selector: span.layui-bg-gray
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
description:
|
||||
selector: span.layui-row
|
||||
remove: span.layui-badge
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -21,6 +21,7 @@ caps:
|
||||
- {id: 17, cat: Movies/Other, desc: "Cartoon Sub. Embed."}
|
||||
- {id: 31, cat: Movies/Other, desc: "Cartoon in Greek "}
|
||||
- {id: 107, cat: Movies/Other, desc: "Kids in Greek"}
|
||||
- {id: 120, cat: Movies/Other, desc: "Cartoon Series"}
|
||||
- {id: 88, cat: Audio/Other, desc: "Music Kids"}
|
||||
# Movies Subs No Embed.
|
||||
- {id: 38, cat: Movies, desc: "Movies Subs No Embed."}
|
||||
@@ -76,6 +77,7 @@ caps:
|
||||
- {id: 83, cat: Books/EBook, desc: "Ebooks"}
|
||||
- {id: 110, cat: Books/Mags, desc: "EMagazines"}
|
||||
- {id: 82, cat: Other, desc: "Pics & Images"}
|
||||
- {id: 119, cat: Audio/Audiobook, desc: "Audio Books"}
|
||||
# Games
|
||||
- {id: 2, cat: PC/Games, desc: "Games"}
|
||||
- {id: 27, cat: PC/Games, desc: "PC"}
|
||||
@@ -89,6 +91,7 @@ caps:
|
||||
- {id: 94, cat: Audio/Lossless, desc: "Foreign Flac"}
|
||||
- {id: 117, cat: Audio, desc: "Compact Disc Club"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 118, cat: Audio, desc: "Dream Radio Music"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -164,34 +167,34 @@ search:
|
||||
download:
|
||||
selector: a[href*="?p=torrents&pid=10&action=download"]
|
||||
attribute: href
|
||||
date_year:
|
||||
# Uploaded 30-01-2019 15:02 by
|
||||
selector: td.torrent_name:not(:contains(" at ")):not(:has(abbr[data-time]))
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04 -07:00"
|
||||
date_day:
|
||||
# Uploaded Friday at 05:11 by
|
||||
# Uploaded Today at 00:48 by
|
||||
# Uploaded Yesterday at 23:57 by
|
||||
selector: td.torrent_name:contains(" at "):not(:has(abbr[data-time]))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Uploaded 30-01-2019 15:02 by
|
||||
selector: td.torrent_name:not(:contains(" at ")):not(:has(abbr[data-time]))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Uploaded (.+?) by"
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04"
|
||||
date_unix:
|
||||
# within the hour (unix)
|
||||
selector: abbr[data-time]
|
||||
attribute: data-time
|
||||
optional: true
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_unix .Result.date_day }}{{ or .Result.date_year .Result.date_unix .Result.date_day }}{{ else }}now{{ end }}"
|
||||
text: "{{ if or .Result.date_day .Result.date_year .Result.date_unix }}{{ or .Result.date_day .Result.date_year .Result.date_unix }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: a[rel="torrent_size"]
|
||||
seeders:
|
||||
@@ -212,4 +215,7 @@ search:
|
||||
case:
|
||||
"img[src$=\"/torrent_multiple_upload.png\"]": 2
|
||||
"*": 1
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# TSUE 2.2
|
||||
|
||||
155
src/Jackett.Common/Definitions/ebookbay.yml
Normal file
155
src/Jackett.Common/Definitions/ebookbay.yml
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
id: ebookbay
|
||||
name: EBookBay
|
||||
description: "EBook Bay (EBB) is a Public Torrent Tracker for E-BOOKS"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- http://ebb.la/ # site does not support https SSL_ERROR_BAD_CERT_DOMAIN
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: "Action/Adventure", cat: Books/EBook, desc: "Action/Adventure"}
|
||||
- {id: "Animals", cat: Books/EBook, desc: "Animals"}
|
||||
- {id: "Arts", cat: Books/EBook, desc: "Arts"}
|
||||
- {id: "Beauty", cat: Books/EBook, desc: "Beauty"}
|
||||
- {id: "Business", cat: Books/EBook, desc: "Business"}
|
||||
- {id: "Certification", cat: Books/EBook, desc: "Certification"}
|
||||
- {id: "Children/Kids", cat: Books/EBook, desc: "Children/Kids"}
|
||||
- {id: "Classic/Literary", cat: Books/EBook, desc: "Classic/Literary"}
|
||||
- {id: "Comics", cat: Books/Comics, desc: "Comics"}
|
||||
- {id: "Computer", cat: Books/EBook, desc: "Computer"}
|
||||
- {id: "Contemporary", cat: Books/EBook, desc: "Contemporary"}
|
||||
- {id: "Cooking", cat: Books/EBook, desc: "Cooking"}
|
||||
- {id: "Crafts & Hobbies", cat: Books/EBook, desc: "Crafts & Hobbies"}
|
||||
- {id: "Education", cat: Books/EBook, desc: "Education"}
|
||||
- {id: "Entertainment", cat: Books/EBook, desc: "Entertainment"}
|
||||
- {id: "Fantasy", cat: Books/EBook, desc: "Fantasy"}
|
||||
- {id: "Gardening", cat: Books/EBook, desc: "Gardening"}
|
||||
- {id: "Health", cat: Books/EBook, desc: "Health"}
|
||||
- {id: "Historical", cat: Books/EBook, desc: "Historical"}
|
||||
- {id: "History", cat: Books/EBook, desc: "History"}
|
||||
- {id: "Horror", cat: Books/EBook, desc: "Horror"}
|
||||
- {id: "Humorous", cat: Books/EBook, desc: "Humorous"}
|
||||
- {id: "Internet", cat: Books/EBook, desc: "Internet"}
|
||||
- {id: "Magazine", cat: Books/EBook, desc: "Magazine"}
|
||||
- {id: "Marketing", cat: Books/EBook, desc: "Marketing"}
|
||||
- {id: "Medical", cat: Books/EBook, desc: "Medical"}
|
||||
- {id: "Mystery/Suspense", cat: Books/EBook, desc: "Mystery/Suspense"}
|
||||
- {id: "Nonfiction", cat: Books/EBook, desc: "Nonfiction"}
|
||||
- {id: "Novel", cat: Books/EBook, desc: "Novel"}
|
||||
- {id: "Other", cat: Books/EBook, desc: "Other"}
|
||||
- {id: "Paranormal", cat: Books/EBook, desc: "Paranormal"}
|
||||
- {id: "Political", cat: Books/EBook, desc: "Political"}
|
||||
- {id: "Real Estate", cat: Books/EBook, desc: "Real Estate"}
|
||||
- {id: "Reference", cat: Books/EBook, desc: "Reference"}
|
||||
- {id: "Religion", cat: Books/EBook, desc: "Religion"}
|
||||
- {id: "Romance", cat: Books/EBook, desc: "Romance"}
|
||||
- {id: "Sci-Fi", cat: Books/EBook, desc: "Sci-Fi"}
|
||||
- {id: "Science", cat: Books/EBook, desc: "Science"}
|
||||
- {id: "Self-Help", cat: Books/EBook, desc: "Self-Help"}
|
||||
- {id: "Society", cat: Books/EBook, desc: "Society"}
|
||||
- {id: "Software", cat: Books/EBook, desc: "Software"}
|
||||
- {id: "Sports", cat: Books/EBook, desc: "Sports"}
|
||||
- {id: "Technical", cat: Books/EBook, desc: "Technical"}
|
||||
- {id: "Teen/Young Adult", cat: Books/EBook, desc: "Teen/Young Adult"}
|
||||
- {id: "Textbook", cat: Books/EBook, desc: "Textbook"}
|
||||
- {id: "Thriller", cat: Books/EBook, desc: "Thriller"}
|
||||
- {id: "Travel", cat: Books/EBook, desc: "Travel"}
|
||||
- {id: "Tutorial", cat: Books/EBook, desc: "Tutorial"}
|
||||
- {id: "Western", cat: Books/EBook, desc: "Western"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
infohash:
|
||||
hash:
|
||||
selector: td:contains("Info Hash:") ~ td
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ([A-F|a-f|0-9]{40})
|
||||
title:
|
||||
selector: div#content > div.poststuff > div.postname
|
||||
filters:
|
||||
- name: trim
|
||||
- name: validfilename
|
||||
|
||||
search:
|
||||
paths:
|
||||
# with just 5 results per page, try to grab up to 25 results
|
||||
# http://ebb.la/?s=teeth
|
||||
# http://ebb.la/page/2/?s=teeth
|
||||
- path: "{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/2/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/3/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/4/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
- path: "page/5/{{ if .Keywords }}?s={{ .Keywords }}{{ else }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: "div#content > div.poststuff, div#content > div.poststuff + div.entry:has(a.download)"
|
||||
after: 1
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: Other
|
||||
category|noappend:
|
||||
selector: span.writer
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "E book under:\\s+(.+?)\\s"
|
||||
title:
|
||||
selector: div.postname a
|
||||
details:
|
||||
selector: a.detail
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.detail
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[src^="http"]:not(img[src*="images/default_cover.jpg"])
|
||||
attribute: src
|
||||
date:
|
||||
text: now
|
||||
size_optional:
|
||||
optional: true
|
||||
selector: p:contains("File Size")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "File Size: (.+?)s?$"
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}0 B{{ end }}"
|
||||
seeders_optional:
|
||||
optional: true
|
||||
selector: p:contains("Seeds")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Seeds: (\\d+)"
|
||||
seeders:
|
||||
text: "{{ if .Result.seeders_optional }}{{ .Result.seeders_optional }}{{ else }}0{{ end }}"
|
||||
leechers_optional:
|
||||
optional: true
|
||||
selector: p:contains("Peers")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Peers: (\\d+)"
|
||||
leechers:
|
||||
text: "{{ if .Result.leechers_optional }}{{ .Result.leechers_optional }}{{ else }}0{{ end }}"
|
||||
grabs_optional:
|
||||
optional: true
|
||||
selector: p:contains("Completed Downloads")
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "Completed Downloads: (\\d+)"
|
||||
grabs:
|
||||
text: "{{ if .Result.grabs_optional }}{{ .Result.grabs_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# WordPress 2.5
|
||||
@@ -1,190 +0,0 @@
|
||||
---
|
||||
id: ebookparadijs
|
||||
name: EbookParadijs
|
||||
description: "EbookParadijs is a DUTCH Private Tracker for EBOOKS"
|
||||
language: nl-NL
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.ebookparadijs.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2, cat: Books/EBook, desc: "Roman"}
|
||||
- {id: 3, cat: Books/EBook, desc: "Thriller"}
|
||||
- {id: 4, cat: Books/EBook, desc: "Diverse"}
|
||||
- {id: 7, cat: Books/EBook, desc: "Jeugd"}
|
||||
- {id: 8, cat: Books/EBook, desc: "Oorlog"}
|
||||
- {id: 9, cat: Books/EBook, desc: "Luisterboeken"}
|
||||
- {id: 10, cat: Books/EBook, desc: "Stripboeken"}
|
||||
- {id: 11, cat: Books/EBook, desc: "Crime"}
|
||||
- {id: 13, cat: Books/EBook, desc: "Detective"}
|
||||
- {id: 15, cat: Books/EBook, desc: "Erothiek"}
|
||||
- {id: 16, cat: Books/EBook, desc: "Tijdschriften"}
|
||||
- {id: 17, cat: Books/EBook, desc: "Hobby"}
|
||||
- {id: 19, cat: Books/EBook, desc: "Medisch"}
|
||||
- {id: 21, cat: Books/EBook, desc: "Sport"}
|
||||
- {id: 50, cat: Books/EBook, desc: "Kookboeken"}
|
||||
- {id: 51, cat: Books/EBook, desc: "Fantasy"}
|
||||
- {id: 52, cat: Books/EBook, desc: "Kerst"}
|
||||
- {id: 53, cat: Books/EBook, desc: "Waargebeurd"}
|
||||
- {id: 56, cat: Books/EBook, desc: "Engels"}
|
||||
- {id: 57, cat: Books/EBook, desc: "Maatschappij"}
|
||||
- {id: 58, cat: Books/EBook, desc: "Biografie"}
|
||||
- {id: 61, cat: Books/EBook, desc: "Geschiedenis"}
|
||||
- {id: 60, cat: Books/EBook, desc: "Sci-Fi"}
|
||||
- {id: 64, cat: Books/EBook, desc: "Literatuur"}
|
||||
- {id: 65, cat: Books/EBook, desc: "Non-Fiction"}
|
||||
- {id: 66, cat: Books/EBook, desc: "Bladmuziek"}
|
||||
- {id: 67, cat: Books/EBook, desc: "young Adult"}
|
||||
- {id: 68, cat: Books/EBook, desc: "feelgood romans"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: flaresolverr
|
||||
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.
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: thankyou
|
||||
type: text
|
||||
label: Thank You Comment
|
||||
- name: info_comment
|
||||
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: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: "/"
|
||||
error:
|
||||
- selector: td.embedded:contains("fout")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
before:
|
||||
# https://www.ebookparadijs.org/comment.php?action=add&tid=23079
|
||||
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
|
||||
|
||||
rows:
|
||||
selector: "table.mainouter{{ if .Config.freeleech }}:has(img[src=\"pic/freedlfsu.gif\"]){{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
poster:
|
||||
selector: img[src*="/covers/"]
|
||||
attribute: src
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(4) table tr td:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(.+?) in"
|
||||
files:
|
||||
selector: td:nth-child(4) table tr td:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "in (\\d+) bestan"
|
||||
grabs:
|
||||
selector: td:nth-child(4) table tr:nth-child(2) td:nth-child(1)
|
||||
date:
|
||||
selector: td:nth-child(4) table tr:nth-child(2) td:last-child
|
||||
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: td:nth-child(4) table tr:nth-child(3) td:nth-child(5) font b
|
||||
seeders:
|
||||
text: "{{ if .Result.seeders_optional }}{{ .Result.seeders_optional }}{{ else }}0{{ end }}"
|
||||
leechers_optional:
|
||||
optional: true
|
||||
selector: td:nth-child(4) table tr:nth-child(3) td:nth-child(5) font font b
|
||||
leechers:
|
||||
text: "{{ if .Result.leechers_optional }}{{ .Result.leechers_optional }}{{ else }}0{{ end }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedlfsu.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# minimumratio: ratioless site, uses credit points instead.
|
||||
# engine n/a
|
||||
@@ -5,6 +5,7 @@ description: "E-Hentai is a Public site for Hentai doujinshi, manga."
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://e-hentai.org/
|
||||
|
||||
|
||||
185
src/Jackett.Common/Definitions/electro-torrent.yml
Normal file
185
src/Jackett.Common/Definitions/electro-torrent.yml
Normal file
@@ -0,0 +1,185 @@
|
||||
---
|
||||
id: electro-torrent
|
||||
name: Electro-Torrent
|
||||
description: "Electro-Torrent is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://electro-torrent.pl/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies/SD, desc: "Filmy XviD/DivX"}
|
||||
- {id: 769, cat: Movies/HD, desc: "Filmy 1080p AVC"}
|
||||
- {id: 770, cat: Movies/HD, desc: "Filmy x264/1080p"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Filmy x264/720p"}
|
||||
- {id: 642, cat: Movies/HD, desc: "Filmy x264/h264"}
|
||||
- {id: 723, cat: Movies/UHD, desc: "Filmy 4K UHD"}
|
||||
- {id: 1160, cat: Movies/UHD, desc: "Filmy x265/2160p"}
|
||||
- {id: 1116, cat: Movies/HD, desc: "Filmy x265/1080p"}
|
||||
- {id: 1204, cat: Movies/HD, desc: "Filmy x265/720p"}
|
||||
- {id: 596, cat: Movies/HD, desc: "Filmy x265/h265"}
|
||||
- {id: 1072, cat: Movies, desc: "Filmy - WAREZY"}
|
||||
- {id: 3, cat: Movies/DVD, desc: "Filmy DVD"}
|
||||
- {id: 5, cat: Movies/3D, desc: "Filmy 3D"}
|
||||
- {id: 362, cat: Movies/SD, desc: "Filmy IVO"}
|
||||
- {id: 696, cat: Movies/SD, desc: "Filmy TS/CAM"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 8, cat: XXX, desc: "Erotyka"}
|
||||
- {id: 10, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 11, cat: PC, desc: "Programy"}
|
||||
- {id: 12, cat: PC/Mobile-Other, desc: "GSM/PDA"}
|
||||
- {id: 13, cat: Console, desc: "Konsole"}
|
||||
- {id: 14, cat: PC/Games, desc: "Gry PC"}
|
||||
- {id: 1045, cat: PC/Games, desc: "Gry PC - Warezy"}
|
||||
- {id: 15, cat: Movies, desc: "Dla Dzieci"}
|
||||
- {id: 16, cat: Books, desc: "Książki"}
|
||||
- {id: 525, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 18, cat: PC, desc: "Linux"}
|
||||
- {id: 19, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 907, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 21, cat: Other, desc: "Inne"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
default: false
|
||||
- name: multilanguage
|
||||
type: select
|
||||
label: Replace MULTi by this language
|
||||
default: POLISH
|
||||
options:
|
||||
POLISH: POLISH
|
||||
MULTi POLISH: MULTi POLISH
|
||||
|
||||
login:
|
||||
path: logowanie
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="img.php?size=3"]
|
||||
input: vImageCodP
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: ""
|
||||
error:
|
||||
- selector: div#center-side:contains("Logowanie nie")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
# http://electro-torrent.pl/szukaj.php?search=&typ=torrent&cat=0
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
inputs:
|
||||
# does not support multi cat selection, defaulting to all
|
||||
# $raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
cat: 0
|
||||
typ: torrent
|
||||
search: "{{ .Keywords }}"
|
||||
|
||||
rows:
|
||||
selector: table.test5 > tbody > tr > td > div[id]:has(a[href*="/download/"])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: div#kategoria-gatunek-1
|
||||
case:
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy XviD/DivX\")": 1
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 1080p AVC\")": 769
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/1080p\")": 770
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/720p\")": 4
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x264/h264\")": 642
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 4K UHD\")": 723
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/2160p\")": 1160
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/1080p\")": 1116
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/720p\")": 1204
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy x265/h265\")": 596
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy - WAREZY\")": 1072
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy DVD\")": 3
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy 3D\")": 5
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy IVO\")": 362
|
||||
"div#kategoria-gatunek-1:contains(\"Filmy TS/CAM\")": 696
|
||||
"div#kategoria-gatunek-1:contains(\"TV/Seriale\")": 7
|
||||
"div#kategoria-gatunek-1:contains(\"Erotyka\")": 8
|
||||
"div#kategoria-gatunek-1:contains(\"Muzyka\")": 10
|
||||
"div#kategoria-gatunek-1:contains(\"Programy\")": 11
|
||||
"div#kategoria-gatunek-1:contains(\"GSM/PDA\")": 12
|
||||
"div#kategoria-gatunek-1:contains(\"Konsole\")": 13
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC - Warezy\")": 1045
|
||||
"div#kategoria-gatunek-1:contains(\"Gry PC\")": 14
|
||||
"div#kategoria-gatunek-1:contains(\"Dla Dzieci\")": 15
|
||||
"div#kategoria-gatunek-1:contains(\"Książki\")": 16
|
||||
"div#kategoria-gatunek-1:contains(\"Mac\")": 525
|
||||
"div#kategoria-gatunek-1:contains(\"Linux\")": 18
|
||||
"div#kategoria-gatunek-1:contains(\"Sport\")": 19
|
||||
"div#kategoria-gatunek-1:contains(\"Anime\")": 907
|
||||
"div#kategoria-gatunek-1:contains(\"Inne\")": 21
|
||||
title_phase1:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
title_multilang:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(MULTI(?!.*(?:POLISH|ENGLISH|\\bPL\\b)))\\b", "{{ .Config.multilanguage }}"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(pl)\\b", "POLISH"]
|
||||
title:
|
||||
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
|
||||
details:
|
||||
selector: a[href^="/torrent/"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download/"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.browse_poster
|
||||
attribute: src
|
||||
date:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "2006-01-02 15:04:05 -07:00"
|
||||
size:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}\.\d{2}\s+?[T|G|M|k]B)
|
||||
seeders:
|
||||
selector: font[color="green"] > b, font[color="red"] > b
|
||||
leechers:
|
||||
selector: font[color="green"]:nth-of-type(2) > b, font[color="red"]:nth-of-type(2) > b
|
||||
grabs:
|
||||
selector: td.descr3
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{1,4}) razy
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -1,159 +0,0 @@
|
||||
---
|
||||
id: elitetorrent-biz
|
||||
name: EliteTorrent.biz
|
||||
description: "EliteTorrent.biz is a Public torrent site for TV, movies and documentaries"
|
||||
language: es-ES
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://www.elitetorrent.com/
|
||||
- https://elitetorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://www.elitetorrent.biz/
|
||||
- https://www.elitetorrent.io/
|
||||
- https://www.elitetorrent.one/
|
||||
- https://www.elitetorrent.is/
|
||||
- https://www.elitetorrent.nu/
|
||||
- https://www.elitetorrent.tv/
|
||||
- https://www.elitetorrent.li/
|
||||
- https://www.elitetorrent.bz/
|
||||
- https://www.elitetorrent.nl/
|
||||
- https://wwvv.elitetorrent.nl/
|
||||
- https://wvvw.elitetorrent.nl/
|
||||
- https://vvww.elitetorrent.nl/
|
||||
- https://www.elitetorrent.to/
|
||||
- https://www.elitetorrent.se/
|
||||
- https://elitetorrent.si/
|
||||
- https://elitetorrent.nocensor.work/
|
||||
- https://elitetorrent.com/
|
||||
- https://elitetorrent.app/
|
||||
- https://elitetorrent.nocensor.biz/
|
||||
- https://elitetorrent.la/
|
||||
- https://www.elitetorrent.wtf/
|
||||
- https://www.elitetorrent.dev/
|
||||
- https://elitetorrent.nocensor.sbs/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
series: TV
|
||||
peliculas: Movies
|
||||
other: Other
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
# site returns just 30 results, attempt to fetch up to 90
|
||||
paths:
|
||||
- path: /
|
||||
- path: /page/2/
|
||||
followredirect: true
|
||||
- path: /page/3/
|
||||
followredirect: true
|
||||
keywordsfilters:
|
||||
# most ES/ITA TV torrents are in XXxYY format, so we search without S/E prefixes and filter later
|
||||
- name: re_replace
|
||||
args: ["(?i)S0?(\\d{1,2})", " $1 "]
|
||||
- name: re_replace
|
||||
args: ["(?i)E(\\d{2,3})", " $1 "]
|
||||
inputs:
|
||||
s: "{{ .Keywords }}"
|
||||
$raw: "&x=0&y=0"
|
||||
|
||||
rows:
|
||||
selector: "#principal .miniboxs-ficha li:has(span:nth-of-type(2))"
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category_movie:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(peliculas)/.*$"
|
||||
category_tv:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "^.*/(series)/.*$"
|
||||
category:
|
||||
text: "{{ if or .Result.category_movie .Result.category_tv }}{{ or .Result.category_movie .Result.category_tv }}{{ else }}other{{ end }}"
|
||||
_quality:
|
||||
selector: span:nth-of-type(2) > i
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["---", ""]
|
||||
_language:
|
||||
selector: span#idiomacio > i > img
|
||||
attribute: title
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Pelicula en ", ""]
|
||||
- name: replace
|
||||
args: ["Español Latino", "LATiN SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Español Castellano", "SPANiSH"]
|
||||
- name: replace
|
||||
args: ["Ingles", "English"]
|
||||
- name: replace
|
||||
args: ["Subtitulado", " SPASUBS"]
|
||||
- name: replace
|
||||
args: ["VOSE", ""]
|
||||
title:
|
||||
selector: div.imagen > a
|
||||
attribute: title
|
||||
# normalize to SXXEYY format
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" – ", " "]
|
||||
- name: replace
|
||||
args: ["(", ""]
|
||||
- name: replace
|
||||
args: [")", ""]
|
||||
- name: re_replace
|
||||
args: ["(\\d{2})×(\\d{2})", "S$1E$2"]
|
||||
- name: re_replace
|
||||
args: ["(\\d{1})×(\\d{2})", "S0$1E$2"]
|
||||
- name: append
|
||||
args: " {{ .Result._quality }} {{ .Result._language }}"
|
||||
details:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
download:
|
||||
selector: .meta a
|
||||
attribute: href
|
||||
poster:
|
||||
selector: .imagen img
|
||||
attribute: data-src
|
||||
size_optional:
|
||||
selector: .voto1
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["desc.", "512 MB"]
|
||||
- name: replace
|
||||
args: ["s", ""]
|
||||
size:
|
||||
text: "{{ if .Result.size_optional }}{{ .Result.size_optional }}{{ else }}512 MB{{ end }}"
|
||||
date:
|
||||
text: now
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
||||
@@ -141,11 +141,10 @@ search:
|
||||
date:
|
||||
selector: td:nth-child(5) > span
|
||||
attribute: title
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 02 2006, 15:04 -07:00"
|
||||
args: "Jan 02 2006, 15:04"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
|
||||
@@ -136,11 +136,10 @@ search:
|
||||
date:
|
||||
selector: td:nth-child(5) > span
|
||||
attribute: title
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 02 2006, 15:04 -07:00"
|
||||
args: "Jan 02 2006, 15:04"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
grabs:
|
||||
|
||||
@@ -108,7 +108,7 @@ search:
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace
|
||||
args: ["(\\w+)", " +$1"] # prepend + to each word
|
||||
args: ["(\\w+)", "+$1"] # prepend + to each word
|
||||
- name: re_replace # S01 to сезон 1
|
||||
args: ["(?i)S0*(\\d+)", "сезон $1"]
|
||||
- name: re_replace # S01E01 to сезон 1 серии 1
|
||||
|
||||
@@ -7,12 +7,10 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.cat/
|
||||
- https://extratorrent.nocensor.world/
|
||||
- https://extratorrent.unblockit.bio/
|
||||
- https://extratorrent.mrunblock.guru/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.kim/
|
||||
- https://extratorrent.unblockit.bz/
|
||||
- https://extratorrent.unblockit.tv/
|
||||
- https://extratorrent.unblockit.how/
|
||||
- https://extratorrent.unblockit.cam/
|
||||
@@ -24,6 +22,14 @@ legacylinks:
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.ist/
|
||||
- https://extratorrent.unblockit.bet/
|
||||
- https://extratorrent.unblockit.cat/
|
||||
- https://extratorrent.unblockit.nz/
|
||||
- https://extratorrent.nocensor.world/
|
||||
- https://extratorrent.unblockit.page/
|
||||
- https://extratorrent.unblockit.pet/
|
||||
- https://extratorrent.nocensor.lol/
|
||||
- https://extratorrent.unblockit.ink/
|
||||
- https://extratorrent.nocensor.art/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -70,6 +76,7 @@ caps:
|
||||
- {id: Comics, cat: Books/Comics, desc: Books Comics}
|
||||
- {id: Ebooks, cat: Books/EBook, desc: Books Ebook}
|
||||
- {id: Other, cat: Other/Misc, desc: Other}
|
||||
- {id: Other Applications, cat: PC, desc: Other Applications}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user