Compare commits

...

195 Commits

Author SHA1 Message Date
Bogdan
5ebe1de282 cardigann: fix search paths 2023-06-24 09:02:13 +03:00
Bogdan
b6398bfc1d Revert "assorted: fix search path categories (#14492)"
This reverts commit eaa6894896.
2023-06-24 09:02:13 +03:00
ilike2burnthing
c0a994e481 movieworld: add new cat 2023-06-24 04:19:45 +01:00
Garfield69
a588ac62ab bwtorrents: new cat 2023-06-24 07:05:12 +12:00
ilike2burnthing
6208fcd575 Revert: "electro-torrent: change to http" 2023-06-23 18:15:55 +01:00
Bogdan
80e7f56afb torrentleech: add raw search 2023-06-23 11:22:42 +03:00
Bogdan
87e703167f torrentsir: bump domain 2023-06-23 08:52:42 +03:00
ilike2burnthing
41a629fc48 electro-torrent: change to http 2023-06-22 22:51:50 +01:00
Garfield69
73b44bfabf cheggit: lint 2023-06-23 09:36:46 +12:00
Garfield69
e0424adce1 add cheggit a Private site. resolves #14495 2023-06-23 09:28:13 +12:00
Garfield69
9c3c5316cc assorted torrent*: bump domains 2023-06-23 06:16:56 +12:00
ilike2burnthing
44b8bf4194 infire: cat fix
I am clearly not awake yet...
2023-06-22 17:58:21 +01:00
ilike2burnthing
b5c151dd4d infire: fix c&p error
not even sure how, but alrighty...
2023-06-22 17:53:21 +01:00
ilike2burnthing
a2c2173c03 infire: update categories, again 2023-06-22 17:49:46 +01:00
ilike2burnthing
eaa6894896 assorted: fix search path categories (#14492) 2023-06-22 11:21:41 +12:00
Garfield69
8e62b48457 torrentmasters: switch to cookie+UA because ReCaptcha 2023-06-22 09:31:57 +12:00
Garfield69
556df05b12 infire: new cats 2023-06-22 09:31:24 +12:00
Garfield69
0b28597cdf rgfootball: new cats 2023-06-22 08:38:15 +12:00
ilike2burnthing
97a5204d25 freefarm: typo fix 2023-06-21 21:13:50 +01:00
ilike2burnthing
613d24a877 freefarm: add Chinese private tracker. resolves #14290 (#14491) 2023-06-21 21:00:25 +01:00
Garfield69
a45e0b18c0 add 3wmg a Chinese private site. resolves #14489 2023-06-22 07:18:58 +12:00
Garfield69
6acf7ccca8 dontorrent: new domain 2023-06-21 07:05:05 +12:00
Garfield69
8689fb2bd1 drugari: add MR 2023-06-20 15:55:07 +12:00
Garfield69
ddd37f09c0 add dajiao a Chinese private site. resolves #14484 2023-06-20 15:26:22 +12:00
Garfield69
3703216bad add shadowflow a Chinese private site. resolves #14483 2023-06-20 14:56:27 +12:00
Garfield69
6d55a50c9c add musebootlegs a semi-private site. resolves #14482 2023-06-20 13:51:09 +12:00
Garfield69
b0ccae909b panda: correct date selector. resolves #14474 2023-06-20 05:25:56 +12:00
Garfield69
c65bb0411e add azusa a Chinese private site. resolves #14478 2023-06-19 22:39:37 +12:00
Garfield69
c89a2742c1 add drugari a Croatian private site. resolves #14342 2023-06-19 21:36:38 +12:00
Garfield69
82bbf8f23a add panda a Chinese private site. resolves #14474 2023-06-19 14:25:03 +12:00
ilike2burnthing
7f3d19e37a dimeadozen: type=private. resolves #14475 (#14476) 2023-06-19 00:42:31 +01:00
Garfield69
39cd9ba9dd pwtorrents: new cat 2023-06-19 08:17:57 +12:00
Garfield69
8f0755e8fc nordichd: refresh cats 2023-06-19 08:17:45 +12:00
Garfield69
58f458d135 marinetracker: new cat 2023-06-19 07:39:49 +12:00
Garfield69
8ef13a0130 frozenlayer: CA expired 2023-06-19 07:16:16 +12:00
Bogdan
07f0ccf5a3 fix CS in TooManyRequestsException 2023-06-18 13:08:31 +03:00
Bogdan
99204599d9 core: fix parsing Retry-After header in TooManyRequestsException 2023-06-18 13:00:30 +03:00
Bogdan
cc44db15a4 assorted: fix response status checks 2023-06-18 13:00:30 +03:00
Garfield69
df02e2dcf1 Revert "kufei: new CA resolves #14451"
This reverts commit d1bbda3438.
2023-06-18 21:41:59 +12:00
Garfield69
d1bbda3438 kufei: new CA resolves #14451 2023-06-18 21:28:43 +12:00
Garfield69
8ea53cebc8 electro-torrent: switch to cookie + UA. resolves #13951 2023-06-18 19:01:06 +12:00
Bogdan
f1f8dd2f10 xwtorrents: update categories 2023-06-18 06:29:45 +03:00
Garfield69
6bd5068541 core: amend messages about indexers loaded 2023-06-18 07:51:33 +12:00
ilike2burnthing
99e7e2428f assorted: drop inaccessible mrunblock proxies (#14470) 2023-06-17 12:57:17 +01:00
ilike2burnthing
6acba8684a torrent-explosiv: category can be missing 2023-06-17 05:32:35 +01:00
ilike2burnthing
92ef4068ea coastalcrew: add new category 2023-06-17 05:23:08 +01:00
ilike2burnthing
bf2659f55d exttorrents: category can be missing 2023-06-17 05:16:30 +01:00
Garfield69
4dc99b2fd9 btsow: new domain 2023-06-17 06:27:04 +12:00
ilike2burnthing
12dc639822 movieworld: remove recommended results 2023-06-16 17:58:14 +01:00
ilike2burnthing
b3477fb70c kufei: cat typo fix 2023-06-16 16:22:41 +01:00
ilike2burnthing
4d2ac5b6a9 thedarkcommunity: removed, down for 30 days. resolves #13923 (#14465) 2023-06-16 04:51:44 +01:00
Bogdan
208b0bdb5b core: use debug logging for loaded indexers (#14464) 2023-06-15 23:57:12 +03:00
Bogdan
84ca9a06d8 cardigann: apply template text to switch cases (#14463)
* Revert "cardigann: parse result with template (#14462)"

This reverts commit 6aee6d732a.

* cardigann: apply template text to switch cases
2023-06-15 23:36:47 +03:00
Garfield69
aa16e7424c torrentqq: bump domain 2023-06-16 08:15:51 +12:00
Garfield69
92f582e910 bitsearch: drop mrunblock proxy 2023-06-16 08:15:40 +12:00
ilike2burnthing
e3880b9143 u2: fix custom dlvf & ulvf. resolves #14457 (#14461) 2023-06-16 06:44:12 +12:00
Trim21
6aee6d732a cardigann: parse result with template (#14462) 2023-06-16 06:35:39 +12:00
ilike2burnthing
da80bde7d8 u2: use correct freeleech search value. resolves #14458 2023-06-15 13:40:33 +01:00
Bogdan
5a388b59d0 GazelleTracker: throw exception on HTTP errors 2023-06-15 14:40:48 +03:00
Bogdan
d7404e9cd4 fixup! GazelleTracker: throw exception on empty response 2023-06-15 14:28:30 +03:00
Bogdan
373b15cb8e GazelleTracker: throw exception on empty response
Closes #14459
2023-06-15 14:24:59 +03:00
Garfield69
19de5f46b0 add kufei a privat eChinese site. resolves #14451 2023-06-15 20:50:10 +12:00
Garfield69
e74e7b3cf7 add movieworld a semi-private site. resolves #14454 2023-06-15 20:03:29 +12:00
Garfield69
a3c361fac1 world-of-tomorrow: cats refresh
the wott-filme still has some series loaded from earlier when 109 was not available
2023-06-15 08:21:01 +12:00
Garfield69
03776c5fe1 electro-torrent: new login path, plus site forcing https 2023-06-15 07:17:50 +12:00
Garfield69
43f1fabae0 dontorrent: new domain 2023-06-14 06:41:27 +12:00
Garfield69
3a0c6a75e1 torrentsir: bump domain 2023-06-14 06:40:45 +12:00
Garfield69
7a327230f1 happyfappy: new cats 2023-06-13 07:42:28 +12:00
Bogdan
7e8fdfa2b1 bitsearch: update title selector 2023-06-12 04:47:48 +03:00
Bogdan
35e1218861 common: bump Newtonsoft.Json to 13.0.3 2023-06-11 23:34:42 +03:00
Bogdan
af54a3f9d0 core: use project name as relative path in builds (#14447) 2023-06-11 23:24:19 +03:00
Bogdan
04cc9939a6 add ids to bug report issue template 2023-06-11 22:36:42 +03:00
Bogdan
5640a86838 cardigann: use CheckIfLoginIsNeeded in response type is json (#14444) 2023-06-11 09:54:01 +03:00
ilike2burnthing
bcc00f91bb lostfilm: remove down *.run domain. resolves #14441 2023-06-10 23:18:04 +01:00
Bogdan
6905cdc103 arabafenice: add login test selector 2023-06-10 23:54:05 +03:00
Garfield69
f1415f32c6 mejortorrent: new domain 2023-06-10 05:53:15 +12:00
Bogdan
4e55187bdb cardigann: catch JsonReaderException when parsing JSON
Fixes #14439
2023-06-09 01:47:22 +03:00
Garfield69
967ff6db99 torrentqq: bump domain 2023-06-09 05:46:57 +12:00
Bogdan
23cff411ed logging: cleanse messages in log files (#14433)
Co-authored-by: ilike2burnthing <59480337+ilike2burnthing@users.noreply.github.com>
2023-06-08 18:09:16 +03:00
Garfield69
f42b76fb36 add fappaizuri a private site for hentai/jav resolves #14438
new site, expect changes.
2023-06-08 21:40:30 +12:00
Garfield69
28c5c427e8 mejortorrent: fix cat detection. resolves #14435 2023-06-08 17:30:14 +12:00
Garfield69
68205b13ca torrentland: new layout. resolves #14437 2023-06-08 09:22:06 +12:00
Bogdan
dcec23434f hdolimpo-api: add auth header 2023-06-07 20:59:07 +03:00
Garfield69
09dc556140 assorted: new unblockit domain 2023-06-07 22:04:49 +12:00
Garfield69
0d69d7ba1b add therebels a Brazilian private site. resolves #14434 2023-06-07 21:53:13 +12:00
Bogdan
cc8a980a70 abtorrents: fix publish date 2023-06-07 04:47:27 +03:00
Bogdan
e9f7e4d13f unit3d: move api key auth in headers (#14429) 2023-06-07 02:48:56 +03:00
Bogdan
c6180f6860 lesaloon: update base url (#14431) 2023-06-06 21:56:46 +03:00
Garfield69
8c5fb64aec assorted unit3d: replacement API docs
https://github.com/HDInnovations/UNIT3D-Community-Edition/discussions/2816
2023-06-07 06:01:26 +12:00
Garfield69
a293346ce8 assorted unit3d: update api doc links 2023-06-06 20:43:36 +12:00
Garfield69
c0a5e24186 Update ptchina.yml 2023-06-06 16:05:10 +12:00
Garfield69
0e043a5792 assorted nexusphp: update engine tag 2023-06-06 16:01:49 +12:00
Bogdan
98f7e720e7 cardigann: allow empty inputs for login.method get (#14430) 2023-06-06 05:56:14 +03:00
Bogdan
8154acb47b cardigann: allow empty inputs for login.method get 2023-06-06 01:02:45 +03:00
Garfield69
df94aaf930 cinecalidad: new domain 2023-06-06 09:23:56 +12:00
Bogdan
d8dc0d221a torrentleech: use login form (#14428) resolves #14410 2023-06-06 09:11:58 +12:00
Garfield69
3ba502a378 YTS: correct sort
the default is date_added so using sort=date_added instead of sort_by=date_added did not make any difference but at least now we are in line with the api docs ;-)
2023-06-06 07:33:07 +12:00
Bogdan
b9655f1302 digitalcore: add search P2P releases only option 2023-06-05 19:46:34 +03:00
Garfield69
422eff86f4 hdtorrentsit: removed. resolves #14411 2023-06-05 17:21:55 +12:00
Garfield69
e66d88bbcf hd-unit3d: update engine tag 2023-06-05 15:47:08 +12:00
Garfield69
669ddae0b0 theoldschool: drop page 2023-06-05 15:46:44 +12:00
Garfield69
0b0d08dd7c bwtorrents: new cat 2023-06-05 07:39:54 +12:00
Garfield69
bf5b24a5a7 ccfbits: removed. resolves #14306 2023-06-04 20:08:56 +12:00
Garfield69
228089b35b torrenteros: new cat 2023-06-04 15:32:55 +12:00
Bogdan
f334cc89d6 indexers: improve test indexer message on failure (#14421) 2023-06-04 06:11:35 +03:00
Bogdan
3a9360add9 hdtorrents: add error message selector 2023-06-04 02:53:15 +03:00
Bogdan
207dd1d51a torrentdownloads: add raw search support
Fixes #14420
2023-06-04 02:00:33 +03:00
Garfield69
47e78fc70c torrenteros: amend MR MST based on OP #11925 2023-06-03 20:04:09 +12:00
Garfield69
36d3f67fdc add torrenteros a Spanish private site. resolves #11925
Early stages, still setting up by the looks of it, has just some movies, so cannot tell what the series filename season structure will be like.
No Rules or FAQ ATM so defaulting to MR 1.0
Expect changes.
2023-06-03 19:48:01 +12:00
Bogdan
41a5d3165e torrentleech: add login page form as error selector (#14414) 2023-06-03 02:44:59 +03:00
Bogdan
2b9d950f39 speedapptracker: add freeleech only (#14415) 2023-06-02 23:42:00 +03:00
Garfield69
7be7d6770f cinefilhd: new preferred domain 2023-06-02 19:09:02 +12:00
Garfield69
ff36eecfae xxxclub: new layout 2023-06-02 07:47:03 +12:00
Garfield69
0438ffdfc0 torrentqq: bump domain 2023-06-02 07:46:51 +12:00
Bogdan
b614a8dc42 torrentz2eu: fix dateparse and check for TV Show in title 2023-06-01 19:42:21 +03:00
ilike2burnthing
1eae091ab8 core: update magnet trackers 2023-06-01 06:01:15 +01:00
Garfield69
17d08d3f8c cinecalidad: new domain 2023-06-01 11:44:16 +12:00
Garfield69
d70bdbb26d dontorrent: new domain 2023-06-01 11:31:19 +12:00
ilike2burnthing
8d0edcdfb8 rarbg: removed, dead. resolves #14406 (#14407) 2023-05-31 15:07:17 +01:00
Garfield69
34193e11df thegeeks: new cat 2023-05-31 06:46:27 +12:00
Garfield69
57b8cbd407 bitbazis: new cat 2023-05-31 06:32:54 +12:00
Garfield69
c2dbf6a80d cinecalidad: new domain 2023-05-30 06:50:44 +12:00
ilike2burnthing
ff5586c4fa lostfilm: restore domains. #14398 2023-05-29 16:13:36 +01:00
Bogdan
48ff6821e6 cardigann: use MissingAttributeEqualsNoResults for Search.Rows.Attribute
Fixes #14400
2023-05-29 17:33:02 +03:00
Bogdan
e282ff76a5 core: show app version in exceptions 2023-05-29 16:56:45 +03:00
Garfield69
8affee4b2d lostfilm: domain fixes. resolves #14398 2023-05-29 18:41:17 +12:00
Garfield69
dc352744c7 assorted: follow up ef5276da64 2023-05-29 16:01:59 +12:00
Garfield69
ef5276da64 assorted: simplify future path category maintenance
in the event new cats get added or removed  there is now fewer places we have to remember to cross check
2023-05-29 15:32:15 +12:00
Garfield69
32360070ad metalguru: add new cats 2023-05-29 13:12:52 +12:00
ilike2burnthing
633d1631c2 vstorrent: add public VST site. resolves #14385 (#14397) 2023-05-28 23:57:15 +01:00
ilike2burnthing
d4fc8ab071 vsttorrents: change cat to PC, add date 2023-05-28 23:53:23 +01:00
ilike2burnthing
08713ae7b8 vsthouse: remove unused mode 2023-05-28 23:52:26 +01:00
ilike2burnthing
836f5372b3 vsthouse: change cat to PC 2023-05-28 23:51:15 +01:00
Bogdan
7e7ace05be cardigann: respect the categories from search paths (#14395) 2023-05-29 00:53:42 +03:00
ilike2burnthing
12da8b6131 bitbazis: update for 3x search 2023-05-28 22:20:35 +01:00
Bogdan
abc2f43f9c mteamtp: increase request delay to 4s 2023-05-28 20:19:13 +03:00
Bogdan
1a49430b45 rutracker: use supported 200 categories per search request 2023-05-28 19:52:14 +03:00
Aleksei
147549cbf8 rutracker: update cats (#14394)
Co-authored-by: ilike2burnthing <59480337+ilike2burnthing@users.noreply.github.com>
2023-05-28 17:41:35 +01:00
ilike2burnthing
fd884a8597 coastalcrew: update categories 2023-05-28 03:03:16 +01:00
Bogdan
fff9f0730b anidex: fix search will all categories selected 2023-05-28 02:21:43 +03:00
ilike2burnthing
951e510c1a hdgalaktik: translate timeago dates 2023-05-27 22:45:26 +01:00
Bogdan
bfa2757c98 ui: overwrite modals element (#14381) 2023-05-27 19:41:35 +03:00
Bogdan
623f48d83c add pull request template (#14382) 2023-05-27 19:26:48 +03:00
ilike2burnthing
efc1602936 trezzor: update, add separate cookie indexer. resolves #14376 (#14379) 2023-05-27 03:47:17 +01:00
Garfield69
906b8e1ff8 index.html: fix for= not using id. #14375
not a fix for the problem, but eliminating some errors as reported by browser  development tools
2023-05-27 12:04:31 +12:00
ilike2burnthing
bf4228b0dc assorted: update trusted certs (#14378) 2023-05-26 22:40:17 +01:00
Garfield69
0a00e4edcd turktorrent: add new cat 2023-05-27 08:37:24 +12:00
Garfield69
abbf37060d generationfree: update freeleech search and add info about web site participation 2023-05-27 08:05:44 +12:00
Garfield69
f6108ee852 torrentsir: bump domain 2023-05-27 07:12:26 +12:00
Garfield69
a6bde9f001 torrentqq: bump domain 2023-05-27 07:12:07 +12:00
Bogdan
2594fdba13 bakabt: add freeleech only option (#14377) 2023-05-26 20:44:36 +03:00
Garfield69
97873506e3 assorted unit3d v5 and v6: remove redundant meta.total and page 1
cardigann can handle data[] so count meta.total is not required
page 1 is the default page so we don't need this.

this prepares Jackett for these site moving to unit3d v7 without the need for us to wait for it to happen.
2023-05-26 20:49:26 +12:00
ilike2burnthing
4944aef039 ptfiles: revert to credentials login. #14376 2023-05-26 05:13:24 +01:00
Bogdan
a63fd138a8 aither-api: 7.0.0 cursor paginate update
even if the tag still says 6.5.0
2023-05-25 22:38:33 +03:00
Bogdan
e4af5f1db2 schema: format array list 2023-05-25 20:54:47 +03:00
Garfield69
25e45daa20 torrentproject2: add day date parse. 2023-05-25 21:08:06 +12:00
Garfield69
468ea2472b Update README.md 2023-05-25 20:14:44 +12:00
Garfield69
49f57a9833 assorted: set language to nearest valid set 2023-05-25 19:13:53 +12:00
Garfield69
63c7bf6aed schema: add language validation. resolves #14374 2023-05-25 19:13:18 +12:00
bakerboy448
f5b787562f chilebt: fix invalid language code (#14373) 2023-05-25 16:21:32 +12:00
ilike2burnthing
182de9c60a Revert "nebulance: CA expired." 2023-05-25 01:24:52 +01:00
Garfield69
497e02e80c Revert scenehd: tidy 2023-05-25 12:03:44 +12:00
Garfield69
fba5201ccd Revert "lostfilm: tidy"
This reverts commit 5b69bdfef4.
2023-05-25 12:01:20 +12:00
Garfield69
8c2baf3bd2 lint 2023-05-25 09:38:25 +12:00
Garfield69
5b69bdfef4 lostfilm: tidy 2023-05-25 09:30:47 +12:00
Garfield69
844855e3ba scenehd: tidy 2023-05-25 09:27:24 +12:00
Garfield69
ddb5e95785 nebulance: CA expired. 2023-05-25 09:26:30 +12:00
Garfield69
ef714804ee dontorrent: new domain 2023-05-25 08:42:33 +12:00
Garfield69
3aab5de496 tvchaosuk: season packs. resolves #14369 2023-05-25 07:07:24 +12:00
ilike2burnthing
fbe225bbf6 Update locadora.yml 2023-05-24 18:23:30 +01:00
ilike2burnthing
897156176a utopia: add Ukrainian private tracker. resolves #14368 (#14372) 2023-05-24 18:19:14 +01:00
ilike2burnthing
2db0ca6d52 acervos-api: removed, down for 30 days. resolves #13324 (#14371)
Also updated `invited needed` statuses in readme.
2023-05-24 14:44:01 +01:00
ilike2burnthing
63faed4687 lightning-tor: removed, down for 30 days. resolves #14160 (#14370) 2023-05-24 14:26:38 +01:00
Garfield69
0806e4182b sharkpt: removed. resolves #13904 2023-05-24 15:46:08 +12:00
Bogdan
91307ff044 animetorrents: replace non-word chars with wildcard in search term 2023-05-24 01:08:22 +03:00
Garfield69
0f5e919f33 sktorrent: new cat 2023-05-24 08:59:07 +12:00
Garfield69
051cbabbcf btsow: new domain 2023-05-24 08:58:51 +12:00
Garfield69
bd3ec7533d anilibra: update api paths 2023-05-23 07:40:31 +12:00
Garfield69
78fecaced2 krazyzone: cat can be missing, provide default. 2023-05-23 07:15:56 +12:00
Bogdan
4142a9d037 rutracker: improve error message for failed logins 2023-05-22 14:14:30 +03:00
Garfield69
1d89c135a3 lint 2023-05-22 17:35:02 +12:00
Garfield69
16c2d6f9ca add lesbians4u a private site. resolves #14364 2023-05-22 17:15:44 +12:00
Garfield69
5c42955ba8 torrentwhiz: bump domain 2023-05-22 15:19:20 +12:00
Garfield69
64ee0c912d torrentview: bump domain 2023-05-22 15:19:09 +12:00
Bogdan
a48aa7a6e1 Bump version to 0.21 (#14365) 2023-05-22 01:19:04 +01:00
Bogdan
c56f32695a arabtorrents: update layout 2023-05-22 02:47:22 +03:00
Garfield69
c53933f307 torrentproject2: add new cat. resolves #14361 2023-05-22 09:38:35 +12:00
Garfield69
baa8439781 torrent9: fix wrong domain. resolves #14360 2023-05-22 09:24:27 +12:00
Garfield69
c2aec85893 imetorrentsclone: fix anime cat detection. 2023-05-22 09:14:59 +12:00
Garfield69
e146ad227c limetorrents: fix anime cat detection. resolves #14359 2023-05-22 09:14:30 +12:00
Garfield69
675b259e0a frozenlayer: update category selector. resolves #14358 2023-05-22 08:16:26 +12:00
Bogdan
04e24bacb3 torznab: add support for languages and subtitles 2023-05-21 22:07:10 +03:00
Garfield69
9638823cf1 scenetime: update cats. resolves #14357 2023-05-22 06:53:05 +12:00
ilike2burnthing
05dfda2736 ebookbay: missing category. resolves #14356 2023-05-21 19:13:55 +01:00
Bogdan
c6f4a55444 common: simplify normalizing IMDb Id and add tests 2023-05-21 12:09:32 +03:00
203 changed files with 4275 additions and 1892 deletions

View File

@@ -2,6 +2,7 @@ name: Bug report
description: Create a report of your issue
body:
- type: checkboxes
id: troubleshooting
attributes:
label: Have you checked our Troubleshooting page for your issue?
description: Please read the <a href="https://github.com/Jackett/Jackett/wiki/Troubleshooting">Troubleshooting</a> page for steps to resolve common issues.
@@ -9,6 +10,7 @@ body:
- label: I have checked the Troubleshooting page
required: true
- type: checkboxes
id: already-an-issue
attributes:
label: Is there already an issue for your problem?
description: Please make sure you are not creating an already submitted <a href="https://github.com/Jackett/Jackett/issues">Issue</a>. Check closed issues as well, because your issue may have already been fixed.
@@ -16,6 +18,7 @@ body:
- label: I have checked older issues, open and closed
required: true
- type: checkboxes
id: contributing-guidelines
attributes:
label: Have you read our Contributing Guidelines?
description: Please read our <a href="https://github.com/Jackett/Jackett/blob/master/CONTRIBUTING.md">Contributing Guidelines</a> before submitting your issue to ensure a prompt response to your bug.
@@ -23,6 +26,7 @@ body:
- label: I have read the Contributing Guidelines
required: true
- type: textarea
id: environment
attributes:
label: Environment
description: Please provide the details of the system Jackett is running on. The best way to do this is to restart Jackett, access the dashboard, view the log, and copy/paste replacing the example below with the last 10 Info lines at the bottom of the log.
@@ -40,12 +44,14 @@ body:
validations:
required: true
- type: textarea
id: description
attributes:
label: Description
description: List steps to reproduce the error and details on what happens and what you expected to happen.
validations:
required: true
- type: textarea
id: error-logs
attributes:
label: Logged Error Messages
description: |
@@ -55,6 +61,7 @@ body:
validations:
required: true
- type: textarea
id: screenshots
attributes:
label: Screenshots
description: Place any screenshots of the issue here if needed

8
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,8 @@
#### Description
A few sentences describing the overall goals of the pull request's commits.
#### Screenshot (if UI related)
#### Issues Fixed or Closed by this PR
* Fixes #XXXX

View File

@@ -14,7 +14,7 @@ Please see our [troubleshooting and contributing guidelines](CONTRIBUTING.md) be
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar3](https://github.com/mylar3/mylar3), [Lidarr](https://github.com/lidarr/lidarr), [DuckieTV](https://github.com/SchizoDuckie/DuckieTV), [qBittorrent](https://www.qbittorrent.org/), [Nefarious](https://github.com/lardbit/nefarious) etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
Developer note: The software implements the [Torznab](https://web.archive.org/web/20220517013745/https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
Developer note: The software implements the [Torznab](https://torznab.github.io/spec-1.3-draft/index.html) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](https://github.com/webtor-io/go-jackett)
@@ -106,7 +106,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* PornoTorrent
* ProPorn
* Rapidzona
* RARBG
* RinTorNeT
* RuTor
* RuTracker.RU
@@ -137,14 +136,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Torrents.csv
* TorrentSir (토렌트썰)
* TorrentView (토렌트뷰)
* TorrentWhiz ( 토렌트위즈)
* TorrentWhiz (토렌트위즈)
* Torrentz2eu
* Torrentz2nz
* TrahT
* truPornolabs
* UnionDHT
* VSTHouse
* VST Torrents
* VST Torrentz
* VSTorrent
* xxxAdultTorrent
* XXXClub
* xxxtor
@@ -168,7 +168,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Deildu
* Demonoid
* Devil-Torrents
* DimeADozen (EzTorrent)
* DXP (Deaf Experts)
* Electro-Torrent
* EliteTorrent-pl
@@ -188,7 +187,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Il CorSaRo Blu
* Kinorun
* Kinozal
* Lightning-Tor
* LostFilm.tv
* Magnetico (Local DHT) [[site](https://github.com/boramalper/magnetico)]
* Marine Tracker
@@ -196,6 +194,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Mazepa
* Metal Tracker
* Moviesite
* MovieWorld (Flicker)
* MuseBootlegs (MB)
* MVGroup Forum
* MVGroup Main
* NetHD (VietTorrent)
@@ -237,14 +237,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* 1ptbar
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
* 2xFree
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
* 3ChangTrai (3CT)
* 3D Torrents (3DT)
* 3Wmg
* 4thD (4th Dimension)
* 52PT
* 720pier
* Abnormal
* ABtorrents (ABT + RNS)
* Acervos [![(invite needed)][inviteneeded]](#)
* Acid Lounge (A-L)
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
* Aftershock
@@ -267,7 +267,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* AudioNews (AN)
* Aussierul.es [![(invite needed)][inviteneeded]](#)
* AvistaZ (AsiaTorrents)
* Back-ups [![(invite needed)][inviteneeded]](#)
* Azusa [![(invite needed)][inviteneeded]](#)
* Back-ups
* BakaBT
* BeiTai
* Best-Core
@@ -302,11 +303,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* CarPT
* CartoonChaos (CC)
* Cathode-Ray.Tube (CRT)
* CCFBits [![(invite needed)][inviteneeded]](#)
* Central Torrent
* CeskeForum
* CGPeers [![(invite needed)][inviteneeded]](#)
* CHDBits [![(invite needed)][inviteneeded]](#)
* cheggit
* ChileBT
* CiNEFiLHD
* Cinemageddon [![(invite needed)][inviteneeded]](#)
@@ -319,6 +320,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* CrazyHD
* CrazySpirits
* CrnaBerza
* Dajiao (打胶) [![(invite needed)][inviteneeded]](#)
* DANISH BYTES
* Dark-Shadow
* DataScene (DS)
@@ -327,10 +329,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Diablo Torrent [![(invite needed)][inviteneeded]](#)
* DICMusic
* DigitalCore
* DimeADozen (EzTorrent)
* DiscFan
* DivTeam
* DocsPedia
* Dream Tracker
* Drugari
* Ebooks-Shares
* Empornium (EMP) [![(invite needed)][inviteneeded]](#)
* eShareNet
@@ -342,18 +346,20 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* FANO.IN [![(invite needed)][inviteneeded]](#)
* Fantastic Heaven
* Fantastiko
* Fappaizuri
* Femdomcult
* FileList (FL)
* FinElite (FE)
* FinVip
* Flux-Zone
* Free Farm (自由农场)
* FunFile (FF)
* FunkyTorrents (FT)
* Fuzer (FZ)
* GainBound [![(invite needed)][inviteneeded]](#)
* Gay-Torrents.org
* GAYtorrent.ru
* GazelleGames (GGn) [![(invite needed)][inviteneeded]](#)
* GazelleGames (GGn)
* Generation-Free
* GigaTorrents
* GimmePeers (formerly ILT)
@@ -385,7 +391,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* HDRoute [![(invite needed)][inviteneeded]](#)
* HDSky [![(invite needed)][inviteneeded]](#)
* HDTime
* HDTorrents.it [![(invite needed)][inviteneeded]](#)
* HDTurk
* HDU
* HDVIDEO
@@ -412,6 +417,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Keep Friends [![(invite needed)][inviteneeded]](#)
* Korsar
* KrazyZone
* Kufei (库非)
* Kufirc
* LastFiles
* Le Saloon
@@ -421,13 +427,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* leech24
* LemonHD
* Les-Cinephiles
* Lesbians4u
* Libble
* LibraNet (LN)
* LinkoManija [![(invite needed)][inviteneeded]](#)
* Locadora
* LosslessClub [![(invite needed)][inviteneeded]](#)
* LST
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
* M-Team TP (MTTP)
* MaDs Revolution
* magic-heaven
* Magico (Trellas) [![(invite needed)][inviteneeded]](#)
@@ -460,6 +467,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* OshenPT
* OurBits (HDPter)
* P2PBG
* Panda
* Partis
* Party-Tracker
* PassThePopcorn (PTP)
@@ -502,15 +510,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* RevolutionTT
* Romanian Metal Torrents (RMT) [![(invite needed)][inviteneeded]](#)
* RPTorrents
* SceneHD [![(invite needed)][inviteneeded]](#)
* SceneHD [![(invite needed)][inviteneeded]](#)
* SceneRush
* SceneTime
* SDBits [![(invite needed)][inviteneeded]](#)
* Secret Cinema
* SeedFile
* Shadowflow (影) [![(invite needed)][inviteneeded]](#)
* Shareisland
* SharkPT
* Shazbat [![(invite needed)][inviteneeded]](#)
* Shazbat
* SiamBIT
* SkipTheCommercials
* SkipTheTrailers
@@ -548,9 +556,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* The Vault [![(invite needed)][inviteneeded]](#)
* The-Crazy-Ones
* The-New-Fun
* TheDarkCommunity (TDC)
* TheEmpire (TE)
* TheLeachZone (TLZ)
* TheRebels
* TheScenePlace (TSP)
* Thor's Land
* TJUPT
@@ -567,6 +575,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* TorrentBytes (TBy)
* TorrentCCF (TCCF)
* TorrentDay (TD)
* Torrenteros (TTR)
* TorrentHeaven [![(invite needed)][inviteneeded]](#)
* TorrentHR [![(invite needed)][inviteneeded]](#)
* Torrenting (TT)
@@ -577,8 +586,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* TorrentSeeds (TS)
* TotallyKids (TK)
* ToTheGlory (TTG) [![(invite needed)][inviteneeded]](#)
* TranceTraffic [![(invite needed)][inviteneeded]](#)
* Trezzor [![(invite needed)][inviteneeded]](#)
* TranceTraffic
* TreZzoR [![(invite needed)][inviteneeded]](#)
* TurkSeed
* TurkTorrent (TT)
* TV Chaos UK (TVCUK)
@@ -592,6 +601,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* UnleashTheCartoons
* UnlimitZ
* Uploads
* UTOPIA
* White Angel
* World-In-HD [![(invite needed)][inviteneeded]](#)
* World-of-Tomorrow
@@ -609,7 +619,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* ZonaQ
</details>
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and may be missing features or be broken. If you have an invite for them please send it to garfieldsixtynine -at- gmail.com to get them fixed/improved.
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and may be missing features or be broken. If you have an invite for them please send it to garfieldsixtynine -at- gmail.com or jacketttest -at- gmail.com to get them fixed/improved.
### Aggregate indexers

View File

@@ -2,7 +2,7 @@
name: $(majorVersion).$(minorVersion).$(patchVersion)
variables:
majorVersion: 0
minorVersion: 20
minorVersion: 21
patchVersion: $[counter(variables['minorVersion'], 1)] # this will reset when we bump minor
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
buildConfiguration: Release

13
src/Directory.Build.props Normal file
View File

@@ -0,0 +1,13 @@
<Project>
<!-- Common to all Jackett Projects -->
<PropertyGroup>
<!-- Specifies whether it's one of our own libraries -->
<JackettProject>false</JackettProject>
<JackettProject Condition="$(MSBuildProjectName.StartsWith('Jackett'))">true</JackettProject>
</PropertyGroup>
<!-- Set the Product and Version info for our own projects -->
<PropertyGroup Condition="'$(JackettProject)'=='true'">
<PathMap>$(MSBuildProjectDirectory)=./$(MSBuildProjectName)/</PathMap>
</PropertyGroup>
</Project>

View File

@@ -461,7 +461,7 @@ function displayUnconfiguredIndexersList() {
$('#indexers div.dataTables_filter input').focusWithoutScrolling();
});
$("#modals").append(UnconfiguredIndexersDialog);
$("#modals").html(UnconfiguredIndexersDialog);
$('#add-selected-indexers').click(function () {
var selectedIndexers = $('#unconfigured-indexer-datatable').DataTable().$('input[type="checkbox"]');
@@ -799,7 +799,7 @@ function newConfigModal(title, config, caps, link, alternativesitelinks, descrip
link: link,
description: description
}));
$("#modals").append(configForm);
$("#modals").html(configForm);
populateConfigItems(configForm, config);
if (alternativesitelinks.length >= 1) {
@@ -1043,14 +1043,13 @@ function showSearch(selectedFilter, selectedIndexer, query, category) {
var selectedIndexers = [];
if (selectedIndexer)
selectedIndexers = selectedIndexer.split(",");
$('#select-indexer-modal').remove();
var releaseTemplate = Handlebars.compile($("#jackett-search").html());
var releaseDialog = $(releaseTemplate({
filters: availableFilters,
active: selectedFilter
}));
$("#modals").append(releaseDialog);
$("#modals").html(releaseDialog);
releaseDialog.on('shown.bs.modal', function () {
releaseDialog.find('#searchquery').focusWithoutScrolling();
@@ -1581,7 +1580,7 @@ function bindUIButtons() {
});
}
});
$("#modals").append(releaseDialog);
$("#modals").html(releaseDialog);
releaseDialog.modal("show");
}).fail(function () {
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");
@@ -1600,7 +1599,7 @@ function bindUIButtons() {
logs: data
};
var releaseDialog = $(releaseTemplate(item));
$("#modals").append(releaseDialog);
$("#modals").html(releaseDialog);
releaseDialog.modal("show");
}).fail(function () {
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");

View File

@@ -529,10 +529,10 @@
</div>
<div class="modal-body">
<p>You can search all configured indexers from this screen.</p>
<label for="text">Query</label>
<label for="searchquery">Query</label>
<input class="form-control" type="text" name="query" id="searchquery" />
{{#if filters}}
<label for="filter">Filter</label>
<label for="searchFilter">Filter</label>
<select name="filter" id="searchFilter">
<option value="all">all</option>
{{#each filters}}
@@ -540,9 +540,9 @@
{{/each}}
</select>
{{/if}}
<label for="tracker">Tracker</label>
<label for="searchTracker">Tracker</label>
<select name="tracker" id="searchTracker" multiple="multiple"></select>
<label for="category">Category</label>
<label for="searchCategory">Category</label>
<select name="category" id="searchCategory" multiple="multiple"></select>
<button id="jackett-search-perform" class="btn btn-success btn-sm"><span class="fa fa-search"></span></button>
<div id="searchResults"></div>
@@ -756,6 +756,6 @@
</script>
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
<script type="text/javascript" src="../custom.js?changed=2023041901"></script>
<script type="text/javascript" src="../custom.js?changed=2023052701"></script>
</body>
</html>

View File

@@ -13,12 +13,11 @@ links:
- https://x1337x.ws/
- https://x1337x.eu/
- https://x1337x.se/
- https://1337x.unblockit.asia/
- https://1337x.unblockit.mov/
- https://1337x.unblockninja.com/
legacylinks:
- https://1337x.is/
- https://1337x.nocensor.work/
- https://1337x.unblockit.cam/
- https://1337x.nocensor.biz/
- https://1337x.gd/
- https://1337x.unblockit.day/
@@ -41,6 +40,7 @@ legacylinks:
- https://1337x.mrunblock.guru/
- https://1337x.mrunblock.life/ # cloudflare 403
- https://1337x.unblockit.click/
- https://1337x.unblockit.asia/
caps:
categorymappings:

View File

@@ -189,4 +189,4 @@ search:
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.2 2023-05-08
# NexusPHP v1.8.3 2023-05-14

View File

@@ -30,13 +30,13 @@ caps:
- {id: 423, cat: XXX, desc: "IV(写真影片)", default: true}
- {id: 424, cat: XXX, desc: "IV(写真图集)", default: true}
# special
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: true}
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: true}
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: true}
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: true}
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: true}
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: true}
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: true}
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: false}
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: false}
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: false}
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: false}
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: false}
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: false}
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: false}
modes:
search: [q]
@@ -110,7 +110,7 @@ login:
search:
paths:
- path: torrents.php
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 413, 420, 421, 422, 423, 424]
categories: ["!", 526, 527, 528, 529, 530, 531, 532]
- path: special.php
categories: [526, 527, 528, 529, 530, 531, 532]
inputs:

View File

@@ -0,0 +1,192 @@
---
id: 3wmg
name: 3Wmg
description: "3Wmg is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
requestDelay: 2
links:
- https://www.3wmg.com/
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, desc: "Music/音乐", default: true}
- {id: 407, cat: Other/Misc, desc: "Leanrning学习", default: true}
- {id: 409, cat: Books, desc: "Ebook电子书", default: true}
- {id: 410, cat: Other, desc: "Misc/其他", default: true}
# special
- {id: 411, cat: XXX, desc: "Uncensored无码", default: false}
- {id: 412, cat: XXX, desc: "Censored有码", default: false}
- {id: 413, cat: XXX, desc: "Lgbt同志", default: false}
- {id: 414, cat: XXX, desc: "III三级、写真", default: false}
- {id: 415, cat: XXX, desc: "Animations动漫", default: false}
- {id: 416, cat: XXX, desc: "Other其他", default: false}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, doubanid]
movie-search: [q, imdbid, doubanid]
music-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: 2facode
type: text
label: 2FA code
- name: info_2fa
type: info
label: "About 2FA code"
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the ICC2022 Web Site. Otherwise just leave it empty."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 4
options:
4: created
7: seeders
5: size
1: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
inputs:
secret: ""
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step_code: "{{ .Config.2facode }}"
logout: ""
securelogin: ""
ssl: yes
trackerssl: yes
error:
- selector: td.embedded:has(h2:contains("失敗"))
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
categories: ["!", 411, 412, 413, 414, 415, 416]
- path: special.php
categories: [411, 412, 413, 414, 415, 416]
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
# 0 AND, 1 OR, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
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:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
date_elapsed:
# time type: time elapsed (default)
selector: td.rowfollow:nth-child(4) > span[title]
attribute: title
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
minimumratio:
text: 1.0
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.6.0-beta12 2020-06-23

View File

@@ -139,20 +139,22 @@ search:
files:
selector: td:nth-last-child(9)
date_day:
# Yesterday<br/>6:00 AM
selector: td:nth-last-child(7):contains("day")
# auto adjusted by site account profile
# Yesterday, 6:00 AM
selector: td:nth-last-child(7) > span[title*="day"]
attribute: title
optional: true
filters:
- 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
# Aug 6 2021, 7:25 PM
selector: td:nth-last-child(7) > span[title]:not([title*="day"])
attribute: title
optional: true
filters:
- name: dateparse
args: "MMM d yyyy h:mm tt"
args: "MMM d yyyy, h:mm tt"
date:
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
size:

View File

@@ -60,8 +60,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -69,15 +67,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -89,7 +89,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -98,8 +97,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -31,7 +31,7 @@ settings:
search:
paths:
# https://github.com/anilibria/docs/blob/master/api_v3.md
- path: "https://api.anilibria.tv/v3/{{ if .Keywords }}searchTitles{{ else }}getUpdates{{ end }}"
- path: "https://api.anilibria.tv/v3/title/{{ if .Keywords }}search{{ else }}updates{{ end }}"
response:
type: json

View File

@@ -62,8 +62,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -71,15 +69,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -91,7 +91,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -100,8 +99,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -65,8 +65,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -74,15 +72,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -94,13 +94,10 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
categorydesc:

View File

@@ -6,8 +6,6 @@ language: en-US
type: public
encoding: UTF-8
requestDelay: 2
certificates:
- 7b36f0dc75d3340727b6f74bbdbde46ec59b7037 # expired 12 Feb 2023
links:
- https://asnet.pw/

View File

@@ -124,6 +124,7 @@ login:
args: ["');", ""]
test:
path: index.php
selector: a[href="logout.php"]
download:
before:

View File

@@ -2,7 +2,7 @@
id: arabp2p
name: ArabP2P
description: "ArabP2P is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
language: ar-AR
language: ar-AE
type: private
encoding: UTF-8
links:

View File

@@ -2,7 +2,7 @@
id: arabtorrents
name: ArabTorrents
description: "ArabTorrents is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
language: ar-AR
language: ar-AE
type: private
encoding: windows-1256
requestDelay: 2
@@ -145,7 +145,7 @@ download:
path: takethanks.php
method: post
inputs:
torrentid: "{{ .DownloadUri.Query.id }}"
torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*download-torrent-(\\d+).*\" \"$1\"}}"
search:
paths:
@@ -169,22 +169,22 @@ search:
args: ["^(.+)$", "*$1*"]
rows:
selector: table#sortabletable > tbody > tr:has(div > a[href*="details.php?id="])
selector: table#sortabletable > tbody > tr:has(span > a[href*="details.php?id="])
fields:
category:
selector: td a[href*="/browse.php?category="]
selector: td a[href*="/torrent-category-"]
attribute: href
filters:
- name: querystring
args: category
- name: regexp
args: "torrent-category-(\\d+)\/"
title:
selector: td a[href*="/details.php?id="]
selector: td div.tooltip-target
details:
selector: td a[href*="/details.php?id="]
selector: span a[href*="/details.php?id="]
attribute: href
download:
selector: a[href*="/download.php?id="]
selector: a[href*="/download-torrent-"]
attribute: href
date:
selector: td:nth-child(2) > div:nth-child(3)

View File

@@ -0,0 +1,173 @@
---
id: azusa
name: Azusa
description: "Azusa is a CHINESE Torrent Tracker focusing on Comics"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://azusa.wiki/
caps:
categorymappings:
- {id: 404, cat: PC/Games, desc: "Game"}
- {id: 402, cat: Books/Comics, desc: "Comic"}
- {id: 403, cat: Books/EBook, desc: "Light Novel"}
- {id: 407, cat: Other, desc: "CG"}
- {id: 409, cat: Audio, desc: "Music"}
modes:
search: [q]
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 Uploads 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: ""
error:
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: 0
# 0 AND, 1 OR, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
fields:
category:
selector: a[href^="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title_default:
selector: a[href^="details.php?id="]
title:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
date_elapsed:
# time type: time elapsed (default)
selector: td.rowfollow:nth-child(4) > span[title]
attribute: title
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.20 2022-08-05

View File

@@ -23,10 +23,16 @@ caps:
- {id: 95, cat: Movies/HD, desc: "Film/FHD/Eng", default: true}
- {id: 92, cat: Movies/UHD, desc: "Film/UHD/Hun", default: true}
- {id: 93, cat: Movies/UHD, desc: "Film/UHD/Eng", default: true}
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
- {id: 22, cat: TV, desc: "Sorozat/Hun", default: true}
- {id: 58, cat: TV, desc: "Sorozat/Eng", default: true}
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
- {id: 69, cat: TV/Anime, desc: "Mese/SD", default: true}
- {id: 68, cat: TV/Anime, desc: "Mese/DVD", default: true}
- {id: 91, cat: TV/Anime, desc: "Mese/HD", default: true}
@@ -35,19 +41,13 @@ caps:
- {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun", default: true}
- {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng", default: true}
- {id: 31, cat: PC/Games, desc: "Játék/PC", default: true}
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
- {id: 81, cat: PC/0day, desc: "Program/PC", default: true}
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
- {id: 49, cat: PC/0day, desc: "Program/Rip", default: true}
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
- {id: 14, cat: PC, desc: "Program/Egyéb", default: true}
- {id: 65, cat: Other, desc: "Egyéb", default: true}
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
# the following are no longer in the cat list in the search page, but are still in the profile cat list
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
- {id: 97, cat: TV/Anime, desc: "Sorozat/Mese", default: true}
modes:
search: [q]
@@ -99,7 +99,7 @@ login:
search:
paths:
- path: browse.php
categories: [85, 86, 15, 16, 17, 19, 83, 82, 94, 95, 92, 93, 64, 24, 22, 58, 69, 68, 91, 25, 26, 84, 71, 31, 81, 49, 27, 50, 14, 65, 54, 67, 70]
categories: ["!", 33, 66, 89]
inputs:
# 0 all, 1 active, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
incldead: 0
@@ -117,22 +117,26 @@ search:
# can support genre searching but you need to know the id, eg &genre23=1 for Comedy (id is 23)
rows:
selector: "tr[class^=\"toriadatok_\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
selector: "tr[class^=\"toriadatok\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
fields:
categorydesc:
selector: img[src^="pic/kategoria/"]
attribute: title
title:
selector: a.preview
selector: font[class="tori"], a.preview
_id:
selector: td.tori_infok
attribute: id
optional: true
filters:
- name: regexp
args: (\d+)
details:
text: "details.php?id={{ .Result._id }}#adatlap"
selector: a[href^="details.php?id="]
attribute: href
optional: true
default: "details.php?id={{ .Result._id }}#adatlap"
download:
text: "download.php?torrent={{ .Result._id }}"
poster:
@@ -142,14 +146,14 @@ search:
selector: a[href*="imdb.com/title/tt"]
attribute: href
size:
selector: td[id^="tsize_"]
selector: td[id^="tsize"]
date:
# 36 perce
# 13 órája és 59 perce
# 2 napja és 10 órája
# 1 hete és 1 napja
# 1 éve és 30 hete
selector: td[id^="t_added_"] > span
selector: td[id^="t_added"] > span
filters:
- name: replace
args: ["és ", " "]

View File

@@ -8,7 +8,6 @@ encoding: UTF-8
requestDelay: 2
links:
- https://bitsearch.to/
- https://bitsearch.mrunblock.life/
- https://bitsearch.nocensor.click/
legacylinks:
- https://bitsearch.nocensor.biz/
@@ -16,6 +15,7 @@ legacylinks:
- https://bitsearch.nocensor.world/
- https://bitsearch.nocensor.lol/
- https://bitsearch.mrunblock.guru/
- https://bitsearch.mrunblock.life/ # This web property is not accessible via this address.
caps:
categories:
@@ -93,7 +93,7 @@ search:
category:
selector: a.category
title:
selector: h5
selector: h5 a
details:
selector: h5 a
attribute: href

View File

@@ -54,8 +54,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -63,15 +61,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"

View File

@@ -55,8 +55,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -64,21 +62,22 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -87,8 +86,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -7,12 +7,8 @@ type: public
encoding: UTF-8
# use https://tellme.pw/btsow to find the new domain
links:
- https://btsow.hair/
- https://btsow.skin/
legacylinks:
- https://btsow.surf/
- https://btsow.com/
- https://btsow.cam/
- https://btsow.digital/
- https://btsow.shop/
- https://btsow.us/
- https://btsow.one/
@@ -26,6 +22,8 @@ legacylinks:
- https://btsow.beauty/
- https://btsow.mom/
- https://btsow.boats/
- https://btsow.hair/
- https://btsow.bond/
caps:
categories:

View File

@@ -123,6 +123,8 @@ caps:
- {id: 217, cat: Movies, desc: "Tamil-Movies | Remuxes BluRay"}
- {id: 218, cat: TV, desc: "TV-Ishara TV"}
- {id: 219, cat: TV, desc: "TV-Bengali Tv"}
- {id: 220, cat: TV, desc: "TV-Shemaroo Umang"}
- {id: 221, cat: TV, desc: "TV-JioTv"}
modes:
search: [q]

View File

@@ -89,7 +89,7 @@ login:
search:
paths:
- path: browse.php
categories: [1, 2, 8, 7, 16, 15, 14, 13, 4, 3, 18, 17, 23, 19, 20, 24, 21, 22, 35, 36, 25, 30, 31, 33, 32, 29, 28, 27, 26]
categories: ["!", 34, 39]
- path: browse.php
categories: [34, 39]
inputs:

View File

@@ -189,4 +189,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.37 2023-05-08
# NexusPHP v1.7.38 2023-05-14

View File

@@ -1,152 +0,0 @@
---
id: ccfbits
name: CCFBits
description: "CCFBits is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://ccfbits.org/
caps:
categorymappings:
# 高清电影
- {id: 39, cat: Movies/HD, desc: "HD-DVD原盘"}
- {id: 40, cat: Movies/BluRay, desc: "Blu-ray原盘"}
- {id: 30, cat: Movies/HD, desc: "高清电影1080p"}
- {id: 2, cat: Movies/HD, desc: "高清电影720p"}
# 高清电视剧
- {id: 7, cat: TV/HD, desc: "高清欧美剧"}
- {id: 32, cat: TV/HD, desc: "高清国产剧"}
- {id: 34, cat: TV/HD, desc: "高清港台剧"}
- {id: 36, cat: TV/HD, desc: "高清日韩剧"}
# 其他高清视频
- {id: 12, cat: TV/Documentary, desc: "高清纪录片"}
- {id: 11, cat: TV/Sport, desc: "高清体育"}
- {id: 23, cat: TV/Anime, desc: "高清动漫"}
- {id: 4, cat: Audio/Video, desc: "高清MV/综艺"}
# 电视剧集包
- {id: 38, cat: TV/HD, desc: "欧美剧包"}
- {id: 33, cat: TV/HD, desc: "国产剧包"}
- {id: 35, cat: TV/HD, desc: "港台剧包"}
- {id: 37, cat: TV/HD, desc: "日韩剧包"}
# 非高清和其他
- {id: 43, cat: TV/SD, desc: "HR_HDTV"}
- {id: 20, cat: Movies/DVD, desc: "DVD"}
- {id: 42, cat: Movies/SD, desc: "XviD"}
- {id: 3, cat: Audio, desc: "无损音乐"}
- {id: 22, cat: Other, desc: "杂项"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
music-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: sort
type: select
label: Sort requested from site
default: added
options:
added: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: DESC
options:
DESC: desc
ASC: asc
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: td.embedded:has(h2:contains("登录失败"))
test:
path: browse.php
search:
paths:
- path: browse.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
# 0 active 1 incldead 2 deadonly
incldead: 1
fullsearch: "{{ if .Query.IMDBID }}1{{ else }}{{ end }}"
sort: "{{ .Config.sort }}"
d: "{{ .Config.sort }}"
rows:
selector: table[border="1"][cellpadding="5"] > tbody > tr:has(a[href^="details.php?id="])
fields:
title:
selector: a[title][href^="details.php?id="]
attribute: title
filters:
- name: split
args: ["\n", 0]
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php/"]
attribute: href
imdbid:
selector: a[href*="imdb.com/title/tt"]
attribute: href
files:
selector: a[href$="&filelist=1"]
grabs:
selector: a[href^="snatches.php?id"]
filters:
- name: replace
args: ["次", ""]
size:
selector: td:nth-child(7)
remove: a
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9)
date:
selector: td:nth-child(5)
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
downloadvolumefactor:
case:
"font[color=\"#C20603\"]:contains(\"免费\")": 0
"font:has([src=\"/pic/arrowdown1.gif\"]):contains(\"0.5x\")": 0.5
"*": 1
uploadvolumefactor:
case:
"font:has([src=\"/pic/arrowup1.gif\"]):contains(\"1.5x\")": 1.5
"font:has([src=\"/pic/arrowup1.gif\"]):contains(\"2x\")": 2
"*": 1
description:
selector: td:nth-child(2) > table > tbody > tr:nth-child(2)
remove: a, img
# Discuz! 7.2

View File

@@ -0,0 +1,165 @@
---
id: cheggit
name: cheggit
description: "cheggit is a Private site for 3X"
language: en-US
type: private
encoding: UTF-8
links:
- https://www.cheggit.me/
caps:
categorymappings:
- {id: 1, cat: XXX, desc: "Amateur"}
- {id: 2, cat: XXX, desc: "Anal"}
- {id: 5, cat: XXX, desc: "Asian"}
- {id: 6, cat: XXX, desc: "BBW"}
- {id: 30, cat: XXX, desc: "BDSM"}
- {id: 36, cat: XXX, desc: "Big Ass"}
- {id: 8, cat: XXX, desc: "Big Tits"}
- {id: 7, cat: XXX, desc: "Black"}
- {id: 9, cat: XXX, desc: "Classic"}
- {id: 37, cat: XXX, desc: "Creampie"}
- {id: 10, cat: XXX, desc: "Cumshot"}
- {id: 11, cat: XXX, desc: "DVD-R"}
- {id: 12, cat: XXX, desc: "Fetish"}
- {id: 14, cat: XXX, desc: "Gang Bang / Orgy"}
- {id: 39, cat: XXX, desc: "Gay / Bi"}
- {id: 56, cat: XXX, desc: "Hairy"}
- {id: 35, cat: XXX, desc: "Hardcore"}
- {id: 44, cat: XXX, desc: "HD Porn"}
- {id: 3, cat: XXX, desc: "Hentai / 3D"}
- {id: 25, cat: XXX, desc: "Homemade"}
- {id: 43, cat: XXX, desc: "Interracial"}
- {id: 16, cat: XXX, desc: "Latina"}
- {id: 23, cat: XXX, desc: "Lesbian"}
- {id: 52, cat: XXX, desc: "Lingerie"}
- {id: 27, cat: XXX, desc: "Magazines"}
- {id: 53, cat: XXX, desc: "Manga / Comic"}
- {id: 18, cat: XXX, desc: "Masturbation"}
- {id: 26, cat: XXX, desc: "Mature"}
- {id: 40, cat: XXX, desc: "Megapack"}
- {id: 41, cat: XXX, desc: "Natural Tits"}
- {id: 17, cat: XXX, desc: "Oral"}
- {id: 29, cat: XXX, desc: "Other"}
- {id: 47, cat: XXX, desc: "Parody"}
- {id: 21, cat: XXX, desc: "Pictures / Images"}
- {id: 50, cat: XXX, desc: "Piss"}
- {id: 55, cat: XXX, desc: "Porn Music Videos"}
- {id: 46, cat: XXX, desc: "Pregnant / Preggo"}
- {id: 15, cat: XXX, desc: "Shemale / TS"}
- {id: 22, cat: XXX, desc: "Siterip"}
- {id: 20, cat: XXX, desc: "Softcore"}
- {id: 49, cat: XXX, desc: "Squirt"}
- {id: 34, cat: XXX, desc: "Straight"}
- {id: 19, cat: XXX, desc: "Teen"}
- {id: 45, cat: XXX, desc: "Voyeur"}
- {id: 13, cat: PC/Games, desc: "XXX Games / Apps"}
modes:
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: time
options:
time: created
seeders: seeders
size: size
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_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: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
keeplogged: 1
error:
- selector: span.warning:contains(" was incorrect.")
test:
path: index.php
selector: a[href^="logout.php?auth="]
search:
paths:
# https://www.cheggit.me/torrents.php?filter_cat[1]=1&order_by=time&order_way=desc&filter_freeleech=1&searchtext=&search_type=0&taglist=&tags_type=0
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}filter_cat[{{.}}]=1&{{end}}"
order_by: "{{ .Config.sort }}"
order_way: "{{ .Config.type }}"
filter_freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
searchtext: "{{ .Keywords }}"
# 0=any, 1=all
search_type: 1
rows:
selector: table#torrent_table > tbody > tr:not(tr.colhead)
fields:
category:
selector: a[href^="torrents.php?filter_cat"]
attribute: href
filters:
- name: regexp
args: \[(\d+)\]
title:
selector: a[href^="torrents.php?id="]
details:
selector: a[href^="torrents.php?id="]
attribute: href
download:
selector: a[href^="torrents.php?action=download"]
attribute: href
description:
selector: div.tags
files:
selector: td:nth-child(3)
date:
selector: span.time
attribute: title
filters:
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "MMM dd yyyy, HH:mm zzz"
size:
selector: td:nth-child(6)
grabs:
selector: td:nth-child(7)
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9)
downloadvolumefactor:
case:
img[src$="/freedownload.gif"]: 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 0.51
# engine n/a

View File

@@ -2,7 +2,7 @@
id: chilebt
name: ChileBT
description: "ChileBT is a CHILEAN Private Torrent Tracker for MOVIES / TV / GENERAL"
language: es-419
language: es-CL
type: private
encoding: UTF-8
links:

View File

@@ -6,6 +6,7 @@ language: en-US
type: private
encoding: UTF-8
links:
- http://cinefilhd.xyz/
- http://cinefilhd.sytes.net/
legacylinks:
- http://www.cinefilhd.org/

View File

@@ -10,11 +10,10 @@ links:
caps:
categorymappings:
- {id: 62, cat: Books/EBook, desc: "EBook"}
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
- {id: 30, cat: TV/Anime, desc: "Filme - Animie"}
- {id: 28, cat: Movies/BluRay, desc: "Filme - Bluray"}
- {id: 31, cat: Movies/Other, desc: "Filme - Bollywood"}
- {id: 77, cat: TV/Documentary, desc: "Filme - DokusHD"}
- {id: 32, cat: Movies/DVD, desc: "Filme - DVD"}
- {id: 33, cat: Movies/HD, desc: "Filme - HD"}
- {id: 34, cat: Movies, desc: "Filme - Klassiker"}
@@ -22,14 +21,17 @@ caps:
- {id: 36, cat: Movies/SD, desc: "Filme - SD"}
- {id: 37, cat: Movies/UHD, desc: "Filme - UHD"}
- {id: 38, cat: Movies/HD, desc: "Filme - x264"}
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
- {id: 39, cat: Audio, desc: "Musik - Alben"}
- {id: 72, cat: Audio, desc: "Musik - Charts"}
- {id: 40, cat: Audio, desc: "Musik - Diskografie"}
- {id: 75, cat: Audio/Lossless, desc: "Musik - Flac"}
- {id: 41, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
- {id: 74, cat: Audio/Other, desc: "Musik - Kids"}
- {id: 42, cat: Audio, desc: "Musik - Mixe"}
- {id: 43, cat: Audio/MP3, desc: "Musik - MP3"}
- {id: 66, cat: Audio, desc: "Musik - Pack"}
- {id: 70, cat: Audio, desc: "Musik - Sampler Deu."}
- {id: 71, cat: Audio, desc: "Musik - Sampler Int."}
- {id: 76, cat: Audio/Other, desc: "Musik - Soundtrack"}
- {id: 44, cat: Audio/Video, desc: "Musik - Video"}
- {id: 45, cat: PC, desc: "Programme - Linux"}
- {id: 48, cat: PC/Mac, desc: "Programme - Mac"}
@@ -39,7 +41,11 @@ caps:
- {id: 51, cat: TV, desc: "Serien - Klassiker"}
- {id: 52, cat: TV, desc: "Serien - Pack"}
- {id: 53, cat: TV/Sport, desc: "Serien - Sport"}
- {id: 62, cat: Books/EBook, desc: "EBook"}
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
- {id: 60, cat: Other, desc: "Sonstiges"}
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
- {id: 54, cat: PC/Mobile-Other, desc: "Spiele - Handy"}
- {id: 55, cat: Console, desc: "Spiele - Konsolen"}
- {id: 57, cat: PC/Games, desc: "Spiele - Mac / Linux / PC"}

View File

@@ -0,0 +1,194 @@
---
id: dajiao
name: Dajiao
description: "Dajiao (打胶) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://dajiao.cyou/
caps:
categorymappings:
- {id: 414, cat: Console, desc: "Games/游戏"}
- {id: 412, cat: Audio/Audiobook, desc: "Audio Books/有声书"}
- {id: 409, cat: Other, desc: "Others/音乐"}
- {id: 411, cat: Books/Comics, desc: "Manga/漫画"}
- {id: 413, cat: Books/EBook, desc: "E-Books/电子书"}
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
- {id: 403, cat: TV, desc: "TV Variety Shows/综艺"}
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
- {id: 401, cat: Movies, desc: "Movies/电影"}
- {id: 416, cat: TV, desc: "TV Shows/电视节目"}
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 Kufei Web Site. Otherwise just leave it empty."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 4
options:
4: created
7: seeders
5: size
1: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
inputs:
secret: ""
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step_code: "{{ .Config.2facode }}"
logout: ""
securelogin: ""
ssl: yes
trackerssl: yes
error:
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
# 0 AND, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
fields:
category:
selector: a[href^="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title_default:
selector: a[href^="details.php?id="]
title:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
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: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
minimumratio:
text: 1.0
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.4 2023-06-13

View File

@@ -68,8 +68,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -81,8 +79,10 @@ search:
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
search: "{{ .Keywords }}"
imdb: "{{ .Query.IMDBIDShort }}"

View File

@@ -61,8 +61,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -70,15 +68,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -90,7 +90,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -99,8 +98,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -10,12 +10,11 @@ links:
- https://www.demonoid.is/
- https://www.dnoid.to/
- https://www.dnoid.pw/
- https://demonoid.unblockit.asia/
- https://demonoid.unblockit.mov/
- https://demonoid.torrentbay.net/
- https://demonoid.mrunblock.life/
- https://demonoid.nocensor.click/
legacylinks:
- https://demonoid.unblockit.cam/
- https://demonoid.nocensor.biz/
- https://demonoid.unblockit.day/
- https://demonoid.unblockit.llc/
@@ -42,6 +41,7 @@ legacylinks:
- https://demonoid.mrunblock.guru/
- https://demonoid.torrentbay.to/
- https://demonoid.unblockit.click/
- https://demonoid.unblockit.asia/
caps:
categorymappings:

View File

@@ -54,8 +54,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -63,15 +61,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -83,7 +83,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -92,8 +91,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -71,6 +71,10 @@ settings:
type: checkbox
label: Search freeleech only
default: false
- name: p2p_releases_only
type: checkbox
label: Search P2P releases only
default: false
- name: sort
type: select
label: Sort requested from site
@@ -109,6 +113,7 @@ search:
index: 0
limit: 100
order: "{{ .Config.type }}"
p2p: "{{ if .Config.p2p_releases_only }}true{{ else }}{{ end }}"
page: search
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}"
section: all

View File

@@ -1,9 +1,9 @@
---
id: dimeadozen
name: DimeADozen
description: "DimeADozen (EzTorrent) is a Semi-Private Torrent Tracker for BOOTLEG MUSIC"
description: "DimeADozen (EzTorrent) is a Private Torrent Tracker for BOOTLEG MUSIC"
language: en-GB
type: semi-private
type: private
encoding: UTF-8
links:
- http://www.dimeadozen.org/ # site does not support https ERR_CONNECTION_REFUSED

View File

@@ -0,0 +1,217 @@
---
id: drugari
name: Drugari
description: "Drugari is a CROATIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
language: hr-HR
type: private
encoding: UTF-8
links:
- http://drugari.org/ # does not support https, ERR_CONNECTION_CLOSED
caps:
categorymappings:
- {id: 3, cat: TV/Anime, desc: "ANIMIRANI"}
- {id: 4, cat: PC, desc: "Appz"}
- {id: 1, cat: Movies, desc: "BEZ PRAVILA"}
- {id: 39, cat: Movies, desc: "BEZ PREVODA"}
- {id: 41, cat: Movies, desc: "BEZ PREVODA Filmovi"}
- {id: 40, cat: TV, desc: "BEZ PREVODA Serije"}
- {id: 7, cat: TV/Documentary, desc: "DOKUMENTARNI"}
- {id: 18, cat: Movies, desc: "DOMACI FILMOVI"}
- {id: 49, cat: Movies, desc: "DOMACI FILMOVI Predstava"}
- {id: 10, cat: Movies/DVD, desc: "DVD FILMOVI"}
- {id: 37, cat: TV, desc: "Emisije"}
- {id: 8, cat: Movies, desc: "FILM"}
- {id: 34, cat: Movies, desc: "FILM Kolekcije"}
- {id: 48, cat: Movies, desc: "FILM Ruski Film"}
- {id: 23, cat: Movies/SD, desc: "FILM TS"}
- {id: 24, cat: Movies, desc: "FILM TV RIP"}
- {id: 38, cat: Movies, desc: "FILM- Western"}
- {id: 22, cat: Movies/HD, desc: "FILM x264/x265-Filmovi"}
- {id: 21, cat: Movies/SD, desc: "FILM XviD/Strani Filmovi"}
- {id: 15, cat: Console, desc: "IGRE"}
- {id: 19, cat: Books, desc: "KNJIGE"}
- {id: 53, cat: Audio/Audiobook, desc: "KNJIGE Audio"}
- {id: 52, cat: Books/Mags, desc: "KNJIGE Casopisi"}
- {id: 55, cat: Books/EBook, desc: "KNJIGE pdf"}
- {id: 14, cat: Audio, desc: "MUZIKA"}
- {id: 50, cat: Audio, desc: "MUZIKA Domaca Diskografija"}
- {id: 29, cat: Audio, desc: "MUZIKA DVD Muzika"}
- {id: 33, cat: Audio/Lossless, desc: "MUZIKA FLAC"}
- {id: 35, cat: Audio, desc: "MUZIKA Karaoke"}
- {id: 32, cat: Audio/MP3, desc: "MUZIKA MP3"}
- {id: 31, cat: Audio/Other, desc: "MUZIKA Muzika Ostalo"}
- {id: 51, cat: Audio, desc: "MUZIKA Strana Diskografija"}
- {id: 30, cat: Audio/Video, desc: "MUZIKA Video Muzika"}
- {id: 11, cat: Other, desc: "RAZNO"}
- {id: 20, cat: TV, desc: "SERIJE"}
- {id: 27, cat: TV, desc: "SERIJE Domace Serije"}
- {id: 54, cat: TV, desc: "SERIJE Ruske Serije"}
- {id: 28, cat: TV, desc: "SERIJE Strane Serije"}
- {id: 16, cat: Other, desc: "SLIKE"}
- {id: 12, cat: TV/Sport, desc: "SPORT"}
- {id: 6, cat: Other, desc: "STRANI TORENTI"}
- {id: 5, cat: Other, desc: "STRIP"}
- {id: 13, cat: Other, desc: "UPUTSTVA"}
- {id: 25, cat: XXX, desc: "XXX"}
- {id: 47, cat: XXX, desc: "XXX XXX-Strip"}
- {id: 42, cat: TV, desc: "Za Decu"}
- {id: 43, cat: TV, desc: "Za Decu Edukativni Programi"}
- {id: 44, cat: Console, desc: "Za Decu Igrice"}
- {id: 45, cat: Books, desc: "Za Decu Knjige"}
- {id: 46, cat: Audio, desc: "Za Decu Muzika"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q, imdbid]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Filter freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: added
options:
added: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- 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. The Default is <i>30</i>.
- name: info_results
type: info
label: Search results
default: "If you are getting the error <b>Found no results while trying to browse this tracker</b> then first access the site with your browser and read any new mail you may have received. You cannot browse torrents with unread mail outstanding."
login:
path: login.php?
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img#regimage
input: imagestring
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
logout: ""
error:
- selector: table:contains("Greska")
test:
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
args: ["[\\s]+", "%"]
inputs:
do: search
keywords: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
# t_name, t_description, t_both, t_uploader, t_genre
search_type: "{{ if .Query.IMDBID }}t_genre{{ else }}t_name{{ end }}"
# does not support multi category searching so defaulting to all.
category: 0
# yes, no
include_dead_torrents: yes
sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}"
order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}"
# does not return imdb link in results
rows:
selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}"
filters:
- name: strdump
fields:
category:
selector: a[href*="/browse.php?category="]
attribute: href
filters:
- name: querystring
args: category
title_default:
# is usually abbreaviated
selector: a[href*="/details.php?id="]
title:
# while still abbreviated, is usually longer than the default
selector: div.tooltip-content div
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href*="/details.php?id="]
attribute: href
download:
selector: a[href*="/details.php?id="]
attribute: href
poster:
selector: img[src*="/torrents/images/"]
attribute: src
date:
selector: td:nth-child(2)
# auto adjusted by site account profile
filters:
- name: regexp
args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})"
- name: dateparse
args: "dd-MM-yyyy HH:mm"
size:
selector: td:nth-last-child(5)
grabs:
selector: td:nth-last-child(4)
seeders:
selector: td:nth-last-child(3)
leechers:
selector: td:nth-last-child(2)
description:
# Wait: 4 h
# Cekanje: 4 h
selector: div.tooltip-content > div:last-child
downloadvolumefactor:
case:
img[src$="/freedownload.gif"]: 0
img[src$="/silverdownload.gif"]: 0.5
"*": 1
uploadvolumefactor:
case:
img[src$="/x2.gif"]: 2
"*": 1
minimumratio:
text: 1.1
minimumseedtime:
# 60 hours (as seconds = 60 x 60 x 60)
text: 216000
# TS Special Edition v.8.0

View File

@@ -14,6 +14,7 @@ caps:
- {id: "Action/Adventure", cat: Books/EBook, desc: "Action/Adventure"}
- {id: "Animals", cat: Books/EBook, desc: "Animals"}
- {id: "Arts", cat: Books/EBook, desc: "Arts"}
- {id: "Audio Books", cat: Audio/Audiobook, desc: "Audio Books"}
- {id: "Beauty", cat: Books/EBook, desc: "Beauty"}
- {id: "Business", cat: Books/EBook, desc: "Business"}
- {id: "Certification", cat: Books/EBook, desc: "Certification"}
@@ -29,7 +30,7 @@ caps:
- {id: "Fantasy", cat: Books/EBook, desc: "Fantasy"}
- {id: "Gardening", cat: Books/EBook, desc: "Gardening"}
- {id: "Health", cat: Books/EBook, desc: "Health"}
- {id: "Historical", cat: Books/EBook, desc: "Historical"}
- {id: "Historical Fiction", cat: Books/EBook, desc: "Historical Fiction"}
- {id: "History", cat: Books/EBook, desc: "History"}
- {id: "Horror", cat: Books/EBook, desc: "Horror"}
- {id: "Humorous", cat: Books/EBook, desc: "Humorous"}
@@ -64,6 +65,7 @@ caps:
modes:
search: [q]
book-search: [q]
music-search: [q]
settings: []
@@ -101,8 +103,10 @@ search:
optional: true
default: Other
filters:
- name: re_replace
args: ["(?i)\\bEbooks?\\b", ""]
- name: regexp
args: "E book under:\\s+(.+?)\\s"
args: "E book under:\\s+(.+?)\\s?\\\xA0"
title:
selector: div.postname a
details:

View File

@@ -6,6 +6,8 @@ language: pl-PL
type: semi-private
encoding: UTF-8
links:
- https://electro-torrent.pl/
legacylinks:
- http://electro-torrent.pl/
caps:
@@ -49,12 +51,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><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
- name: 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><li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</li></ol>"
- name: multilang
type: checkbox
label: Replace MULTi by another language in release name
@@ -68,25 +78,17 @@ settings:
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
method: cookie
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
returnto: ""
error:
- selector: div#center-side:contains("Logowanie nie")
cookie: "{{ .Config.cookie }}"
test:
path: /
selector: a[href$="/logout.php"]
search:
# http://electro-torrent.pl/szukaj.php?search=&typ=torrent&cat=0
headers:
User-Agent: ["{{ .Config.useragent }}"]
paths:
- path: szukaj.php
allowEmptyInputs: true

View File

@@ -7,12 +7,11 @@ type: public
encoding: UTF-8
links:
- https://extratorrent.st/
- https://extratorrent.unblockit.asia/
- https://extratorrent.unblockit.mov/
- https://extratorrent.mrunblock.life/
- https://extratorrent.nocensor.click/
legacylinks:
- https://extratorrent.nocensor.work/
- https://extratorrent.unblockit.cam/
- https://extratorrent.nocensor.biz/
- https://extratorrent.unblockit.day/
- https://extratorrent.unblockit.llc/
@@ -33,6 +32,7 @@ legacylinks:
- https://extratorrent.unblockit.boo/
- https://extratorrent.mrunblock.guru/
- https://extratorrent.unblockit.click/
- https://extratorrent.unblockit.asia/
caps:
categorymappings:

View File

@@ -123,6 +123,8 @@ search:
category:
selector: td:nth-child(1) div div a:last-child
attribute: href
optional: true
default: "/other/"
title:
selector: td:nth-child(1) div a
details:

View File

@@ -13,7 +13,7 @@ links:
- https://eztv.yt/
- https://eztv1.xyz/
- https://eztv.unblockninja.com/
- https://eztv.unblockit.asia/
- https://eztv.unblockit.mov/
- https://eztv.mrunblock.life/
- https://eztv.nocensor.click/
legacylinks:
@@ -41,6 +41,7 @@ legacylinks:
- https://eztv.unblockit.boo/
- https://eztv.mrunblock.guru/
- https://eztv.unblockit.click/
- https://eztv.unblockit.asia/
caps:
categories:

View File

@@ -0,0 +1,139 @@
---
id: fappaizuri
name: Fappaizuri
description: "Fappaizuri is a Private Torrent Tracker for HENTAI / JAV"
language: en-US
type: private
encoding: UTF-8
links:
- https://fappaizuri.me/
caps:
categorymappings:
- {id: 8, cat: TV/Anime, desc: "Hentai"}
- {id: 7, cat: Console, desc: "H-games"}
- {id: 5, cat: XXX, desc: "JAV"}
- {id: 6, cat: Books, desc: "Manga"}
modes:
search: [q]
tv-search: [q, season, ep]
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: lang
type: select
label: Language
default: 0
options:
0: All
4: Japanese
5: Chinese
6: Malaysia
7: North Korea
8: English
- name: sort
type: select
label: Sort requested from site
default: id
options:
id: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
login:
method: post
path: account-login.php
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: b:contains("The specified username or password was incorrect.")
test:
path: account.php
search:
paths:
# https://fappaizuri.me/torrents-search.php?search=&c8=1&c6=1&incldead=1&freeleech=0&lang=0
- path: torrents-search.php
inputs:
$raw: "{{ range .Categories }}&c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# 0 active, 1 incldead, 2 onlydead
incldead: 1
# 0 all, 1 notfree, 2 onlyfree
freeleech: "{{ if .Config.freeleech }}{{ .Config.freeleech }}2{{ else }}0{{ end }}"
lang: "{{ .Config.lang }}"
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
rows:
selector: tr.t-row:has(a[href^="download.php?id="])
fields:
category:
selector: a[href^="search-torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="torrents-details.php?id="] > b
details:
selector: a[href^="torrents-details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
poster:
selector: a[href^="torrents-details.php?id="]
attribute: onmouseover
filters:
- name: regexp
args: src=(.+?)>
_language:
selector: img[src*="images/languages/"]
attribute: alt
description:
selector: font[color="red"]
filters:
- name: append
args: " - {{ .Result._language }}"
size:
selector: td:nth-child(4)
seeders:
selector: td:nth-child(5)
leechers:
selector: td:nth-child(6)
date:
text: now
downloadvolumefactor:
case:
img[src="images/free.png"]: 0
"*": 1
uploadvolumefactor:
case:
img[src="images/doubleupload.gif"]: 2
"*": 1
minimumratio:
text: 1.0
# evolution

View File

@@ -0,0 +1,207 @@
---
id: freefarm
name: Free Farm
description: "Free Farm (自由农场) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
requestDelay: 2
links:
- https://pt.0ff.cc/
caps:
categorymappings:
- {id: 401, cat: Movies, desc: "Movies|电影", default: true}
- {id: 402, cat: TV, desc: "TV Series|电视剧", default: true}
- {id: 403, cat: TV/Documentary, desc: "Documentaries|纪录片", default: true}
- {id: 404, cat: TV, desc: "TV Shows|综艺", default: true}
- {id: 405, cat: TV/Anime, desc: "Animations|动漫", default: true}
- {id: 406, cat: Audio/Video, desc: "Music Videos|音乐视频", default: true}
- {id: 407, cat: Audio/Lossless, desc: "HD Music|无损音乐", default: true}
- {id: 408, cat: TV/Sport, desc: "Sports|体育", default: true}
- {id: 428, cat: Other, desc: "Others|其他", default: true}
# special
- {id: 413, cat: Other, desc: "Education|学习教育", default: false}
- {id: 414, cat: Other, desc: "Course|网络教程", default: false}
- {id: 415, cat: Books, desc: "book|书籍", default: false}
- {id: 416, cat: PC/0day, desc: "Resources|网络资源", default: false}
- {id: 417, cat: PC/Games, desc: "Game|游戏", default: false}
- {id: 426, cat: Other, desc: "Others|其他", default: false}
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 Free Farm Web Site. Otherwise just leave it empty."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 4
options:
4: created
7: seeders
5: size
1: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
inputs:
secret: ""
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step_code: "{{ .Config.2facode }}"
logout: ""
securelogin: ""
ssl: yes
trackerssl: yes
error:
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
categories: ["!", 413, 414, 415, 416, 417, 426]
- path: special.php
categories: [413, 414, 415, 416, 417, 426]
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
# 0 AND, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(a[href^="download.php?id="])
fields:
category:
selector: a[href^="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title_default:
selector: a[href^="details.php?id="]
title:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
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: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
minimumseedtime:
# special 7 days (as seconds = 7 x 24 x 60 x 60)
# normal 3 days (as seconds = 3 x 24 x 60 x 60)
case:
img[title="H&R"]: 604800
"*": 259200
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.4 2023-06-18

View File

@@ -6,6 +6,8 @@ language: es-ES
type: public
encoding: UTF-8
requestDelay: 2
certificates:
- 1c5fd7a2e0464ac60f947eda247c2fe209768834 # expired 18 June 2023
links:
- https://www.frozen-layer.com/
@@ -60,6 +62,8 @@ search:
selector: table#descargas > tbody > tr:has(td:has(a[href^="magnet:?"]))
fields:
category:
text: "{{ if eq .Config.category \"todos\" }}Anime{{ else }}{{ .Config.category }}{{ end }}"
title:
selector: td.tit a
filters:
@@ -84,10 +88,6 @@ search:
magnet:
selector: td:nth-child(1) a[href^="magnet:?"]
attribute: href
category:
selector: td.tit span
optional: true
default: Anime
date_day:
# 1d
# 2d 3h

View File

@@ -77,12 +77,13 @@ settings:
options:
desc: desc
asc: asc
- name: info_news
type: info
label: Reminder from GF-Free Admin
default: "Attention users of third-party software like Jackett or Radarr, Sonarr or similar:<br>Despite your seed downloads you must physically connect to the web site with your browser or risk being <b>Banned for non-participation</b>...<br><ol>We ask :<li>Remain in seed at least 48 hours on the media to avoid H$R</li><li>And much more depending on your storage means</li><li>Participate in the life of the site shout forum...</li><li>Connect regularly to possibly read your private messages.</li></ol>"
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -90,15 +91,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -106,11 +109,10 @@ search:
imdbId: "{{ .Query.IMDBIDShort }}"
tmdbId: "{{ .Query.TMDBID }}"
tvdbId: "{{ .Query.TVDBID }}"
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
free[]: "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -119,8 +121,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -10,14 +10,13 @@ links:
- https://glodls.to/
- https://gtdb.cc/
- https://www.gtdb.to/
- https://glotorrents.unblockit.asia/
- https://glotorrents.unblockit.mov/
- https://glotorrents.mrunblock.life/
- https://glodls.unblockninja.com/
- https://glotorrents.nocensor.click/
legacylinks:
- https://glodls.rocks/
- https://gtdb.to/
- https://glotorrents.unblockit.cam/
- https://glotorrents.nocensor.biz/
- https://glotorrents.unblockit.day/
- https://glotorrents.unblockit.llc/
@@ -38,6 +37,7 @@ legacylinks:
- https://glotorrents.unblockit.boo/
- https://glotorrents.mrunblock.guru/
- https://glotorrents.unblockit.click/
- https://glotorrents.unblockit.asia/
caps:
categorymappings:

View File

@@ -77,7 +77,7 @@ login:
search:
paths:
- path: torrents.php
categories: [1, 4091, 4097, 4098, 4099, 4101, 4104, 4105]
categories: ["!", 4103]
- path: live.php
categories: [4103]
inputs:

View File

@@ -10,10 +10,13 @@ links:
caps:
categorymappings:
- {id: 11, cat: XXX, desc: "Asian"}
- {id: 3, cat: XXX, desc: "Gay"}
- {id: 4, cat: XXX, desc: "Interracial"}
- {id: 5, cat: XXX, desc: "Lesbian"}
- {id: 6, cat: XXX, desc: "Onlyfans"}
- {id: 9, cat: XXX, desc: "Packs"}
- {id: 10, cat: XXX, desc: "Pics"}
- {id: 1, cat: XXX, desc: "Pron"}
- {id: 8, cat: XXX, desc: "Retro"}
- {id: 7, cat: XXX, desc: "VR"}

View File

@@ -50,8 +50,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -59,14 +57,16 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
imdbId: "{{ .Query.IMDBIDShort }}"
@@ -76,7 +76,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -85,8 +84,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
categorydesc:

View File

@@ -53,8 +53,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -62,15 +60,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -82,7 +82,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -91,8 +90,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:
@@ -151,4 +148,4 @@ search:
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 6.3.0
# json UNIT3D 6.4.1

View File

@@ -146,4 +146,4 @@ search:
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
# NexusPHP 2c858e7 (Customised)
# NexusPHP 4e16128 (Customised)

View File

@@ -195,4 +195,4 @@ search:
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.2 2023-05-06
# NexusPHP v1.8.4 2023-05-27

View File

@@ -103,7 +103,7 @@ search:
# 1 active, 2 dead, 3 gold, 4 sticky, lots of others
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
sort: "{{ .Config.sort }}"
ascdesc: "{{ .Config.type }}"
type: "{{ .Config.type }}"
keywordsfilters:
- name: re_replace # S01 to сезон 1
@@ -225,6 +225,23 @@ search:
# 1 day ago
selector: a[href^="browse.php?date="]
filters:
# translations for Russian|Romanian|Ukrainian
- name: re_replace
args: ["(?i)\\b(назад|În urmă)\\b", "ago"]
- name: re_replace
args: ["(?i)\\b(секунд(а|и|ы)?|secund(a|ă|e))\\b", "seconds"]
- name: re_replace
args: ["(?i)\\b(минуты?|minute?|хвилини?)\\b", "minutes"]
- name: re_replace
args: ["(?i)\\b(час(а|ов)?|or(e|ă)|години?)\\b", "hours"]
- name: re_replace
args: ["(?i)\\b(де?не?(ь|я|й|ів)|zi(le)?)\\b", "days"]
- name: re_replace
args: ["(?i)\\b(недел(ю|и)|săptămân(ă|i)|тиж(день|ні))\\b", "weeks"]
- name: re_replace
args: ["(?i)\\b(месяц(а|ев)?|lun(ă|i)|місяц(ь|я|ів))\\b", "months"]
- name: re_replace
args: ["(?i)\\b(года?|an|р(ік|оки))\\b", "years"]
- name: timeago
downloadvolumefactor:
case:

View File

@@ -171,4 +171,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.29 2022-10-12
# NexusPHP v1.8.3 2023-05-13

View File

@@ -56,8 +56,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -65,15 +63,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: api/torrents/filter
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -85,13 +85,10 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
categorydesc:

View File

@@ -188,4 +188,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.37 2023-05-08
# NexusPHP v1.8.4 2023-06-04

View File

@@ -1,161 +0,0 @@
---
id: hdtorrentsit
name: HDTorrents.it
description: "HDTorrents.it is an ITALIAN Private site for TV / MOVIES"
language: it-IT
type: private
encoding: UTF-8
links:
- https://hdtorrents.xyz/ # Italian IP address filtering
legacylinks:
- http://hdtorrents.it/
- http://hdtorrents.xyz/
caps:
categorymappings:
- {id: 2040, cat: Movies/HD}
- {id: 5040, cat: TV/HD}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: ip_filtering
type: info
label: "IP Filtering"
default: "The <b>404 Not Found</b> error means your IP was not accepted. Check the <a href=\"https://check-host.net/check-report/e5b649bkfa\" target=\"_blank\">Locations report</a>, only those with a Status of <b>OK</b> will be accepted."
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div.error
- selector: h1:contains("404 Not Found")
test:
path: browse.php
search:
paths:
- path: browse.php
method: post
allowEmptyInputs: true
keywordsfilters:
- name: re_replace
args: ["[^a-zA-Z0-9]+", "%"]
- name: diacritics
args: replace
- name: re_replace # remove SXXEYY from research
args: ["(?i)(S\\d{1,2}E\\d{1,2})", ""]
- name: re_replace # remove SXX from research
args: ["(?i)(S\\d{1,2})", ""]
inputs:
ajax: false
search: "{{ .Keywords }}"
# 0 active 1 incldead 2 onlydead 3 gold 4 no seeders
incldead: 0
rows:
selector: tbody#highlighted tr
fields:
year:
selector: td:nth-child(2) a:nth-child(1)
filters:
- name: regexp # find torrent year
args: (\d{4})
_quality: # (BDRip 1080, BDRip 720p etc)
selector: td:nth-child(1) a:nth-child(1) img
attribute: alt
_audio: # ita audio TAG
selector: a[href^="download.php?id="]
attribute: href
filters:
- name: querystring
args: name
- name: regexp
args: (DTS AC3 ITA|DTS ITA|AC3 ITA)
- name: re_replace
args: ["ITA", ""]
title:
selector: td:nth-child(2) a:nth-child(1)
filters:
- name: re_replace # separate title
args: ["(\\s+\\/\\s+|\\/\\s+|\\s+\\/|\\/)(.*)\\s\\(", " ("]
- name: re_replace # remove (yyyy) from the title
args: ["(\\(\\d{4}\\)?\\s?)", ""]
- name: re_replace # remove |
args: ["(\\s\\||\\s\\/)", ""]
- name: re_replace # Stagione X --> S0X
args: ["(?i)\\bStagion[ei]\\s?(\\d{1})\\b|\\bSeason'?s?\\s?(\\d{1})\\b", "S0$1$2"]
- name: re_replace # Stagione XX --> SXX
args: ["(?i)\\bStagion[ei]\\s?(\\d{2,})\\b|\\bSeason'?s?\\s?(\\d{2,})\\b", "S$1$2"]
- name: re_replace # / Episodio [YY-YY --> EYY-YY
args: ["(?i)(\\s\\/?\\s?Episodi[o]?)\\s\\[", "E"]
- name: re_replace # Episodio 4 to E4
args: ["(?i)\\b(?:[\\s\\/\\|]?Episodi[o]?\\s?(\\d+)|Puntata\\s?(\\d+))", "E$1$2"]
- name: re_replace # / Completa [episodi YY-YY --> EYY-YY
args: ["(?i)(\\s\\/\\sCompleta\\s\\[episodi\\s)", "E"]
- name: re_replace # remove di YY] | remove /YY]
args: ["(?i)(\\sdi\\s\\d{1,2}|\\/\\d{1,2})\\]", " "]
- name: re_replace # remove various
args: ["(?i)(Serie completa|Completa|\\[in pausa\\])", ""]
- name: append
args: " ({{ .Result.year }}) [{{ .Result._quality }} - {{ .Result._audio }} ITA]"
- name: re_replace # replace multiple spaces
args: ["[ ]{2,}", " "]
details:
selector: td:nth-child(2) a:nth-child(1)
attribute: href
poster:
selector: td:nth-child(2)[onmousemove]
attribute: onmousemove
filters:
- name: regexp
args: ".*\\(.*,.*,.*,'(.*?)'\\)"
download:
selector: a[href^="download.php?id="]
attribute: href
size:
selector: td:nth-child(3)
seeders:
selector: td:nth-child(4)
optional: true
default: 1
filters:
- name: re_replace
args: ["(\\d*) \\(\\+\\d*\\)\n? \\| (\\d*) \\(\\+\\d*\\)", "$1"]
leechers:
selector: td:nth-child(4)
optional: true
default: 1
filters:
- name: re_replace
args: ["(\\d*) \\(\\+\\d*\\)\n? \\| (\\d*) \\(\\+\\d*\\)", "$2"]
date:
selector: td:nth-child(2) i
filters:
- name: append
args: " +02:00" # EET
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
category:
case:
"a[href^=\"details.php\"]:contains(\"Stagione\")": 5040 # TV/HD
"*": 2040 # default to Movies/HD
downloadvolumefactor:
case:
img[src="pic/freedownload.gif"]: 0
"*": 1
uploadvolumefactor:
text: 1
# engine tbd

View File

@@ -169,4 +169,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.34 2023-01-16
# NexusPHP v1.7.39 2023-05-15

View File

@@ -21,9 +21,9 @@ caps:
- {id: 409, cat: Other, desc: "Misc/其他", default: true}
- {id: 408, cat: Audio, desc: "Music/音乐", default: true}
# special
- {id: 410, cat: Movies, desc: "Video/视频资料", default: true}
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: true}
- {id: 412, cat: Other, desc: "Other/其他资料", default: true}
- {id: 410, cat: Movies, desc: "Video/视频资料", default: false}
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: false}
- {id: 412, cat: Other, desc: "Other/其他资料", default: false}
modes:
search: [q]
@@ -96,7 +96,7 @@ login:
search:
paths:
- path: torrents.php
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409]
categories: ["!", 410, 411, 412]
- path: special.php
categories: [410, 411, 412]
inputs:

View File

@@ -10,39 +10,78 @@ links:
caps:
categorymappings:
- {id: 15, cat: Movies/HD, desc: "HD 720p"}
- {id: 16, cat: Movies/HD, desc: "HD 1080p"}
- {id: 17, cat: Movies/DVD, desc: "DVD"}
- {id: 18, cat: TV/Documentary, desc: "Dokumentarci"}
- {id: 19, cat: Movies/DVD, desc: "DVD/R5"}
- {id: 20, cat: Movies/WEB-DL, desc: "WEB/Rip"}
- {id: 21, cat: Movies/WEB-DL, desc: "WEB/Download"}
- {id: 14, cat: Movies/SD, desc: "XviD"}
- {id: 32, cat: XXX, desc: "XXX"}
- {id: 50, cat: Movies/BluRay, desc: "BluRay 1080p"}
- {id: 49, cat: Movies/UHD, desc: "HD 2160p"}
# Filmi
- {id: 14, cat: Movies/SD, desc: "Filmi XviD"}
- {id: 15, cat: Movies/HD, desc: "Filmi HD 720p"}
- {id: 16, cat: Movies/HD, desc: "Filmi HD 1080p"}
- {id: 20, cat: Movies/WEB-DL, desc: "Filmi WEB/Rip"}
- {id: 21, cat: Movies/WEB-DL, desc: "Filmi WEB-DL 720p"}
- {id: 49, cat: Movies/UHD, desc: "Filmi HD 2160p"}
- {id: 50, cat: Movies/HD, desc: "Filmi BluRay 1080p"}
- {id: 51, cat: Movies/HD, desc: "Filmi 720p H265"}
- {id: 52, cat: Movies/HD, desc: "Filmi 1080p H265"}
- {id: 55, cat: Movies/WEB-DL, desc: "Filmi WEB-DL 1080p"}
- {id: 71, cat: Movies/WEB-DL, desc: "Filmi WEB-DL 2160p"}
- {id: 72, cat: Movies/HD, desc: "Filmi BluRay 720p"}
- {id: 73, cat: Movies/HD, desc: "Filmi BluRay Remux"}
- {id: 74, cat: Movies/UHD, desc: "Filmi UHD Remux"}
- {id: 77, cat: Movies/HD, desc: "Filmi DrSi"}
# TV
- {id: 23, cat: TV, desc: "TV"}
- {id: 24, cat: TV/HD, desc: "HD TV"}
- {id: 26, cat: TV/Anime, desc: "Animirano"}
- {id: 28, cat: PC/Games, desc: "PC"}
- {id: 29, cat: PC/ISO, desc: "PC ISO"}
- {id: 30, cat: Console/Other, desc: "GBA"}
- {id: 31, cat: Console/PS3, desc: "PS2"}
- {id: 33, cat: Audio, desc: "Glasba"}
- {id: 34, cat: Console/PS3, desc: "PS3"}
- {id: 35, cat: Console/XBox, desc: "Xbox"}
- {id: 36, cat: Console/PSP, desc: "PSP"}
- {id: 24, cat: TV/HD, desc: "TV HDTV 720p"}
- {id: 75, cat: TV/HD, desc: "TV HDTV 1080p"}
- {id: 76, cat: TV/WEB-DL, desc: "TV WEB/Rip"}
- {id: 78, cat: TV/WEB-DL, desc: "TV WEB-DL 720p"}
- {id: 79, cat: TV/WEB-DL, desc: "TV WEB-DL 1080p"}
- {id: 80, cat: TV/WEB-DL, desc: "TV WEB-DL 2160p"}
- {id: 81, cat: TV/HD, desc: "TV BluRay 720p"}
- {id: 82, cat: TV/HD, desc: "TV BluRay 1080p"}
# Risanke
- {id: 26, cat: Movies/Other, desc: "Animirano"}
- {id: 56, cat: TV/Anime, desc: "Anime"}
- {id: 93, cat: Movies/Other, desc: "SLOSiNH"}
# Igre
- {id: 29, cat: PC/Games, desc: "Igre PC ISO"}
- {id: 30, cat: Console/Wii, desc: "Igre Nintendo"}
- {id: 31, cat: Console/PS3, desc: "Igre Playstation"}
- {id: 34, cat: Console/XBox One, desc: "Igre Xbox"}
- {id: 83, cat: PC/Games, desc: "Igre Repack"}
# Glasba
- {id: 42, cat: Audio/Video, desc: "Music DVD"}
- {id: 43, cat: Audio/Video, desc: "Glasba Videospoti"}
- {id: 53, cat: Audio/MP3, desc: "Glasba MP3"}
- {id: 54, cat: Audio/Lossless, desc: "Glasba FLAC"}
- {id: 62, cat: Audio/Video, desc: "Koncerti"}
# Sport
- {id: 37, cat: TV/Sport, desc: "Sport"}
- {id: 38, cat: PC, desc: "Programi"}
# XXX
- {id: 60, cat: XXX/Other, desc: "XXX Revije"}
- {id: 61, cat: XXX/Pack, desc: "XXX Packs"}
- {id: 66, cat: XXX/SD, desc: "XXX 480p"}
- {id: 67, cat: XXX/x264, desc: "XXX 720p"}
- {id: 68, cat: XXX/x264, desc: "XXX 1080p"}
- {id: 69, cat: XXX/UHD, desc: "XXX 2160p"}
- {id: 84, cat: XXX/ImageSet, desc: "XXX Slike"}
# Disc
- {id: 85, cat: Movies/DVD, desc: "DVD 5"}
- {id: 86, cat: Movies/DVD, desc: "DVD 9"}
- {id: 87, cat: Movies/BluRay, desc: "BD 25"}
- {id: 88, cat: Movies/BluRay, desc: "BD 50"}
- {id: 89, cat: Movies/BluRay, desc: "UHD 50"}
- {id: 90, cat: Movies/BluRay, desc: "UHD 66"}
- {id: 91, cat: Movies/BluRay, desc: "UHD 100"}
# Razno
- {id: 38, cat: PC/0day, desc: "Programi"}
- {id: 39, cat: Books/EBook, desc: "eKnjige"}
- {id: 40, cat: Other, desc: "Slike"}
- {id: 41, cat: Audio/Audiobook, desc: "AudioBook"}
- {id: 42, cat: Audio/Video, desc: "Music DVD"}
- {id: 43, cat: TV/Other, desc: "Videospoti"}
- {id: 44, cat: PC/Mobile-Android, desc: "Android"}
- {id: 45, cat: PC/Mobile-iOS, desc: "iOS"}
- {id: 46, cat: PC/Mac, desc: "Mac"}
- {id: 47, cat: PC, desc: "Linux"}
- {id: 47, cat: PC/ISO, desc: "Linux"}
# Dokumentarni
- {id: 95, cat: TV/Documentary, desc: "Dokumentarni Film"}
- {id: 96, cat: TV/Documentary, desc: "Dokumentarna Serija"}
modes:
search: [q]

View File

@@ -59,8 +59,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -68,15 +66,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -88,7 +88,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -99,8 +98,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -61,8 +61,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -70,15 +68,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -90,7 +90,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -99,8 +98,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
categorydesc:

View File

@@ -179,4 +179,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.7.26 2022-09-15
# NexusPHP v1.8.2 2023-05-08

View File

@@ -2,7 +2,7 @@
id: korsar
name: Korsar
description: "Korsar is a RUSSIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
language: ru-ru
language: ru-RU
type: private
encoding: UTF-8
links:

View File

@@ -136,6 +136,8 @@ search:
category:
selector: a[href^="torrents.php?cat="]
attribute: href
optional: true
default: 95
filters:
- name: querystring
args: cat

View File

@@ -0,0 +1,199 @@
---
id: kufei
name: Kufei
description: "Kufei (库非) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://kufei.org/
caps:
categorymappings:
- {id: 410, cat: Console, desc: "Games/游戏"}
- {id: 411, cat: Books, desc: "E-Books/电子书"}
- {id: 408, cat: Audio, desc: "Music/音乐"}
- {id: 412, cat: PC, desc: "Software/软件"}
- {id: 415, cat: TV, desc: "Drama/戏剧"}
- {id: 416, cat: Audio/Audiobook, desc: "Audio Books/有声读物"}
- {id: 409, cat: Other, desc: "Others/其他"}
- {id: 413, cat: Other, desc: "Education/教育"}
- {id: 414, cat: Audio/Video, desc: "Concert/演唱会"}
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
- {id: 406, cat: Audio/Video, desc: "Music Videos/音乐、视频"}
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
- {id: 405, cat: TV/Anime, desc: "Animations/动画、动漫"}
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
- {id: 401, cat: Movies, desc: "Movies/电影"}
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 Kufei Web Site. Otherwise just leave it empty."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 4
options:
4: created
7: seeders
5: size
1: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
inputs:
secret: ""
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step_code: "{{ .Config.2facode }}"
logout: ""
securelogin: ""
ssl: yes
trackerssl: yes
error:
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
# 0 AND, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
fields:
category:
selector: a[href^="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title_default:
selector: a[href^="details.php?id="]
title:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
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: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
minimumratio:
text: 1.0
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.4 2023-06-13

View File

@@ -121,7 +121,7 @@ search:
# https://www.last-torrents.org/externalid?searchex=tt5834760&search_by=imdbid
# cannot support imdbid or tmdbid searches while using path category filters
- path: browse.php
categories: [1, 2, 5, 6, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 42, 43, 44, 49, 51, 54, 55, 56, 57, 58, 59, 60, 61, 62, 81, 82]
categories: ["!", 27, 60]
- path: browseadult.php
categories: [27, 60]

View File

@@ -65,8 +65,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -74,15 +72,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -94,7 +94,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -103,8 +102,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -6,8 +6,9 @@ language: fr-FR
type: private
encoding: UTF-8
links:
- https://lesaloonv2-0.net/
- https://lesaloonv2-0.xyz/
legacylinks:
- https://lesaloonv2-0.net/
- http://lesaloonv2-0.net/ # site forces https
caps:
@@ -121,7 +122,7 @@ settings:
default: false
login:
# https://lesaloonv2-0.net/yupy_login.php
# https://lesaloonv2-0.xyz/yupy_login.php
path: yupy_login.php
method: form
form: form[action^="login"]
@@ -137,7 +138,7 @@ login:
search:
paths:
# http://lesaloonv2-0.net/index.php?page=torrents&search=supernatural+s13e20&parentcategory=0&category=0&genre=0&options=0&active=0
# http://lesaloonv2-0.xyz/index.php?page=torrents&search=supernatural+s13e20&parentcategory=0&category=0&genre=0&options=0&active=0
- path: index.php
inputs:
page: torrents

View File

@@ -0,0 +1,167 @@
---
id: lesbians4u
name: Lesbians4u
description: "Lesbians4u is a Private Torrent Tracker for 3X"
language: en-US
type: private
encoding: UTF-8
links:
- http://lesbians4u.org/ # does not support https, CA invalid
caps:
categorymappings:
- {id: 7, cat: XXX, desc: "Amateur"}
- {id: 12, cat: XXX, desc: "Anime &Hentai &JAV"}
- {id: 17, cat: XXX, desc: "Appz"}
- {id: 3, cat: XXX, desc: "Classics"}
- {id: 6, cat: XXX, desc: "Clips &Siterips"}
- {id: 16, cat: XXX, desc: "DVD"}
- {id: 15, cat: XXX, desc: "EX-V.I.P. Torrents"}
- {id: 9, cat: XXX, desc: "Fetish"}
- {id: 8, cat: XXX, desc: "Games"}
- {id: 11, cat: XXX, desc: "Misc."}
- {id: 10, cat: XXX, desc: "Movie"}
- {id: 5, cat: XXX, desc: "Solo"}
- {id: 14, cat: XXX, desc: "V.I.P."}
- {id: 13, cat: XXX, desc: "Watersport"}
modes:
search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Filter freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: added
options:
added: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
logout: ""
error:
- selector: table:has(a[href*="login.php?error=1"])
message:
text: "ERROR: Incorrect username!"
- selector: table:has(a[href*="login.php?error=4"])
message:
text: "ERROR: Incorrect password!"
- selector: table:has(a[href*="login.php?error="])
message:
text: "ERROR: Something went wrong during login!"
test:
path: index.php
selector: a[href*="/logout.php?logouthash="]
download:
before:
path: takethanks.php
method: post
inputs:
torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*torrent-details-(\\d+).*\" \"$1\"}}"
selectors:
- selector: a[href*="download-torrent-"]
attribute: href
search:
paths:
- path: browse.php
keywordsfilters:
# prefix and postfix percent wildcard as well as replacing spaces between words
- name: re_replace
args: ["\\W+", "%"]
- name: re_replace
args: ["^(.+)$", "%$1%"]
inputs:
do: search
keywords: "{{ .Keywords }}"
# t_name, t_description, t_both, t_uploader, t_genre
search_type: t_name
# does not support multi category searching so defaulting to all.
category: 0
include_dead_torrents: yes
sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}"
order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}"
rows:
selector: "table.sortable tr:has(a[href*=\"/download-torrent-\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}"
fields:
category:
selector: a[href*="torrent-category-"]
attribute: href
filters:
- name: regexp
args: torrent-category-(\d+)
title_default:
# is often abbreviated
selector: a[href*="torrent-details-"]
title:
# usually longer than details title
selector: div[id^="port-content-"] div
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href*="torrent-details-"]
attribute: href
download:
selector: a[href*="torrent-details-"]
attribute: href
poster:
selector: div[id^="port-content-"] img
attribute: src
date:
selector: td:nth-child(2) > div:last-child
filters:
- name: regexp
args: (\d{2}-\d{2}-\d{4} \d{2}:\d{2})
- name: append
args: " +00:00" # auto adjusted by site account profile
- name: dateparse
args: "dd-MM-yyyy HH:mm zzz"
size:
selector: td:nth-child(5)
grabs:
selector: td:nth-child(6)
seeders:
selector: td:nth-child(7)
leechers:
selector: td:nth-child(8)
downloadvolumefactor:
case:
img[src$="/freedownload.gif"]: 0
img[src$="/silverdownload.gif"]: 0.5
"*": 1
uploadvolumefactor:
case:
img[src$="/x2.gif"]: 2
"*": 1
minimumratio:
text: 1.0
# TS Special Edition v.7.3

View File

@@ -1,172 +0,0 @@
---
id: lightning-tor
name: Lightning-Tor
description: "Lightning-Tor is a DUTCH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
language: nl-NL
type: semi-private
encoding: UTF-8
links:
- https://lightning-tor.org/
caps:
categorymappings:
# the search pull down cats disagrees with the prior category count links, so merged the two lists, with count overriding pull
- {id: 2, cat: Movies/DVD, desc: "DVD Retail"}
- {id: 17, cat: Movies/Other, desc: "DVD Promo/R5"}
- {id: 3, cat: Audio/Video, desc: "DVD Muziek"}
- {id: 4, cat: Movies/SD, desc: " DVD Cam"}
- {id: 18, cat: Movies/Other, desc: "DVD Kinderen"}
- {id: 6, cat: TV, desc: "Tv Serie"}
- {id: 19, cat: XXX/DVD, desc: "DVD XXX"}
- {id: 20, cat: TV/Documentary, desc: "Docomentaire"}
- {id: 45, cat: Audio/Video, desc: "Cabaret Div."}
- {id: 9, cat: PC/Games, desc: "Spelletjes Pc"}
- {id: 10, cat: Console/NDS, desc: "Ps2/NDS"}
- {id: 11, cat: Console/XBox, desc: "XBoX"}
- {id: 22, cat: Console/Wii, desc: "Wii"}
- {id: 8, cat: Audio, desc: "Muziek Album"}
- {id: 23, cat: Audio/Other, desc: "Muziek Diversen"}
- {id: 1, cat: Other, desc: "Kinderen Diversen"}
- {id: 13, cat: Other, desc: "Afbeeldingen"}
- {id: 14, cat: PC/Mobile-Other, desc: "GSM/Navigatie"}
- {id: 7, cat: PC, desc: "Software PC"}
- {id: 12, cat: PC/0day, desc: "Microsoft"}
- {id: 21, cat: PC/Mobile-Other, desc: "Software PDA"}
- {id: 5, cat: Movies/SD, desc: "Xvid Film"}
- {id: 15, cat: XXX/SD, desc: "Xvid XXX"}
- {id: 24, cat: Other, desc: "Xvid Diversen"}
- {id: 16, cat: Other/Misc, desc: "Overigen"}
- {id: 50, cat: Books, desc: "E-books"}
- {id: 48, cat: Movies/HD, desc: "movies 264"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: thankyou
type: text
label: Thank You Comment
- name: info
type: info
label: Thank you comment
default: This site requires you to leave a Thank You comment before you can download. Enter your personalised comment above.
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: table.main:contains("Aanmelden mislukt")
test:
path: index.php
selector: a[href="logout.php"]
download:
before:
# https://lightning-tor.org/comment.php?action=add&tid=166386
path: comment.php
method: post
inputs:
action: add
tid: "{{ .DownloadUri.Query.id }}"
text: "{{ .Config.thankyou }}"
selectors:
- selector: a[href^="download.php?id="]
attribute: href
search:
paths:
- path: browse.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
incldead: 1
# does not support imdbid search and does not return imdb link in results
keywordsfilters:
- name: re_replace # S01E02 to 1 2
args: ["(?i)\\bS0*(\\d{1,2})\\s*E0*(\\d{1,2})\\b", "$1 $2"]
- name: re_replace # S01 to 1
args: ["(?i)\\bS0*(\\d{1,2})\\b", "$1"]
rows:
selector: table.embedded[width="99%"][border="1"][cellspacing="0"][cellpadding="0"]
filters:
- name: andmatch
fields:
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="details.php?id="]
filters:
- name: re_replace
args: ["(?i)(seizoen\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "S$2-$4"]
- name: re_replace
args: ["(?i)(seizoen\\s*)(\\d{1,2})", "S$2"]
- name: re_replace
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "E$2-$4"]
- name: re_replace
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})", "E$2"]
- name: re_replace
args: ["(?i)compleet", "Complete"]
details:
# using the download link because the details link has an error
selector: a[href^="download.php?id="]
attribute: href
filters:
- name: replace
args: ["download", "details"]
download:
# need to say thanks first
text: "{{ .Result.details }}"
size:
selector: a[href^="details_bestanden.php?torrent_id="]
filters:
- name: regexp
args: "(.+?) in"
files:
selector: a[href^="details_bestanden.php?torrent_id="]
filters:
- name: regexp
args: "in (\\d+) bestan"
grabs:
selector: table table tr:nth-child(2) td:nth-child(1)
date:
selector: table tr:nth-child(3) td:nth-child(7)
filters:
- name: regexp
args: (\d+)
- name: append
args: " hours ago"
- name: timeago
seeders:
selector: table tr:nth-child(3) td:nth-child(5) font b
optional: true
default: 0
leechers:
selector: table tr:nth-child(3) td:nth-child(5) font b:nth-child(2)
optional: true
default: 0
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
# engine n/a

View File

@@ -9,7 +9,7 @@ followredirect: true
# changes to this indexer should also be made to limetorrentsclone
links:
- https://www.limetorrents.lol/
- https://limetorrents.unblockit.asia/
- https://limetorrents.unblockit.mov/
- https://limetorrents.unblockninja.com/
- https://limetorrents.mrunblock.life/
- https://limetorrents.nocensor.click/
@@ -38,6 +38,7 @@ legacylinks:
- https://limetorrents.unblockit.boo/
- https://limetorrents.mrunblock.guru/
- https://limetorrents.unblockit.click/
- https://limetorrents.unblockit.asia/
caps:
categorymappings:
@@ -127,7 +128,7 @@ search:
default: "{{ if .Result.category_is_tv_show }}TV shows{{ else }}Other{{ end }}"
filters:
- name: regexp
args: " in (.+?)$"
args: " in (.+?)[.]?$"
details:
selector: div.tt-name > a[href^="/"]
attribute: href

View File

@@ -98,7 +98,7 @@ search:
default: "{{ if .Result.category_is_tv_show }}TV shows{{ else }}Other{{ end }}"
filters:
- name: regexp
args: " in (.+?)$"
args: " in (.+?)[.]?$"
details:
selector: div.tt-name > a[href^="/"]
attribute: href

View File

@@ -1,7 +1,7 @@
---
id: locadora
name: Locadora
description: "Locadora is a Brazilian tracker for Movies and TV Shows"
description: "Locadora is a BRAZILIAN Private Tracker for MOVIES and TV"
language: pt-BR
type: private
encoding: UTF-8
@@ -12,15 +12,16 @@ legacylinks:
caps:
categorymappings:
- {id: 1, cat: Movies}
- {id: 2, cat: TV}
- {id: 6, cat: TV/Anime}
- {id: 7, cat: Movies, desc: "Concerts"}
- {id: 1, cat: Movies, desc: "Filmes"}
- {id: 2, cat: TV, desc: "Series"}
- {id: 6, cat: TV/Anime, desc: "Animes"}
- {id: 7, cat: Audio/Video, desc: "Shows"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
music-search: [q]
settings:
- name: apikey
@@ -54,8 +55,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -63,15 +62,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -83,7 +84,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -92,8 +92,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -59,8 +59,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -68,15 +66,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -88,7 +88,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -97,8 +96,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -82,11 +82,11 @@ login:
search:
paths:
- path: letoltes.php
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
categories: ["!", 70, 39, 57]
inputs:
tipus: 1
- path: letoltes.php
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
categories: ["!", 70, 39, 57]
inputs:
tipus: 2
- path: xxx.php

View File

@@ -146,6 +146,7 @@ caps:
- {id: 293, cat: Books, desc: "Shipmodeling-Radio controlled models"}
- {id: 292, cat: Books, desc: "Shipmodeling-Marine Modelling Magazines"}
- {id: 291, cat: Books, desc: "Shipmodeling-Drawings and models of ships (CAD, 3D)"}
- {id: 346, cat: Books, desc: "Shipmodeling-Raster drawings (JPG, PDF, TIFF)"}
- {id: 290, cat: Books, desc: "Shipmodeling-Reference Material"}
- {id: 289, cat: Books, desc: "Shipmodeling-Ships in Bottles"}
- {id: 197, cat: Books, desc: "Marine bulletins"}

View File

@@ -16,6 +16,8 @@ caps:
- {id: 1, cat: PC, desc: "Applications"}
- {id: 2, cat: Books, desc: "Books Ebooks & mags"}
- {id: 59, cat: Movies/SD, desc: "Cams"}
- {id: 52, cat: Audio, desc: "DJ"}
- {id: 53, cat: Audio, desc: "DJ PACKS"}
- {id: 46, cat: Books, desc: "Documents"}
- {id: 47, cat: Audio/Lossless, desc: "Flac/HD Audio"}
- {id: 61, cat: Console, desc: "Games"}

View File

@@ -58,8 +58,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -67,15 +65,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -87,7 +87,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -96,8 +95,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -0,0 +1,179 @@
---
id: movieworld
name: MovieWorld
description: "MovieWorld (Flicker) is a Semi-Private Torrent Tracker for MOVIES / TV / 3X"
language: en-US
type: semi-private
encoding: UTF-8
links:
- https://movieworld.pics/
caps:
categorymappings:
- {id: 1, cat: Movies/SD, desc: "Movie/Xvid"}
- {id: 14, cat: Movies/WEB-DL, desc: "Movie/WeBRip"}
- {id: 2, cat: Movies/3D, desc: "Movie/3D"}
- {id: 3, cat: Movies/SD, desc: "Movie/480p"}
- {id: 5, cat: Movies/UHD, desc: "Movie/4k"}
- {id: 6, cat: Movies/BluRay, desc: "Movie/BD-R"}
- {id: 4, cat: Movies/BluRay, desc: "Movie/BD-Rip"}
- {id: 7, cat: Movies/BluRay, desc: "Movie/HD/Bluray"}
- {id: 8, cat: Movies, desc: "Movie/Kids"}
- {id: 9, cat: Movies/HD, desc: "Movie/MP4"}
- {id: 12, cat: Movies/Foreign, desc: "Movie/Non-English"}
- {id: 15, cat: Movies, desc: "Movie/Packs"}
- {id: 16, cat: Movies/HD, desc: "Movie/x265"}
- {id: 17, cat: XXX, desc: "Movie/XXX/Packs"}
- {id: 18, cat: Movies, desc: "Movie/Freeleech"}
- {id: 19, cat: Movies/DVD, desc: "Movie/DVD-R"}
- {id: 20, cat: Movies/SD, desc: "Movie/Cam"}
- {id: 21, cat: XXX, desc: "Movie/XXX"}
- {id: 23, cat: Movies/DVD, desc: "Movie/DvdRip"}
- {id: 25, cat: Audio/Video, desc: "Music/Misc"}
- {id: 28, cat: TV, desc: "Tv Packs"}
- {id: 31, cat: TV, desc: "Tv Mini Packs"}
- {id: 29, cat: TV/SD, desc: "Tv Episodes SD"}
- {id: 30, cat: TV/HD, desc: "Tv Episodes HD"}
- {id: 26, cat: TV/Sport, desc: "Tv Sport SD/HD"}
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: Filter freeleech only
default: false
- 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
- name: info
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: index.php?page=login
method: post
inputs:
uid: "{{ .Config.username }}"
pwd: "{{ .Config.password }}"
error:
- selector: tr td span[style="color:#FF0000;"]
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
# https://movieworld.pics/index.php?page=torrents&search=&category=0&active=0
- path: index.php
inputs:
page: torrents
search: "{{ .Keywords }}"
category: "{{ range .Categories }}{{.}};{{end}}"
# 0 filename, 1 file&descr, 2 descr, 3 uploaders, 18 genre, 4 imdb, 8-17 upload multiplier 1x-10x
options: 0
# 0 all, 1 active only, 2 dead only
active: 0
order: "{{ .Config.sort }}"
by: "{{ .Config.type }}"
# does not support imdbid search and does not return imdb link in results, does not support Genre search or return them in results.
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
rows:
selector: "table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]):not(:has(a[href^=\"index.php?page=userdetails\"])){{ if .Config.freeleech }}:has(img[src=\"images/freeleech.gif\"]){{ else }}{{ end }}"
fields:
category:
selector: a[href^="index.php?page=torrents&category="]
attribute: href
filters:
- name: querystring
args: category
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: a[href^="index.php?page=torrent-details&id="]
title:
text: "{{ if .Result.title_torrent }}{{ .Result.title_torrent }}{{ else }}{{ .Result.title_text }}{{ end }}"
poster:
selector: a[href^="index.php?page=torrent-details&id="]
attribute: onmouseover
filters:
- name: regexp
args: "src=(.*?) "
- name: replace
args: ["torrentimg/nocover.jpg", ""]
details:
selector: a[href^="index.php?page=torrent-details&id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
date:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td
# auto adjusted by site account profile
filters:
- name: dateparse
args: "dd/MM/yyyy"
seeders:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td
leechers:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td
grabs:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td ~ td
size:
selector: "td:has(a[href^=\"download.php?id=\"]) ~ td ~ td ~ td ~ td ~ td ~ td"
downloadvolumefactor:
case:
img[src="images/freeleech.gif"]: 0
"*": 1
uploadvolumefactor:
case:
img[src="images/2x.gif"]: 2
img[src="images/3x.gif"]: 3
img[src="images/4x.gif"]: 4
img[src="images/5x.gif"]: 5
img[src="images/6x.gif"]: 6
img[src="images/7x.gif"]: 7
img[src="images/8x.gif"]: 8
img[src="images/9x.gif"]: 9
img[src="images/10x.gif"]: 10
"*": 1
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# xbtitFM v4.1.26

View File

@@ -5,7 +5,7 @@ description: "M-Team TP (MTTP) is a CHINESE Private Torrent Tracker for HD MOVIE
language: zh-CN
type: private
encoding: UTF-8
requestDelay: 3
requestDelay: 4
links:
- https://kp.m-team.cc/
legacylinks:

View File

@@ -5,7 +5,7 @@ description: "This indexer uses a cookie login for M-Team TP (MTTP) for those th
language: zh-CN
type: private
encoding: UTF-8
requestDelay: 3
requestDelay: 4
links:
- https://kp.m-team.cc/
legacylinks:

View File

@@ -0,0 +1,200 @@
---
id: musebootlegs
name: MuseBootlegs
description: "MuseBootlegs (MB) is a Semi-Private Torrent Tracker for MUSE MUSIC / BOOTLEGS"
language: en-US
type: semi-private
encoding: UTF-8
links:
- https://www.musebootlegs.com/
caps:
categorymappings:
- {id: 4, cat: Audio/Lossless, desc: "Audio Lossless"}
- {id: 13, cat: Audio/Lossless, desc: "Audio Lossless 1999"}
- {id: 14, cat: Audio/Lossless, desc: "Audio Lossless 2000"}
- {id: 15, cat: Audio/Lossless, desc: "Audio Lossless 2001"}
- {id: 16, cat: Audio/Lossless, desc: "Audio Lossless 2002"}
- {id: 17, cat: Audio/Lossless, desc: "Audio Lossless 2003"}
- {id: 18, cat: Audio/Lossless, desc: "Audio Lossless 2004"}
- {id: 19, cat: Audio/Lossless, desc: "Audio Lossless 2005"}
- {id: 20, cat: Audio/Lossless, desc: "Audio Lossless 2006"}
- {id: 21, cat: Audio/Lossless, desc: "Audio Lossless 2007"}
- {id: 22, cat: Audio/Lossless, desc: "Audio Lossless 2008"}
- {id: 23, cat: Audio/Lossless, desc: "Audio Lossless 2009"}
- {id: 24, cat: Audio/Lossless, desc: "Audio Lossless 2010"}
- {id: 25, cat: Audio/Lossless, desc: "Audio Lossless 2011"}
- {id: 26, cat: Audio/Lossless, desc: "Audio Lossless 2012"}
- {id: 27, cat: Audio/Lossless, desc: "Audio Lossless 2013"}
- {id: 46, cat: Audio/Lossless, desc: "Audio Lossless 2014"}
- {id: 47, cat: Audio/Lossless, desc: "Audio Lossless 2015"}
- {id: 53, cat: Audio/Lossless, desc: "Audio Lossless 2016"}
- {id: 55, cat: Audio/Lossless, desc: "Audio Lossless 2017"}
- {id: 57, cat: Audio/Lossless, desc: "Audio Lossless 2018"}
- {id: 58, cat: Audio/Lossless, desc: "Audio Lossless 2019"}
- {id: 61, cat: Audio/Lossless, desc: "Audio Lossless 2022"}
- {id: 63, cat: Audio/Lossless, desc: "Audio Lossless 2023"}
- {id: 28, cat: Audio/Lossless, desc: "Audio Lossless Misc"}
- {id: 8, cat: Audio/Video, desc: "DVD Amateur"}
- {id: 3, cat: Audio/Video, desc: "DVD Pro-Shot"}
- {id: 29, cat: Audio/Video, desc: "DVD Pro-Shot 1999"}
- {id: 30, cat: Audio/Video, desc: "DVD Pro-Shot 2000"}
- {id: 31, cat: Audio/Video, desc: "DVD Pro-Shot 2001"}
- {id: 32, cat: Audio/Video, desc: "DVD Pro-Shot 2002"}
- {id: 33, cat: Audio/Video, desc: "DVD Pro-Shot 2003"}
- {id: 34, cat: Audio/Video, desc: "DVD Pro-Shot 2004"}
- {id: 35, cat: Audio/Video, desc: "DVD Pro-Shot 2005"}
- {id: 36, cat: Audio/Video, desc: "DVD Pro-Shot 2006"}
- {id: 37, cat: Audio/Video, desc: "DVD Pro-Shot 2007"}
- {id: 38, cat: Audio/Video, desc: "DVD Pro-Shot 2008"}
- {id: 39, cat: Audio/Video, desc: "DVD Pro-Shot 2009"}
- {id: 40, cat: Audio/Video, desc: "DVD Pro-Shot 2010"}
- {id: 41, cat: Audio/Video, desc: "DVD Pro-Shot 2011"}
- {id: 42, cat: Audio/Video, desc: "DVD Pro-Shot 2012"}
- {id: 43, cat: Audio/Video, desc: "DVD Pro-Shot 2013"}
- {id: 48, cat: Audio/Video, desc: "DVD Pro-Shot 2014"}
- {id: 49, cat: Audio/Video, desc: "DVD Pro-Shot 2015"}
- {id: 54, cat: Audio/Video, desc: "DVD Pro-Shot 2016"}
- {id: 56, cat: Audio/Video, desc: "DVD Pro-Shot 2017"}
- {id: 59, cat: Audio/Video, desc: "DVD Pro-Shot 2018"}
- {id: 60, cat: Audio/Video, desc: "DVD Pro-Shot 2019"}
- {id: 62, cat: Audio/Video, desc: "DVD Pro-Shot 2022"}
- {id: 44, cat: Audio/Video, desc: "DVD Pro-Shot Compilations"}
- {id: 45, cat: Audio/Video, desc: "DVD Pro-Shot Music Videos"}
- {id: 7, cat: Audio/Video, desc: "High-Definition"}
- {id: 51, cat: Audio/Video, desc: "High-Definition Pro-Shot"}
- {id: 50, cat: Audio/Video, desc: "High-Definition AMT"}
- {id: 52, cat: Audio/Video, desc: "High-Definition Music Videos"}
- {id: 6, cat: Audio/Video, desc: "Lossy Audio/Video"}
- {id: 9, cat: Audio/Video, desc: "MBDVD"}
- {id: 5, cat: Other, desc: "Misc"}
- {id: 12, cat: Other, desc: "3D"}
modes:
search: [q]
music-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- 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
- name: info_results
type: info
label: Search results
default: "If you are getting the error <b>Found no results while trying to browse this tracker</b> then first access the site with your browser and check that you are not being forced to change your password because it has expired after 180 days."
login:
path: ?p=home&pid=1
method: form
form: form#loginbox_form
submitpath: ajax/login.php
inputs:
action: login
loginbox_membername: "{{ .Config.username }}"
loginbox_password: "{{ .Config.password }}"
loginbox_remember: 1
selectorinputs:
securitytoken:
selector: "script:contains(\"stKey: \")"
filters:
- name: regexp
args: "stKey: \"(.+?)\","
error:
- selector: div.error
- selector: :contains("-ERROR-")
test:
path: ?p=home&pid=1
selector: div#member_info_bar
search:
paths:
- path: /
inputs:
p: torrents
pid: 32
$raw: "{{ range .Categories }}&cid[]={{.}}{{end}}"
keywords: "{{ .Keywords }}"
# name, description, both, uploader
search_type: name
"sortOptions[sortBy]": "{{ .Config.sort }}"
"sortOptions[sortOrder]": "{{ .Config.type }}"
rows:
selector: div.torrent-box[id^="torrent_"]
fields:
category:
selector: a[href*="?p=torrents&pid=10&cid="]
attribute: href
filters:
- name: querystring
args: cid
title:
selector: a[href*="?p=torrents&pid=10&action=details&tid="]
details:
selector: a[href*="?p=torrents&pid=10&action=details&tid="]
attribute: href
download:
selector: a[href*="?p=torrents&pid=10&action=download&tid="]
attribute: href
poster:
selector: a[href*="data/torrents/torrent_images/"]
attribute: href
size:
selector: a[rel="torrent_size"]
grabs:
selector: a[rel="times_completed"]
seeders:
selector: a[rel="torrent_seeders"]
leechers:
selector: a[rel="torrent_leechers"]
date_day:
selector: div.torrentOwner:contains("day")
# auto adjusted by site account profile
optional: true
filters:
- name: regexp
args: "Uploaded (.+?) by"
- name: fuzzytime
date_year:
selector: div.torrentOwner:contains("-")
# auto adjusted by site account profile
optional: true
filters:
- name: regexp
args: "Uploaded (.+?) by"
- name: dateparse
args: "dd-MM-yyyy HH:mm"
date:
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
downloadvolumefactor:
optional: true
default: 1
selector: img[src$="/torrent_free.png"]
attribute: title
filters:
- name: regexp
args: (\d+(\.\d+)?)
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
# TSUE 2.0

View File

@@ -178,4 +178,4 @@ search:
filters:
- name: replace
args: [" 剩余时间:", ""]
# NexusPHP v1.7.29 2022-10-13
# NexusPHP v1.8.2 2023-05-08

View File

@@ -11,29 +11,29 @@ links:
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 14, cat: Movies/SD, desc: "Movies DivX"}
- {id: 16, cat: Movies/SD, desc: "Movies CAM"}
- {id: 14, cat: Movies/SD, desc: "Movies SD"}
- {id: 16, cat: Movies/SD, desc: "Movies Retro"}
- {id: 17, cat: Movies/HD, desc: "Movies HD"}
- {id: 17, cat: TV/HD, desc: "TV HD"}
- {id: 31, cat: Movies/BluRay, desc: "Movies BDRip"}
- {id: 6, cat: PC, desc: "Applications"}
- {id: 18, cat: PC/0day, desc: "Applications PC"}
- {id: 19, cat: PC/Mac, desc: "Applications Macintosh"}
- {id: 7, cat: Audio, desc: "Music"}
- {id: 20, cat: Audio/Video, desc: "Music Video"}
- {id: 21, cat: Audio/MP3, desc: "Music Mp3"}
- {id: 2, cat: Console, desc: "Games"}
- {id: 3, cat: Console/PS3, desc: "Games Sony PS"}
- {id: 4, cat: Console/Wii, desc: "Games Wii"}
- {id: 26, cat: Console/XBox, desc: "Games XboX"}
- {id: 27, cat: PC/Games, desc: "Games PC"}
- {id: 28, cat: Console/NDS, desc: "Games Nintendo"}
- {id: 32, cat: Movies/BluRay, desc: "Movies BluRay"}
- {id: 33, cat: Movies, desc: "Movies Pack"}
- {id: 6, cat: Movies, desc: "iNTERNAL"}
- {id: 18, cat: Movies/SD, desc: "iNTERNAL SD"}
- {id: 19, cat: Movies/SD, desc: "iNTERNAL Retro"}
- {id: 34, cat: Movies/HD, desc: "iNTERNAL HD"}
- {id: 35, cat: Movies/BluRay, desc: "iNTERNAL BDRip"}
- {id: 36, cat: Movies/BluRay, desc: "iNTERNAL BluRay"}
- {id: 37, cat: Movies, desc: "iNTERNAL Pack"}
- {id: 2, cat: TV, desc: "TV Episodes"}
- {id: 3, cat: TV/SD, desc: "TV Episodes SD"}
- {id: 4, cat: TV, desc: "TV Episodes Series"}
- {id: 26, cat: TV/HD, desc: "TV Episodes HDTV Episodes"}
- {id: 27, cat: TV/HD, desc: "TV Episodes HDTV Series"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
settings:
- name: username

View File

@@ -60,8 +60,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -69,15 +67,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -89,7 +89,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -98,8 +97,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -192,4 +192,4 @@ search:
remove: a, img, span
description:
text: "{{ .Result.genre }}"
# NexusPHP v1.7.33 2022-12-19
# NexusPHP v1.8.0 2023-04-16

View File

@@ -188,4 +188,4 @@ search:
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.2 2023-05-08
# NexusPHP v1.8.3 2023-05-14

View File

@@ -172,4 +172,4 @@ search:
filters:
- name: replace
args: [" 剩余时间:", ""]
# Ourbits 1.1.0 (Based on NexusPHP Standard v1.5 Beta 4) 4691022 2023-05-04
# Ourbits 1.1.0 (Based on NexusPHP Standard v1.5 Beta 4) 3feac18 2023-05-30

View File

@@ -0,0 +1,195 @@
---
id: panda
name: Panda
description: "Panda is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://pandapt.net/
caps:
categorymappings:
- {id: 401, cat: Movies, desc: "Movies/电影"}
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
- {id: 412, cat: PC, desc: "Software/软件"}
- {id: 411, cat: Console, desc: "Games/游戏"}
- {id: 410, cat: Books, desc: "E-Books/电子书"}
- {id: 406, cat: Audio/Video, desc: "Music Videos/MV"}
- {id: 408, cat: Audio, desc: "Music/音乐"}
- {id: 409, cat: Other, desc: "Others/其他"}
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 Kufei Web Site. Otherwise just leave it empty."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: 4
options:
4: created
7: seeders
5: size
1: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_tpp
type: info
label: Results Per Page
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
inputs:
secret: ""
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
two_step_code: "{{ .Config.2facode }}"
logout: ""
securelogin: ""
ssl: yes
trackerssl: yes
error:
- selector: td.embedded:has(h2:contains("失败"))
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
# 0 incldead, 1 active, 2 dead
incldead: 0
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdburl
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
# 0 AND, 2 exact
search_mode: 0
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
fields:
category:
selector: a[href^="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title_default:
selector: a[href^="details.php?id="]
title:
selector: a[title][href^="details.php?id="]
attribute: title
optional: true
default: "{{ .Result.title_default }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
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: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-ddHH:mm:ss zzz"
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td.rowfollow:nth-child(5)
seeders:
selector: td.rowfollow:nth-child(6)
leechers:
selector: td.rowfollow:nth-child(7)
grabs:
selector: td.rowfollow:nth-child(8)
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
"*": 1
minimumratio:
text: 1.0
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.4 2023-06-13

View File

@@ -21,10 +21,10 @@ caps:
- {id: 409, cat: Other, desc: "Misc/其他", default: true}
- {id: 408, cat: Audio, desc: "Music/音乐", default: true}
# kids zone
- {id: 908, cat: TV, desc: "TV Series/剧集", default: true}
- {id: 909, cat: Movies, desc: "Movies/电影", default: true}
- {id: 905, cat: Audio/Video, desc: "MusicVideo/MV", default: true}
- {id: 907, cat: Audio, desc: "Music/音乐", default: true}
- {id: 908, cat: TV, desc: "TV Series/剧集", default: false}
- {id: 909, cat: Movies, desc: "Movies/电影", default: false}
- {id: 905, cat: Audio/Video, desc: "MusicVideo/MV", default: false}
- {id: 907, cat: Audio, desc: "Music/音乐", default: false}
modes:
search: [q]
@@ -79,7 +79,7 @@ login:
search:
paths:
- path: torrents.php
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409]
categories: ["!", 905, 907, 908, 909]
- path: special.php
categories: [905, 907, 908, 909]
inputs:

View File

@@ -59,8 +59,6 @@ settings:
login:
path: /api/torrents
method: get
inputs:
api_token: "{{ .Config.apikey }}"
error:
- selector: a[href*="/login"]
message:
@@ -68,15 +66,17 @@ login:
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
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
- path: "/api/torrents/filter"
response:
type: json
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
inputs:
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
api_token: "{{ .Config.apikey }}"
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
@@ -88,7 +88,6 @@ search:
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
page: 1
keywordsfilters:
- name: re_replace
@@ -97,8 +96,6 @@ search:
rows:
selector: data
attribute: attributes
count:
selector: meta.total
fields:
category:

View File

@@ -185,4 +185,4 @@ search:
description:
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.2 2023-04-29
# NexusPHP v1.8.4 2023-05-27

View File

@@ -5,6 +5,8 @@ description: "PTFiles (PTF) is a Private site for TV / MOVIES / GENERAL"
language: en-US
type: private
encoding: windows-1252
certificates:
- 69901C31636B4D413903F4B32573ED6E8F5961FE # expired 26 May 2023
links:
- https://ptfiles.net/
@@ -42,13 +44,12 @@ caps:
book-search: [q]
settings:
- name: cookie
- name: username
type: text
label: Cookie
- name: info
type: info
label: How to get the Cookie
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Search freeleech only
@@ -71,9 +72,20 @@ settings:
asc: asc
login:
method: cookie
path: loginproc/
method: form
form: form#login
inputs:
cookie: "{{ .Config.cookie }}"
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
force_ssl: on
ssl: ""
selectorinputs:
hash:
selector: input[name="hash"]
attribute: value
error:
- selector: p.error:contains(strong)
test:
path: browse.php

Some files were not shown because too many files have changed in this diff Show More