Compare commits

..

171 Commits

Author SHA1 Message Date
Garfield69
af4f731df4 assorted unit3d: adjust time zone 2024-12-04 15:16:35 +13:00
Garfield69
a59b173014 rudub: bump domain 2024-12-04 05:42:35 +13:00
Garfield69
4a0348f3dd le-cinephile: new cats 2024-12-04 05:42:25 +13:00
Garfield69
4390d7acac FNP: new mandatory MST, MR is now just global 2024-12-03 20:54:46 +13:00
Garfield69
0a8bc6f7a1 assorted unit3d; bump engine tag 2024-12-03 20:53:45 +13:00
Garfield69
9139deea4b solidtorrents: new cat 2024-12-03 18:18:45 +13:00
Garfield69
57f941557e solidtorrents: switch back to .eu TLD resolves #4751 2024-12-03 15:57:12 +13:00
Garfield69
b2703b7668 torrent-explosiv: add info_password for config 2024-12-03 07:15:09 +13:00
Garfield69
4d7185cb66 dark-shadow: update info_password for config 2024-12-03 07:14:42 +13:00
Garfield69
c9d5db7401 rudub: bump domain 2024-12-03 06:51:22 +13:00
Garfield69
55c18d730d nyaasi; lint 2024-12-02 19:55:57 +13:00
Garfield69
600aa9bb26 nyaasi: refresh cats descr and add music mode 2024-12-02 19:29:41 +13:00
Garfield69
a75f1d8c48 nyaapantsu: add anime movies for radarr 2024-12-02 19:28:50 +13:00
Garfield69
57d53bc231 polishtorrent: update cats 2024-12-02 14:06:21 +13:00
Garfield69
98b6692a1e nyaapantsu: lint 2024-12-02 08:08:20 +13:00
Garfield69
9f000669f5 add nyaapantsu a public site. resolves #15740 2024-12-02 07:42:55 +13:00
Garfield69
5453fc8f25 rudub: bump domain 2024-12-02 06:10:46 +13:00
Garfield69
4ba6a6b910 crabpt: drop results without DL 2024-12-02 06:10:27 +13:00
Garfield69
88300e7f28 add HHD a private site. resolves #15738 2024-12-01 12:00:34 +13:00
Garfield69
7bdce70db7 rudub: bump domain 2024-12-01 04:40:55 +13:00
Garfield69
f8ef344dd5 proporno: new cat 2024-12-01 04:40:41 +13:00
Garfield69
02d8637b92 divxtotal; new domain 2024-11-30 18:15:33 +13:00
Garfield69
d5aa3cdd83 rudub: bump domain 2024-11-30 05:39:13 +13:00
Garfield69
503a081379 infire: new cat 2024-11-30 05:38:59 +13:00
Garfield69
e77e5f499b kickasstorrents-to: trap the 403 rather than give 0 results
this should help raise awareness that the indexer is being blocked
2024-11-29 19:29:14 +13:00
Garfield69
433709b57a rptscene: removed. resolves #5368 2024-11-29 05:20:28 +13:00
Garfield69
89a8a60b0f torrent9: drop unblockninja 2024-11-29 05:19:32 +13:00
Garfield69
7c8416c64a torlock: drop torlock2 2024-11-29 05:19:16 +13:00
Garfield69
df7ebdb2b0 rudub: bump domain 2024-11-29 05:18:40 +13:00
groggy9788
90dc1bd645 seedpool: remove unsupported search parameters imdbid and tvdbid (#15734) 2024-11-28 19:57:34 +13:00
Garfield69
5df7ede721 torrentqq: bump domains 2024-11-28 18:08:04 +13:00
Garfield69
142f3a2ea2 torrentsir: bump domain 2024-11-28 04:57:28 +13:00
Garfield69
77c23257b2 rudub: bump domain 2024-11-28 04:57:08 +13:00
Garfield69
1b5c52c2d8 f1carreras: new cat 2024-11-27 15:22:55 +13:00
Garfield69
5af2875ed4 ourbits: new logout link. resolves #15730
related #15720
2024-11-27 06:20:06 +13:00
Garfield69
4318ff3689 rudub: bump domain 2024-11-27 05:26:46 +13:00
Garfield69
820437f522 LDU: lint 2024-11-26 14:11:22 +13:00
Garfield69
ef37ec4533 LDU: update cats 2024-11-26 14:06:53 +13:00
HDVinnie
ba962a6382 (Add) Blutopia (BLU) (#15729) 2024-11-26 11:19:35 +13:00
Garfield69
ca802f998e rudub: bump domain 2024-11-26 04:49:54 +13:00
Garfield69
bec9908854 torrent9-tel: new domain 2024-11-25 18:12:34 +13:00
Garfield69
2690efea1d Update README.md 2024-11-25 04:50:42 +13:00
Garfield69
12a380ed35 rudub: bump domain 2024-11-25 04:46:47 +13:00
Bogdan
60a76cf8c8 redacted: new site link (#15725) 2024-11-24 12:47:38 +02:00
Bogdan
be590002a7 immortalseed: update relogin check 2024-11-24 11:49:54 +02:00
Garfield69
23d5545072 dontorrent: new domain 2024-11-24 18:37:44 +13:00
Garfield69
2e098ae13b rudub: bump domain 2024-11-24 05:17:13 +13:00
Garfield69
93f853abf0 losslessclub: add config info avout forum vs tracker. #15723 2024-11-23 19:30:38 +13:00
Garfield69
44bfba5f2c rudub: bump domain 2024-11-23 04:53:20 +13:00
Garfield69
8a656b6839 mazepa: update cats 2024-11-23 04:53:09 +13:00
Garfield69
25f8db676e add thepiratedship a private site. resolves #15722 2024-11-22 12:17:06 +13:00
Garfield69
335cd2f3eb torrentqq: bump domain 2024-11-22 05:03:02 +13:00
Garfield69
e1a53faf19 rudub: bump domain 2024-11-22 05:02:46 +13:00
Garfield69
33787dcb16 oldtoonsworld: -> 8.3.3 2024-11-21 13:51:37 +13:00
Garfield69
015f1414d2 rudub: bump domain 2024-11-21 05:03:21 +13:00
Garfield69
0c5bda00b6 glodls: unblockninja working now 2024-11-21 05:03:10 +13:00
Garfield69
9faeb4cf45 denofsimps: removed. resolves #15460 2024-11-20 13:21:14 +13:00
Bogdan
2c159ccf9b bitmagnet: add alternative link for docker hosts 2024-11-19 22:44:10 +02:00
Garfield69
fc1a4e963a rustorka: switch to cookie login. resolves #13515 2024-11-20 06:42:40 +13:00
Garfield69
620a2ab5a3 rudub: bump domain 2024-11-20 06:19:23 +13:00
Garfield69
778cbeeed3 seedoff: prevent forbidden 2024-11-20 06:19:12 +13:00
Garfield69
e0209750b2 torrentsir: bump domain 2024-11-19 05:37:46 +13:00
Garfield69
187ad905b9 rudub: bump domain 2024-11-18 21:08:37 +13:00
Garfield69
3fb8d930aa jav-torrent: new domain .resolves #13017 2024-11-18 21:08:25 +13:00
Garfield69
23afd21e11 xider-torrent: CA expired 2024-11-18 05:56:48 +13:00
Garfield69
404bd92921 rudub: bump domain 2024-11-18 05:46:12 +13:00
Garfield69
75f8061eec add polskie-torrenty a semi-private Polish site. resolves #15712 2024-11-17 12:12:34 +13:00
Garfield69
b6551a5afb helltorrents: fix typo 2024-11-17 12:11:56 +13:00
Garfield69
825be26ddc ex-torrenty: fix typo 2024-11-17 12:11:41 +13:00
Garfield69
4ca5961844 xspeeds: update cats 2024-11-17 06:01:07 +13:00
Garfield69
932d47718b rudub: bump domain 2024-11-17 05:33:14 +13:00
Garfield69
9575f75547 kimoji: removed. resolves #14934 2024-11-16 16:46:42 +13:00
Tiago Oliveira
75a002b853 SceneRush: update cats (#15711) 2024-11-16 15:11:42 +13:00
Garfield69
f10652f0ea isohunt: drop nz domain. resolves #2023 2024-11-16 10:19:42 +13:00
Garfield69
71c18ee5ed torrentwhiz: removed. resolves #14909 2024-11-16 10:14:25 +13:00
Garfield69
e3c4b91488 u2: new layout and DL is on details page. resolves #15710 2024-11-16 08:45:16 +13:00
Garfield69
3e68e45c14 rudub: bump domain 2024-11-16 05:52:27 +13:00
Garfield69
b90bf95fdd lemonhd: fix details selector. resolves #15705 2024-11-16 05:52:17 +13:00
Garfield69
12d952d0f5 Update README.md 2024-11-15 14:46:00 +13:00
Garfield69
409407f38b lemonhd: update cats and modes #15705 2024-11-15 09:11:35 +13:00
Garfield69
cc9c89241b restore lemonhd a Chinese private site. resolves #15705
Previous version was a custom nexus v1.5b4 but this is is back to a standard nexus v1.5b4
2024-11-15 08:58:30 +13:00
Garfield69
9271095b61 mactorrentsdownload: new download process. resolves #12396
from the details page extract the path to the actual download page and then extract the download link from a script.
2024-11-15 06:48:22 +13:00
Garfield69
31847f6e81 vault-network: new cat 2024-11-15 06:28:00 +13:00
Garfield69
cd2b96cfb0 torrentsir: bump domain 2024-11-15 05:16:58 +13:00
Garfield69
ddfe681685 rudub: bump domain 2024-11-15 05:16:42 +13:00
Garfield69
a128b517d5 torrentqq: bump domains 2024-11-14 18:36:44 +13:00
Garfield69
bc82ecfebe Revert "add Ygg-api an unofficial API for YGG movies and tv (#15707)"
This reverts commit 75d6b08713.
2024-11-14 18:36:21 +13:00
Clemv95
75d6b08713 add Ygg-api an unofficial API for YGG movies and tv (#15707) 2024-11-14 16:39:49 +13:00
Garfield69
063f9ab3b1 rudub: bump domain 2024-11-14 05:08:23 +13:00
ilike2burnthing
61c03e82d9 rockethd: restore and update. resolves #15237 (#15704) 2024-11-13 08:27:09 +00:00
Garfield69
bbe6a9ed41 assorted nexus: fix date elapsed selector 2024-11-13 21:15:21 +13:00
Garfield69
835dc2cb15 add hdclone a Chinese private site. resolves #15703 2024-11-13 17:03:32 +13:00
Garfield69
7b78cacc9d vault-network: new cat 2024-11-13 06:10:20 +13:00
Garfield69
5537a53d30 rudub: bump domain 2024-11-13 05:29:20 +13:00
Garfield69
95384a92ee blutopia: removed. resolves #13778 2024-11-12 13:46:59 +13:00
Garfield69
197b66ea64 turknova: removed. resolves #9104 2024-11-12 13:45:24 +13:00
Garfield69
f8024be5cf torrentbd: add referer to complete cookie acceess 2024-11-12 06:08:47 +13:00
Garfield69
9d0e2adcca rudub: bump domain 2024-11-12 05:31:16 +13:00
Garfield69
6084287e4c aither: bump engine tag 2024-11-11 20:40:08 +13:00
Garfield69
76d3eaa4ec bitstream: removed. resolves #15597 2024-11-11 20:39:50 +13:00
ilike2burnthing
90bde6d62f Update README.md 2024-11-10 17:57:13 +00:00
Garfield69
a7cfedbe82 torrent9-tel: new domain 2024-11-11 05:54:10 +13:00
Garfield69
6d5c486011 rudub: bump domain 2024-11-11 05:47:48 +13:00
ilike2burnthing
d24704a6c0 Update README.md 2024-11-10 15:52:05 +00:00
Garfield69
86da01df19 Revert "xspeeds: fix for #15700"
This reverts commit 6fa840a70a.
2024-11-10 17:41:21 +13:00
Garfield69
6fa840a70a xspeeds: fix for #15700 2024-11-10 16:57:06 +13:00
Garfield69
baa19b3067 magnetcat: add more alternate domains 2024-11-10 07:05:52 +13:00
Garfield69
a4555501e2 rudub: bump domain 2024-11-10 05:21:50 +13:00
Garfield69
b347bed4f1 magnetcat: add alternate domain. resolves #15590
add alternate date and site selector detection
add current domain list link comment
2024-11-10 05:21:00 +13:00
zakary
248a3d2fb8 aither: site switched to UTC a week ago (#15698) 2024-11-09 12:28:14 +13:00
Garfield69
25a8b26403 torrentslocal: CA expired 2024-11-09 05:33:53 +13:00
Garfield69
a3ebd0e2ac rudub: bump domain 2024-11-09 05:33:38 +13:00
Garfield69
9cf2cb5ced dontorrent: bump domain 2024-11-08 18:25:14 +13:00
Garfield69
06d8682583 seedoff: flag search-not-available error 2024-11-08 05:22:56 +13:00
Garfield69
e784e38355 rudub: bump domain 2024-11-08 05:22:07 +13:00
ilike2burnthing
be939745a6 Update README.md 2024-11-07 10:52:43 +00:00
Garfield69
7d58649c40 torrentqq: bump domains 2024-11-07 18:18:02 +13:00
Garfield69
d057bcfeeb teamos: add config info about notices. 2024-11-07 06:08:26 +13:00
Garfield69
ff2683c911 rudub: bump domain 2024-11-07 05:41:36 +13:00
Garfield69
07c1d9d61d mejortorrent: bump domain 2024-11-06 18:14:15 +13:00
ilike2burnthing
e7f8b5af3c Update README.md 2024-11-06 03:43:49 +00:00
Garfield69
f9db68ca8b rudub: bump domain 2024-11-06 06:34:04 +13:00
Garfield69
038ec05a64 hdtorrents: add inactivity info to config 2024-11-05 20:33:52 +13:00
Garfield69
c705778ec3 erairaws: new rss token path + new invalid token detection. resolves #15687 2024-11-05 19:37:51 +13:00
Garfield69
07c1efa686 erairaws: handled missing subtitles. resolves #15687 2024-11-05 06:54:55 +13:00
Garfield69
88b51d9895 thecrazyones: DL now on details page only 2024-11-05 06:54:26 +13:00
Garfield69
dc3a1d5626 Update rudub.yml 2024-11-05 05:53:37 +13:00
Garfield69
283f95429c rudub: bump domain 2024-11-04 06:02:31 +13:00
Garfield69
65af1dfead hdtorrents: add flaresolverr config info 2024-11-03 17:59:01 +13:00
Garfield69
17fef0064d hdtorrents.org: add missing cat 2024-11-03 08:53:35 +13:00
Garfield69
6ac3faa395 Update README.md 2024-11-03 08:18:13 +13:00
Garfield69
d791a5c358 rudub: bump domain 2024-11-03 05:41:38 +13:00
Garfield69
bbf5b7b56e mypornclub: CA expired 2024-11-03 05:41:29 +13:00
Garfield69
5499e4714a xperiencebytes: removed. resolves #15594 2024-11-02 19:30:38 +13:00
Garfield69
f141e6fad6 dontorrent: new domain 2024-11-02 06:12:09 +13:00
Garfield69
d24ebe7781 rudub: bump domain 2024-11-02 06:11:55 +13:00
Jonas Stendahl
8139f3ba1f superbits: add alternative link (#15682) 2024-11-02 05:23:32 +13:00
Bogdan
03931906da superbits: update timezone offset 2024-11-01 17:54:10 +02:00
Bogdan
ebf1e302b3 filelist: update timezone offset 2024-11-01 17:53:09 +02:00
Bogdan
73d6068cb3 iptorrents: search IMDb ID in descriptions 2024-11-01 17:50:25 +02:00
Garfield69
abbbb34c6c assorted unit3d: bump engine tag 2024-11-01 14:53:52 +13:00
Garfield69
b2a8221ab1 torrentsir: bump domain 2024-11-01 05:34:20 +13:00
Garfield69
46e99d1d50 torrentqq: bump domains 2024-11-01 05:34:10 +13:00
Garfield69
94b20baabd rudub: bump domain 2024-11-01 05:33:55 +13:00
Garfield69
5b76d876a1 mejortorrent: bump domain 2024-10-31 18:12:42 +13:00
Garfield69
8362bf5767 nusantarare: update config inactivity info 2024-10-31 17:33:52 +13:00
Garfield69
a9a7cc4752 assorted yml: add login error detection 2024-10-31 15:16:20 +13:00
Garfield69
6a5b6e8a30 gaytorrentru: add failed login error detection. #15680 2024-10-31 07:07:20 +13:00
Garfield69
2079192f0b avistaztracker: update account inactivity info. resolves #15679 2024-10-31 05:20:25 +13:00
Garfield69
885b92137e rudub: bump domain 2024-10-31 05:19:33 +13:00
Garfield69
24de1f95cc onlyencodes: bump engioe tag 2024-10-31 05:19:22 +13:00
Garfield69
5995fed99e irishtv: new selectors resolves #15678 2024-10-30 08:32:56 +13:00
Garfield69
abc07864d1 reamos: new cat 2024-10-30 06:55:57 +13:00
Garfield69
6073138fd0 oldgreektracker: add new cats 2024-10-30 06:55:47 +13:00
Garfield69
eb2ef44140 cyanbug: drop rows without dL 2024-10-30 06:55:36 +13:00
Garfield69
4a2afa2b04 rudub: bump domain 2024-10-30 06:55:09 +13:00
Garfield69
27c03c1d14 Revert "internetarchive: comment unusable fl param"
This reverts commit 6682682fb1.
the parameter is working again now
2024-10-29 13:25:24 +13:00
Garfield69
9b0ea775c5 assorted unit3d: bump engine tag 2024-10-29 08:24:47 +13:00
Garfield69
1cae15b996 rudub: bump domain 2024-10-29 05:32:27 +13:00
Bogdan
6682682fb1 internetarchive: comment unusable fl param
Closes #14180
2024-10-28 13:27:11 +02:00
Garfield69
2ae92864a5 fearnopeer: -> 8.3.3 2024-10-28 14:54:11 +13:00
Garfield69
4a27912ffd assorted unit3d: bump engine tag 2024-10-28 14:53:51 +13:00
Garfield69
1b37296598 oldgreektracker: MR + MST 2024-10-28 11:42:22 +13:00
Bogdan
f8d899445a knaben: fix cs 2024-10-27 19:53:31 +02:00
Bogdan
564d390473 knaben: migrate to C# API (#15674) 2024-10-28 06:51:15 +13:00
Garfield69
84fbcbb82d rudub: bump domain 2024-10-28 05:24:55 +13:00
Bogdan
726482ca0e bump macOS runner version to 13 (#15675) 2024-10-27 18:02:29 +02:00
Rafał Stępień
542891a78a exitorrent.org: search all languages instead of just polish (#15672) 2024-10-27 18:42:15 +13:00
Garfield69
f7f251f967 dark-shadow: add config info about 8week pswd life 2024-10-27 11:51:00 +13:00
Garfield69
15f8e3832d byrutor: new layout selectors 2024-10-27 06:08:11 +13:00
Garfield69
dd0c30a0c2 rudub: bump domain 2024-10-27 05:45:49 +13:00
102 changed files with 1731 additions and 1346 deletions

View File

@@ -94,6 +94,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* NNTT
* NoNaMe Club (NNM-Club)
* Nyaa.si
* NyaaPantsu
* OneJAV
* OxTorrent
* OxTorrent-vip
@@ -136,7 +137,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Torrents.csv
* TorrentSir (토렌트썰)
* TorrentView (토렌트뷰)
* TorrentWhiz (토렌트위즈)
* Torrentz2nz
* TrahT
* truPornolabs
@@ -200,6 +200,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* NetHD (VietTorrent)
* Newstudio (login)
* NoNaMe Club (NNM-Club) (login)
* Polskie-Torrenty
* PornoLab
* PussyTorrents
* Rainbow Tracker
@@ -275,7 +276,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Bitpalace
* BitPorn
* Bitspyder
* BitStream
* BitTorrentFiles
* BiTTuRK
* BJ-Share (BJ) [![(invite needed)][inviteneeded]](#)
@@ -295,7 +295,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* CapybaraBR
* Carp-Hunter
* Carpathians
* CarPT
* CarPT [![(invite needed)][inviteneeded]](#)
* Cathode-Ray.Tube (CRT)
* CD File
* CeskeForum
@@ -320,8 +320,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Dark-Shadow
* Das Unerwartete (D-U)
* DataScene (DS)
* DenOfSimps (DoS)
* DesiTorrents
* DesiTorrents [![(invite needed)][inviteneeded]](#)
* Diablo Torrent
* DICMusic [![(invite needed)][inviteneeded]](#)
* DigitalCore
@@ -358,7 +357,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Gay-Torrents.org
* GAYtorrent.ru
* GazelleGames (GGn)
* Generation-Free
* Generation-Free [![(invite needed)][inviteneeded]](#)
* GigaTorrents
* GimmePeers (formerly ILT)
* GiroTorrent
@@ -375,13 +374,14 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* HD-Olimpo [![(invite needed)][inviteneeded]](#)
* HD-Only (HDO)
* HD-Space (HDS)
* HD-Torrents (HDT) [![(invite needed)][inviteneeded]](#)
* HD-Torrents (HDT)
* HD-UNiT3D
* HD4FANS [![(invite needed)][inviteneeded]](#)
* HDArea (HDA)
* HDAtmos
* HDBits [![(invite needed)][inviteneeded]](#)
* HDCiTY (HDC) [![(invite needed)][inviteneeded]](#)
* HDClone
* HDFans
* HDHome (HDBigger) [![(invite needed)][inviteneeded]](#)
* HDKylin (麒麟)
@@ -397,6 +397,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Hebits
* HellasHut
* HHanClub
* HHD
* HomePornTorrents (HPT)
* House of Devil
* HUDBT (蝴蝶) [![(invite needed)][inviteneeded]](#)
@@ -420,7 +421,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Karagarga [![(invite needed)][inviteneeded]](#)
* Keep Friends [![(invite needed)][inviteneeded]](#)
* Kelu
* KIMOJI
* Korsar [![(invite needed)][inviteneeded]](#)
* KrazyZone
* Kufei (库非)
@@ -434,6 +434,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* LearnBits
* LearnFlakes
* Leech24
* LemonHD [![(invite needed)][inviteneeded]](#)
* Lesbians4u
* Libble
* LibraNet (LN)
@@ -521,10 +522,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* Resurrect The Net [![(invite needed)][inviteneeded]](#)
* RetroFlix
* RevolutionTT [![(invite needed)][inviteneeded]](#)
* RocketHD
* Romanian Metal Torrents (RMT)
* RoTorrent
* Rousi
* RPTScene (RPTorrents)
* SATClubbing
* SceneHD [![(invite needed)][inviteneeded]](#)
* SceneRush
@@ -569,6 +570,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* The-New-Fun
* TheEmpire (TE)
* TheLeachZone (TLZ)
* ThePiratedShip
* TheScenePlace (TSP)
* TJUPT (北洋园PT)
* TLFBits [![(invite needed)][inviteneeded]](#)
@@ -601,7 +603,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* TranceTraffic
* Trellas (Magico) [![(invite needed)][inviteneeded]](#)
* TreZzoR
* TurkNova
* TurkSeed
* TurkTorrent (TT)
* TV Chaos UK (TVCUK)
@@ -620,14 +621,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
* White Angel
* WinterSakura
* World-In-HD [![(invite needed)][inviteneeded]](#)
* World-of-Tomorrow
* World-of-Tomorrow [![(invite needed)][inviteneeded]](#)
* Wukong (悟空问道)
* x-ite.me (XM)
* Xider-Torrent
* XperienceBytes (XPB)
* XSpeeds (XS)
* Xthor [![(invite needed)][inviteneeded]](#)
* xTorrenty
* xTorrenty [![(invite needed)][inviteneeded]](#)
* XtremeBytes
* XWT-Classics
* XWTorrents (XWT)

View File

@@ -51,14 +51,14 @@ stages:
artifactName: Jackett.Binaries.Windows.zip
macOS:
buildDescription: macOS
imageName: macOS-12
imageName: macOS-13
framework: $(netCoreFramework)
runtime: osx-x64
archiveType: tar
artifactName: Jackett.Binaries.macOS.tar.gz
macOSARM64:
buildDescription: macOS ARM64
imageName: macOS-12
imageName: macOS-13
framework: $(netCoreFramework)
runtime: osx-arm64
archiveType: tar
@@ -427,7 +427,7 @@ stages:
runtime: win-x86
macOS:
buildDescription: macOS
imageName: macOS-12
imageName: macOS-13
framework: $(netCoreFramework)
runtime: osx-x64
LinuxAMDx64:
@@ -521,7 +521,7 @@ stages:
runtime: win-x86
macOS:
buildDescription: macOS
imageName: macOS-12
imageName: macOS-13
artifactName: Jackett.Binaries.macOS.tar.gz
framework: $(netCoreFramework)
runtime: osx-x64

View File

@@ -47,6 +47,8 @@ login:
vb_login_password: "{{ .Config.password }}"
cookieuser: 1
do: login
error:
- selector: div.restore:contains("invalid username or password")
test:
path: torrents.php
selector: a[href*="logout.php"]

View File

@@ -152,7 +152,7 @@ search:
selector: created_at
filters:
- name: append
args: " -01:00" # EGT
args: " +00:00" # UTC
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:
@@ -188,4 +188,4 @@ search:
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 8.3.1 (custom)
# json UNIT3D 8.3.3

View File

@@ -193,4 +193,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.2.0
# json UNIT3D 8.3.4

View File

@@ -106,6 +106,8 @@ login:
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: :root:contains("Sikertelen bejelentkezés")
test:
path: index.php
selector: a[href^="logout.php?c="]

View File

@@ -7,6 +7,7 @@ type: semi-private
encoding: UTF-8
links:
- http://127.0.0.1:3333/
- http://bitmagnet:3333/
caps:
categorymappings:

View File

@@ -188,4 +188,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.2
# json UNIT3D 8.3.4

View File

@@ -356,44 +356,32 @@ search:
rows:
# results without sizes are just pre-release announcements
selector: div.short_search:has(div.shor_subtitles span:nth-child(2):contains(" "))
selector: a.search_res:has(div.search_res_sub span:nth-child(2):contains(" "))
fields:
category:
text: 1
year:
selector: div.shor_subtitles span
selector: div.search_res_sub span
filters:
- name: regexp
args: (\d+)
title:
selector: div.short_titles > a
selector: a.search_res
filters:
- name: append
args: " [{{ .Result.year }}]"
details:
selector: div.short_titles > a
selector: a.search_res
attribute: href
download:
selector: div.short_titles > a
selector: a.search_res
attribute: href
poster:
selector: img
attribute: src
date:
selector: img
attribute: src
filters:
- name: regexp
args: ".*/(\\d{4}-\\d{2})/.*"
- name: dateparse
args: "yyyy-MM"
seeders:
text: 1
leechers:
text: 1
size_rus:
selector: div.shor_subtitles span:nth-child(2):contains("Б")
selector: div.search_res_sub span:nth-child(2):contains("Б")
optional: true
default: "0 B"
filters:
@@ -406,9 +394,15 @@ search:
- name: replace
args: ["КБ", "KB"]
size:
selector: div.shor_subtitles span:nth-child(2):contains("B")
selector: div.search_res_sub span:nth-child(2):contains("B")
optional: true
default: "{{ .Result.size_rus }}"
date:
text: now
seeders:
text: 1
leechers:
text: 1
downloadvolumefactor:
text: 0
uploadvolumefactor:

View File

@@ -195,4 +195,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.2 (custom)
# json UNIT3D 8.3.3 (custom)

View File

@@ -72,6 +72,8 @@ login:
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: table.main:contains("Sikertelen bejelentkezés")
test:
path: index.php
selector: a[href^="logout.php"]

View File

@@ -190,4 +190,4 @@ search:
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 8.2.0
# json UNIT3D 8.3.4

View File

@@ -110,7 +110,7 @@ search:
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(a[href^="details.php?id="])
selector: table.torrents > tbody > tr:has(a[href^="download.php?id="])
fields:
category:

View File

@@ -113,7 +113,7 @@ search:
notnewword: 1
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
selector: table.torrents > tbody > tr:has(table.torrentname):has(a[href^="download.php?id="])
fields:
category:
@@ -148,7 +148,7 @@ search:
attribute: href
date_elapsed:
# time type: time elapsed (default)
selector: td:nth-child(4) > span[title]
selector: td.rowfollow:nth-child(4) > span[title]
attribute: title
optional: true
filters:
@@ -158,7 +158,7 @@ search:
args: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td:nth-child(4):not(:has(span))
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
@@ -168,17 +168,17 @@ search:
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(5)
selector: td.rowfollow:nth-child(5)
seeders:
selector: td:nth-child(6)
selector: td.rowfollow:nth-child(6)
optional: true
default: 1
leechers:
selector: td:nth-child(7)
selector: td.rowfollow:nth-child(7)
optional: true
default: 1
grabs:
selector: td:nth-child(8)
selector: td.rowfollow:nth-child(8)
optional: true
default: 1
downloadvolumefactor:
@@ -204,7 +204,7 @@ search:
span[title="未审"], span[title="未審"], span[title="Not reviewed"]: "Unverified:"
span[title="拒绝"], span[title="拒絕"], span[title="Denied"]: "Banned:"
description:
selector: td:nth-child(2)
selector: td.rowfollow:nth-child(2)
remove: a, b, font, img, span
filters:
- name: prepend

View File

@@ -72,6 +72,10 @@ caps:
book-search: [q]
settings:
- name: info_password
type: info
label: About Password Expiry
default: "Dark Shadow has an <b>8 week Password Expiry</b> regime. So if the Indexer has stopped working then the first thing you should do is check if your password has expired by login in at <a href=\"https://dark-shadow.me/login.php\" target=\"_blank\">Dark-Shadow</a>, and if necessary use the <b>Passwort anfordern</b> (<i>Request password</i>) button to renew it."
- name: username
type: text
label: Username

View File

@@ -62,6 +62,8 @@ login:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
keeplogged: 1
error:
- selector: table.main:contains("Login failed")
test:
path: index.php
selector: a[href^="logout.php"]

View File

@@ -100,6 +100,8 @@ login:
login: 1
belepes: 1
rhash: 123
error:
- selector: :root:contains("{\"hiba\":true,")
test:
path: browse
selector: a[href*="logout"]

View File

@@ -65,7 +65,7 @@ settings:
default: POLISH
options:
POLISH: POLISH
MULTi POLISH: MULTIi POLISH
MULTi POLISH: MULTi POLISH
login:
# using cookie method because login page has embedded Google reCAPTCHA

View File

@@ -95,7 +95,7 @@ search:
# 0 all, 1 active, 2 dead
incldead: 0
# 0 all, 1 polish, 5 dubbed, 6 subs, 2 non-polish, 3 freeleech, 4 highlighted
polish: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
polish: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
sort: "{{ .Config.sort }}"
type: "{{ .Config.type }}"

View File

@@ -22,6 +22,7 @@ caps:
- {id: 10, cat: TV/Sport, desc: "DTM"}
- {id: 11, cat: TV/Sport, desc: "Rally"}
- {id: 12, cat: TV/Sport, desc: "WEC"}
- {id: 13, cat: TV/Sport, desc: "Other Series"}
modes:
search: [q]

View File

@@ -75,7 +75,6 @@ search:
- path: "/api/torrents/filter"
response:
type: json
noResultsMessage: "No Torrents Found"
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
@@ -183,7 +182,10 @@ search:
True: 2 # double
uploadvolumefactor:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
# Maintain global ratio above 0.7 or downloads will get disabled. No MST.
minimumratio:
text: 0.71
# json UNIT3D 8.3.0
# global MR is 0.71 but torrents must be seeded for 7 days regardless of ratio
# minimumratio:
# text: 0.71
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.3

View File

@@ -114,6 +114,16 @@ login:
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
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"]

View File

@@ -111,6 +111,8 @@ login:
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div.panel:has(h3:contains("Login failed"))
test:
path: browse.php
selector: a[href$="/logout.php"]

View File

@@ -8,6 +8,7 @@ encoding: UTF-8
links:
- https://glodls.to/
- https://gtso.cc/
- https://glodls.unblockninja.com/
legacylinks:
- https://glodls.rocks/
- https://gtdb.to/
@@ -15,7 +16,6 @@ legacylinks:
- https://www.gtdb.to/
- https://glotorrents.mrunblock.bond/
- https://glotorrents.nocensor.cloud/
- https://glodls.unblockninja.com/ # blank
- https://glodls.ninjaproxy1.com/ # blank
- https://glotorrents.unblockit.download/

View File

@@ -153,4 +153,4 @@ search:
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 5.3.0
# json UNIT3D 5.3.0 (custom 0.5.0)

View File

@@ -184,4 +184,4 @@ search:
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 8.3.1
# json UNIT3D 8.3.2

View File

@@ -0,0 +1,201 @@
---
id: hdclone
name: HDClone
description: "HDClone is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://pt.hdclone.org/
caps:
categorymappings:
- {id: 401, cat: Movies, desc: "Movies/电影"}
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
- {id: 405, cat: TV/Anime, desc: "Animations/动漫、动画"}
- {id: 408, cat: Audio/Video, desc: "Playlet/短剧"}
- {id: 410, cat: Audio/Video, desc: "MV/演唱会"}
- {id: 406, cat: Audio, desc: "Music/音乐"}
- {id: 407, cat: Other, desc: "Others/其他(慎选)"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
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 HDClone 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.
- name: info_activity
type: info
label: Account Inactivity
default: "Account retention rules:<ol><li>Veteran User and above will be retained forever</li><li>Elite User and above will not have their account deleted after parking (in the control panel)</li><li> Users with a parked account will be deleted if they do not log in for 80 consecutive days</li><li>Users with a non-parked account will be deleted if they do not log in for 60 consecutive days</li><li>Users who have no traffic (i.e. upload/download data are both 0) will be deleted if they do not log in for 10 consecutive days.</li></ol>"
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("失败"))
message:
selector: td.text
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
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
description:
selector: td:nth-child(2)
remove: a, b, font, img, span
# NexusPHP v1.8.11 2024-03-27

View File

@@ -188,4 +188,4 @@ search:
uploadvolumefactor:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
# as a pay site there is no MR or MST
# json UNIT3D 8.3.1 (custom)
# json UNIT3D 8.3.3 (custom)

View File

@@ -184,4 +184,4 @@ search:
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 8.2.0
# json UNIT3D 8.3.2

View File

@@ -95,7 +95,7 @@ settings:
default: POLISH
options:
POLISH: POLISH
MULTi POLISH: MULTIi POLISH
MULTi POLISH: MULTi POLISH
- name: info_tpp
type: info
label: Results Per Page

View File

@@ -1,30 +1,23 @@
---
id: denofsimps-api
name: DenOfSimps (API)
description: "DenOfSimps (DoS) is a Private Torrent Tracker for 3X Fansite content only"
id: hhd-api
name: HHD (API)
description: "HHD is a Private Torrent Tracker for MOVIES / TV / GAMES"
language: en-US
type: private
encoding: UTF-8
links:
- https://denofsimps.club/
- https://homiehelpdesk.net/
caps:
categorymappings:
- {id: 1, cat: XXX/WEB-DL, desc: "OnlyFans"}
- {id: 2, cat: XXX/WEB-DL, desc: "Fansly"}
- {id: 3, cat: XXX/WEB-DL, desc: "ManyVids"}
- {id: 4, cat: XXX/WEB-DL, desc: "Clips4Sale"}
- {id: 15, cat: XXX/WEB-DL, desc: "iWantClips"}
- {id: 6, cat: XXX/WEB-DL, desc: "Privacy"}
- {id: 10, cat: XXX/WEB-DL, desc: "Chaturbate"}
- {id: 11, cat: XXX/WEB-DL, desc: "LoyalFans"}
- {id: 12, cat: XXX/WEB-DL, desc: "CamSoda"}
- {id: 8, cat: XXX/WEB-DL, desc: "MyDirtyHobby"}
- {id: 5, cat: XXX/WEB-DL, desc: "JustForFans"}
- {id: 14, cat: XXX/WEB-DL, desc: "Other"}
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 4, cat: Console, desc: "Games"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
settings:
- name: apikey
@@ -33,7 +26,7 @@ settings:
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing your <a href=\"https://denofsimps.club/\" target=\"_blank\">DenOfSimps</a> account <i>My Settings</i> page and clicking on the <b>API Key</b> tab."
default: "Find or Generate a new API Token by accessing your <a href=\"https://homiehelpdesk.net/\" target=\"_blank\">HHD</a> account <i>My Settings</i> page and clicking on the <b>API Key</b> tab."
- name: freeleech
type: checkbox
label: Search freeleech only
@@ -58,10 +51,6 @@ settings:
options:
desc: desc
asc: asc
- name: info_activity
type: info
label: Account Inactivity
default: "Unused accounts may be pruned without warning."
login:
path: /api/torrents
@@ -84,12 +73,18 @@ search:
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
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
episodeNumber: "{{ .Query.Ep }}"
imdbId: "{{ .Query.IMDBIDShort }}"
tmdbId: "{{ .Query.TMDBID }}"
tvdbId: "{{ .Query.TVDBID }}"
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 50
perPage: 100
keywordsfilters:
- name: re_replace
@@ -100,8 +95,6 @@ search:
attribute: attributes
fields:
_id:
selector: ..id
category:
selector: category_id
title_optional:
@@ -120,9 +113,23 @@ search:
infohash:
selector: info_hash
poster:
text: "{{ .Config.sitelink }}files/img/torrent-cover_{{ .Result._id }}.jpg"
selector: meta.poster
filters:
- name: replace
args: ["https://via.placeholder.com/90x135", ""]
imdbid:
selector: imdb_id
tmdbid:
selector: tmdb_id
tvdbid:
selector: tvdb_id
genre:
selector: type
selector: meta.genres
filters:
- name: re_replace
args: ["(?i)(Science Fiction)", "Science_Fiction"]
- name: replace
args: [" & ", "_&_"]
description:
text: "{{ .Result.genre }}"
seeders:
@@ -136,7 +143,7 @@ search:
selector: created_at
filters:
- name: append
args: " +00:00" # GMT
args: " -11:00" # SST
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:
@@ -166,10 +173,9 @@ search:
True: 2 # double
uploadvolumefactor:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
# global MR is 1.0 but torrents must be seeded for 5 days regardless of ratio
# minimumratio:
# text: 1.0
minimumratio:
text: 7.0
minimumseedtime:
# 5 days (as seconds = 5 x 24 x 60 x 60)
text: 432000
# json UNIT3D 8.1.3 (custom)
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.3

View File

@@ -85,6 +85,7 @@ caps:
- {id: 45, cat: PC/Mobile-iOS, desc: "iOS", default: true}
- {id: 46, cat: PC/Mac, desc: "Mac", default: true}
- {id: 47, cat: PC/ISO, desc: "Linux", default: true}
- {id: 102, cat: Other, desc: "3D STL", default: true}
# Dokumentarni
- {id: 95, cat: TV/Documentary, desc: "Dokumentarni Film", default: true}
- {id: 96, cat: TV/Documentary, desc: "Dokumentarna Serija", default: true}
@@ -145,7 +146,7 @@ login:
search:
paths:
- path: torrents.php
categories: [14, 15, 16, 20, 21, 49, 50, 51, 52, 55, 71, 72, 73, 74, 77, 97, 99, 100, 23, 24, 75, 76, 78, 79, 80, 81, 82, 98, 26, 56, 93, 29, 30, 31, 34, 83, 42, 43, 53, 54, 62, 37, 85, 86, 87, 88, 89, 90, 91, 38, 39, 40, 41, 44, 45, 46, 47, 95, 96]
categories: [14, 15, 16, 20, 21, 49, 50, 51, 52, 55, 71, 72, 73, 74, 77, 97, 99, 100, 23, 24, 75, 76, 78, 79, 80, 81, 82, 98, 26, 56, 93, 29, 30, 31, 34, 83, 42, 43, 53, 54, 62, 37, 85, 86, 87, 88, 89, 90, 91, 38, 39, 40, 41, 44, 45, 46, 47, 102, 95, 96]
- path: xxx.php
categories: [60, 61, 66, 67, 68, 69, 84]
inputs:

View File

@@ -25,6 +25,7 @@ caps:
- {id: 16, cat: TV, desc: "Boxsets"}
- {id: 18, cat: Audio, desc: "Music"}
- {id: 19, cat: Movies, desc: "Film"}
- {id: 20, cat: Movies, desc: "VIP"}
modes:
search: [q]
@@ -43,6 +44,10 @@ settings:
type: checkbox
label: Filter freeleech only
default: false
- name: novip
type: checkbox
label: Hide VIP releases
default: true
- name: sort
type: select
label: Sort requested from site
@@ -84,8 +89,7 @@ search:
page: torrents
search: "{{ .Keywords }}"
category: "{{ range .Categories }}{{.}};{{end}}"
# 0 filename, 1 file&descr, 2 descr, 3 uploaders, 18 genre, 4 imdb, 5 gold, 6 silver, 7 bronze, 8-17 upload multiplier 1x-10x
# note the options are exclusive, so searching for gold means the search keywords are ignored
# 0 filename, 1 file&descr, 2 descr, 3 uploaders
options: 0
# 0 all, 1 active only, 2 dead only
active: 0
@@ -98,7 +102,7 @@ search:
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$=\"gold.gif\"]){{ else }}{{ end }}, able.lista > tbody > tr:has(a[href^=\"download.php?id=\"]):not(:has(a[href^=\"index.php?page=userdetails\"])){{ if .Config.freeleech }}:has(img[src$=\"freeleech.gif\"]){{ else }}{{ end }}"
selector: "table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.novip }}:not(:has(a[href$=\"category=20\"])){{ else }}{{ end }}{{ if .Config.freeleech }}:has(img[src$=\"gold.gif\"]){{ else }}{{ end }}, table.lista > tbody > tr:has(a[href^=\"download.php?id=\"]){{ if .Config.novip }}:not(:has(a[href$=\"category=20\"])){{ else }}{{ end }}{{ if .Config.freeleech }}:has(img[src$=\"freeleech.gif\"]){{ else }}{{ end }}"
fields:
category:
@@ -134,20 +138,27 @@ search:
download:
selector: a[href^="download.php?id="]
attribute: href
size:
# Size: &nbsp; 2.00 GB
selector: td:has(a[href^="download.php?id="]) p:contains("Size:")
filters:
- name: regexp
args: (\d.+[B]$)
date:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td
# AddDate: &nbsp; 12:54:01 24/10/2024
selector: td:has(a[href^="download.php?id="]) p:contains("AddDate:")
# auto adjusted by site account profile
filters:
- name: regexp
args: (\d{2}:\d{2}:\d{2}\s\d{1,2}\/\d{2}\/\d{4})
- name: dateparse
args: "dd/MM/yyyy"
args: "HH:mm:ss d/MM/yyyy"
seeders:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td
selector: td:has(a[href^="download.php?id="]) p:contains("Seeds:") > a
leechers:
selector: td:has(a[href^="download.php?id="]) ~ td ~ td ~ td ~ td
selector: td:has(a[href^="download.php?id="]) p:contains("Seeds:") > a:nth-child(2)
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"
selector: td:has(a[href^="download.php?id="]) p:contains("Seeds:") > a:nth-child(3)
downloadvolumefactor:
case:
img[src="images/freeleech.gif"]: 0
@@ -172,4 +183,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 259200
# xbtitFM v4.1.28
# xbtitFM v4.1.31

View File

@@ -6,12 +6,12 @@ language: en-US
type: public
encoding: UTF-8
links:
- https://isohunt.nz/
- https://isohunt.ch/
legacylinks:
- https://isohunt2.net/ # redirects to torrentproject.cc
- https://isohunt.fun/ # redirects to torrentproject.cc
- https://isohunt.tv/ # redirects to torrentproject.cc
- https://isohunt.nz/
caps:
categorymappings:

View File

@@ -200,4 +200,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.2 (custom)
# json UNIT3D 8.3.3 (custom)

View File

@@ -6,6 +6,8 @@ language: en-US
type: public
encoding: UTF-8
links:
- https://jav-torrent.net/
legacylinks:
- https://jav-torrent.org/
caps:

View File

@@ -71,6 +71,9 @@ search:
- path: "{{ if .Keywords }}usearch/{{ .Keywords }}/{{ else }}new/{{ end }}4/?sortby={{ .Config.sort }}&sort={{ .Config.type }}"
- path: "{{ if .Keywords }}usearch/{{ .Keywords }}/{{ else }}new/{{ end }}5/?sortby={{ .Config.sort }}&sort={{ .Config.type }}"
error:
- selector: h1:contains("403 Forbidden")
rows:
selector: table.data tr.odd:has(a[class="cellMainLink"]), table.data tr.even:has(a[class="cellMainLink"])
filters:

View File

@@ -1,151 +0,0 @@
---
id: kimoji
name: KIMOJI
description: "KIMOJI is a CHINESE Private Torrent Tracker for MUSIC"
language: en-US
type: private
encoding: UTF-8
links:
- https://kimoji.club/
caps:
categorymappings:
- {id: 3, cat: Audio, desc: "Music"}
modes:
search: [q]
music-search: [q]
settings:
- name: apikey
type: text
label: APIKey
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing your <a href=\"https://kimoji.club/\" target=\"_blank\">KIMOJI</a> account <i>My Settings</i> page and clicking on the <b>API Key</b> tab."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: created_at
options:
created_at: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
login:
path: /api/torrents
method: get
error:
- selector: a[href*="/login"]
message:
text: "The API key was not accepted by {{ .Config.sitelink }}."
- selector: :root:contains("Account is Banned")
search:
paths:
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476
- 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
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
rows:
selector: data
attribute: attributes
fields:
_id:
selector: ..id
category:
selector: category_id
title:
selector: name
details:
selector: details_link
download:
selector: download_link
infohash:
selector: info_hash
poster:
text: "{{ .Config.sitelink }}files/img/torrent-cover_{{ .Result._id }}.jpg"
genre:
selector: distributor
filters:
- name: re_replace
args: ["(?i)(Hard Rock)", "Hard_Rock"]
- name: re_replace
args: ["(?i)(World Music)", "World_Music"]
- name: replace
args: ["/", "_"]
description:
text: "{{ .Result.genre }}"
files:
selector: num_file
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: times_completed
date:
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
selector: created_at
filters:
- name: append
args: " +00:00" # GMT
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:
selector: size
downloadvolumefactor:
# api returns 0%, 25%, 50%, 75%, 100%
selector: freeleech
case:
0%: 1 # not free
25%: 0.75
50%: 0.5
75%: 0.25
100%: 0 # freeleech
"*": 0 # catch errors
uploadvolumefactor:
# api returns False, True
selector: double_upload
case:
False: 1 # normal
True: 2 # double
# global MR is 1.0 but torrents must be seeded for 3 days regardless of ratio
# minimumratio:
# text: 1.0
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# json UNIT3D 7.1.3 (custom)

View File

@@ -1,160 +0,0 @@
---
id: knaben
name: Knaben
description: "Knaben is a Public torrent meta-search engine"
language: en-US
type: public
encoding: UTF-8
links:
- https://knaben.eu/
caps:
categorymappings:
- {id: 1000000, cat: Audio, desc: "Audio"}
- {id: 1001000, cat: Audio/MP3, desc: "MP3"}
- {id: 1002000, cat: Audio/Lossless, desc: "Lossless"}
- {id: 1003000, cat: Audio/Audiobook, desc: "Audiobook"}
- {id: 1004000, cat: Audio/Video, desc: "Audio Video"}
- {id: 1005000, cat: Audio/Other, desc: "Radio"}
- {id: 1006000, cat: Audio/Other, desc: "Audio Other"}
- {id: 2000000, cat: TV, desc: "TV"}
- {id: 2001000, cat: TV/HD, desc: "TV HD"}
- {id: 2002000, cat: TV/SD, desc: "TV SD"}
- {id: 2003000, cat: TV/UHD, desc: "TV UHD"}
- {id: 2004000, cat: TV/Documentary, desc: "Documentary"}
- {id: 2005000, cat: TV/Foreign, desc: "TV Foreign"}
- {id: 2006000, cat: TV/Sport, desc: "Sport"}
- {id: 2007000, cat: TV/Other, desc: "Cartoon"}
- {id: 2008000, cat: TV/Other, desc: "TV Other"}
- {id: 3000000, cat: Movies, desc: "Movies"}
- {id: 3001000, cat: Movies/HD, desc: "Movies HD"}
- {id: 3002000, cat: Movies/SD, desc: "Movies SD"}
- {id: 3003000, cat: Movies/UHD, desc: "Movies UHD"}
- {id: 3004000, cat: Movies/DVD, desc: "Movies DVD"}
- {id: 3005000, cat: Movies/Foreign, desc: "Movies Foreign"}
- {id: 3006000, cat: Movies/Foreign, desc: "Movies Bollywood"}
- {id: 3007000, cat: Movies/3D, desc: "Movies 3D"}
- {id: 3008000, cat: Movies/Other, desc: "Movies Other"}
- {id: 4000000, cat: PC, desc: "PC"}
- {id: 4001000, cat: PC/Games, desc: "Games"}
- {id: 4002000, cat: PC/0day, desc: "Software"}
- {id: 4003000, cat: PC/Mac, desc: "Mac"}
- {id: 4004000, cat: PC/ISO, desc: "Unix"}
- {id: 5000000, cat: XXX, desc: "XXX"}
- {id: 5001000, cat: XXX/x264, desc: "XXX Video"}
- {id: 5002000, cat: XXX/ImageSet, desc: "XXX ImageSet"}
- {id: 5003000, cat: XXX/Other, desc: "XXX Games"}
- {id: 5004000, cat: XXX/Other, desc: "XXX Hentai"}
- {id: 5005000, cat: XXX/Other, desc: "XXX Other"}
- {id: 6000000, cat: TV/Anime, desc: "Anime"}
- {id: 6001000, cat: TV/Anime, desc: "Anime Subbed"}
- {id: 6002000, cat: TV/Anime, desc: "Anime Dubbed"}
- {id: 6003000, cat: TV/Anime, desc: "Anime Dual audio"}
- {id: 6004000, cat: TV/Anime, desc: "Anime Raw"}
- {id: 6005000, cat: Audio/Video, desc: "Music Video"}
- {id: 6006000, cat: Books/Other, desc: "Literature"}
- {id: 6007000, cat: Audio/Other, desc: "Music"}
- {id: 6008000, cat: TV/Anime, desc: "Anime non-english translated"}
- {id: 7000000, cat: Console, desc: "Console"}
- {id: 7001000, cat: Console/PS4, desc: "PS4"}
- {id: 7002000, cat: Console/PS3, desc: "PS3"}
- {id: 7003000, cat: Console/PS3, desc: "PS2"}
- {id: 7004000, cat: Console/PS3, desc: "PS1"}
- {id: 7005000, cat: Console/PS Vita, desc: "PS Vita"}
- {id: 7006000, cat: Console/PSP, desc: "PSP"}
- {id: 7007000, cat: Console/XBox 360, desc: "Xbox 360"}
- {id: 7008000, cat: Console/XBox, desc: "Xbox"}
- {id: 7009000, cat: Console/NDS, desc: "Switch"}
- {id: 7010000, cat: Console/NDS, desc: "NDS"}
- {id: 7011000, cat: Console/Wii, desc: "Wii"}
- {id: 7012000, cat: Console/WiiU, desc: "WiiU"}
- {id: 7013000, cat: Console/3DS, desc: "3DS"}
- {id: 7014000, cat: Console/Wii, desc: "GameCube"}
- {id: 7015000, cat: Console/Other, desc: "Other"}
- {id: 8000000, cat: PC/Mobile-Other, desc: "Mobile"}
- {id: 8001000, cat: PC/Mobile-Android, desc: "Android"}
- {id: 8002000, cat: PC/Mobile-iOS, desc: "IOS"}
- {id: 8003000, cat: PC/Mobile-Other, desc: "PC Other"}
- {id: 9000000, cat: Books, desc: "Books"}
- {id: 9001000, cat: Books/EBook, desc: "EBooks"}
- {id: 9002000, cat: Books/Comics, desc: "Comics"}
- {id: 9003000, cat: Books/Mags, desc: "Magazines"}
- {id: 9004000, cat: Books/Technical, desc: "Technical"}
- {id: 9005000, cat: Books/Other, desc: "Books Other"}
- {id: 10000000, cat: Other, desc: "Other"}
- {id: 10001000, cat: Other/Misc, desc: "Other Misc"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: sort
type: select
label: Sort requested from site
default: date
options:
date: created
seeders: seeders
bytes: size
title: title
- name: type
type: select
label: Order requested from site
default: "+"
options:
"+": desc
"-": asc
search:
paths:
- path: "{{ if .Keywords }}search/{{ .Keywords }}{{ else }}browse{{ end }}/0/1/{{ .Config.type }}{{ .Config.sort }}"
rows:
selector: tr[title^="Cached "], tr[title^="Checked "]
fields:
category:
selector: a[href^="/browse/"]:last-child
attribute: href
filters:
- name: split
args: ["/", 2]
# replace subcat with cat: 1001069 > 1001000
- name: re_replace
args: ["(\\d{3})$", "000"]
title:
selector: td:nth-child(2) a
details:
selector: td:last-child a
attribute: href
download:
selector: td:nth-child(2) a
attribute: href
description:
selector: td:last-child a
filters:
- name: prepend
args: "Source: "
date:
selector: td:nth-child(4)
attribute: title
filters:
- name: append
args: " +01:00" # CET
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
size:
selector: td:nth-child(3)
seeders:
selector: td:nth-child(5)
leechers:
selector: td:nth-child(6)
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -13,15 +13,15 @@ legacylinks:
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Films: General"}
- {id: 33, cat: Movies/Other, desc: "Films: [TMDB UnListed]"}
- {id: 21, cat: Movies/3D, desc: "Films: 3D"}
- {id: 25, cat: Movies/Other, desc: "Films: Musical"}
- {id: 18, cat: Movies/Other, desc: "Films: Silent"}
- {id: 24, cat: Movies/Other, desc: "Films: Holiday"}
- {id: 19, cat: Movies/Other, desc: "Films: Shorts"}
- {id: 42, cat: Movies/Other, desc: "Films: Shorts [TMDB UnListed]"}
- {id: 17, cat: TV/Documentary, desc: "Films: Documentary"}
- {id: 12, cat: Movies/Other, desc: "Films: FanEdits/Restorations"}
- {id: 33, cat: Movies/Other, desc: "Films: [TMDB UnListed]"}
- {id: 42, cat: Movies/Other, desc: "Films: Shorts [TMDB UnListed]"}
- {id: 27, cat: Movies/Foreign, desc: "Films SP1: Dub or Vid issues"}
- {id: 22, cat: Movies/Foreign, desc: "Films SP2: No English"}
- {id: 28, cat: Movies/Other, desc: "Films SP3: Other"}
@@ -42,15 +42,15 @@ caps:
- {id: 35, cat: TV/Sport, desc: "Culture: Sports"}
- {id: 37, cat: TV/Other, desc: "Culture: Firearms and Freedom"}
- {id: 36, cat: TV/Other, desc: "Culture: Roms"}
- {id: 6, cat: XXX, desc: "XXX: Smut [TMDB Listed]"}
- {id: 30, cat: XXX, desc: "XXX: Smut [TMDB UnListed]"}
- {id: 15, cat: XXX/Pack, desc: "XXX: MegaPacks"}
- {id: 10, cat: XXX, desc: "XXX: Hentai"}
- {id: 14, cat: XXX/Other, desc: "XXX: Creators Corner"}
- {id: 39, cat: XXX/Other, desc: "XXX: Pain and Violence"}
- {id: 13, cat: XXX/Other, desc: "XXX: Other"}
- {id: 11, cat: XXX/Other, desc: "XXX: Zoo"}
- {id: 26, cat: Other, desc: "FuckedUpShit"}
- {id: 6, cat: XXX, desc: "Mature: NSFW [TMDB Listed]"}
- {id: 30, cat: XXX, desc: "Mature: NSFW [TMDB UnListed]"}
- {id: 15, cat: XXX/Pack, desc: "Mature: NSFW MegaPacks"}
- {id: 10, cat: XXX, desc: "Mature: Hentai"}
- {id: 14, cat: XXX/Other, desc: "Mature: Creators Corner"}
- {id: 39, cat: XXX/Other, desc: "Mature: NSFL [Listed]"}
- {id: 11, cat: XXX/Other, desc: "Mature: NSFL [Unlisted]"}
- {id: 44, cat: XXX/Other, desc: "Mature: Audio"}
- {id: 43, cat: Other, desc: "Internal Testing"}
- {id: 23, cat: Other, desc: "Other_Or_Not_Sure"}
modes:

View File

@@ -46,6 +46,10 @@ caps:
- {id: 14, cat: TV/WEB-DL, desc: "SERIE WEB.720p"}
- {id: 12, cat: TV/WEB-DL, desc: "SERIE WEB"}
- {id: 110, cat: TV, desc: "SERIE Nouveautés 2024"}
# ANIMEE
- {id: 113, cat: TV/Anime, desc: "ANIMEE Nouveautées 2024"}
- {id: 114, cat: Movies/Other, desc: "ANIMEE Fim"}
- {id: 115, cat: TV/Anime, desc: "ANIMEE Serie"}
# LOGICIELS
- {id: 56, cat: PC/ISO, desc: "LOGICIELS Linux"}
- {id: 24, cat: PC/Mac, desc: "LOGICIELS Apple"}
@@ -58,6 +62,7 @@ caps:
# MUSIC
- {id: 5, cat: Audio/Video, desc: "MUSIC clip video"}
- {id: 109, cat: Audio/Video, desc: "MUSIC Spectacles.Theatre"}
- {id: 112, cat: Audio/Video, desc: "MUSIC Concert filmé"}
# JEUX
- {id: 96, cat: PC/Games, desc: "JEUX Apple"}
- {id: 8, cat: Console/PS3, desc: "JEUX PS3"}

View File

@@ -0,0 +1,173 @@
---
id: lemonhd
name: LemonHD
description: "LemonHD is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
language: zh-CN
type: private
encoding: UTF-8
links:
- https://lemonhd.club/
legacylinks:
- https://leaguehd.com/
- https://lemonhd.org/
caps:
categorymappings:
- {id: 401, cat: Movies, desc: "Movies/电影"}
- {id: 411, cat: Audio, desc: "Music/无损音乐"}
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
- {id: 406, cat: Audio/Video, desc: "Music Videos/音乐MV"}
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
- {id: 402, cat: TV, desc: "TV Series/剧集"}
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
- {id: 410, cat: Movies/3D, desc: "Movies 3D"}
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: 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:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
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 justdead
incldead: 0
# promotion: 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x 50%, 7 30%
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 imdb, 5 douban
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}5{{ 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(table.torrentname)
fields:
category:
selector: a[href*="?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href*="details.php?id="] > b[title]
attribute: title
details:
selector: a[href*="details.php?id="]
attribute: href
download:
selector: a[href*="download.php?id="]
attribute: href
imdbid:
selector: a[href*="imdb.com/title/tt"]
attribute: href
doubanid:
selector: a[href*="movie.douban.com/subject/"]
attribute: href
date_elapsed:
# time type: time elapsed (default)
selector: td.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, img
# NexusPHP Standard v1.5 Beta 4

View File

@@ -16,6 +16,18 @@ caps:
search: [q]
music-search: [q, artist]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: info_login
type: info
label: About LosslessClub Forum versus LosslessClub Tracker
default: "The <a href=\"https://losslessclub.com/\" target=\"_blank\">LosslessClub Forum</a> credentials are different from the <a href=\"https://losslessclub.com/login.php\" target=\"_blank\">LosslessClub Tracker</a> credentials so if the indexer is giving you 'Error Username or password is incorrect' then you are likely using the Forum credentials to access the Tracker."
login:
path: takelogin.php
method: post

View File

@@ -23,9 +23,19 @@ settings:
type: info_flaresolverr
download:
selectors:
- selector: a[href$=".torrent"]
before:
pathselector:
selector: a[href^="/download?"]
attribute: href
filters:
- name: replace
args: ["/download?", "/download/?"]
selectors:
- selector: script:contains("downloadLink")
usebeforeresponse: true
filters:
- name: regexp
args: "downloadLink = '(.+?)';"
search:
paths:

View File

@@ -5,8 +5,15 @@ description: "Magnet Cat is a Public Tracker for MOVIES / TV / GENERAL"
language: en-US
type: public
encoding: UTF-8
# current domain finder https://魔法猫咪.lol/ or https://哆啦a猫.com/
links:
- https://magnetcatcat.com/
- https://clmclm.com/
- https://www.clm446.buzz/
- https://www.clm447.buzz/
- https://www.clm448.buzz/
- https://www.clm449.buzz/
- https://www.clm450.buzz/
caps:
categorymappings:
@@ -76,14 +83,14 @@ search:
- name: regexp
args: ([A-F|a-f|0-9]{40})
date:
selector: div.sbar > span:contains("Date added:") > b
selector: div.sbar > span:contains("Date added:") > b, div.sbar > span:contains("添加时间:") > b
filters:
- name: append
args: " +08:00" # CST
- name: dateparse
args: "yyyy-MM-dd zzz"
size:
selector: div.sbar > span:contains("Size:") > b
selector: div.sbar > span:contains("Size:") > b, div.sbar > span:contains("大小:") > b
seeders:
text: 1
leechers:

View File

@@ -86,16 +86,7 @@ caps:
- {id: 170, cat: PC, desc: "Програмне забезпечення Офіс, текстові редактори"}
- {id: 171, cat: PC, desc: "Програмне забезпечення Аудіо, відео обробка"}
- {id: 173, cat: PC, desc: "Програмне забезпечення Інше"}
# Закритий розділ
- {id: 160, cat: Audio, desc: "Закритий розділ Rock, Alternative, Punk, Metal"}
- {id: 161, cat: Audio, desc: "Закритий розділ Pop"}
- {id: 181, cat: Audio, desc: "Закритий розділ Synthpop, Futurepop, New Wave, Electropop"}
- {id: 165, cat: Audio, desc: "Закритий розділ Jazz, Blues, Soul"}
- {id: 180, cat: Audio, desc: "Закритий розділ New Age &amp; Meditative"}
- {id: 163, cat: Audio, desc: "Закритий розділ Rap, Hip-hop, RnB, Reggae"}
- {id: 166, cat: Audio, desc: "Закритий розділ Country, Country pop, Bluegrass, Southern rock"}
- {id: 162, cat: Audio, desc: "Закритий розділ Electronic"}
- {id: 164, cat: Audio, desc: "Закритий розділ Other Styles"}
- {id: 185, cat: PC, desc: "Програмне забезпечення Ігри"}
# archive, not in tracker search category pulldown
- {id: 23, cat: Other, desc: "Архів"}

View File

@@ -5,6 +5,8 @@ description: "MyPornClub is a Public Torrent Tracker for 3X"
language: en-US
type: public
encoding: UTF-8
certificates:
- 21debda35c67d63e823d122df5824a3f8465759a # expired 2 Nov 2024
links:
- https://myporn.club/

View File

@@ -187,4 +187,4 @@ search:
minimumseedtime:
# 7 days (as seconds = 7 x 24 x 60 x 60)
text: 604800
# json UNIT3D 8.3.2
# json UNIT3D 8.3.3

View File

@@ -74,7 +74,7 @@ settings:
- name: info_activity
type: info
label: Account Inactivity
default: "Note your account will be DISABLED for the reason below:<ol><li>NOT log in your account in 30 days in a row. Except! VIP and VVIP users.</li><li>Park account or NO new download or other activity on the site in 152 days. Except! VIP and VVIP users.</li></ol>"
default: "Note your account will be DISABLED for the reason below:<ol><li>NOT log in your account in 365 days in a row. Except! VIP and VVIP users.</li><li>Park account or NO new download or other activity on the site in 365 days. Except! VIP and VVIP users.</li></ol>"
login:
path: takelogin.php

View File

@@ -0,0 +1,158 @@
---
id: nyaapantsu
name: NyaaPantsu
description: "NyaaPantsu is a Public site for dedicated to Asian ANIME"
language: en-US
type: public
encoding: UTF-8
links:
- https://ouo.si/
caps:
categorymappings:
- {id: 3_, cat: TV/Anime, desc: "Anime"}
- {id: 3_12, cat: TV/Anime, desc: "Anime - Anime Music Video"}
- {id: 3_5, cat: TV/Anime, desc: "Anime - English-translated"}
- {id: 3_13, cat: TV/Anime, desc: "Anime - Non-English-translated"}
- {id: 3_6, cat: TV/Anime, desc: "Anime - Raw"}
# Anime as Movies (Radarr uses t=movie):
- {id: 3_, cat: Movies/Other, desc: "Anime"}
- {id: 3_12, cat: Movies/Other, desc: "Anime - Anime Music Video"}
- {id: 3_5, cat: Movies/Other, desc: "Anime - English-translated"}
- {id: 3_13, cat: Movies/Other, desc: "Anime - Non-English-translated"}
- {id: 3_6, cat: Movies/Other, desc: "Anime - Raw"}
- {id: 2_, cat: Audio, desc: "Audio"}
- {id: 2_3, cat: Audio, desc: "Audio - Lossless"}
- {id: 2_4, cat: Audio, desc: "Audio - Lossy"}
- {id: 4_, cat: Books, desc: "Literature"}
- {id: 4_7, cat: Books, desc: "Literature - English-translated"}
- {id: 4_14, cat: Books, desc: "Literature - Non-English-translated"}
- {id: 4_8, cat: Books, desc: "Literature - Raw"}
- {id: 5_, cat: TV, desc: "Live Action"}
- {id: 5_9, cat: TV, desc: "Live Action - English-translated"}
- {id: 5_10, cat: TV, desc: "Live Action - Idol/Promotional Video"}
- {id: 5_18, cat: TV, desc: "Live Action - Non-English-translated"}
- {id: 5_11, cat: TV, desc: "Live Action - Raw"}
- {id: 6_, cat: Other, desc: "Pictures"}
- {id: 6_15, cat: Other, desc: "Pictures - Graphics"}
- {id: 6_16, cat: Other, desc: "Pictures - Photos"}
- {id: 1_, cat: PC, desc: "Software"}
- {id: 1_1, cat: PC/ISO, desc: "Software - Applications"}
- {id: 1_2, cat: PC/Games, desc: "Software - Games"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: prefer_magnet_links
type: checkbox
label: Prefer Magnet Links
default: true
- name: cat-id
type: select
label: Category
default: _
options:
_: "All categories"
3_: "Anime"
3_12: "Anime - Anime Music Video"
3_5: "Anime - English-translated"
3_13: "Anime - Non-English-translated"
3_6: "Anime - Raw"
2_: "Audio"
2_3: "Audio - Lossless"
2_4: "Audio - Lossy"
4_: "Literature"
4_7: "Literature - English-translated"
4_14: "Literature - Non-English-translated"
4_8: "Literature - Raw"
1_: "Software"
1_1: "Software - Applications"
1_2: "Software - Games"
5_: "Live Action"
5_10: "Live Action - Trailers"
5_9: "Live Action - English subtitled"
5_18: "Live Action - Non-English subtitled"
5_11: "Live Action - Raw"
6_: "Pictures"
6_15: "Pictures - Graphics"
6_16: "Pictures - Photos"
- name: sort
type: select
label: Sort requested from site
default: 2
options:
2: created
5: seeders
4: size
1: title
- name: type
type: select
label: Order requested from site
default: false
options:
false: desc
true: asc
search:
paths:
- path: search
inputs:
q: "{{ .Keywords }}"
c: "{{ .Config.cat-id }}"
# 0 All, 2 Remakes, 3 uploaded by trusted users, 4 A+
s: 0
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
limit: 100
rows:
selector: tr.torrent-info
fields:
category:
selector: a[href^="/search?c="]
attribute: href
filters:
- name: querystring
args: c
title:
selector: a[href^="/view/"]
details:
selector: a[href^="/view/"]
attribute: href
download_optional:
selector: a[href^="/download/"]
attribute: href
optional: true
download:
text: "{{ if .Config.prefer_magnet_links }}{{ else }}{{ .Result.download_optional }}{{ end }}"
optional: true
magnet:
selector: a[href^="magnet:?xt="]
attribute: href
size:
selector: td.tr-size
date:
# Nov 15, 2020
selector: td.date-full
filters:
- name: replace
args: ["UTC+0", "+00:00"]
- name: dateparse
args: "MM/d/yyyy, h:mm:ss tt zzz"
seeders:
selector: td.tr-se
leechers:
selector: td.tr-le
grabs:
selector: td.tr-dl
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -27,46 +27,41 @@ legacylinks:
caps:
categorymappings:
# Anime
- {id: 1_0, cat: TV/Anime, desc: "Anime"}
- {id: 1_1, cat: TV/Anime, desc: "Anime music videos"}
- {id: 1_2, cat: TV/Anime, desc: "English subtitled animes"}
- {id: 1_3, cat: TV/Anime, desc: "Non-english subtitled animes"}
- {id: 1_4, cat: TV/Anime, desc: "Raw animes"}
- {id: 1_1, cat: TV/Anime, desc: "Anime - Anime Music Video"}
- {id: 1_2, cat: TV/Anime, desc: "Anime - English-translated"}
- {id: 1_3, cat: TV/Anime, desc: "Anime - Non-English-translated"}
- {id: 1_4, cat: TV/Anime, desc: "Anime - Raw"}
# Anime as Movies (Radarr uses t=movie):
- {id: 1_0, cat: Movies/Other, desc: "Anime"}
- {id: 1_1, cat: Movies/Other, desc: "Anime music videos"}
- {id: 1_2, cat: Movies/Other, desc: "English subtitled animes"}
- {id: 1_3, cat: Movies/Other, desc: "Non-english subtitled animes"}
- {id: 1_4, cat: Movies/Other, desc: "Raw animes"}
# Audio
- {id: 1_1, cat: Movies/Other, desc: "Anime - Anime Music Video"}
- {id: 1_2, cat: Movies/Other, desc: "Anime - English-translated"}
- {id: 1_3, cat: Movies/Other, desc: "Anime - Non-English-translated"}
- {id: 1_4, cat: Movies/Other, desc: "Anime - Raw"}
- {id: 2_0, cat: Audio, desc: "Audio"}
- {id: 2_1, cat: Audio, desc: "Lossless audio"}
- {id: 2_2, cat: Audio, desc: "Lossy audio"}
# Literature
- {id: 2_1, cat: Audio, desc: "Audio - Lossless"}
- {id: 2_2, cat: Audio, desc: "Audio - Lossy"}
- {id: 3_0, cat: Books, desc: "Literature"}
- {id: 3_1, cat: Books, desc: "Literature english translated"}
- {id: 3_2, cat: Books, desc: "Literature non-english translated"}
- {id: 3_3, cat: Books, desc: "Raw literature"}
# Live
- {id: 3_1, cat: Books, desc: "Literature English-translated"}
- {id: 3_2, cat: Books, desc: "Literature - Non-English-translated"}
- {id: 3_3, cat: Books, desc: "Literature - Raw"}
- {id: 4_0, cat: TV, desc: "Live Action"}
- {id: 4_1, cat: TV, desc: "Live Action - English"}
- {id: 4_2, cat: TV, desc: "Live Action - Idol/PV"}
- {id: 4_3, cat: TV, desc: "Live Action - Non-English"}
- {id: 4_1, cat: TV, desc: "Live Action - English-translated"}
- {id: 4_2, cat: TV, desc: "Live Action - Idol/Promotional Video"}
- {id: 4_3, cat: TV, desc: "Live Action - Non-English-translated"}
- {id: 4_4, cat: TV, desc: "Live Action - Raw"}
# Pics
- {id: 5_0, cat: Other, desc: "Pictures"}
- {id: 5_1, cat: Other, desc: "Pictures - Graphics"}
- {id: 5_2, cat: Other, desc: "Pictures - Photos"}
# Software
- {id: 5_1, cat: Other, desc: "Pictures - Graphics"}
- {id: 5_2, cat: Other, desc: "Pictures - Photos"}
- {id: 6_0, cat: PC, desc: "Software"}
- {id: 6_1, cat: PC/ISO, desc: "Applications"}
- {id: 6_2, cat: PC/Games, desc: "Games"}
- {id: 6_1, cat: PC/ISO, desc: "Software - Applications"}
- {id: 6_2, cat: PC/Games, desc: "Software - Games"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
allowrawsearch: true
@@ -151,6 +146,7 @@ search:
q: "{{ if .Keywords }}{{ re_replace .Keywords \"\\b0(\\d{1})\\b\" \"$1\" }}{{ else }}{{ end }}"
p: "{{ if .Keywords }}{{ else }}2{{ end }}"
inputs:
# 0 all, 1 no remakes, 2 trusted only
f: "{{ .Config.filter-id }}"
c: "{{ .Config.cat-id }}"
s: "{{ .Config.sort }}"

View File

@@ -33,6 +33,8 @@ caps:
- {id: 119, cat: Movies/SD, desc: "Movies: Greek Movies Non HD"}
- {id: 122, cat: Movies/HD, desc: "Movies: MicroHD"}
- {id: 112, cat: Movies/HD, desc: "Movies: Movie Packs"}
- {id: 130, cat: Movies/WEB-DL, desc: "Movies: WEBRip / 1080p"}
- {id: 129, cat: Movies/WEB-DL, desc: "Movies: WEBRip / 720p"}
- {id: 41, cat: Movies/HD, desc: "Movies HD"}
- {id: 50, cat: Movies/HD, desc: "Movies HD: BluRay / 1080p"}
- {id: 51, cat: Movies/UHD, desc: "Movies HD: BluRay / 4K (UHD)"}
@@ -215,4 +217,9 @@ search:
case:
img[src$="/x2.gif"]: 2
"*": 1
minimumratio:
text: 1.0
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# TS Special Edition v.8.0

View File

@@ -77,7 +77,6 @@ search:
- path: "/api/torrents/filter"
response:
type: json
noResultsMessage: "No Torrents Found"
headers:
Authorization: ["Bearer {{ .Config.apikey }}"]
@@ -94,7 +93,7 @@ search:
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 75
perPage: 100
keywordsfilters:
- name: re_replace
@@ -191,4 +190,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 8.3.0
# json UNIT3D 8.3.3

View File

@@ -184,4 +184,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 8.3.1
# json UNIT3D 8.3.3

View File

@@ -70,7 +70,7 @@ login:
cookie: "{{ .Config.cookie }}"
test:
path: index.php
selector: a[href="logout.php"]
selector: a[href*="logout.php?token="]
search:
paths:

View File

@@ -11,24 +11,25 @@ links:
caps:
categorymappings:
- {id: 6, cat: PC/0day, desc: "Aplikacje/Programy"}
- {id: 4, cat: TV/Anime, desc: "Bajki"}
- {id: 30, cat: TV/Anime, desc: "TV Seriale Bajki"}
- {id: 31, cat: TV/Anime, desc: "Anime"}
- {id: 4, cat: Movies, desc: "Bajki"}
- {id: 30, cat: TV, desc: "TV Seriale Bajki"}
- {id: 1, cat: Movies/HD, desc: "Filmy HD"}
- {id: 13, cat: Movies/DVD, desc: "DVD5/9"}
- {id: 12, cat: Movies/BluRay, desc: "BD25/50_5/9"}
- {id: 14, cat: Movies/3D, desc: "Filmy 3D"}
- {id: 16, cat: Movies/SD, desc: "Filmy SD"}
- {id: 17, cat: Movies/Other, desc: "Filmy inne"}
- {id: 24, cat: PC/Games, desc: "Gry dodatki"}
- {id: 5, cat: PC/Games, desc: "Gry pc"}
- {id: 18, cat: PC/Mobile-Android, desc: "Mobile"}
- {id: 24, cat: PC/Games, desc: "Gry dodatki"}
- {id: 10, cat: Console, desc: "Gry Konsole"}
- {id: 18, cat: PC/Mobile-Android, desc: "Mobile"}
- {id: 19, cat: Other, desc: "Inne"}
- {id: 8, cat: Audio, desc: "Muzyka"}
- {id: 11, cat: Movies, desc: "Paczki"}
- {id: 20, cat: Books, desc: "Book"}
- {id: 27, cat: TV/Other, desc: "Teatr Telewizyjny"}
- {id: 25, cat: Audio/Audiobook, desc: "Audiobook"}
- {id: 20, cat: Books, desc: "Book"}
- {id: 21, cat: TV/Sport, desc: "Sport"}
- {id: 29, cat: Movies, desc: "Stare Filmy"}
- {id: 22, cat: TV/SD, desc: "TV Seriale SD"}

View File

@@ -0,0 +1,213 @@
---
id: polskie-torrenty
name: Polskie-Torrenty
description: "Polskie-Torrenty is a POLISH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
language: pl-PL
type: semi-private
encoding: UTF-8
links:
- https://polskie-torrenty.eu/
caps:
categorymappings:
# Filmy
- {id: 27, cat: Movies/DVD, desc: "Filmy DVD"}
- {id: 30, cat: Movies/SD, desc: "Filmy DivX/XviD"}
- {id: 71, cat: Movies/3D, desc: "Filmy 3D"}
- {id: 72, cat: Movies/HD, desc: "Filmy x264/1080p"}
- {id: 73, cat: Movies/HD, desc: "Filmy x264/720p"}
- {id: 74, cat: Movies/HD, desc: "Filmy x265/h265"}
- {id: 75, cat: Movies/HD, desc: "Filmy x264/h264"}
- {id: 76, cat: Movies/HD, desc: "Filmy HD 1080p AVC"}
- {id: 77, cat: Movies/UHD, desc: "Filmy 4K UHD"}
- {id: 78, cat: Movies/SD, desc: "Filmy IVO"}
- {id: 79, cat: Movies/SD, desc: "Filmy TS/CAM"}
- {id: 88, cat: Movies/HD, desc: "Filmy x265/1080p"}
- {id: 89, cat: Movies/HD, desc: "Filmy x265/720p"}
# Seriale
- {id: 25, cat: TV, desc: "Seriale Polskie"}
- {id: 26, cat: TV/Foreign, desc: "Seriale Zagraniczne"}
# Dla Dzieci
- {id: 32, cat: Movies, desc: "Filmy/Bajki"}
- {id: 111, cat: Audio/Audiobook, desc: "Audiobook"}
- {id: 112, cat: Console, desc: "Gry"}
- {id: 113, cat: Other, desc: "Inne"}
- {id: 114, cat: Books, desc: "Kolorowanki"}
- {id: 115, cat: Books, desc: "Książki"}
- {id: 116, cat: Audio, desc: "Muzyka"}
- {id: 117, cat: PC, desc: "Programy"}
- {id: 118, cat: Audio/Video, desc: "Teledyski"}
# Gry
- {id: 34, cat: PC/Games, desc: "Gry PC"}
- {id: 35, cat: Console/PSP, desc: "PS2/PS3/PS4/PSP/PS VITA"}
- {id: 36, cat: Console/XBox, desc: "Xbox One/XBOX 360/Xbox"}
- {id: 37, cat: Console/NDS, desc: "NINTENDO / WII / DS"}
# Muzyka
- {id: 38, cat: Audio/Foreign, desc: "Muzyka Zagraniczna"}
- {id: 39, cat: Audio, desc: "Soundtracki"}
- {id: 40, cat: Audio/Video, desc: "Teledyski"}
- {id: 80, cat: Audio, desc: "Muzyka Polska"}
- {id: 81, cat: Audio/Video, desc: "Koncerty"}
# GSM/PDA
- {id: 42, cat: PC/Mobile-Other, desc: "Tapety GSM/PDA"}
- {id: 43, cat: PC/Mobile-Other, desc: "Programy GSM/PDA"}
- {id: 44, cat: PC/Mobile-Other, desc: "Filmy GSM/PDA"}
- {id: 45, cat: PC/Mobile-Other, desc: "Dzwonki GSM/PDA"}
- {id: 46, cat: PC/Mobile-Other, desc: "Gry GSM/PDA"}
# Ksiazki
- {id: 47, cat: Books/EBook, desc: "E-Booki"}
- {id: 48, cat: Audio/Audiobook, desc: "Audio-Booki"}
- {id: 49, cat: Books/Mags, desc: "Czasopisma"}
- {id: 50, cat: Books/Comics, desc: "Komiksy"}
# Programy
- {id: 51, cat: PC/0day, desc: "Windows"}
- {id: 52, cat: PC, desc: "Linux"}
- {id: 53, cat: PC/Mac, desc: "Macintosh"}
# Erotyka
- {id: 58, cat: XXX/Other, desc: "Czasopisma"}
- {id: 59, cat: XXX/ImageSet, desc: "Zdjęcia"}
- {id: 60, cat: XXX/x264, desc: "Filmy"}
- {id: 61, cat: XXX/Other, desc: "Gry"}
- {id: 63, cat: XXX/Other, desc: "Hentai+18"}
# Anime
- {id: 69, cat: TV/Anime, desc: "Anime"}
- {id: 70, cat: XXX/Other, desc: "Hentai"}
- {id: 121, cat: Books/Comics, desc: "Manga"}
# Inne
- {id: 55, cat: Other, desc: "Tapety"}
- {id: 57, cat: Other, desc: "Pozostale"}
- {id: 86, cat: Other, desc: "Śmieszne"}
- {id: 105, cat: Other, desc: "Design www"}
- {id: 106, cat: Other, desc: "Filmy (S)VCD"}
- {id: 107, cat: Other, desc: "Flash/Shockwave"}
- {id: 108, cat: Other, desc: "Fotografia"}
- {id: 109, cat: Other, desc: "Kursy"}
- {id: 110, cat: Other, desc: "Modelarstwo"}
# Sport
- {id: 92, cat: TV/Sport, desc: "Boks"}
- {id: 93, cat: TV/Sport, desc: "Hokej"}
- {id: 94, cat: TV/Sport, desc: "Koszykówka"}
- {id: 95, cat: TV/Sport, desc: "Kulturystyka i fitness"}
- {id: 96, cat: TV/Sport, desc: "MMA"}
- {id: 97, cat: TV/Sport, desc: "Motorowe"}
- {id: 98, cat: TV/Sport, desc: "Piłka nożna"}
- {id: 99, cat: TV/Sport, desc: "Rowerowe"}
- {id: 100, cat: TV/Sport, desc: "Siatkówka"}
- {id: 101, cat: TV/Sport, desc: "Wodne"}
- {id: 102, cat: TV/Sport, desc: "Wrestling"}
- {id: 103, cat: TV/Sport, desc: "Zapasy"}
- {id: 104, cat: TV/Sport, desc: "Zimowe"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: multilang
type: checkbox
label: Replace MULTi by another language in release name
default: false
- name: multilanguage
type: select
label: Replace MULTi by this language
default: POLISH
options:
POLISH: POLISH
MULTi POLISH: MULTi POLISH
login:
path: login.php
method: form
form: form[name="login"]
inputs:
uid: "{{ .Config.username }}"
pwd: "{{ .Config.password }}"
keeplogged: 1
error:
- selector: font[color="#FF0000"]
test:
path: index.php
selector: a[href="logout.php"]
search:
paths:
# https://polskie-torrenty.eu/torrents.php?c115=1&c116=1&c117=1&c118=1&search=
- path: torrents.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# does not support sorting results, or imdbid searching, or have imdb in results
rows:
selector: div.boxcontent > table > tbody > tr:has(a.link1)
fields:
categorydesc:
selector: div.link1 > font
title_phase1:
selector: a.link1
attribute: href
filters:
- name: regexp
args: f=(.+?)\.torrent
- name: urldecode
- name: htmldecode
title_multilang:
text: "{{ .Result.title_phase1 }}"
filters:
- name: re_replace
args: ["(?i)\\b(MULTI(?!.*(?:POLISH|ENGLISH|\\bPL\\b)))\\b", "{{ .Config.multilanguage }}"]
- name: re_replace
args: ["(?i)\\b(pl)\\b", "POLISH"]
title:
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_phase1 }}{{ end }}"
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a.link1
attribute: href
poster:
selector: img
attribute: src
date:
selector: td.pole
filters:
- name: regexp
args: "(\\d{2}-\\d{2}-\\d{4})"
- name: dateparse
args: "dd-MM-yyyy"
size:
selector: td.pole
filters:
- name: regexp
args: "Rozmiar: (\\d+\\.\\d+ [T|G|M|K|k]B)"
seeders:
selector: td.pole
filters:
- name: regexp
args: "Seedów: (\\d+)"
leechers:
selector: td.pole
filters:
- name: regexp
args: "Peerów: (\\d+)"
grabs:
selector: td.pole
filters:
- name: regexp
args: "Pobrano: (\\d+)"
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -22,6 +22,7 @@ caps:
- {id: 28, cat: XXX, desc: "порно видео зрелых"}
- {id: 29, cat: XXX, desc: "видео кастинг"}
- {id: 32, cat: XXX, desc: "девушки с красивыми попами"}
- {id: 33, cat: XXX, desc: "порно с мулатками"}
- {id: 21, cat: XXX, desc: "любительское видео"}
- {id: 3, cat: XXX, desc: "порно фильмы"}
- {id: 30, cat: XXX, desc: "зарубежные порно фильмы"}

View File

@@ -186,4 +186,4 @@ search:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
minimumratio:
text: 1.0
# json UNIT3D 8.3.2
# json UNIT3D 8.3.4

View File

@@ -1,12 +1,12 @@
---
id: bitstream-api
name: BitStream (API)
description: "BitStream is a SPANISH Private tracker for H.265 MOVIES / TV"
language: es-ES
id: rockethd
name: RocketHD (API)
description: "RocketHD is a GERMAN Private Torrent Tracker for MOVIES / TV"
language: de-DE
type: private
encoding: UTF-8
links:
- https://bitstream.click/
- https://r0k3t.li/
caps:
categorymappings:
@@ -25,7 +25,7 @@ settings:
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing your <a href=\"https://bitstream.click/\" target=\"_blank\">BitStream</a> account <i>My Settings</i> page and clicking on the <b>API Key</b> tab."
default: "Find or Generate a new API Token by accessing your <a href=\"https://r0k3t.li/\" target=\"_blank\">RocketHD</a> account <i>My Settings</i> page and clicking on the <b>API Key</b> tab."
- name: freeleech
type: checkbox
label: Search freeleech only
@@ -50,10 +50,6 @@ settings:
options:
desc: desc
asc: asc
- name: info_activity
type: info
label: Account Inactivity
default: "Not logging in for a month will result in the account being deactivated or banned. If an account does not register downloads in a month, it will be banned for users with the User rank. Other ranks will be given a timeframe determined by staff."
login:
path: /api/torrents
@@ -108,7 +104,7 @@ search:
files:
selector: num_file
title:
text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }} Spanish"
text: "{{ if and (.Config.single_file_release_use_filename) (eq .Result.files \"1\") (.Result.title_filename) }}{{ .Result.title_filename }}{{ else }}{{ .Result.title_optional }}{{ end }}"
details:
selector: details_link
download:
@@ -129,6 +125,8 @@ search:
genre:
selector: meta.genres
filters:
- name: re_replace
args: ["(?i)(Science Fiction)", "Science_Fiction"]
- name: replace
args: [" & ", "_&_"]
description:
@@ -175,6 +173,6 @@ search:
uploadvolumefactor:
text: "{{ if .Result._featured }}2{{ else }}{{ .Result.uploadvolumefactor_double_upload }}{{ end }}"
minimumseedtime:
# 15 days (as seconds = 15 x 24 x 60 x 60)
text: 1296000
# json UNIT3D 8.2.0
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 8.3.3

View File

@@ -1,177 +0,0 @@
---
id: rptscene
name: RPTScene
description: "RPTScene is a Private tracker for MOVIES / TV / GENERAL"
language: en-US
type: private
encoding: UTF-8
links:
- https://rptscene.xyz/
legacylinks:
- https://rpthd.com/
caps:
categorymappings:
- {id: 6, cat: PC/0day, desc: "Apps: Windows"}
- {id: 7, cat: PC/Mac, desc: "Apps: Mac"}
- {id: 8, cat: PC, desc: "Apps: Linux"}
- {id: 75, cat: Movies/DVD, desc: "Movies: DVD"}
- {id: 26, cat: Movies/BluRay, desc: "Movies: Blu-Ray"}
- {id: 42, cat: Movies/HD, desc: "Movies: FHD-HD"}
- {id: 50, cat: Movies/WEB-DL, desc: "Movies: Web-Dl"}
- {id: 74, cat: Movies/SD, desc: "Movies: SD"}
- {id: 49, cat: Movies/UHD, desc: "Movies: 4k"}
- {id: 46, cat: Movies/3D, desc: "Movies: 3D"}
- {id: 24, cat: Movies, desc: "Movies: Packs"}
- {id: 28, cat: Movies/Other, desc: "Movies: Cartoons"}
- {id: 47, cat: XXX, desc: "Movies: XXX"}
- {id: 41, cat: TV/HD, desc: "TV: HD"}
- {id: 52, cat: TV/WEB-DL, desc: "TV: WEB-DL"}
- {id: 48, cat: TV, desc: "TV: Packs"}
- {id: 9, cat: TV/Documentary, desc: "TV: Documentaries"}
- {id: 22, cat: Audio/MP3, desc: "Music: MP3"}
- {id: 23, cat: Audio/Lossless, desc: "Music: FLAC"}
- {id: 25, cat: Audio/Video, desc: "Music: Video"}
- {id: 27, cat: Audio, desc: "Music: Pack"}
- {id: 53, cat: PC/Games, desc: "Games: Pc"}
- {id: 54, cat: Console, desc: "Games: PsP"}
- {id: 76, cat: Audio/Audiobook, desc: "Books: Audio"}
- {id: 77, cat: Books/EBook, desc: "Books: eBooks"}
- {id: 78, cat: TV/UHD, desc: "TV: 4k"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
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: Search freeleech only
default: false
- 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
- name: info_results
type: info
label: Search results
default: "If you are not getting results, then access the site with your browser and mark as read all PMs."
- name: info_activity
type: info
label: Account Inactivity
default: "Be active here, you must login at least once a month. Also, not downloading anything is considered being inactive (except if you're an uploader or VIP). The accounts inactive for 3 months are deleted."
login:
path: account-login.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div.myFrame:contains("Access Denied")
test:
path: index.php
selector: a[href^="account-logout.php"]
search:
paths:
# https://rptscene.xyz/torrents-search.php?c22=1&c23=1&c76=1&c77=1&search=&incldead=0&freeleech=0&inclrosub=0
- path: torrents-search.php
inputs:
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}" # for dashboard imdbid search
# 0 only active 1 incl dead 2 only dead
incldead: 1
# 0 all 1 not freeleech 2 only freeleech
freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
rows:
selector: table.ttable_headinner > tbody > tr
fields:
category:
selector: a[href^="torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
title:
selector: a[href^="torrents-details.php?id="]
attribute: title
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="]:not(a[onmouseover*="images/nocover.png"])
attribute: onmouseover
filters:
- name: regexp
args: src=([^\s]+)
imdbid:
selector: a[href*="imdb.com/title/tt"]
attribute: href
size:
selector: td:nth-child(4)
date:
# 15.11.21<br>07:47
selector: td:nth-child(5)
# auto adjusted by site account profile
filters:
- name: dateparse
args: "d.MM.yyHH:mm"
grabs:
selector: td:nth-child(7)
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9)
genre:
selector: a:contains("Genre:")
filters:
- name: replace
args: ["Genre: ", ""]
_source:
case:
img[src="images/t_extern.png"]: External
"*": Local
description:
text: "{{ .Result._source }} - {{ .Result.genre }}"
downloadvolumefactor:
case:
img[src="images/t_extern.png"]: 0
img[src="images/free.png"]: 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
minimumseedtime:
# 1 day (as seconds = 24 x 60 x 60)
text: 86400
# engine n/a

View File

@@ -9,38 +9,38 @@ type: semi-private
encoding: windows-1251
followredirect: true
links:
- https://26october.rudub.online/
- https://04december.rudub.online/
legacylinks:
- https://rudub.online/
- https://27september.rudub.online/
- https://28september.rudub.online/
- https://29september.rudub.online/
- https://30september.rudub.online/
- https://01october.rudub.online/
- https://02october.rudub.online/
- https://03october.rudub.online/
- https://04october.rudub.online/
- https://05october.rudub.online/
- https://06october.rudub.online/
- https://07october.rudub.online/
- https://08october.rudub.online/
- https://09october.rudub.online/
- https://10october.rudub.online/
- https://11october.rudub.online/
- https://12october.rudub.online/
- https://13october.rudub.online/
- https://14october.rudub.online/
- https://15october.rudub.online/
- https://16october.rudub.online/
- https://17october.rudub.online/
- https://18october.rudub.online/
- https://19october.rudub.online/
- https://20october.rudub.online/
- https://21october.rudub.online/
- https://22october.rudub.online/
- https://23october.rudub.online/
- https://24october.rudub.online/
- https://25october.rudub.online/
- https://04november.rudub.online/
- https://05november.rudub.online/
- https://06november.rudub.online/
- https://07november.rudub.online/
- https://08november.rudub.online/
- https://09november.rudub.online/
- https://10november.rudub.online/
- https://11november.rudub.online/
- https://12november.rudub.online/
- https://13november.rudub.online/
- https://14november.rudub.online/
- https://15november.rudub.online/
- https://16november.rudub.online/
- https://17november.rudub.online/
- https://18november.rudub.online/
- https://19november.rudub.online/
- https://20november.rudub.online/
- https://21november.rudub.online/
- https://22november.rudub.online/
- https://23november.rudub.online/
- https://24november.rudub.online/
- https://25november.rudub.online/
- https://26november.rudub.online/
- https://27november.rudub.online/
- https://28november.rudub.online/
- https://29november.rudub.online/
- https://30november.rudub.online/
- https://01december.rudub.online/
- https://02december.rudub.online/
- https://03december.rudub.online/
caps:
categorymappings:

View File

@@ -4,7 +4,7 @@ name: Rustorka
description: "Rustorka is a RUSSIAN Semi-Private Torrent Tracker for TV / MOVIES / GENERAL"
language: ru-RU
type: semi-private
encoding: windows-1251
encoding: UTF-8
links:
- https://rustorka.com/
legacylinks:
@@ -779,12 +779,11 @@ caps:
book-search: [q]
settings:
- name: username
- name: cookie
type: text
label: Username
- name: password
type: password
label: Password
label: Cookie
- name: info_cookie
type: info_cookie
- name: stripcyrillic
type: checkbox
label: Strip Cyrillic Letters
@@ -815,15 +814,9 @@ settings:
1: asc
login:
path: forum/login.php
method: post
method: cookie
inputs:
login_username: "{{ .Config.username }}"
login_password: "{{ .Config.password }}"
autologin: 1
login: Вход
error:
- selector: h4.warnColor1.mrg_16
cookie: "{{ .Config.cookie }}"
test:
path: forum/index.php
selector: a[href="./login.php?logout=1"]

View File

@@ -13,44 +13,42 @@ legacylinks:
caps:
categorymappings:
- {id: 1, cat: PC, desc: "Apps"}
- {id: 2, cat: Movies, desc: "XVID"}
- {id: 3, cat: Movies/DVD, desc: "DVD"}
- {id: 4, cat: TV, desc: "TV XVID"}
- {id: 5, cat: PC/Games, desc: "PC Games"}
- {id: 6, cat: Movies/HD, desc: "HD"}
- {id: 7, cat: XXX, desc: "XXX"}
- {id: 8, cat: TV/Anime, desc: "Anime"}
- {id: 9, cat: Audio, desc: "Audio"}
- {id: 10, cat: Other, desc: "Other"}
- {id: 11, cat: Console/XBox 360, desc: "XBOX 360"}
- {id: 12, cat: Console/PSP, desc: "PSP"}
- {id: 13, cat: TV/Documentary, desc: "Doc"}
- {id: 14, cat: Movies/DVD, desc: "Movies DVD"}
- {id: 15, cat: Console, desc: "PS2"}
- {id: 16, cat: TV/Sport, desc: "TV WWE"}
- {id: 17, cat: TV/HD, desc: "TV X264"}
- {id: 18, cat: TV, desc: "TV DVD"}
- {id: 19, cat: XXX/DVD, desc: "XXX DVD"}
- {id: 20, cat: TV/Anime, desc: "Anime DVD"}
- {id: 21, cat: PC/Mac, desc: "Mac"}
- {id: 23, cat: Movies, desc: "Boxset"}
- {id: 31, cat: Other, desc: "OFF"}
- {id: 32, cat: Movies/BluRay, desc: "BluRay"}
- {id: 33, cat: Console/Wii, desc: "WII"}
- {id: 34, cat: Console/PS3, desc: "PS3"}
- {id: 35, cat: TV/Anime, desc: "Anime HD"}
- {id: 36, cat: PC/Mobile-Android, desc: "Android"}
- {id: 37, cat: Movies/DVD, desc: "Custom DVDR"}
- {id: 15, cat: Console/PS3, desc: "JOGO-PS"}
- {id: 11, cat: Console/XBox, desc: "JOGO-XBOX"}
- {id: 5, cat: PC/Games, desc: "JOGO-PC"}
- {id: 33, cat: Console/NDS, desc: "JOGO-ND"}
- {id: 38, cat: Movies/Other, desc: "CAM TS"}
- {id: 23, cat: Movies, desc: "FILME-PACK"}
- {id: 53, cat: Movies/SD, desc: "FILME-SD"}
- {id: 6, cat: Movies/HD, desc: "FILME-HD"}
- {id: 46, cat: Movies/UHD, desc: "FILME-4K"}
- {id: 32, cat: Movies/BluRay, desc: "FILME-BRAY"}
- {id: 3, cat: Movies/DVD, desc: "FILME-DVD"}
- {id: 42, cat: Movies/WEB-DL, desc: "FILME-WEB"}
- {id: 9, cat: Audio, desc: "ALBUNS"}
- {id: 14, cat: Audio/Video, desc: "MUSIC-VID"}
- {id: 1, cat: PC, desc: "APPS"}
- {id: 21, cat: PC/Mac, desc: "MAC"}
- {id: 36, cat: PC/Mobile-Android, desc: "ANDROID"}
- {id: 4, cat: TV/SD, desc: "TV-SD"}
- {id: 17, cat: TV/HD, desc: "TV-HD"}
- {id: 48, cat: TV/UHD, desc: "TV-4K"}
- {id: 47, cat: TV/Other, desc: "TV-PACK"}
- {id: 16, cat: TV/Sport, desc: "WWE"}
- {id: 44, cat: TV/Sport, desc: "SPORTS"}
- {id: 13, cat: TV/Documentary, desc: "DOC"}
- {id: 49, cat: TV/Anime, desc: "ANIME-4K"}
- {id: 20, cat: TV/Anime, desc: "ANIME-DVD"}
- {id: 35, cat: TV/Anime, desc: "ANIME-HD"}
- {id: 50, cat: TV/Anime, desc: "ANIME-PACK"}
- {id: 8, cat: TV/Anime, desc: "ANIME-SD"}
- {id: 51, cat: TV/Anime, desc: "ANIME-WEB"}
- {id: 7, cat: XXX, desc: "XXX"}
- {id: 43, cat: Books/EBook, desc: "EBOOK"}
- {id: 52, cat: Books/Other, desc: "CURSOS"}
- {id: 31, cat: Other, desc: "OFF"}
- {id: 10, cat: Other, desc: "OUTROS"}
- {id: 39, cat: Other, desc: "GPS"}
- {id: 40, cat: Console/PS4, desc: "PS4"}
- {id: 41, cat: Movies/BluRay, desc: "BDRIP"}
- {id: 42, cat: Movies/WEB-DL, desc: "WEB DL"}
- {id: 43, cat: Books, desc: "Ebook"}
- {id: 44, cat: TV/Sport, desc: "Sports"}
- {id: 46, cat: Movies/UHD, desc: "4K"}
- {id: 47, cat: TV/HD, desc: "TV X265"}
modes:
search: [q]
@@ -125,44 +123,42 @@ search:
category:
selector: td:first-of-type
case:
div.cat-4k: 46
div.cat-filme-4k: 46
div.cat-albuns: 9
div.cat-android: 36
div.cat-anime: 8
div.cat-anime-dvdr: 20
div.cat-anime-dvd: 20
div.cat-anime-hd: 35
div.cat-anime-pack: 50
div.cat-anime-web: 51
div.cat-anime-4k: 49
div.cat-apps: 1
div.cat-brip: 41
div.cat-blu-ray: 32
div.cat-boxset: 23
div.cat-cam-ts: 38
div.cat-dvd-custom: 37
div.cat-sports: 44
div.cat-cursos: 52
div.cat-doc: 13
div.cat-dvdr: 3
div.cat-e-book: 43
div.cat-ebook: 43
div.cat-filme-bray: 32
div.cat-filme-dvd: 3
div.cat-filme-hd: 6
div.cat-filme-pack: 23
div.cat-filme-sd: 53
div.cat-filme-web: 42
div.cat-gps: 39
div.cat-hd: 6
div.cat-games: 5
div.cat-ps2: 15
div.cat-ps3: 34
div.cat-ps4: 40
div.cat-psp: 12
div.cat-wii: 33
div.cat-mdvdr: 14
div.cat-jogo-nd: 33
div.cat-jogo-pc: 5
div.cat-jogo-ps: 15
div.cat-jogo-xbox: 11
div.cat-mac: 21
div.cat-music-vid: 14
div.cat-off: 31
div.cat-other: 10
div.cat-series: 4
div.cat-series-dvdr: 18
div.cat-series-x264: 17
div.cat-series-x265: 47
div.cat-web-dl: 42
div.cat-outros: 10
div.cat-sports: 44
div.cat-tv-4k: 48
div.cat-tv-hd: 17
div.cat-tv-pack: 47
div.cat-tv-sd: 4
div.cat-wwe: 16
div.cat-xbox360: 11
div.cat-xvid: 2
div.cat-xxx: 7
div.cat-xxx-dvdr: 19
_audiopt:
selector: i.fg-audiopt
attribute: title

View File

@@ -7,6 +7,7 @@ type: public
encoding: UTF-8
links:
- https://seedoff.zannn.top/
legacylinks:
- https://forum.zannn.top/
caps:
@@ -189,24 +190,24 @@ download:
- name: validfilename
search:
headers:
cookie: ["gophp=gop; trololofm=test; bookcontent=0"]
paths:
# https://seedoff.zannn.top/search?page=ajax&search=&active=0&category=0&options=0&recommend=0&have_quality=0&types_search=0&period=0&genres=&order=3&by=2
- path: search
# https://seedoff.zannn.top/index.php?page=ajax&active=0&options=0&recommend=0&sticky=0&period=0&options=0&order=3&by=2&pages=1
- path: index.php
inputs:
page: ajax
search: "{{ .Keywords }}"
# 0 all, 1 active, 2 dead
active: 0
category: 0
# 0 name, 1 name & desc
options: 0
recommend: 0
have_quality: 0
# 0 whole word, 1 partial word
types_search: 0
sticky: 0
period: 0
order: "{{ .Config.sort }}"
by: "{{ .Config.type }}"
pages: 1
keywordsfilters:
- name: re_replace # S01 to сезон 1
@@ -216,6 +217,9 @@ search:
- name: re_replace # S01E02 to сезон 1 сери 2
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "сезон $1 сери $2"]
error:
- selector: td.lista:contains("Поиск временно не работает")
rows:
selector: table.lista tbody tr:has(a[href^="/torrent/"])

View File

@@ -13,7 +13,7 @@ caps:
- {id: 2, cat: TV, desc: "TV Show"}
- {id: 1, cat: Movies, desc: "Movie"}
- {id: 10, cat: Movies/UHD, desc: "4K Movie"}
- {id: 13, cat: Movies, desc: "BoxSet"}
- {id: 13, cat: TV, desc: "TV Boxsets"}
- {id: 12, cat: PC/Games, desc: "Linux Game"}
- {id: 3, cat: PC/Games, desc: "PC Game"}
- {id: 5, cat: Audio/Lossless, desc: "Music"}
@@ -32,8 +32,8 @@ caps:
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
tv-search: [q, season, ep, tmdbid]
movie-search: [q, tmdbid]
music-search: [q]
book-search: [q]
@@ -96,9 +96,7 @@ search:
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
episodeNumber: "{{ .Query.Ep }}"
imdbId: "{{ .Query.IMDBIDShort }}"
tmdbId: "{{ .Query.TMDBID }}"
tvdbId: "{{ .Query.TVDBID }}"
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
@@ -135,12 +133,8 @@ search:
filters:
- name: replace
args: ["https://via.placeholder.com/90x135", ""]
imdbid:
selector: imdb_id
tmdbid:
selector: tmdb_id
tvdbid:
selector: tvdb_id
genre:
selector: meta.genres
filters:
@@ -199,4 +193,4 @@ search:
minimumseedtime:
# 10 days (as seconds = 10 x 24 x 60 x 60)
text: 864000
# json UNIT3D 8.2.0
# json UNIT3D 8.2.0 (custom)

View File

@@ -188,7 +188,7 @@ search:
selector: created_at
filters:
- name: append
args: " +02:00" # EET
args: " +01:00" # CET
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:
@@ -224,4 +224,4 @@ search:
minimumseedtime:
# 6 days (as seconds = 6 x 24 x 60 x 60)
text: 518400
# json UNIT3D 8.3.2 (custom)
# json UNIT3D 8.3.3 (custom)

View File

@@ -7,11 +7,11 @@ type: public
encoding: UTF-8
requestDelay: 2
links:
- https://solidtorrents.to/
- https://solidtorrents.eu/
legacylinks:
- https://solidtorrents.net/
- https://solidtorrents.eu/
- https://solidtorrents.nocensor.cloud/
- https://solidtorrents.to/
caps:
categories:
@@ -39,6 +39,7 @@ caps:
"Other/Source Code": PC
"Other/Video": TV
Softwares: PC/0day
"Softwares/Mac": PC/Mac
"Softwares/Windows": PC/0day
TV: TV
Unknown: Other

View File

@@ -7,6 +7,7 @@ type: private
encoding: UTF-8
links:
- https://superbits.org/
- https://superbits.cc/
caps:
categorymappings:
@@ -151,7 +152,7 @@ search:
selector: added
filters:
- name: append
args: " +02:00" # CEST
args: " +01:00" # CET
- name: dateparse
args: "yyyy-MM-dd HH:mm:ss zzz"
size:

View File

@@ -205,7 +205,7 @@ search:
attribute: data-src
date_elapsed:
# time type: time elapsed (default)
selector: td:nth-child(4) > span[title]
selector: td.rowfollow:nth-child(4) > span[title]
attribute: title
optional: true
filters:
@@ -215,7 +215,7 @@ search:
args: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td:nth-child(4):not(:has(span))
selector: td.rowfollow:nth-child(4):not(:has(span))
optional: true
filters:
- name: append
@@ -225,13 +225,13 @@ search:
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(5)
selector: td.rowfollow:nth-child(5)
seeders:
selector: td:nth-child(6)
selector: td.rowfollow:nth-child(6)
leechers:
selector: td:nth-child(7)
selector: td.rowfollow:nth-child(7)
grabs:
selector: td:nth-child(8)
selector: td.rowfollow:nth-child(8)
description:
case:
span[title="Autorisé"]: "Verified"

View File

@@ -87,7 +87,6 @@ caps:
- {id: 78, cat: PC/0day, desc: "Security Tools"}
- {id: 70, cat: PC/0day, desc: "Utility Tools"}
- {id: 74, cat: PC/0day, desc: "Web Tools"}
- {id: 80, cat: PC/0day, desc: "Windows Phone Apps"}
- {id: 81, cat: PC/0day, desc: "Developers"}
- {id: 82, cat: PC/0day, desc: "Designers"}
- {id: 84, cat: PC, desc: "TEAM OS Other Stuff Releases"}
@@ -98,6 +97,7 @@ caps:
- {id: 87, cat: Other, desc: "Wallpapers, Themes & Screensavers"}
- {id: 89, cat: PC, desc: "Other Releases"}
- {id: 100, cat: Other, desc: "Tutorials"} # undocumented
- {id: 103, cat: Other, desc: "Other Topic"} # undocumented
modes:
search: [q]
@@ -119,6 +119,10 @@ settings:
type: checkbox
label: Search freeleech only
default: false
- 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 mandatory notices that the site presents. You cannot browse torrents with unread notices outstanding."
login:
method: cookie

View File

@@ -126,6 +126,11 @@ login:
path: index.php
selector: a[href="logout.php"]
download:
selectors:
- selector: a[href^="download_ssl.php?torrent="]
attribute: href
search:
paths:
- path: selection.php
@@ -155,7 +160,7 @@ search:
selector: a.selection_a
attribute: href
download:
selector: a[href^="download_ssl.php?torrent="]
selector: a.selection_a
attribute: href
poster:
selector: div[id^="details"] img

View File

@@ -0,0 +1,164 @@
---
id: thepiratedship
name: ThePiratedShip
description: "ThePiratedShip is a Private tracker for MOVIES / TV / GENERAL"
language: en-US
type: private
encoding: UTF-8
links:
- https://thepiratedship.co.uk/
caps:
categorymappings:
# - {id: 8, cat: Movies/Other, desc: "Torrent Releases"}
# - {id: 32, cat: Movies, desc: "Movies"}
- {id: 10, cat: Movies/SD, desc: "Cams TS & TC/PPV/VOD/HDTV *Ratio Free*"}
- {id: 11, cat: Movies/SD, desc: "Screeners/R3/R5/R6/HDRip/Webrip/WEB-DL/Recodes"}
- {id: 13, cat: Movies/HD, desc: "DVDRip/BRRip/BDRip"}
- {id: 14, cat: Movies/DVD, desc: "DVDR"}
- {id: 15, cat: Movies/UHD, desc: "High Definition MKV/MP4"}
- {id: 16, cat: Movies/UHD, desc: "4k Ultra High Definition *Ratio Free*"}
- {id: 17, cat: Movies/Other, desc: "Movies Requests"}
# - {id: 20, cat: TV, desc: "TV Shows"}
- {id: 21, cat: TV, desc: "Sci-Fi / Supernatural / Horror"}
- {id: 22, cat: TV, desc: "Comedy"}
- {id: 23, cat: TV, desc: "Action/Adventure"}
- {id: 24, cat: TV, desc: "Drama"}
- {id: 25, cat: TV/Documentary, desc: "Documentaries"}
- {id: 27, cat: TV/Sport, desc: "Sport TV"}
- {id: 28, cat: TV/Other, desc: "Misc TV"}
- {id: 29, cat: TV/Other, desc: "TV Shows Requests"}
# - {id: 33, cat: Audio, desc: "Music"}
- {id: 34, cat: Audio, desc: "Rock/Heavy Metal/Alternative"}
- {id: 38, cat: Audio, desc: "Album & Singles Packs"}
- {id: 35, cat: Audio, desc: "Singles"}
- {id: 36, cat: Audio, desc: "Pop albums"}
- {id: 37, cat: Audio, desc: "Trance/Dance/House"}
- {id: 39, cat: Audio, desc: "Drum & Bass/Breakbeat/Garage/Hardcore"}
- {id: 40, cat: Audio, desc: "Golden Oldies/Easy Listening"}
- {id: 41, cat: Audio, desc: "Reggae/DUB/SKA/2 Tone"}
- {id: 42, cat: Audio, desc: "Hip-Hop/RnB/Soul"}
- {id: 43, cat: Audio, desc: "Country/Folk"}
- {id: 44, cat: Audio, desc: "Jazz 'n' Blues"}
- {id: 45, cat: Audio, desc: "Classical"}
- {id: 46, cat: Audio, desc: "Soundtracks"}
- {id: 47, cat: Audio, desc: "Amateur Creations/Live DJ Sets etc/Karaoke"}
- {id: 48, cat: Audio/Video, desc: "Music DVD & Videos"}
- {id: 49, cat: Audio, desc: "Misc/Compilation albums"}
- {id: 50, cat: Audio/Lossless, desc: "Lossless Format Albums"}
# - {id: 54, cat: PC/Games, desc: "Games"}
- {id: 55, cat: PC/Games, desc: "PC Games"}
- {id: 56, cat: Console/XBox, desc: "X BOX"}
- {id: 57, cat: Console/Other, desc: "Nintendo Switch"}
- {id: 58, cat: Console/PS3, desc: "Playstation"}
- {id: 59, cat: Console/PSP, desc: "SONY PSP"}
- {id: 60, cat: Console/NDS, desc: "Nintendo DS"}
- {id: 61, cat: PC/Games, desc: "DVDR Interactive Games & Quizzes"}
- {id: 62, cat: PC/Mac, desc: "Mac & Other OS Games"}
- {id: 63, cat: Console/Other, desc: "All Other Console Roms & Emulators"}
# - {id: 67, cat: PC, desc: "Applications"}
- {id: 68, cat: PC, desc: "Artistry"}
- {id: 69, cat: PC, desc: "Internet & Web"}
- {id: 70, cat: PC, desc: "Utilities"}
- {id: 71, cat: PC, desc: "Sound & Vision"}
- {id: 72, cat: PC, desc: "Misc Applications"}
- {id: 73, cat: PC, desc: "Windows Operating Systems & MS Apps"}
- {id: 74, cat: PC, desc: "Applications Requests"}
# - {id: 78, cat: Other, desc: "Practice Area"}
- {id: 89, cat: Other, desc: Test"}
# undocumented
- {id: 100, cat: Books, desc: Comics/Magazines"}
- {id: 96, cat: Movies, desc: "Animation Releases"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
book-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
login:
path: index.php
method: form
form: form
inputs:
login: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: 1
_xfRedirect: ""
selectorinputs:
_xfToken:
selector: input[name="_xfToken"]
attribute: value
error:
- selector: div.blockMessage--error:contains(" not be found")
- selector: div.blockMessage--error:contains("Incorrect password")
test:
path: index.php
selector: a[href="/index.php?account/preferences"]
search:
paths:
# supports only single cat search, so defaulting to all
- path: "index.php?torrents/&freeleech={{ if .Config.freeleech }}1{{ else }}{{ end }}&filename={{ .Keywords }}"
# imdb and tmdb not supported
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
rows:
selector: table.dataList-table > tbody.normal-torrents > tr
fields:
category:
selector: a[href^="/index.php?forums/"]
attribute: href
filters:
- name: regexp
args: (\d+)/$
title:
selector: div.structItem-title a
details:
selector: li.structItem-startDate a
attribute: href
download:
selector: a[href^="/index.php?attachments/"]
attribute: href
description:
selector: a[href^="/index.php?forums/"]
date:
selector: time
attribute: datetime
size:
selector: td:nth-last-child(4)
grabs:
selector: td:nth-last-child(3)
seeders:
selector: td:nth-last-child(2)
leechers:
selector: td:nth-last-child(1)
downloadvolumefactor:
case:
span.label--accent: 0
"*": 1
uploadvolumefactor:
text: 1
minimumratio:
text: 1.0
minimumseedtime:
# 1 day (as seconds = 24 x 60 x 60)
text: 86400
# XenForo

View File

@@ -8,13 +8,13 @@ encoding: UTF-8
requestDelay: 2
links:
- https://www.torlock.com/
- https://www.torlock2.com/
legacylinks:
- https://torlock.com/
- https://www.torlock.icu/
- https://torlock.nocensor.cloud/
- https://torlock.mrunblock.bond/
- https://torlock.unblockit.download/
- https://www.torlock2.com/ # 400 Bad Request No required SSL certificate was sent
caps:
# dont forget to update the search fields category case block

View File

@@ -84,6 +84,10 @@ caps:
book-search: [q]
settings:
- name: info_password
type: info
label: About Password Expiry
default: "Torrent-Explosiv has an <b>8 week Password Expiry</b> regime. So if the Indexer has stopped working then the first thing you should do is check if your password has expired by login in at <a href=\"https://torrent-explosiv.me/login.php\" target=\"_blank\">Torrent-Explosiv</a>, and if necessary use the <b>Passwort anfordern</b> (<i>Request password</i>) button to renew it."
- name: username
type: text
label: Username

View File

@@ -9,7 +9,7 @@ type: public
encoding: UTF-8
# to fetch current domain use https://www.protege-torrent.com/Torrent9
links:
- https://www.torrent9.ing/
- https://www.torrent9.cv/
legacylinks:
- https://www.protege-liens.com/
- https://www.protege-liens.net/
@@ -21,8 +21,6 @@ legacylinks:
- https://www.torrent.onl/
- https://torrent9.news/
# actual legacylinks
- https://www.torrent9.mn/
- https://www.torrent9.city/
- https://www.torrent9.gy/
- https://www.torrent9.sbs/
- https://www.torrent9.sb/
@@ -37,6 +35,8 @@ legacylinks:
- https://www.torrent9.gl/
- https://www.torrent9.cyou/
- https://www.torrent9.gd/
- https://www.torrent9.ing/
- https://www.torrent9.run/
caps:
categorymappings:

View File

@@ -10,7 +10,6 @@ testlinktorrent: false
links:
- https://ww1.torrent9.fm/
- https://torrent9.to/
- https://torrent9.unblockninja.com/
legacylinks:
- https://ww1.torrent9.uno/
- https://wvw.t9.pe/
@@ -35,6 +34,7 @@ legacylinks:
- https://torrent9.ninjaproxy1.com/ # no response data
- https://torrent9.proxyninja.org/ # Error 1007
- https://www.torrent9.se/
- https://torrent9.unblockninja.com/ # 403 forbidden
caps:
# dont forget to update the search fields category case block

View File

@@ -103,6 +103,7 @@ login:
search:
headers:
User-Agent: ["{{ .Config.useragent }}"]
Referer: ["{{ .Config.sitelink }}index.php?initK&all"]
paths:
- path: ajgettorrents.php

View File

@@ -7,14 +7,9 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentqq339.com/
- https://torrentegg31.com/
- https://torrentqq344.com/
- https://torrentegg36.com/
legacylinks:
- https://torrentqq324.com/
- https://torrentqq325.com/
- https://torrentqq326.com/
- https://torrentqq327.com/
- https://torrentqq328.com/
- https://torrentqq329.com/
- https://torrentqq330.com/
- https://torrentqq331.com/
@@ -28,6 +23,16 @@ legacylinks:
- https://torrentegg29.com/
- https://torrentqq338.com/
- https://torrentegg30.com/
- https://torrentqq339.com/
- https://torrentegg31.com/
- https://torrentqq340.com/
- https://torrentegg32.com/
- https://torrentegg33.com/
- https://torrentqq341.com/
- https://torrentqq342.com/
- https://torrentegg34.com/
- https://torrentqq343.com/
- https://torrentegg35.com/
caps:
categorymappings:

View File

@@ -7,16 +7,8 @@ type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentsir156.com/
- https://torrentsir160.com/
legacylinks:
- http://torrentsir147.com/
- https://torrentsir147.com/
- http://torrentsir148.com/
- https://torrentsir148.com/
- http://torrentsir149.com/
- https://torrentsir149.com/
- http://torrentsir150.com/
- https://torrentsir150.com/
- http://torrentsir151.com/
- https://torrentsir151.com/
- http://torrentsir152.com/
@@ -28,6 +20,14 @@ legacylinks:
- http://torrentsir155.com/
- https://torrentsir155.com/
- http://torrentsir156.com/
- https://torrentsir156.com/
- http://torrentsir157.com/
- https://torrentsir157.com/
- http://torrentsir158.com/
- https://torrentsir158.com/
- http://torrentsir159.com/
- https://torrentsir159.com/
- http://torrentsir160.com/
caps:
categorymappings:

View File

@@ -6,7 +6,7 @@ language: ru-RU
type: semi-private
encoding: UTF-8
certificates:
- abea2b6915578cf69e6270980e75b518abb5af73 # expired 4th August 2024
- 314a854715f68440d92c14d2414065410785cf26 # expired 9th November 2024
links:
- https://torrents-local.xyz/

View File

@@ -1,110 +0,0 @@
---
id: torrentwhiz
name: TorrentWhiz
description: "TorrentWhiz ( 토렌트위즈) is a Public KOREAN tracker for Korean media."
language: ko-KR
type: public
encoding: UTF-8
followredirect: true
links:
- https://torrentwiz68.com/
legacylinks:
- https://torrentwiz51.com/
- https://torrentwiz52.com/
- https://torrentwiz54.com/
- https://torrentwiz55.com/
- https://torrentwiz56.com/
- https://torrentwiz57.com/
- https://torrentwiz58.com/
- https://torrentwiz59.com/
- https://torrentwiz60.com/
- https://torrentwiz61.com/
- https://torrentwiz62.com/
- https://torrentwiz63.com/
- https://torrentwiz64.com/
- https://torrentwiz66.com/
- https://torrentwiz67.com/
caps:
categorymappings:
- {id: "netflix", cat: TV, desc: "넷플릭스 (Netflix)"}
- {id: "tv", cat: TV, desc: "시사 (TV)"}
- {id: "mov", cat: Movies, desc: "영화 (Movie)"}
- {id: "drama", cat: TV, desc: "드라마 (Drama)"}
- {id: "enter", cat: TV, desc: "예능 (Entertainment)"}
- {id: "music", cat: Audio, desc: "음원 (Music)"}
- {id: "util", cat: PC, desc: "유틸 (Software)"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
music-search: [q]
settings:
- name: info_flaresolverr
type: info_flaresolverr
download:
infohash:
hash:
selector: a[href^="magnet:?xt="]
attribute: href
filters:
- name: regexp
args: ([A-F|a-f|0-9]{40})
title:
selector: h1.panel-title
filters:
- name: trim
- name: validfilename
search:
paths:
# https://torrentwiz31.com/bbs/search.php?url=&stx=sin&srows=100&gr_id=&sfl=wr_subject&sop=and
- path: bbs/search.php
inputs:
stx: "{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
srows: 100
gr_id: ""
# wr_subject||wr_content, wr_subject, wr_content, mb_id, wr_name
sfl: wr_subject
# or, and
sop: and
rows:
selector: div.search-media div.media
fields:
category:
selector: div.media-heading a
attribute: href
filters:
- name: querystring
args: bo_table
title:
selector: div.media-heading a
details:
selector: div.media-heading a
attribute: href
download:
selector: div.media-heading a
attribute: href
poster:
selector: div.photo img
attribute: src
date:
# 2021-01-29T20:44:20+09:00
selector: time
attribute: datetime
size:
text: "512 MB"
seeders:
text: 1
leechers:
text: 1
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1
# engine n/a

View File

@@ -1,196 +0,0 @@
---
id: turknova
name: TurkNova
description: "TurkNova is a TURKISH Private Torrent Tracker for MOVIES / TV / GENERAL. This Indexer is for English only."
language: en-US
type: private
encoding: UTF-8
links:
- https://turknova.org/
legacylinks:
- https://www.turknova.net/
caps:
categorymappings:
- {id: 64, cat: Movies/UHD, desc: "4K - UHD"}
- {id: 40, cat: Movies/HD, desc: "1080p - 720p - BDRip - mRip"}
- {id: 71, cat: Movies/HD, desc: "H265 - HECV"}
- {id: 39, cat: Movies, desc: "BOXSET"}
- {id: 43, cat: Movies/HD, desc: "NETFLIX"}
- {id: 84, cat: TV, desc: "DISNEY+"}
- {id: 85, cat: TV, desc: "AMZN PRIME"}
- {id: 92, cat: TV, desc: "DISCOVERY+"}
- {id: 88, cat: TV, desc: "BLUTV"}
- {id: 74, cat: TV, desc: "EXXEN"}
- {id: 77, cat: TV, desc: "GAIN"}
- {id: 87, cat: TV, desc: "TOD"}
- {id: 91, cat: TV, desc: "TABII"}
- {id: 94, cat: TV, desc: "MUBI"}
- {id: 59, cat: Movies/WEB-DL, desc: "WEB-DL / WEBRip"}
- {id: 34, cat: TV/Documentary, desc: "Belgesel"}
- {id: 60, cat: TV/Foreign, desc: "Yabancı Dizi"}
- {id: 72, cat: TV/Anime, desc: "Animasyon"}
- {id: 48, cat: TV/HD, desc: "HDTV - Rip"}
- {id: 55, cat: TV, desc: "Türk Filmi"}
- {id: 95, cat: Other, desc: "Yeşilçam"}
- {id: 46, cat: Other, desc: "Eğitim"}
- {id: 53, cat: Other, desc: "Resim"}
- {id: 50, cat: Audio, desc: "Müzik"}
- {id: 52, cat: PC, desc: "Program"}
- {id: 62, cat: PC, desc: "İşletim Sistemi"}
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: info_layout
type: info
label: Layout
default: "<ol><li>Only the English Classic profile is supported.<li>Make sure to set the <b>Torrent Listing (Listeleme Biçimi)</b> option in your profile to <b>Classic (Klasik)</b><li>And set the <b>Language (Dil)</b> to <b>English</b><li>Using the <i>Modern</i> theme will prevent results, and using <i>Turkish</i> will prevent upload dates.</ol>"
- 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>An error has occurred!You can't view this page unless you read all your unread messages</b>, then access the site with your browser and <b>mark as read</b> all PMs."
login:
path: ?p=home&pid=1
method: form
form: form#sls_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
test:
path: ?p=home&pid=1
selector: a#logout
search:
paths:
- path: /
keywordsfilters:
- name: re_replace
args: ["[^a-zA-Z0-9]+", "%25"]
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 }}"
error:
- selector: div.error:not(:contains("Hiçbir sonuç bulunamadı.")):not(:contains("There are no results found."))
# does not support imdbid search and does not return imdb link in results.
rows:
selector: "table#torrents_table_classic > tbody > tr:has(td.torrent_name){{ if .Config.freeleech }}:has(img[title=\"FREE!\"]){{ else }}{{ end }}"
fields:
category:
selector: div.category_image > a
attribute: href
filters:
- name: querystring
args: cid
title:
selector: a[href*="?p=torrents&pid=10&action=details"]
details:
# href="https://turknova.org/?p=torrents&amp;pid=10&amp;action=details&amp;tid=40737"
selector: a[href*="?p=torrents&pid=10&action=details"]
attribute: href
download:
# from details page href="https://turknova.org/?p=torrents&pid=10&action=download&tid=40774"
selector: a[href*="?p=torrents&pid=10&action=details"]
attribute: href
filters:
- name: replace
args: ["details", "download"]
poster:
selector: a[rel="fancybox"]
attribute: href
date_day:
optional: true
# Uploaded Friday at 05:11 by
# Uploaded Today at 00:48 by
# Uploaded Yesterday at 23:57 by
selector: td.torrent_name:contains(" at ")
filters:
- name: regexp
args: "Uploaded (.+?) by"
- name: replace
args: [" at ", " "]
- name: fuzzytime
date_year:
# auto adjusted by site account profile
optional: true
# Uploaded 30-01-2019 15:02 by
selector: td.torrent_name:not(:contains(" at "))
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 }}"
size:
selector: a[rel="torrent_size"]
seeders:
selector: a[rel="torrent_seeders"]
leechers:
selector: a[rel="torrent_leechers"]
grabs:
selector: a[rel="times_completed"]
downloadvolumefactor:
case:
"img[title=\"FREE!\"]": 0
"img[title=\"Download Multiplier: 0.5\"]": 0.5
"*": 1
uploadvolumefactor:
case:
"img[title=\"Upload Multiplier: 2\"]": 2
"*": 1
minimumratio:
text: 1.0
minimumseedtime:
# 3 days (as seconds = 3 x 24 x 60 x 60)
text: 259200
# TSUE 2.2

View File

@@ -15,15 +15,14 @@ caps:
- {id: 413, cat: TV/Anime, desc: "Web"}
- {id: 12, cat: TV/Anime, desc: "BDRip"}
- {id: 13, cat: TV/Anime, desc: "DVDRip"}
- {id: 14, cat: TV/Anime, desc: "HDTVRip"}
- {id: 14, cat: TV/Anime, desc: "HDTV"}
- {id: 15, cat: TV/Anime, desc: "DVDISO"}
- {id: 16, cat: TV/Anime, desc: "BDMV"}
- {id: 17, cat: TV/Anime, desc: "LQRip"}
- {id: 410, cat: TV/Anime, desc: "外挂结构 (TV Series)"}
- {id: 412, cat: TV/Anime, desc: "加流重灌 (Modded Blu-rays)"}
- {id: 21, cat: Books, desc: "Raw Books"}
- {id: 22, cat: Books, desc: "译漫画 (HK Books)"}
- {id: 23, cat: Books, desc: "台译漫画 (TW Books)"}
- {id: 21, cat: Books, desc: "原版漫画 (Raw Books)"}
- {id: 22, cat: Books, desc: "译漫画 (Translated Books)"}
- {id: 30, cat: Audio, desc: "Lossless Music"}
- {id: 40, cat: Other, desc: "Others"}
# Anime as Movies (Radarr uses t=movie):
@@ -32,7 +31,7 @@ caps:
- {id: 413, cat: Movies/Other, desc: "Web"}
- {id: 12, cat: Movies/HD, desc: "BDRip"}
- {id: 13, cat: Movies/Other, desc: "DVDRip"}
- {id: 14, cat: Movies/Other, desc: "HDTVRip"}
- {id: 14, cat: Movies/Other, desc: "HDTV"}
- {id: 15, cat: Movies/Other, desc: "DVDISO"}
- {id: 16, cat: Movies/BluRay, desc: "BDMV"}
- {id: 17, cat: Movies/Other, desc: "LQRip"}
@@ -85,6 +84,11 @@ login:
path: index.php
selector: a[href^="logout.php?key="]
download:
selectors:
- selector: a[href^="download.php?id="]
attribute: href
search:
paths:
- path: torrents.php
@@ -93,7 +97,7 @@ search:
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%, 8 all promotions
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%, 8 custom promotion
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
# 0 title, 1 descr, 3 uploader, 4 AniDB, 5 infohash
search_area: 0
@@ -113,22 +117,17 @@ search:
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 }}"
selector: a[href^="details.php?id="]
details:
selector: a[href^="details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
selector: a[href^="details.php?id="]
attribute: href
date_elapsed:
# time type: time elapsed (default)
selector: td:nth-child(4) > time[title]
selector: td.rowfollow:nth-child(3) > time[title]
attribute: title
optional: true
filters:
@@ -138,7 +137,7 @@ search:
args: "yyyy-MM-dd HH:mm:ss zzz"
date_added:
# time added
selector: td:nth-child(4):not(time[title]) > time
selector: td.rowfollow:nth-child(3):not(time[title])
optional: true
filters:
- name: append
@@ -148,13 +147,13 @@ search:
date:
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
size:
selector: td:nth-child(5)
selector: td.rowfollow:nth-child(4)
seeders:
selector: td:nth-child(6)
selector: td.rowfollow:nth-child(5)
leechers:
selector: td:nth-child(7)
selector: td.rowfollow:nth-child(6)
grabs:
selector: td:nth-child(8)
selector: td.rowfollow:nth-child(7)
downloadvolumefactor_custom:
selector: td.embedded > img.arrowdown + b
optional: true
@@ -169,19 +168,19 @@ search:
args: (.*)X
downloadvolumefactor:
case:
img.pro_free: 0
img.pro_free2up: 0
img.pro_custom: "{{ .Result.downloadvolumefactor_custom }}"
img.pro_50pctdown: 0.5
img.pro_50pctdown2up: 0.5
img.pro_30pctdown: 0.3
span.free: 0
span.twoupfree: 0
span.custompromotion: "{{ .Result.downloadvolumefactor_custom }}"
span.halfdown: 0.5
span.twouphalfdown: 0.5
span.thirtypercent: 0.3
"*": 1
uploadvolumefactor:
case:
img.pro_50pctdown2up: 2
img.pro_free2up: 2
img.pro_2up: 2
img.pro_custom: "{{ .Result.uploadvolumefactor_custom }}"
span.twouphalfdown: 2
span.twoupfree: 2
span.twoup: 2
span.custompromotion: "{{ .Result.uploadvolumefactor_custom }}"
"*": 1
description:
selector: td:nth-child(2)

View File

@@ -184,4 +184,4 @@ search:
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json UNIT3D 8.2.0
# json UNIT3D 8.3.3

View File

@@ -29,7 +29,9 @@ caps:
- {id: 38, cat: Audio, desc: "Christmas Audio"}
- {id: 39, cat: Movies, desc: "Christmas Movie"}
- {id: 40, cat: TV, desc: "Christmas TV"}
- {id: 29, cat: Console, desc: "Games / All"}
- {id: 29, cat: Console, desc: "Games"}
- {id: 42, cat: PC/Games, desc: "Games PC"}
- {id: 43, cat: Console/Wii, desc: "Games Wii"}
- {id: 28, cat: Audio, desc: "Karaoke"}
- {id: 7, cat: Movies/HD, desc: "Movie 1080p"}
- {id: 6, cat: Movies/UHD, desc: "Movie 4K"}

View File

@@ -5,6 +5,8 @@ description: "Xider-Torrent is a HUNGARIAN Private Tracker for MOVIES / TV"
language: hu-HU
type: private
encoding: UTF-8
certificates:
- 2191bbeb4c86d287861b0a63d26aecc0983d5087 # Expired 18th November 2024
links:
- https://xider.eu/

View File

@@ -1,152 +0,0 @@
---
id: xperiencebytes-api
name: XperienceBytes (API)
description: "XperienceBytes (XPB) is a BRAZILIAN Private site for ANIME"
language: pt-BR
type: private
encoding: UTF-8
links:
- https://xperiencebytes.me/
caps:
categorymappings:
- {id: 6, cat: Movies, desc: "Tipo Filme"}
- {id: 7, cat: TV, desc: "Tipo Série"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
settings:
- name: apikey
type: text
label: APIKey
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Token by accessing your <a href=\"https://xperiencebytes.me/\" target=\"_blank\">XPB</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: created_at
options:
created_at: created
seeders: seeders
size: size
name: title
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_activity
type: info
label: Account Inactivity
default: "After 3 months without any log in or usage of your account, it will be pruned and can only be reactivated by a staff member. Make sure to keep your account active and do not use programs to keep your account active, as your account may still get pruned."
login:
path: /api/torrents
method: get
error:
- selector: a[href*="/login"]
message:
text: "The API key was not accepted by {{ .Config.sitelink }}."
- selector: :root:contains("Account is Banned")
search:
paths:
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x)
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476
- 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
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
name: "{{ .Keywords }}"
seasonNumber: "{{ .Query.Season }}"
episodeNumber: "{{ .Query.Ep }}"
imdbId: "{{ .Query.IMDBIDShort }}"
tmdbId: "{{ .Query.TMDBID }}"
tvdbId: "{{ .Query.TVDBID }}"
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
sortField: "{{ .Config.sort }}"
sortDirection: "{{ .Config.type }}"
perPage: 100
keywordsfilters:
- name: re_replace
args: ["\\.", " "]
rows:
selector: data
attribute: attributes
fields:
categorydesc:
selector: category
title:
selector: name
details:
selector: details_link
download:
selector: download_link
poster:
selector: poster
filters:
- name: replace
args: ["https://via.placeholder.com/90x135", ""]
imdbid:
selector: imdb_id
tmdbid:
selector: tmdb_id
tvdbid:
selector: tvdb_id
files:
selector: num_file
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: times_completed
date:
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
selector: created_at
filters:
- name: append
args: " +00:00" # GMT
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:
selector: size
downloadvolumefactor:
# api returns 0%, 25%, 50%, 75%, 100%
selector: freeleech
case:
0%: 1 # not free
25%: 0.75
50%: 0.5
75%: 0.25
100%: 0 # freeleech
"*": 0 # catch errors
uploadvolumefactor:
# api returns 0=false, 1=true
selector: double_upload
case:
0: 1 # normal
1: 2 # double
minimumratio:
text: 1.0
# json UNIT3D 6.0.0

View File

@@ -148,7 +148,7 @@ search:
selector: created_at
filters:
- name: append
args: " -03:00" # BRT
args: " +00:00" # GMT
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
size:

View File

@@ -28,10 +28,9 @@ namespace Jackett.Common.Indexers.Definitions
public override string Id => "divxtotal";
public override string Name => "DivxTotal";
public override string Description => "DivxTotal is a SPANISH site for Movies, TV series and Software";
public override string SiteLink { get; protected set; } = "https://www5.divxtotal.mov/";
public override string SiteLink { get; protected set; } = "https://divxtotal.io/";
public override string[] LegacySiteLinks => new[]
{
"https://www.divxtotal.re/",
"https://www.divxtotal.nl/",
"https://www.divxtotal.ac/",
"https://www.divxtotal.dev/",
@@ -46,6 +45,7 @@ namespace Jackett.Common.Indexers.Definitions
"https://www2.divxtotal.mov/",
"https://www3.divxtotal.mov/",
"https://www4.divxtotal.mov/",
"https://www5.divxtotal.mov/",
};
public override string Language => "es-ES";
public override string Type => "public";

View File

@@ -28,10 +28,10 @@ namespace Jackett.Common.Indexers.Definitions
public override string Name => "DonTorrent";
public override string Description => "DonTorrent is a SPANISH public tracker for MOVIES / TV / GENERAL";
// in the event the redirect is inactive https://t.me/s/dontorrent should have the latest working domain
public override string SiteLink { get; protected set; } = "https://dontorrent.equipment/";
public override string SiteLink { get; protected set; } = "https://dontorrent.yoga/";
public override string[] AlternativeSiteLinks => new[]
{
"https://dontorrent.equipment/",
"https://dontorrent.yoga/",
"https://todotorrents.org/",
"https://tomadivx.net/",
"https://seriesblanco.one/",
@@ -40,9 +40,6 @@ namespace Jackett.Common.Indexers.Definitions
};
public override string[] LegacySiteLinks => new[]
{
"https://dontorrent.fyi/",
"https://dontorrent.sbs/",
"https://dontorrent.cc/",
"https://dontorrent.esq/",
"https://dontorrent.city/",
"https://dontorrent.cologne/",
@@ -55,6 +52,9 @@ namespace Jackett.Common.Indexers.Definitions
"https://dontorrent.exposed/",
"https://dontorrent.faith/",
"https://dontorrent.gratis/",
"https://dontorrent.equipment/",
"https://dontorrent.fashion/",
"https://dontorrent.gallery/",
};
public override string Language => "es-ES";
public override string Type => "public";

View File

@@ -35,7 +35,7 @@ namespace Jackett.Common.Indexers.Definitions
public override TorznabCapabilities TorznabCaps => SetCapabilities();
const string RSS_PATH = "feed/?type=magnet";
const string RSS_PATH = "feed/?type=magnet&token=";
public EraiRaws(IIndexerConfigurationService configService, Utils.Clients.WebClient wc, Logger l,
IProtectionService ps, ICacheService cs)
@@ -91,7 +91,7 @@ namespace Jackett.Common.Indexers.Definitions
private bool IsTitleDetailParsingEnabled => ((BoolConfigurationItem)configData.GetDynamic("title-detail-parsing")).Value;
private bool IsSubsEnabled => ((BoolConfigurationItem)configData.GetDynamic("include-subs")).Value;
public string RssFeedUri => SiteLink + RSS_PATH + "&" + RSSKey;
public string RssFeedUri => SiteLink + RSS_PATH + RSSKey;
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
{
@@ -122,7 +122,7 @@ namespace Jackett.Common.Indexers.Definitions
var result = await RequestWithCookiesAndRetryAsync(RssFeedUri);
if (result.IsRedirect)
result = await FollowIfRedirect(result);
if (result.ContentString.Contains("403 Forbidden"))
if (result.ContentString.Contains("<status>403</status>"))
{
logger.Error("[EraiRaws] 403 Forbidden");
throw new Exception("The RSSkey may need to be replaced as EraiRaws returned 403 Forbidden.");
@@ -265,6 +265,10 @@ namespace Jackett.Common.Indexers.Definitions
var description = rssItem.SelectSingleNode("description")?.InnerText;
var quality = rssItem.SelectSingleNode("erai:resolution", nsm)?.InnerText;
var subs = rssItem.SelectSingleNode("erai:subtitles", nsm)?.InnerText;
if (string.IsNullOrEmpty(subs))
{
subs = "[]";
}
item = new RssFeedItem
{

View File

@@ -187,7 +187,7 @@ namespace Jackett.Common.Indexers.Definitions
Seeders = row.Seeders,
Peers = row.Seeders + row.Leechers,
Imdb = imdbId,
PublishDate = DateTime.Parse(row.UploadDate + " +0300", CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal),
PublishDate = DateTime.Parse(row.UploadDate + " +0200", CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal),
DownloadVolumeFactor = isFreeleech ? 0 : 1,
UploadVolumeFactor = row.DoubleUp ? 2 : 1,
MinimumRatio = 1,

View File

@@ -62,6 +62,8 @@ namespace Jackett.Common.Indexers.Definitions
configData: new ConfigurationDataBasicLogin("For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile."))
{
configData.AddDynamic("freeleech", new BoolConfigurationItem("Search freeleech only") { Value = false });
configData.AddDynamic("flaresolverr", new DisplayInfoConfigurationItem("FlareSolverr", "This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href=\"https://github.com/Jackett/Jackett#configuring-flaresolverr\" target=\"_blank\">FlareSolverr</a> to access it."));
configData.AddDynamic("accountinactivity", new DisplayInfoConfigurationItem("Account Inactivity", "If you do not log in for 50 days, your account will be disabled for inactivity. If you are VIP you won't be disabled until the VIP period is over."));
}
private TorznabCapabilities SetCapabilities()
@@ -111,6 +113,7 @@ namespace Jackett.Common.Indexers.Definitions
// XXX
caps.Categories.AddCategoryMapping("58", TorznabCatType.XXX, "XXX/Blu-ray");
caps.Categories.AddCategoryMapping("78", TorznabCatType.XXX, "XXX/Remux");
caps.Categories.AddCategoryMapping("74", TorznabCatType.XXX, "XXX/UHD/Blu-ray");
caps.Categories.AddCategoryMapping("48", TorznabCatType.XXX, "XXX/1080p/i");
caps.Categories.AddCategoryMapping("47", TorznabCatType.XXX, "XXX/720p");

View File

@@ -291,6 +291,9 @@ namespace Jackett.Common.Indexers.Definitions
if (query.IsImdbQuery)
{
searchQuery.Add($"+({query.ImdbID})");
// search in description
qc.Set("qf", "all");
}
else if (query.IsGenreQuery)
{

View File

@@ -203,7 +203,7 @@ namespace Jackett.Common.Indexers.Definitions
var results = await RequestWithCookiesAndRetryAsync(searchUrl);
// Occasionally the cookies become invalid, login again if that happens
if (results.ContentString.Contains("You do not have permission to access this page."))
if (!results.ContentString.Contains("logout.php"))
{
await ApplyConfiguration(null);
results = await RequestWithCookiesAndRetryAsync(searchUrl);

View File

@@ -0,0 +1,310 @@
using System;
using System.Collections.Generic;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.Linq;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using Jackett.Common.Extensions;
using Jackett.Common.Models;
using Jackett.Common.Models.IndexerConfig;
using Jackett.Common.Services.Interfaces;
using Jackett.Common.Utils.Clients;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using NLog;
using WebClient = Jackett.Common.Utils.Clients.WebClient;
namespace Jackett.Common.Indexers.Definitions
{
[ExcludeFromCodeCoverage]
public class Knaben : IndexerBase
{
public override string Id => "knaben";
public override string Name => "Knaben";
public override string Description => "Knaben is a Public torrent meta-search engine";
public override string SiteLink { get; protected set; } = "https://knaben.eu/";
public override string Language => "en-US";
public override string Type => "public";
public override TorznabCapabilities TorznabCaps => SetCapabilities();
public Knaben(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps, ICacheService cs)
: base(configService: configService,
client: wc,
logger: l,
p: ps,
cacheService: cs,
configData: new ConfigurationData())
{
}
private static TorznabCapabilities SetCapabilities()
{
var caps = new TorznabCapabilities
{
TvSearchParams = new List<TvSearchParam>
{
TvSearchParam.Q, TvSearchParam.Season, TvSearchParam.Ep
},
MovieSearchParams = new List<MovieSearchParam>
{
MovieSearchParam.Q
},
MusicSearchParams = new List<MusicSearchParam>
{
MusicSearchParam.Q
},
BookSearchParams = new List<BookSearchParam>
{
BookSearchParam.Q
}
};
caps.Categories.AddCategoryMapping(1000000, TorznabCatType.Audio, "Audio");
caps.Categories.AddCategoryMapping(1001000, TorznabCatType.AudioMP3, "MP3");
caps.Categories.AddCategoryMapping(1002000, TorznabCatType.AudioLossless, "Lossless");
caps.Categories.AddCategoryMapping(1003000, TorznabCatType.AudioAudiobook, "Audiobook");
caps.Categories.AddCategoryMapping(1004000, TorznabCatType.AudioVideo, "Audio Video");
caps.Categories.AddCategoryMapping(1005000, TorznabCatType.AudioOther, "Radio");
caps.Categories.AddCategoryMapping(1006000, TorznabCatType.AudioOther, "Audio Other");
caps.Categories.AddCategoryMapping(2000000, TorznabCatType.TV, "TV");
caps.Categories.AddCategoryMapping(2001000, TorznabCatType.TVHD, "TV HD");
caps.Categories.AddCategoryMapping(2002000, TorznabCatType.TVSD, "TV SD");
caps.Categories.AddCategoryMapping(2003000, TorznabCatType.TVUHD, "TV UHD");
caps.Categories.AddCategoryMapping(2004000, TorznabCatType.TVDocumentary, "Documentary");
caps.Categories.AddCategoryMapping(2005000, TorznabCatType.TVForeign, "TV Foreign");
caps.Categories.AddCategoryMapping(2006000, TorznabCatType.TVSport, "Sport");
caps.Categories.AddCategoryMapping(2007000, TorznabCatType.TVOther, "Cartoon");
caps.Categories.AddCategoryMapping(2008000, TorznabCatType.TVOther, "TV Other");
caps.Categories.AddCategoryMapping(3000000, TorznabCatType.Movies, "Movies");
caps.Categories.AddCategoryMapping(3001000, TorznabCatType.MoviesHD, "Movies HD");
caps.Categories.AddCategoryMapping(3002000, TorznabCatType.MoviesSD, "Movies SD");
caps.Categories.AddCategoryMapping(3003000, TorznabCatType.MoviesUHD, "Movies UHD");
caps.Categories.AddCategoryMapping(3004000, TorznabCatType.MoviesDVD, "Movies DVD");
caps.Categories.AddCategoryMapping(3005000, TorznabCatType.MoviesForeign, "Movies Foreign");
caps.Categories.AddCategoryMapping(3006000, TorznabCatType.MoviesForeign, "Movies Bollywood");
caps.Categories.AddCategoryMapping(3007000, TorznabCatType.Movies3D, "Movies 3D");
caps.Categories.AddCategoryMapping(3008000, TorznabCatType.MoviesOther, "Movies Other");
caps.Categories.AddCategoryMapping(4000000, TorznabCatType.PC, "PC");
caps.Categories.AddCategoryMapping(4001000, TorznabCatType.PCGames, "Games");
caps.Categories.AddCategoryMapping(4002000, TorznabCatType.PC0day, "Software");
caps.Categories.AddCategoryMapping(4003000, TorznabCatType.PCMac, "Mac");
caps.Categories.AddCategoryMapping(4004000, TorznabCatType.PCISO, "Unix");
caps.Categories.AddCategoryMapping(5000000, TorznabCatType.XXX, "XXX");
caps.Categories.AddCategoryMapping(5001000, TorznabCatType.XXXx264, "XXX Video");
caps.Categories.AddCategoryMapping(5002000, TorznabCatType.XXXImageSet, "XXX ImageSet");
caps.Categories.AddCategoryMapping(5003000, TorznabCatType.XXXOther, "XXX Games");
caps.Categories.AddCategoryMapping(5004000, TorznabCatType.XXXOther, "XXX Hentai");
caps.Categories.AddCategoryMapping(5005000, TorznabCatType.XXXOther, "XXX Other");
caps.Categories.AddCategoryMapping(6000000, TorznabCatType.TVAnime, "Anime");
caps.Categories.AddCategoryMapping(6001000, TorznabCatType.TVAnime, "Anime Subbed");
caps.Categories.AddCategoryMapping(6002000, TorznabCatType.TVAnime, "Anime Dubbed");
caps.Categories.AddCategoryMapping(6003000, TorznabCatType.TVAnime, "Anime Dual audio");
caps.Categories.AddCategoryMapping(6004000, TorznabCatType.TVAnime, "Anime Raw");
caps.Categories.AddCategoryMapping(6005000, TorznabCatType.AudioVideo, "Music Video");
caps.Categories.AddCategoryMapping(6006000, TorznabCatType.BooksOther, "Literature");
caps.Categories.AddCategoryMapping(6007000, TorznabCatType.AudioOther, "Music");
caps.Categories.AddCategoryMapping(6008000, TorznabCatType.TVAnime, "Anime non-english translated");
caps.Categories.AddCategoryMapping(7000000, TorznabCatType.Console, "Console");
caps.Categories.AddCategoryMapping(7001000, TorznabCatType.ConsolePS4, "PS4");
caps.Categories.AddCategoryMapping(7002000, TorznabCatType.ConsolePS3, "PS3");
caps.Categories.AddCategoryMapping(7003000, TorznabCatType.ConsolePS3, "PS2");
caps.Categories.AddCategoryMapping(7004000, TorznabCatType.ConsolePS3, "PS1");
caps.Categories.AddCategoryMapping(7005000, TorznabCatType.ConsolePSVita, "PS Vita");
caps.Categories.AddCategoryMapping(7006000, TorznabCatType.ConsolePSP, "PSP");
caps.Categories.AddCategoryMapping(7007000, TorznabCatType.ConsoleXBox360, "Xbox 360");
caps.Categories.AddCategoryMapping(7008000, TorznabCatType.ConsoleXBox, "Xbox");
caps.Categories.AddCategoryMapping(7009000, TorznabCatType.ConsoleNDS, "Switch");
caps.Categories.AddCategoryMapping(7010000, TorznabCatType.ConsoleNDS, "NDS");
caps.Categories.AddCategoryMapping(7011000, TorznabCatType.ConsoleWii, "Wii");
caps.Categories.AddCategoryMapping(7012000, TorznabCatType.ConsoleWiiU, "WiiU");
caps.Categories.AddCategoryMapping(7013000, TorznabCatType.Console3DS, "3DS");
caps.Categories.AddCategoryMapping(7014000, TorznabCatType.ConsoleWii, "GameCube");
caps.Categories.AddCategoryMapping(7015000, TorznabCatType.ConsoleOther, "Other");
caps.Categories.AddCategoryMapping(8000000, TorznabCatType.PCMobileOther, "Mobile");
caps.Categories.AddCategoryMapping(8001000, TorznabCatType.PCMobileAndroid, "Android");
caps.Categories.AddCategoryMapping(8002000, TorznabCatType.PCMobileiOS, "IOS");
caps.Categories.AddCategoryMapping(8003000, TorznabCatType.PCMobileOther, "PC Other");
caps.Categories.AddCategoryMapping(9000000, TorznabCatType.Books, "Books");
caps.Categories.AddCategoryMapping(9001000, TorznabCatType.BooksEBook, "EBooks");
caps.Categories.AddCategoryMapping(9002000, TorznabCatType.BooksComics, "Comics");
caps.Categories.AddCategoryMapping(9003000, TorznabCatType.BooksMags, "Magazines");
caps.Categories.AddCategoryMapping(9004000, TorznabCatType.BooksTechnical, "Technical");
caps.Categories.AddCategoryMapping(9005000, TorznabCatType.BooksOther, "Books Other");
caps.Categories.AddCategoryMapping(10000000, TorznabCatType.Other, "Other");
caps.Categories.AddCategoryMapping(10001000, TorznabCatType.OtherMisc, "Other Misc");
return caps;
}
public override IIndexerRequestGenerator GetRequestGenerator()
{
return new KnabenRequestGenerator(TorznabCaps);
}
public override IParseIndexerResponse GetParser()
{
return new KnabenParser(TorznabCaps.Categories);
}
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
{
LoadValuesFromJson(configJson);
var releases = await PerformQuery(new TorznabQuery());
await ConfigureIfOK(string.Empty, releases.Any(), () => throw new Exception("Could not find releases from this URL"));
return IndexerConfigurationStatus.Completed;
}
}
public class KnabenRequestGenerator : IIndexerRequestGenerator
{
private readonly TorznabCapabilities _capabilities;
public KnabenRequestGenerator(TorznabCapabilities capabilities)
{
_capabilities = capabilities;
}
public IndexerPageableRequestChain GetSearchRequests(TorznabQuery query)
{
var pageableRequests = new IndexerPageableRequestChain();
var postData = new Dictionary<string, object>
{
{ "order_by", "date" },
{ "order_direction", "desc" },
{ "from", 0 },
{ "size", 100 },
{ "hide_unsafe", true }
};
var searchString = query.GetQueryString().Trim();
if (searchString.IsNotNullOrWhiteSpace())
{
postData.Add("search_type", "100%");
postData.Add("search_field", "title");
postData.Add("query", searchString);
}
var categories = _capabilities.Categories.MapTorznabCapsToTrackers(query);
if (categories.Any())
{
postData.Add("categories", categories.Select(int.Parse).Distinct().ToArray());
}
pageableRequests.Add(GetPagedRequests(postData));
return pageableRequests;
}
private IEnumerable<IndexerRequest> GetPagedRequests(Dictionary<string, object> postData)
{
var request = new WebRequest
{
Url = "https://api.knaben.eu/v1",
Type = RequestType.POST,
Headers = new Dictionary<string, string>
{
{ "Accept", "application/json" },
{ "Content-Type", "application/json" }
},
RawBody = JsonConvert.SerializeObject(postData)
};
yield return new IndexerRequest(request);
}
}
public class KnabenParser : IParseIndexerResponse
{
private readonly TorznabCapabilitiesCategories _categories;
private static readonly Regex DateTimezoneRegex = new Regex(@"[+-]\d{2}:\d{2}$", RegexOptions.Compiled);
public KnabenParser(TorznabCapabilitiesCategories categories)
{
_categories = categories;
}
public IList<ReleaseInfo> ParseResponse(IndexerResponse indexerResponse)
{
var releases = new List<ReleaseInfo>();
var jsonResponse = JsonConvert.DeserializeObject<KnabenResponse>(indexerResponse.Content);
if (jsonResponse?.Hits == null)
{
return releases;
}
var rows = jsonResponse.Hits.Where(r => r.Seeders > 0).ToList();
foreach (var row in rows)
{
// Not all entries have the TZ in the "date" field
var publishDate = row.Date.IsNotNullOrWhiteSpace() && !DateTimezoneRegex.IsMatch(row.Date) ? $"{row.Date}+01:00" : row.Date;
var releaseInfo = new ReleaseInfo
{
Guid = new Uri(row.InfoUrl),
Title = row.Title,
Details = new Uri(row.InfoUrl),
Link = row.DownloadUrl.IsNotNullOrWhiteSpace() && Uri.TryCreate(row.DownloadUrl, UriKind.Absolute, out var downloadUrl) ? downloadUrl : null,
MagnetUri = row.MagnetUrl.IsNotNullOrWhiteSpace() && Uri.TryCreate(row.MagnetUrl, UriKind.Absolute, out var magnetUrl) ? magnetUrl : null,
Category = row.CategoryIds.SelectMany(cat => _categories.MapTrackerCatToNewznab(cat.ToString())).Distinct().ToList(),
InfoHash = row.InfoHash,
Size = row.Size,
Seeders = row.Seeders,
Peers = row.Leechers + row.Seeders,
PublishDate = DateTime.Parse(publishDate, CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal),
DownloadVolumeFactor = 0,
UploadVolumeFactor = 1
};
releases.Add(releaseInfo);
}
return releases;
}
}
internal sealed record KnabenResponse
{
public IReadOnlyCollection<KnabenRelease> Hits { get; set; } = Array.Empty<KnabenRelease>();
}
internal sealed record KnabenRelease
{
public string Title { get; set; }
[JsonProperty("categoryId")]
public IReadOnlyCollection<int> CategoryIds { get; set; } = Array.Empty<int>();
[JsonProperty("hash")]
public string InfoHash { get; set; }
[JsonProperty("details")]
public string InfoUrl { get; set; }
[JsonProperty("link")]
public string DownloadUrl { get; set; }
public string MagnetUrl { get; set; }
[JsonProperty("bytes")]
public long Size { get; set; }
public int Seeders { get; set; }
[JsonProperty("peers")]
public int Leechers { get; set; }
public string Date { get; set; }
}
}

View File

@@ -27,11 +27,9 @@ namespace Jackett.Common.Indexers.Definitions
public override string Id => "mejortorrent";
public override string Name => "MejorTorrent";
public override string Description => "MejorTorrent - Hay veces que un torrent viene mejor! :)";
public override string SiteLink { get; protected set; } = "https://www22.mejortorrent.zip/";
public override string SiteLink { get; protected set; } = "https://www24.mejortorrent.zip/";
public override string[] LegacySiteLinks => new[]
{
"https://www7.mejortorrent.rip/",
"https://www8.mejortorrent.rip/",
"https://www9.mejortorrent.rip/",
"https://www10.mejortorrent.rip/",
"https://www11.mejortorrent.rip/",
@@ -45,6 +43,8 @@ namespace Jackett.Common.Indexers.Definitions
"https://www19.mejortorrent.zip/",
"https://www20.mejortorrent.zip/",
"https://www21.mejortorrent.zip/",
"https://www22.mejortorrent.zip/",
"https://www23.mejortorrent.zip/",
};
public override string Language => "es-ES";
public override string Type => "public";

View File

@@ -21,7 +21,8 @@ namespace Jackett.Common.Indexers.Definitions
public override string Name => "Redacted";
public override string Description => "A music tracker";
// Status: https://red.trackerstatus.info/
public override string SiteLink { get; protected set; } = "https://redacted.ch/";
public override string SiteLink { get; protected set; } = "https://redacted.sh/";
public override string[] LegacySiteLinks => new[] { "https://redacted.ch/" };
public override string Language => "en-US";
public override string Type => "private";

View File

@@ -96,8 +96,15 @@ namespace Jackett.Common.Indexers.Definitions
caps.Categories.AddCategoryMapping(112, TorznabCatType.MoviesOther, "Anime Movies");
caps.Categories.AddCategoryMapping(111, TorznabCatType.MoviesOther, "Anime TV");
caps.Categories.AddCategoryMapping(150, TorznabCatType.PC, "Apps");
caps.Categories.AddCategoryMapping(80, TorznabCatType.AudioAudiobook, "Audiobooks");
caps.Categories.AddCategoryMapping(48, TorznabCatType.Books, "Books Magazines");
caps.Categories.AddCategoryMapping(156, TorznabCatType.TV, "AV1");
caps.Categories.AddCategoryMapping(156, TorznabCatType.Movies, "AV1");
caps.Categories.AddCategoryMapping(159, TorznabCatType.Movies, "Movie Boxsets AV1");
caps.Categories.AddCategoryMapping(158, TorznabCatType.Movies, "Movies AV1");
caps.Categories.AddCategoryMapping(157, TorznabCatType.TV, "TV AV1");
caps.Categories.AddCategoryMapping(160, TorznabCatType.TV, "TV Boxsets AV1");
caps.Categories.AddCategoryMapping(153, TorznabCatType.Books, "Books");
caps.Categories.AddCategoryMapping(154, TorznabCatType.AudioAudiobook, "Audiobooks");
caps.Categories.AddCategoryMapping(155, TorznabCatType.Books, "Books & Magazines");
caps.Categories.AddCategoryMapping(68, TorznabCatType.MoviesOther, "Cams/TS");
caps.Categories.AddCategoryMapping(140, TorznabCatType.TVDocumentary, "Documentary");
caps.Categories.AddCategoryMapping(10, TorznabCatType.MoviesDVD, "DVDR");
@@ -129,6 +136,7 @@ namespace Jackett.Common.Indexers.Definitions
caps.Categories.AddCategoryMapping(146, TorznabCatType.MoviesSD, "Movies SD");
caps.Categories.AddCategoryMapping(13, TorznabCatType.Audio, "Music");
caps.Categories.AddCategoryMapping(135, TorznabCatType.AudioLossless, "Music/FLAC");
caps.Categories.AddCategoryMapping(151, TorznabCatType.Audio, "Karaoke");
caps.Categories.AddCategoryMapping(136, TorznabCatType.Audio, "Music Boxset");
caps.Categories.AddCategoryMapping(148, TorznabCatType.AudioVideo, "Music Videos");
caps.Categories.AddCategoryMapping(9, TorznabCatType.Other, "Other");

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