mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-10 05:43:17 +02:00
Compare commits
259 Commits
v0.20.4101
...
v0.21.265
Author | SHA1 | Date | |
---|---|---|---|
![]() |
8689fb2bd1 | ||
![]() |
ddd37f09c0 | ||
![]() |
3703216bad | ||
![]() |
6d55a50c9c | ||
![]() |
b0ccae909b | ||
![]() |
c65bb0411e | ||
![]() |
c89a2742c1 | ||
![]() |
82bbf8f23a | ||
![]() |
7f3d19e37a | ||
![]() |
39cd9ba9dd | ||
![]() |
8f0755e8fc | ||
![]() |
58f458d135 | ||
![]() |
8ef13a0130 | ||
![]() |
07f0ccf5a3 | ||
![]() |
99204599d9 | ||
![]() |
cc44db15a4 | ||
![]() |
df02e2dcf1 | ||
![]() |
d1bbda3438 | ||
![]() |
8ea53cebc8 | ||
![]() |
f1f8dd2f10 | ||
![]() |
6bd5068541 | ||
![]() |
99e7e2428f | ||
![]() |
6acba8684a | ||
![]() |
92ef4068ea | ||
![]() |
bf2659f55d | ||
![]() |
4dc99b2fd9 | ||
![]() |
12dc639822 | ||
![]() |
b3477fb70c | ||
![]() |
4d2ac5b6a9 | ||
![]() |
208b0bdb5b | ||
![]() |
84ca9a06d8 | ||
![]() |
aa16e7424c | ||
![]() |
92f582e910 | ||
![]() |
e3880b9143 | ||
![]() |
6aee6d732a | ||
![]() |
da80bde7d8 | ||
![]() |
5a388b59d0 | ||
![]() |
d7404e9cd4 | ||
![]() |
373b15cb8e | ||
![]() |
19de5f46b0 | ||
![]() |
e74e7b3cf7 | ||
![]() |
a3c361fac1 | ||
![]() |
03776c5fe1 | ||
![]() |
43f1fabae0 | ||
![]() |
3a0c6a75e1 | ||
![]() |
7a327230f1 | ||
![]() |
7e8fdfa2b1 | ||
![]() |
35e1218861 | ||
![]() |
af54a3f9d0 | ||
![]() |
04cc9939a6 | ||
![]() |
5640a86838 | ||
![]() |
bcc00f91bb | ||
![]() |
6905cdc103 | ||
![]() |
f1415f32c6 | ||
![]() |
4e55187bdb | ||
![]() |
967ff6db99 | ||
![]() |
23cff411ed | ||
![]() |
f42b76fb36 | ||
![]() |
28c5c427e8 | ||
![]() |
68205b13ca | ||
![]() |
dcec23434f | ||
![]() |
09dc556140 | ||
![]() |
0d69d7ba1b | ||
![]() |
cc8a980a70 | ||
![]() |
e9f7e4d13f | ||
![]() |
c6180f6860 | ||
![]() |
8c5fb64aec | ||
![]() |
a293346ce8 | ||
![]() |
c0a5e24186 | ||
![]() |
0e043a5792 | ||
![]() |
98f7e720e7 | ||
![]() |
8154acb47b | ||
![]() |
df94aaf930 | ||
![]() |
d8dc0d221a | ||
![]() |
3ba502a378 | ||
![]() |
b9655f1302 | ||
![]() |
422eff86f4 | ||
![]() |
e66d88bbcf | ||
![]() |
669ddae0b0 | ||
![]() |
0b0d08dd7c | ||
![]() |
bf5b24a5a7 | ||
![]() |
228089b35b | ||
![]() |
f334cc89d6 | ||
![]() |
3a9360add9 | ||
![]() |
207dd1d51a | ||
![]() |
47e78fc70c | ||
![]() |
36d3f67fdc | ||
![]() |
41a5d3165e | ||
![]() |
2b9d950f39 | ||
![]() |
7be7d6770f | ||
![]() |
ff36eecfae | ||
![]() |
0438ffdfc0 | ||
![]() |
b614a8dc42 | ||
![]() |
1eae091ab8 | ||
![]() |
17d08d3f8c | ||
![]() |
d70bdbb26d | ||
![]() |
8d0edcdfb8 | ||
![]() |
34193e11df | ||
![]() |
57b8cbd407 | ||
![]() |
c2dbf6a80d | ||
![]() |
ff5586c4fa | ||
![]() |
48ff6821e6 | ||
![]() |
e282ff76a5 | ||
![]() |
8affee4b2d | ||
![]() |
dc352744c7 | ||
![]() |
ef5276da64 | ||
![]() |
32360070ad | ||
![]() |
633d1631c2 | ||
![]() |
d4fc8ab071 | ||
![]() |
08713ae7b8 | ||
![]() |
836f5372b3 | ||
![]() |
7e7ace05be | ||
![]() |
12da8b6131 | ||
![]() |
abc2f43f9c | ||
![]() |
1a49430b45 | ||
![]() |
147549cbf8 | ||
![]() |
fd884a8597 | ||
![]() |
fff9f0730b | ||
![]() |
951e510c1a | ||
![]() |
bfa2757c98 | ||
![]() |
623f48d83c | ||
![]() |
efc1602936 | ||
![]() |
906b8e1ff8 | ||
![]() |
bf4228b0dc | ||
![]() |
0a00e4edcd | ||
![]() |
abbf37060d | ||
![]() |
f6108ee852 | ||
![]() |
a6bde9f001 | ||
![]() |
2594fdba13 | ||
![]() |
97873506e3 | ||
![]() |
4944aef039 | ||
![]() |
a63fd138a8 | ||
![]() |
e4af5f1db2 | ||
![]() |
25e45daa20 | ||
![]() |
468ea2472b | ||
![]() |
49f57a9833 | ||
![]() |
63c7bf6aed | ||
![]() |
f5b787562f | ||
![]() |
182de9c60a | ||
![]() |
497e02e80c | ||
![]() |
fba5201ccd | ||
![]() |
8c2baf3bd2 | ||
![]() |
5b69bdfef4 | ||
![]() |
844855e3ba | ||
![]() |
ddb5e95785 | ||
![]() |
ef714804ee | ||
![]() |
3aab5de496 | ||
![]() |
fbe225bbf6 | ||
![]() |
897156176a | ||
![]() |
2db0ca6d52 | ||
![]() |
63faed4687 | ||
![]() |
0806e4182b | ||
![]() |
91307ff044 | ||
![]() |
0f5e919f33 | ||
![]() |
051cbabbcf | ||
![]() |
bd3ec7533d | ||
![]() |
78fecaced2 | ||
![]() |
4142a9d037 | ||
![]() |
1d89c135a3 | ||
![]() |
16c2d6f9ca | ||
![]() |
5c42955ba8 | ||
![]() |
64ee0c912d | ||
![]() |
a48aa7a6e1 | ||
![]() |
c56f32695a | ||
![]() |
c53933f307 | ||
![]() |
baa8439781 | ||
![]() |
c2aec85893 | ||
![]() |
e146ad227c | ||
![]() |
675b259e0a | ||
![]() |
04e24bacb3 | ||
![]() |
9638823cf1 | ||
![]() |
05dfda2736 | ||
![]() |
c6f4a55444 | ||
![]() |
e29f409164 | ||
![]() |
f68381010f | ||
![]() |
c12c050ed7 | ||
![]() |
558d3530fa | ||
![]() |
a5331e20c2 | ||
![]() |
ffdd0348c2 | ||
![]() |
a012c9d686 | ||
![]() |
7e33461c7f | ||
![]() |
4000c46be1 | ||
![]() |
f018aa252c | ||
![]() |
5f1445d59b | ||
![]() |
25cdf412c1 | ||
![]() |
02a818f71f | ||
![]() |
ca35c57d78 | ||
![]() |
76343fd56a | ||
![]() |
dd9feca37b | ||
![]() |
6ab273651d | ||
![]() |
d3599c9c3a | ||
![]() |
f701bba1ef | ||
![]() |
7907e2b620 | ||
![]() |
78d673f491 | ||
![]() |
b7756508e1 | ||
![]() |
0210b7dc5b | ||
![]() |
efb8de4d4c | ||
![]() |
dee88f618a | ||
![]() |
4e0c5814f4 | ||
![]() |
df48a6ed41 | ||
![]() |
aed390f7ba | ||
![]() |
b0adee0047 | ||
![]() |
d634670ad8 | ||
![]() |
8f260f7f97 | ||
![]() |
9e5973af5c | ||
![]() |
e28e93ce08 | ||
![]() |
927ffdff39 | ||
![]() |
88d5142cd7 | ||
![]() |
5f754847b9 | ||
![]() |
6e69f3611d | ||
![]() |
a25dad6d09 | ||
![]() |
9c641e624a | ||
![]() |
e2c25d78c9 | ||
![]() |
4b5c36f056 | ||
![]() |
5ff2071094 | ||
![]() |
5aa616a6ee | ||
![]() |
6932b9afbc | ||
![]() |
8eca7c2f14 | ||
![]() |
214a0a6960 | ||
![]() |
816ff9aa5d | ||
![]() |
d0bfbbfc81 | ||
![]() |
b68373b4f0 | ||
![]() |
d8c988c976 | ||
![]() |
922c27f1ac | ||
![]() |
f84cb6e334 | ||
![]() |
c1fe13a3a6 | ||
![]() |
7aae16f4d3 | ||
![]() |
db1785f49c | ||
![]() |
d38a3f0210 | ||
![]() |
11bdb939b1 | ||
![]() |
8851fc00e6 | ||
![]() |
6a9de0ce34 | ||
![]() |
069e9d180a | ||
![]() |
e6d9417f86 | ||
![]() |
f86b239469 | ||
![]() |
5b433c412d | ||
![]() |
bb933fd553 | ||
![]() |
60d674d24e | ||
![]() |
44af214b09 | ||
![]() |
79347c3d7b | ||
![]() |
3beb406eed | ||
![]() |
0cffd5a181 | ||
![]() |
571bd12a47 | ||
![]() |
c2adac3257 | ||
![]() |
c08262ce55 | ||
![]() |
ecc1d13025 | ||
![]() |
c3e13d795c | ||
![]() |
c2607f95e4 | ||
![]() |
12e76e7b74 | ||
![]() |
0fd7538c80 | ||
![]() |
47c986f65d | ||
![]() |
23bc0c7f13 | ||
![]() |
acced753dd | ||
![]() |
859815f758 | ||
![]() |
e903e4baeb | ||
![]() |
0ca43276b8 | ||
![]() |
f18f2274ca | ||
![]() |
c74e8ee437 | ||
![]() |
e03f563425 |
7
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
7
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -2,6 +2,7 @@ name: Bug report
|
||||
description: Create a report of your issue
|
||||
body:
|
||||
- type: checkboxes
|
||||
id: troubleshooting
|
||||
attributes:
|
||||
label: Have you checked our Troubleshooting page for your issue?
|
||||
description: Please read the <a href="https://github.com/Jackett/Jackett/wiki/Troubleshooting">Troubleshooting</a> page for steps to resolve common issues.
|
||||
@@ -9,6 +10,7 @@ body:
|
||||
- label: I have checked the Troubleshooting page
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: already-an-issue
|
||||
attributes:
|
||||
label: Is there already an issue for your problem?
|
||||
description: Please make sure you are not creating an already submitted <a href="https://github.com/Jackett/Jackett/issues">Issue</a>. Check closed issues as well, because your issue may have already been fixed.
|
||||
@@ -16,6 +18,7 @@ body:
|
||||
- label: I have checked older issues, open and closed
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: contributing-guidelines
|
||||
attributes:
|
||||
label: Have you read our Contributing Guidelines?
|
||||
description: Please read our <a href="https://github.com/Jackett/Jackett/blob/master/CONTRIBUTING.md">Contributing Guidelines</a> before submitting your issue to ensure a prompt response to your bug.
|
||||
@@ -23,6 +26,7 @@ body:
|
||||
- label: I have read the Contributing Guidelines
|
||||
required: true
|
||||
- type: textarea
|
||||
id: environment
|
||||
attributes:
|
||||
label: Environment
|
||||
description: Please provide the details of the system Jackett is running on. The best way to do this is to restart Jackett, access the dashboard, view the log, and copy/paste replacing the example below with the last 10 Info lines at the bottom of the log.
|
||||
@@ -40,12 +44,14 @@ body:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Description
|
||||
description: List steps to reproduce the error and details on what happens and what you expected to happen.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: error-logs
|
||||
attributes:
|
||||
label: Logged Error Messages
|
||||
description: |
|
||||
@@ -55,6 +61,7 @@ body:
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: screenshots
|
||||
attributes:
|
||||
label: Screenshots
|
||||
description: Place any screenshots of the issue here if needed
|
||||
|
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
#### Description
|
||||
A few sentences describing the overall goals of the pull request's commits.
|
||||
|
||||
#### Screenshot (if UI related)
|
||||
|
||||
#### Issues Fixed or Closed by this PR
|
||||
|
||||
* Fixes #XXXX
|
61
README.md
61
README.md
@@ -14,7 +14,7 @@ Please see our [troubleshooting and contributing guidelines](CONTRIBUTING.md) be
|
||||
|
||||
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar3](https://github.com/mylar3/mylar3), [Lidarr](https://github.com/lidarr/lidarr), [DuckieTV](https://github.com/SchizoDuckie/DuckieTV), [qBittorrent](https://www.qbittorrent.org/), [Nefarious](https://github.com/lardbit/nefarious) etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
|
||||
|
||||
Developer note: The software implements the [Torznab](https://web.archive.org/web/20220517013745/https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
Developer note: The software implements the [Torznab](https://torznab.github.io/spec-1.3-draft/index.html) (with hybrid [nZEDb](https://github.com/nZEDb/nZEDb/blob/b485fa326a0ff1f47ce144164eb1f070e406b555/resources/db/schema/data/10-categories.tsv)/[Newznab](https://newznab.readthedocs.io/en/latest/misc/api/#predefined-categories) [category numbering](https://github.com/Jackett/Jackett/wiki/Jackett-Categories)) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
|
||||
|
||||
A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](https://github.com/webtor-io/go-jackett)
|
||||
|
||||
@@ -106,9 +106,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PornoTorrent
|
||||
* ProPorn
|
||||
* Rapidzona
|
||||
* RARBG
|
||||
* RinTorNeT
|
||||
* Rus-media
|
||||
* RuTor
|
||||
* RuTracker.RU
|
||||
* Seedoff
|
||||
@@ -130,6 +128,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Torrent9 clone
|
||||
* Torrent911
|
||||
* TorrentFunk
|
||||
* TorrentDownloads
|
||||
* TorrentGalaxy (TGx)
|
||||
* TorrentKitty
|
||||
* TorrentProject2
|
||||
@@ -144,7 +143,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* truPornolabs
|
||||
* UnionDHT
|
||||
* VSTHouse
|
||||
* VST Torrents
|
||||
* VST Torrentz
|
||||
* VSTorrent
|
||||
* xxxAdultTorrent
|
||||
* XXXClub
|
||||
* xxxtor
|
||||
@@ -168,7 +168,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Deildu
|
||||
* Demonoid
|
||||
* Devil-Torrents
|
||||
* DimeADozen (EzTorrent)
|
||||
* DXP (Deaf Experts)
|
||||
* Electro-Torrent
|
||||
* EliteTorrent-pl
|
||||
@@ -188,13 +187,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Il CorSaRo Blu
|
||||
* Kinorun
|
||||
* Kinozal
|
||||
* Lightning-Tor
|
||||
* LostFilm.tv
|
||||
* Magnetico (Local DHT) [[site](https://github.com/boramalper/magnetico)]
|
||||
* Marine Tracker
|
||||
* Masters-TB
|
||||
* Mazepa
|
||||
* Metal Tracker
|
||||
* Moviesite
|
||||
* MovieWorld (Flicker)
|
||||
* MuseBootlegs (MB)
|
||||
* MVGroup Forum
|
||||
* MVGroup Main
|
||||
* NetHD (VietTorrent)
|
||||
@@ -236,14 +237,13 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* 1ptbar
|
||||
* 2 Fast 4 You [![(invite needed)][inviteneeded]](#)
|
||||
* 2xFree
|
||||
* 3ChangTrai (3CT) [![(invite needed)][inviteneeded]](#)
|
||||
* 3ChangTrai (3CT)
|
||||
* 3D Torrents (3DT)
|
||||
* 4thD (4th Dimension)
|
||||
* 52PT
|
||||
* 720pier
|
||||
* Abnormal
|
||||
* ABtorrents (ABT + RNS)
|
||||
* Acervos [![(invite needed)][inviteneeded]](#)
|
||||
* Acid Lounge (A-L)
|
||||
* AcrossTheTasman [![(invite needed)][inviteneeded]](#)
|
||||
* Aftershock
|
||||
@@ -266,7 +266,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* AudioNews (AN)
|
||||
* Aussierul.es [![(invite needed)][inviteneeded]](#)
|
||||
* AvistaZ (AsiaTorrents)
|
||||
* Back-ups [![(invite needed)][inviteneeded]](#)
|
||||
* Azusa [![(invite needed)][inviteneeded]](#)
|
||||
* Back-ups
|
||||
* BakaBT
|
||||
* BeiTai
|
||||
* Best-Core
|
||||
@@ -291,7 +292,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* BroadcasTheNet (BTN)
|
||||
* BroadCity
|
||||
* BrokenStones [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety [![(invite needed)][inviteneeded]](#)
|
||||
* BrSociety
|
||||
* BTNext (BTNT) [![(invite needed)][inviteneeded]](#)
|
||||
* BTSCHOOL
|
||||
* BWTorrents
|
||||
@@ -301,11 +302,12 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CarPT
|
||||
* CartoonChaos (CC)
|
||||
* Cathode-Ray.Tube (CRT)
|
||||
* CCFBits [![(invite needed)][inviteneeded]](#)
|
||||
* Central Torrent
|
||||
* CeskeForum
|
||||
* CGPeers [![(invite needed)][inviteneeded]](#)
|
||||
* CHDBits [![(invite needed)][inviteneeded]](#)
|
||||
* ChileBT
|
||||
* CiNEFiLHD
|
||||
* Cinemageddon [![(invite needed)][inviteneeded]](#)
|
||||
* CinemaMovieS_ZT
|
||||
* Cinematik [![(invite needed)][inviteneeded]](#)
|
||||
@@ -316,17 +318,21 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* CrazyHD
|
||||
* CrazySpirits
|
||||
* CrnaBerza
|
||||
* Dajiao (打胶) [![(invite needed)][inviteneeded]](#)
|
||||
* DANISH BYTES
|
||||
* Dark-Shadow
|
||||
* DataScene (DS)
|
||||
* DataTalli
|
||||
* DesiTorrents
|
||||
* Diablo Torrent [![(invite needed)][inviteneeded]](#)
|
||||
* DICMusic
|
||||
* DigitalCore
|
||||
* DimeADozen (EzTorrent)
|
||||
* DiscFan
|
||||
* DivTeam
|
||||
* DocsPedia
|
||||
* Dream Tracker
|
||||
* Drugari
|
||||
* Ebooks-Shares
|
||||
* Empornium (EMP) [![(invite needed)][inviteneeded]](#)
|
||||
* eShareNet
|
||||
@@ -338,6 +344,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* FANO.IN [![(invite needed)][inviteneeded]](#)
|
||||
* Fantastic Heaven
|
||||
* Fantastiko
|
||||
* Fappaizuri
|
||||
* Femdomcult
|
||||
* FileList (FL)
|
||||
* FinElite (FE)
|
||||
@@ -349,7 +356,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* GainBound [![(invite needed)][inviteneeded]](#)
|
||||
* Gay-Torrents.org
|
||||
* GAYtorrent.ru
|
||||
* GazelleGames (GGn) [![(invite needed)][inviteneeded]](#)
|
||||
* GazelleGames (GGn)
|
||||
* Generation-Free
|
||||
* GigaTorrents
|
||||
* GimmePeers (formerly ILT)
|
||||
@@ -381,13 +388,11 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HDRoute [![(invite needed)][inviteneeded]](#)
|
||||
* HDSky [![(invite needed)][inviteneeded]](#)
|
||||
* HDTime
|
||||
* HDTorrents.it [![(invite needed)][inviteneeded]](#)
|
||||
* HDTurk
|
||||
* HDU
|
||||
* HDVIDEO
|
||||
* HDZone
|
||||
* Hebits
|
||||
* HellasHut
|
||||
* HHanClub
|
||||
* House of Devil
|
||||
* HQMusic
|
||||
@@ -396,8 +401,10 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ImmortalSeed (iS)
|
||||
* Immortuos
|
||||
* Indietorrents [![(invite needed)][inviteneeded]](#)
|
||||
* Infire
|
||||
* Insane Tracker
|
||||
* IPTorrents (IPT)
|
||||
* ItaTorrents
|
||||
* JME-REUNIT3D
|
||||
* JoyHD [![(invite needed)][inviteneeded]](#)
|
||||
* JPopsuki
|
||||
@@ -407,6 +414,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Keep Friends [![(invite needed)][inviteneeded]](#)
|
||||
* Korsar
|
||||
* KrazyZone
|
||||
* Kufei (库非)
|
||||
* Kufirc
|
||||
* LastFiles
|
||||
* Le Saloon
|
||||
@@ -416,19 +424,22 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* leech24
|
||||
* LemonHD
|
||||
* Les-Cinephiles
|
||||
* Lesbians4u
|
||||
* Libble
|
||||
* LibraNet (LN)
|
||||
* LinkoManija [![(invite needed)][inviteneeded]](#)
|
||||
* Locadora
|
||||
* LosslessClub [![(invite needed)][inviteneeded]](#)
|
||||
* LST
|
||||
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
|
||||
* M-Team TP (MTTP)
|
||||
* MaDs Revolution
|
||||
* magic-heaven
|
||||
* Magico (Trellas) [![(invite needed)][inviteneeded]](#)
|
||||
* Majomparádé (TurkDepo)
|
||||
* Mansão dos Animes (MDAN)
|
||||
* MegamixTracker
|
||||
* MeseVilág (Fairytale World)
|
||||
* MetalGuru
|
||||
* Milkie
|
||||
* MIRcrew
|
||||
* MMA-Torrents [![(invite needed)][inviteneeded]](#)
|
||||
@@ -445,6 +456,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* Nebulance (NBL) (TransmiTheNet)
|
||||
* NicePT
|
||||
* NorBits
|
||||
* NORDiCHD
|
||||
* Ntelogo
|
||||
* Old Toons World
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
@@ -452,7 +464,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* OshenPT
|
||||
* OurBits (HDPter)
|
||||
* P2PBG
|
||||
* Panda
|
||||
* Partis
|
||||
* Party-Tracker
|
||||
* PassThePopcorn (PTP)
|
||||
* Peeratiko
|
||||
* Peers.FM
|
||||
@@ -472,6 +486,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* PTerClub
|
||||
* PTFiles (PTF)
|
||||
* PThome [![(invite needed)][inviteneeded]](#)
|
||||
* PT分享站 (itzmx)
|
||||
* PTSBAO
|
||||
* PTtime
|
||||
* Punk's Horror Tracker
|
||||
@@ -492,15 +507,15 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* RevolutionTT
|
||||
* Romanian Metal Torrents (RMT) [![(invite needed)][inviteneeded]](#)
|
||||
* RPTorrents
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* SceneHD [![(invite needed)][inviteneeded]](#)
|
||||
* SceneRush
|
||||
* SceneTime
|
||||
* SDBits [![(invite needed)][inviteneeded]](#)
|
||||
* Secret Cinema
|
||||
* SeedFile
|
||||
* Shadowflow (影) [![(invite needed)][inviteneeded]](#)
|
||||
* Shareisland
|
||||
* SharkPT
|
||||
* Shazbat [![(invite needed)][inviteneeded]](#)
|
||||
* Shazbat
|
||||
* SiamBIT
|
||||
* SkipTheCommercials
|
||||
* SkipTheTrailers
|
||||
@@ -538,9 +553,9 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* The Vault [![(invite needed)][inviteneeded]](#)
|
||||
* The-Crazy-Ones
|
||||
* The-New-Fun
|
||||
* TheDarkCommunity (TDC)
|
||||
* TheEmpire (TE)
|
||||
* TheLeachZone (TLZ)
|
||||
* TheRebels
|
||||
* TheScenePlace (TSP)
|
||||
* Thor's Land
|
||||
* TJUPT
|
||||
@@ -557,6 +572,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentBytes (TBy)
|
||||
* TorrentCCF (TCCF)
|
||||
* TorrentDay (TD)
|
||||
* Torrenteros (TTR)
|
||||
* TorrentHeaven [![(invite needed)][inviteneeded]](#)
|
||||
* TorrentHR [![(invite needed)][inviteneeded]](#)
|
||||
* Torrenting (TT)
|
||||
@@ -567,8 +583,8 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* TorrentSeeds (TS)
|
||||
* TotallyKids (TK)
|
||||
* ToTheGlory (TTG) [![(invite needed)][inviteneeded]](#)
|
||||
* TranceTraffic [![(invite needed)][inviteneeded]](#)
|
||||
* Trezzor [![(invite needed)][inviteneeded]](#)
|
||||
* TranceTraffic
|
||||
* TreZzoR [![(invite needed)][inviteneeded]](#)
|
||||
* TurkSeed
|
||||
* TurkTorrent (TT)
|
||||
* TV Chaos UK (TVCUK)
|
||||
@@ -582,6 +598,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* UnleashTheCartoons
|
||||
* UnlimitZ
|
||||
* Uploads
|
||||
* UTOPIA
|
||||
* White Angel
|
||||
* World-In-HD [![(invite needed)][inviteneeded]](#)
|
||||
* World-of-Tomorrow
|
||||
@@ -599,7 +616,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* ZonaQ
|
||||
</details>
|
||||
|
||||
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and may be missing features or be broken. If you have an invite for them please send it to garfieldsixtynine -at- gmail.com to get them fixed/improved.
|
||||
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and may be missing features or be broken. If you have an invite for them please send it to garfieldsixtynine -at- gmail.com or jacketttest -at- gmail.com to get them fixed/improved.
|
||||
|
||||
### Aggregate indexers
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
name: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
variables:
|
||||
majorVersion: 0
|
||||
minorVersion: 20
|
||||
minorVersion: 21
|
||||
patchVersion: $[counter(variables['minorVersion'], 1)] # this will reset when we bump minor
|
||||
jackettVersion: $(majorVersion).$(minorVersion).$(patchVersion)
|
||||
buildConfiguration: Release
|
||||
|
13
src/Directory.Build.props
Normal file
13
src/Directory.Build.props
Normal file
@@ -0,0 +1,13 @@
|
||||
<Project>
|
||||
<!-- Common to all Jackett Projects -->
|
||||
<PropertyGroup>
|
||||
<!-- Specifies whether it's one of our own libraries -->
|
||||
<JackettProject>false</JackettProject>
|
||||
<JackettProject Condition="$(MSBuildProjectName.StartsWith('Jackett'))">true</JackettProject>
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- Set the Product and Version info for our own projects -->
|
||||
<PropertyGroup Condition="'$(JackettProject)'=='true'">
|
||||
<PathMap>$(MSBuildProjectDirectory)=./$(MSBuildProjectName)/</PathMap>
|
||||
</PropertyGroup>
|
||||
</Project>
|
@@ -461,7 +461,7 @@ function displayUnconfiguredIndexersList() {
|
||||
$('#indexers div.dataTables_filter input').focusWithoutScrolling();
|
||||
});
|
||||
|
||||
$("#modals").append(UnconfiguredIndexersDialog);
|
||||
$("#modals").html(UnconfiguredIndexersDialog);
|
||||
|
||||
$('#add-selected-indexers').click(function () {
|
||||
var selectedIndexers = $('#unconfigured-indexer-datatable').DataTable().$('input[type="checkbox"]');
|
||||
@@ -799,7 +799,7 @@ function newConfigModal(title, config, caps, link, alternativesitelinks, descrip
|
||||
link: link,
|
||||
description: description
|
||||
}));
|
||||
$("#modals").append(configForm);
|
||||
$("#modals").html(configForm);
|
||||
populateConfigItems(configForm, config);
|
||||
|
||||
if (alternativesitelinks.length >= 1) {
|
||||
@@ -1043,14 +1043,13 @@ function showSearch(selectedFilter, selectedIndexer, query, category) {
|
||||
var selectedIndexers = [];
|
||||
if (selectedIndexer)
|
||||
selectedIndexers = selectedIndexer.split(",");
|
||||
$('#select-indexer-modal').remove();
|
||||
var releaseTemplate = Handlebars.compile($("#jackett-search").html());
|
||||
var releaseDialog = $(releaseTemplate({
|
||||
filters: availableFilters,
|
||||
active: selectedFilter
|
||||
}));
|
||||
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
|
||||
releaseDialog.on('shown.bs.modal', function () {
|
||||
releaseDialog.find('#searchquery').focusWithoutScrolling();
|
||||
@@ -1581,7 +1580,7 @@ function bindUIButtons() {
|
||||
});
|
||||
}
|
||||
});
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
releaseDialog.modal("show");
|
||||
}).fail(function () {
|
||||
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");
|
||||
@@ -1600,7 +1599,7 @@ function bindUIButtons() {
|
||||
logs: data
|
||||
};
|
||||
var releaseDialog = $(releaseTemplate(item));
|
||||
$("#modals").append(releaseDialog);
|
||||
$("#modals").html(releaseDialog);
|
||||
releaseDialog.modal("show");
|
||||
}).fail(function () {
|
||||
doNotify("Request to Jackett server failed", "danger", "glyphicon glyphicon-alert");
|
||||
|
@@ -529,10 +529,10 @@
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>You can search all configured indexers from this screen.</p>
|
||||
<label for="text">Query</label>
|
||||
<label for="searchquery">Query</label>
|
||||
<input class="form-control" type="text" name="query" id="searchquery" />
|
||||
{{#if filters}}
|
||||
<label for="filter">Filter</label>
|
||||
<label for="searchFilter">Filter</label>
|
||||
<select name="filter" id="searchFilter">
|
||||
<option value="all">all</option>
|
||||
{{#each filters}}
|
||||
@@ -540,9 +540,9 @@
|
||||
{{/each}}
|
||||
</select>
|
||||
{{/if}}
|
||||
<label for="tracker">Tracker</label>
|
||||
<label for="searchTracker">Tracker</label>
|
||||
<select name="tracker" id="searchTracker" multiple="multiple"></select>
|
||||
<label for="category">Category</label>
|
||||
<label for="searchCategory">Category</label>
|
||||
<select name="category" id="searchCategory" multiple="multiple"></select>
|
||||
<button id="jackett-search-perform" class="btn btn-success btn-sm"><span class="fa fa-search"></span></button>
|
||||
<div id="searchResults"></div>
|
||||
@@ -756,6 +756,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023041901"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=2023052701"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -20,7 +20,7 @@ Handlebars.registerHelper('jacketTimespan', function (context, block) {
|
||||
|
||||
var hours = timeSpan.asHours();
|
||||
if (hours < 48) {
|
||||
return Math.round(hours) + 'h ago';
|
||||
return parseFloat(hours).toFixed(1) + 'h ago';
|
||||
}
|
||||
|
||||
var days = timeSpan.asDays();
|
||||
|
@@ -13,13 +13,11 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.click/
|
||||
- https://1337x.unblockit.mov/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.is/
|
||||
- https://1337x.nocensor.work/
|
||||
- https://1337x.unblockit.how/
|
||||
- https://1337x.unblockit.cam/
|
||||
- https://1337x.nocensor.biz/
|
||||
- https://1337x.gd/
|
||||
- https://1337x.unblockit.day/
|
||||
@@ -41,6 +39,8 @@ legacylinks:
|
||||
- https://1337x.unblockit.boo/
|
||||
- https://1337x.mrunblock.guru/
|
||||
- https://1337x.mrunblock.life/ # cloudflare 403
|
||||
- https://1337x.unblockit.click/
|
||||
- https://1337x.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-04-09
|
||||
# NexusPHP v1.8.3 2023-05-14
|
||||
|
@@ -30,13 +30,13 @@ caps:
|
||||
- {id: 423, cat: XXX, desc: "IV(写真影片)", default: true}
|
||||
- {id: 424, cat: XXX, desc: "IV(写真图集)", default: true}
|
||||
# special
|
||||
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: true}
|
||||
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: true}
|
||||
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: true}
|
||||
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: true}
|
||||
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: true}
|
||||
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: true}
|
||||
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: true}
|
||||
- {id: 526, cat: Movies, desc: "VRMovies(3D/VR电影)", default: false}
|
||||
- {id: 527, cat: TV, desc: "VRSeries(3D/VR剧集)", default: false}
|
||||
- {id: 528, cat: Audio/Video, desc: "AV(VR无码)", default: false}
|
||||
- {id: 529, cat: Audio/Video, desc: "AV(VR有码)", default: false}
|
||||
- {id: 530, cat: Console, desc: "VRGame(VR一体机游戏)", default: false}
|
||||
- {id: 531, cat: PC/Games, desc: "PCVRGame(PCVR游戏)", default: false}
|
||||
- {id: 532, cat: Other, desc: "VRTools(VR工具软件)", default: false}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -110,7 +110,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 413, 420, 421, 422, 423, 424]
|
||||
categories: ["!", 526, 527, 528, 529, 530, 531, 532]
|
||||
- path: special.php
|
||||
categories: [526, 527, 528, 529, 530, 531, 532]
|
||||
inputs:
|
||||
@@ -213,4 +213,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-26
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -139,20 +139,22 @@ search:
|
||||
files:
|
||||
selector: td:nth-last-child(9)
|
||||
date_day:
|
||||
# Yesterday<br/>6:00 AM
|
||||
selector: td:nth-last-child(7):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
# Yesterday, 6:00 AM
|
||||
selector: td:nth-last-child(7) > span[title*="day"]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Aug 6 2021<br/>7:25 PM
|
||||
selector: td:nth-last-child(7):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
# Aug 6 2021, 7:25 PM
|
||||
selector: td:nth-last-child(7) > span[title]:not([title*="day"])
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "MMM d yyyy h:mm tt"
|
||||
args: "MMM d yyyy, h:mm tt"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
|
@@ -60,8 +60,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -69,15 +67,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -89,7 +89,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -98,8 +97,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -178,6 +178,9 @@ search:
|
||||
_quality:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary:contains("1080p"), div.list-group-item-content p.m-0 span.badge-primary:contains("720p"), div.list-group-item-content p.m-0 span.badge-primary:contains("4k")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["4k", "2160p"]
|
||||
_year:
|
||||
selector: div.list-group-item-content p.m-0 span.badge-primary[style$="#246AB6;"]
|
||||
optional: true
|
||||
|
@@ -31,7 +31,7 @@ settings:
|
||||
search:
|
||||
paths:
|
||||
# https://github.com/anilibria/docs/blob/master/api_v3.md
|
||||
- path: "https://api.anilibria.tv/v3/{{ if .Keywords }}searchTitles{{ else }}getUpdates{{ end }}"
|
||||
- path: "https://api.anilibria.tv/v3/title/{{ if .Keywords }}search{{ else }}updates{{ end }}"
|
||||
response:
|
||||
type: json
|
||||
|
||||
|
@@ -62,8 +62,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -71,15 +69,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -91,7 +91,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -100,8 +99,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -65,8 +65,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -74,15 +72,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -94,13 +94,10 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
|
@@ -6,8 +6,6 @@ language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
certificates:
|
||||
- 7b36f0dc75d3340727b6f74bbdbde46ec59b7037 # expired 12 Feb 2023
|
||||
links:
|
||||
- https://asnet.pw/
|
||||
|
||||
|
@@ -124,6 +124,7 @@ login:
|
||||
args: ["');", ""]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
before:
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: arabp2p
|
||||
name: ArabP2P
|
||||
description: "ArabP2P is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ar-AR
|
||||
language: ar-AE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: arabtorrents
|
||||
name: ArabTorrents
|
||||
description: "ArabTorrents is an ARABIC Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ar-AR
|
||||
language: ar-AE
|
||||
type: private
|
||||
encoding: windows-1256
|
||||
requestDelay: 2
|
||||
@@ -145,7 +145,7 @@ download:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*download-torrent-(\\d+).*\" \"$1\"}}"
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -169,22 +169,22 @@ search:
|
||||
args: ["^(.+)$", "*$1*"]
|
||||
|
||||
rows:
|
||||
selector: table#sortabletable > tbody > tr:has(div > a[href*="details.php?id="])
|
||||
selector: table#sortabletable > tbody > tr:has(span > a[href*="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td a[href*="/browse.php?category="]
|
||||
selector: td a[href*="/torrent-category-"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
- name: regexp
|
||||
args: "torrent-category-(\\d+)\/"
|
||||
title:
|
||||
selector: td a[href*="/details.php?id="]
|
||||
selector: td div.tooltip-target
|
||||
details:
|
||||
selector: td a[href*="/details.php?id="]
|
||||
selector: span a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/download.php?id="]
|
||||
selector: a[href*="/download-torrent-"]
|
||||
attribute: href
|
||||
date:
|
||||
selector: td:nth-child(2) > div:nth-child(3)
|
||||
|
@@ -28,6 +28,7 @@ caps:
|
||||
- {id: 20, cat: Movies/HD, desc: "Movies / Movies HD"}
|
||||
- {id: 21, cat: Movies/HD, desc: "Movies / x265"}
|
||||
- {id: 22, cat: Movies/UHD, desc: "Movies / 4K"}
|
||||
- {id: 59, cat: Movies/HD, desc: "Movies / AV1"}
|
||||
- {id: 2, cat: TV, desc: "Series"}
|
||||
- {id: 23, cat: TV/HD, desc: "Series / TV Episodes HD"}
|
||||
- {id: 24, cat: TV, desc: "Series / TV Episodes"}
|
||||
|
173
src/Jackett.Common/Definitions/azusa.yml
Normal file
173
src/Jackett.Common/Definitions/azusa.yml
Normal file
@@ -0,0 +1,173 @@
|
||||
---
|
||||
id: azusa
|
||||
name: Azusa
|
||||
description: "Azusa is a CHINESE Torrent Tracker focusing on Comics"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://azusa.wiki/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 404, cat: PC/Games, desc: "Game"}
|
||||
- {id: 402, cat: Books/Comics, desc: "Comic"}
|
||||
- {id: 403, cat: Books/EBook, desc: "Light Novel"}
|
||||
- {id: 407, cat: Other, desc: "CG"}
|
||||
- {id: 409, cat: Audio, desc: "Music"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the Uploads Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: ""
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: 0
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.20 2022-08-05
|
@@ -23,10 +23,16 @@ caps:
|
||||
- {id: 95, cat: Movies/HD, desc: "Film/FHD/Eng", default: true}
|
||||
- {id: 92, cat: Movies/UHD, desc: "Film/UHD/Hun", default: true}
|
||||
- {id: 93, cat: Movies/UHD, desc: "Film/UHD/Eng", default: true}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
|
||||
- {id: 22, cat: TV, desc: "Sorozat/Hun", default: true}
|
||||
- {id: 58, cat: TV, desc: "Sorozat/Eng", default: true}
|
||||
- {id: 64, cat: Movies, desc: "Film/Pack", default: true}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
|
||||
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
|
||||
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
|
||||
- {id: 24, cat: Audio/Video, desc: "Videóklip", default: true}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
|
||||
- {id: 69, cat: TV/Anime, desc: "Mese/SD", default: true}
|
||||
- {id: 68, cat: TV/Anime, desc: "Mese/DVD", default: true}
|
||||
- {id: 91, cat: TV/Anime, desc: "Mese/HD", default: true}
|
||||
@@ -35,19 +41,13 @@ caps:
|
||||
- {id: 84, cat: Audio/Lossless, desc: "Lossless/Hun", default: true}
|
||||
- {id: 71, cat: Audio/Lossless, desc: "Lossless/Eng", default: true}
|
||||
- {id: 31, cat: PC/Games, desc: "Játék/PC", default: true}
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
|
||||
- {id: 81, cat: PC/0day, desc: "Program/PC", default: true}
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
|
||||
- {id: 49, cat: PC/0day, desc: "Program/Rip", default: true}
|
||||
- {id: 27, cat: Books/EBook, desc: "Könyv/Hun", default: true}
|
||||
- {id: 50, cat: Books/EBook, desc: "Könyv/Eng", default: true}
|
||||
- {id: 14, cat: PC, desc: "Program/Egyéb", default: true}
|
||||
- {id: 65, cat: Other, desc: "Egyéb", default: true}
|
||||
- {id: 33, cat: XXX/SD, desc: "SD/XXX", default: false}
|
||||
- {id: 89, cat: XXX/x264, desc: "HD/XXX", default: false}
|
||||
- {id: 66, cat: XXX/ImageSet, desc: "Képek/XXX", default: false}
|
||||
# the following are no longer in the cat list in the search page, but are still in the profile cat list
|
||||
- {id: 54, cat: Console, desc: "Játék/Konzol", default: true}
|
||||
- {id: 67, cat: PC/Mobile-Android, desc: "Program/Mobil", default: true}
|
||||
- {id: 70, cat: Audio/Audiobook, desc: "Hangoskönyv", default: true}
|
||||
- {id: 97, cat: TV/Anime, desc: "Sorozat/Mese", default: true}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -99,7 +99,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: [85, 86, 15, 16, 17, 19, 83, 82, 94, 95, 92, 93, 64, 24, 22, 58, 69, 68, 91, 25, 26, 84, 71, 31, 81, 49, 27, 50, 14, 65, 54, 67, 70]
|
||||
categories: ["!", 33, 66, 89]
|
||||
inputs:
|
||||
# 0 all, 1 active, 2 deadonly, 3 myuploads, 4 zeroseed, 6 re-seeded
|
||||
incldead: 0
|
||||
@@ -117,22 +117,26 @@ search:
|
||||
# can support genre searching but you need to know the id, eg &genre23=1 for Comedy (id is 23)
|
||||
|
||||
rows:
|
||||
selector: "tr[class^=\"toriadatok_\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
selector: "tr[class^=\"toriadatok\"]{{ if .Config.freeleech }}:has(i:contains(\"(Free)\")){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: img[src^="pic/kategoria/"]
|
||||
attribute: title
|
||||
title:
|
||||
selector: a.preview
|
||||
selector: font[class="tori"], a.preview
|
||||
_id:
|
||||
selector: td.tori_infok
|
||||
attribute: id
|
||||
optional: true
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
details:
|
||||
text: "details.php?id={{ .Result._id }}#adatlap"
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: "details.php?id={{ .Result._id }}#adatlap"
|
||||
download:
|
||||
text: "download.php?torrent={{ .Result._id }}"
|
||||
poster:
|
||||
@@ -142,14 +146,14 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td[id^="tsize_"]
|
||||
selector: td[id^="tsize"]
|
||||
date:
|
||||
# 36 perce
|
||||
# 13 órája és 59 perce
|
||||
# 2 napja és 10 órája
|
||||
# 1 hete és 1 napja
|
||||
# 1 éve és 30 hete
|
||||
selector: td[id^="t_added_"] > span
|
||||
selector: td[id^="t_added"] > span
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["és ", " "]
|
||||
|
@@ -8,13 +8,14 @@ encoding: UTF-8
|
||||
requestDelay: 2
|
||||
links:
|
||||
- https://bitsearch.to/
|
||||
- https://bitsearch.mrunblock.life/
|
||||
- https://bitsearch.nocensor.click/
|
||||
legacylinks:
|
||||
- https://bitsearch.nocensor.biz/
|
||||
- https://bitsearch.nocensor.sbs/
|
||||
- https://bitsearch.nocensor.world/
|
||||
- https://bitsearch.nocensor.lol/
|
||||
- https://bitsearch.mrunblock.guru/
|
||||
- https://bitsearch.mrunblock.life/ # This web property is not accessible via this address.
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -92,7 +93,7 @@ search:
|
||||
category:
|
||||
selector: a.category
|
||||
title:
|
||||
selector: h5
|
||||
selector: h5 a
|
||||
details:
|
||||
selector: h5 a
|
||||
attribute: href
|
||||
|
@@ -54,8 +54,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -63,15 +61,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
|
@@ -10,7 +10,7 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "Cursos"}
|
||||
- {id: 1, cat: Other, desc: "Cursos"}
|
||||
- {id: 2, cat: Books/EBook, desc: "eBooks"}
|
||||
- {id: 5, cat: Books/Mags, desc: "Revistas"}
|
||||
- {id: 3, cat: Audio/Audiobook, desc: "Audiobooks"}
|
||||
@@ -55,8 +55,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -64,27 +62,22 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
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: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -93,8 +86,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -110,28 +101,6 @@ search:
|
||||
optional: true
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(Science Fiction)", "Science_Fiction"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(TV Movie)", "TV_Movie"]
|
||||
- name: replace
|
||||
args: [" & ", "_&_"]
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
@@ -169,6 +138,6 @@ search:
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 5 days (as seconds = 5 x 24 x 60 x 60)
|
||||
text: 432000
|
||||
# json UNIT3D 6.5.0
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D 6.5.0 (custom)
|
||||
|
@@ -7,12 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
# use https://tellme.pw/btsow to find the new domain
|
||||
links:
|
||||
- https://btsow.hair/
|
||||
- https://btsow.skin/
|
||||
legacylinks:
|
||||
- https://btsow.surf/
|
||||
- https://btsow.com/
|
||||
- https://btsow.cam/
|
||||
- https://btsow.digital/
|
||||
- https://btsow.shop/
|
||||
- https://btsow.us/
|
||||
- https://btsow.one/
|
||||
@@ -26,6 +22,8 @@ legacylinks:
|
||||
- https://btsow.beauty/
|
||||
- https://btsow.mom/
|
||||
- https://btsow.boats/
|
||||
- https://btsow.hair/
|
||||
- https://btsow.bond/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -123,6 +123,7 @@ caps:
|
||||
- {id: 217, cat: Movies, desc: "Tamil-Movies | Remuxes BluRay"}
|
||||
- {id: 218, cat: TV, desc: "TV-Ishara TV"}
|
||||
- {id: 219, cat: TV, desc: "TV-Bengali Tv"}
|
||||
- {id: 220, cat: TV, desc: "TV-Shemaroo Umang"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
@@ -89,7 +89,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
categories: [1, 2, 8, 7, 16, 15, 14, 13, 4, 3, 18, 17, 23, 19, 20, 24, 21, 22, 35, 36, 25, 30, 31, 33, 32, 29, 28, 27, 26]
|
||||
categories: ["!", 34, 39]
|
||||
- path: browse.php
|
||||
categories: [34, 39]
|
||||
inputs:
|
||||
|
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.31 2022-11-14
|
||||
# NexusPHP v1.7.38 2023-05-14
|
||||
|
@@ -163,7 +163,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[ ]at|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[ ]at|[//\xa0\\s,]+", " "]
|
||||
date_year:
|
||||
# February 09, 2019, 06:35:08 AM
|
||||
selector: td:nth-child(5):not(:contains("day"))
|
||||
@@ -171,7 +171,7 @@ search:
|
||||
optional: true
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["[,]|[\\s+]|[//\xa0],\\/g", " "]
|
||||
args: ["[//\xa0\\s,]+", " "]
|
||||
- name: dateparse
|
||||
args: "MMMM dd yyyy hh:mm:ss tt"
|
||||
date:
|
||||
|
@@ -1,152 +0,0 @@
|
||||
---
|
||||
id: ccfbits
|
||||
name: CCFBits
|
||||
description: "CCFBits is a CHINESE Private Torrent Tracker for HD MOVIES / TV"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://ccfbits.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# 高清电影
|
||||
- {id: 39, cat: Movies/HD, desc: "HD-DVD原盘"}
|
||||
- {id: 40, cat: Movies/BluRay, desc: "Blu-ray原盘"}
|
||||
- {id: 30, cat: Movies/HD, desc: "高清电影1080p"}
|
||||
- {id: 2, cat: Movies/HD, desc: "高清电影720p"}
|
||||
# 高清电视剧
|
||||
- {id: 7, cat: TV/HD, desc: "高清欧美剧"}
|
||||
- {id: 32, cat: TV/HD, desc: "高清国产剧"}
|
||||
- {id: 34, cat: TV/HD, desc: "高清港台剧"}
|
||||
- {id: 36, cat: TV/HD, desc: "高清日韩剧"}
|
||||
# 其他高清视频
|
||||
- {id: 12, cat: TV/Documentary, desc: "高清纪录片"}
|
||||
- {id: 11, cat: TV/Sport, desc: "高清体育"}
|
||||
- {id: 23, cat: TV/Anime, desc: "高清动漫"}
|
||||
- {id: 4, cat: Audio/Video, desc: "高清MV/综艺"}
|
||||
# 电视剧集包
|
||||
- {id: 38, cat: TV/HD, desc: "欧美剧包"}
|
||||
- {id: 33, cat: TV/HD, desc: "国产剧包"}
|
||||
- {id: 35, cat: TV/HD, desc: "港台剧包"}
|
||||
- {id: 37, cat: TV/HD, desc: "日韩剧包"}
|
||||
# 非高清和其他
|
||||
- {id: 43, cat: TV/SD, desc: "HR_HDTV"}
|
||||
- {id: 20, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 42, cat: Movies/SD, desc: "XviD"}
|
||||
- {id: 3, cat: Audio, desc: "无损音乐"}
|
||||
- {id: 22, cat: Other, desc: "杂项"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: DESC
|
||||
options:
|
||||
DESC: desc
|
||||
ASC: asc
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("登录失败"))
|
||||
test:
|
||||
path: browse.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 active 1 incldead 2 deadonly
|
||||
incldead: 1
|
||||
fullsearch: "{{ if .Query.IMDBID }}1{{ else }}{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
d: "{{ .Config.sort }}"
|
||||
|
||||
rows:
|
||||
selector: table[border="1"][cellpadding="5"] > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
filters:
|
||||
- name: split
|
||||
args: ["\n", 0]
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: a[href$="&filelist=1"]
|
||||
grabs:
|
||||
selector: a[href^="snatches.php?id"]
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["次", ""]
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
remove: a
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
"font[color=\"#C20603\"]:contains(\"免费\")": 0
|
||||
"font:has([src=\"/pic/arrowdown1.gif\"]):contains(\"0.5x\")": 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
"font:has([src=\"/pic/arrowup1.gif\"]):contains(\"1.5x\")": 1.5
|
||||
"font:has([src=\"/pic/arrowup1.gif\"]):contains(\"2x\")": 2
|
||||
"*": 1
|
||||
description:
|
||||
selector: td:nth-child(2) > table > tbody > tr:nth-child(2)
|
||||
remove: a, img
|
||||
# Discuz! 7.2
|
155
src/Jackett.Common/Definitions/centraltorrent.yml
Normal file
155
src/Jackett.Common/Definitions/centraltorrent.yml
Normal file
@@ -0,0 +1,155 @@
|
||||
---
|
||||
id: centraltorrent
|
||||
name: Central Torrent
|
||||
description: "Central Torrent is a POLISH Private Torrent Tracker for MOVIES / MUSIC"
|
||||
language: pl-PL
|
||||
type: private
|
||||
encoding: ISO-8859-2
|
||||
links:
|
||||
- http://central-torrent.eu/ # site does not support https NET::ERR_CERT_AUTHORITY_INVALID
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 23, cat: TV/Anime, desc: "Animowane"}
|
||||
- {id: 1, cat: PC, desc: "Aplikacje"}
|
||||
- {id: 26, cat: Movies, desc: "Dzieci/Bajki"}
|
||||
- {id: 29, cat: Books/EBook, desc: "E-books"}
|
||||
- {id: 20, cat: Movies/SD, desc: "Filmy/DVD"}
|
||||
- {id: 22, cat: Movies/SD, desc: "Filmy/RMVB"}
|
||||
- {id: 35, cat: Movies/UHD, desc: "Filmy/UHD"}
|
||||
- {id: 24, cat: Movies/HD, desc: "Filmy/x264"}
|
||||
- {id: 36, cat: Movies/HD, desc: "Filmy/x265"}
|
||||
- {id: 19, cat: Movies/SD, desc: "Filmy/XviD"}
|
||||
- {id: 21, cat: Movies/SD, desc: "Filmy/XviD PL"}
|
||||
- {id: 12, cat: PC/Games, desc: "Gry"}
|
||||
- {id: 17, cat: PC/Games, desc: "Gry/Konsole"}
|
||||
- {id: 4, cat: PC/Games, desc: "Gry/PC ISO"}
|
||||
- {id: 28, cat: Other, desc: "GSM/PDA"}
|
||||
- {id: 32, cat: Movies/BluRay, desc: "HD/Blu-ray"}
|
||||
- {id: 31, cat: Audio/Lossless, desc: "Music/Lossless"}
|
||||
- {id: 6, cat: Audio, desc: "Muzyka"}
|
||||
- {id: 30, cat: Other, desc: "Rozne"}
|
||||
- {id: 25, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 27, cat: Audio/Video, desc: "Teledyski"}
|
||||
- {id: 7, cat: TV, desc: "TV/Seriale"}
|
||||
- {id: 9, cat: XXX, desc: "XXX"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
captcha:
|
||||
type: image
|
||||
selector: img.cimage
|
||||
input: captcha
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
- selector: td.embedded:has(h2:contains("Error"))
|
||||
test:
|
||||
path: my.php
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php/"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 dead, 3 freeleech
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
# 0 all, 1 polish, 2 non-polish
|
||||
polish: 0
|
||||
# 0 name
|
||||
blah: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table[onMouseover] > tbody > tr:has(a[href^="details.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(3)
|
||||
date:
|
||||
selector: td:nth-child(5)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss"
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# tbsource
|
@@ -2,7 +2,7 @@
|
||||
id: chilebt
|
||||
name: ChileBT
|
||||
description: "ChileBT is a CHILEAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: es-419
|
||||
language: es-CL
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
|
173
src/Jackett.Common/Definitions/cinefilhd.yml
Normal file
173
src/Jackett.Common/Definitions/cinefilhd.yml
Normal file
@@ -0,0 +1,173 @@
|
||||
---
|
||||
id: cinefilhd
|
||||
name: CiNEFiLHD
|
||||
description: "CiNEFiLHD is a Private Torrent Tracker for MOVIES / TV / MUSIC"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://cinefilhd.xyz/
|
||||
- http://cinefilhd.sytes.net/
|
||||
legacylinks:
|
||||
- http://www.cinefilhd.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 37, cat: Movies/HD, desc: "Internal/HD-1080p"}
|
||||
- {id: 17, cat: Movies/HD, desc: "Internal/HD-720p"}
|
||||
- {id: 30, cat: TV/HD, desc: "Internal/HDTV"}
|
||||
- {id: 15, cat: Movies/HD, desc: "Internal/mHD"}
|
||||
- {id: 40, cat: Movies, desc: "Internal/Mp4"}
|
||||
- {id: 26, cat: Movies, desc: "Internal/Remux"}
|
||||
- {id: 45, cat: Movies/WEB-DL, desc: "Internal/WEB-DL"}
|
||||
- {id: 5, cat: Movies/BluRay, desc: "Movies/BluRay"}
|
||||
- {id: 38, cat: Movies/HD, desc: "Movies/HD-1080p"}
|
||||
- {id: 10, cat: Movies/HD, desc: "Movies/HD-720p"}
|
||||
- {id: 29, cat: Movies/HD, desc: "Movies/mHD"}
|
||||
- {id: 41, cat: Movies, desc: "Movies/Mp4"}
|
||||
- {id: 39, cat: Movies, desc: "Movies/Remux"}
|
||||
- {id: 44, cat: Movies/WEB-DL, desc: "Movies/WEB-DL"}
|
||||
- {id: 23, cat: Audio/Lossless, desc: "Lossless"}
|
||||
- {id: 14, cat: Audio/MP3, desc: "MP3-Packs"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Music-MP3"}
|
||||
- {id: 43, cat: Audio/Video, desc: "Music/1080p"}
|
||||
- {id: 42, cat: Audio/Video, desc: "Music/720p"}
|
||||
- {id: 12, cat: TV/HD, desc: "HDTV-Packs"}
|
||||
- {id: 21, cat: TV/HD, desc: "Movies/HDTV"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, genre]
|
||||
movie-search: [q, imdbid, genre]
|
||||
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
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
submitme: LOGIN
|
||||
error:
|
||||
- selector: h2:contains("failed")
|
||||
message:
|
||||
selector: td.colhead2
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
# note: site uses the catsX[]=nn method which cardigann does not support.
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if .Query.Genre }}{{ .Query.Genre }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# title, descr, genre, all
|
||||
searchin: "{{ if .Query.IMDBID }}descr{{else}}{{end}}{{ if .Query.Genre }}genre{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}title{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 no, 1 yes
|
||||
only_free: "{{ if .Config.freeleech }}1{{else}}0{{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.mainouter table > tbody > tr:has(a[href^="details.php?id="]), table.mainouter table > tbody > tr[id^="kdescr"]
|
||||
after: 1
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="details.php?id="][onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
# onmouseover="Tip('<img class=\'pup\' src=\'https://image.tmdb.org/t/p/original/x96AdPlpl4MjUP2DeUhRJifhCMd.jpg\' width=
|
||||
- name: regexp
|
||||
args: src=\\'(.*?)\\'
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(4)
|
||||
date_day:
|
||||
# Today<br/>10:20 AM
|
||||
# Yesterday<br/>08:03 PM
|
||||
selector: td:nth-child(6):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
# Feb 14 2019<br/>10:20 AM
|
||||
selector: td:nth-child(6):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "MMM d yyyy hh:mm tt"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
selector: td:nth-child(8)
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
genre:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, font
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
tr.freeleech_color: 0
|
||||
tr.highlight: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# U-232 v3
|
@@ -10,11 +10,10 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 62, cat: Books/EBook, desc: "EBook"}
|
||||
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
|
||||
- {id: 30, cat: TV/Anime, desc: "Filme - Animie"}
|
||||
- {id: 28, cat: Movies/BluRay, desc: "Filme - Bluray"}
|
||||
- {id: 31, cat: Movies/Other, desc: "Filme - Bollywood"}
|
||||
- {id: 77, cat: TV/Documentary, desc: "Filme - DokusHD"}
|
||||
- {id: 32, cat: Movies/DVD, desc: "Filme - DVD"}
|
||||
- {id: 33, cat: Movies/HD, desc: "Filme - HD"}
|
||||
- {id: 34, cat: Movies, desc: "Filme - Klassiker"}
|
||||
@@ -22,14 +21,17 @@ caps:
|
||||
- {id: 36, cat: Movies/SD, desc: "Filme - SD"}
|
||||
- {id: 37, cat: Movies/UHD, desc: "Filme - UHD"}
|
||||
- {id: 38, cat: Movies/HD, desc: "Filme - x264"}
|
||||
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 39, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 72, cat: Audio, desc: "Musik - Charts"}
|
||||
- {id: 40, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 75, cat: Audio/Lossless, desc: "Musik - Flac"}
|
||||
- {id: 41, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
|
||||
- {id: 74, cat: Audio/Other, desc: "Musik - Kids"}
|
||||
- {id: 42, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 43, cat: Audio/MP3, desc: "Musik - MP3"}
|
||||
- {id: 66, cat: Audio, desc: "Musik - Pack"}
|
||||
- {id: 70, cat: Audio, desc: "Musik - Sampler Deu."}
|
||||
- {id: 71, cat: Audio, desc: "Musik - Sampler Int."}
|
||||
- {id: 76, cat: Audio/Other, desc: "Musik - Soundtrack"}
|
||||
- {id: 44, cat: Audio/Video, desc: "Musik - Video"}
|
||||
- {id: 45, cat: PC, desc: "Programme - Linux"}
|
||||
- {id: 48, cat: PC/Mac, desc: "Programme - Mac"}
|
||||
@@ -39,7 +41,11 @@ caps:
|
||||
- {id: 51, cat: TV, desc: "Serien - Klassiker"}
|
||||
- {id: 52, cat: TV, desc: "Serien - Pack"}
|
||||
- {id: 53, cat: TV/Sport, desc: "Serien - Sport"}
|
||||
- {id: 62, cat: Books/EBook, desc: "EBook"}
|
||||
- {id: 63, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 64, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 60, cat: Other, desc: "Sonstiges"}
|
||||
- {id: 69, cat: Books/Mags, desc: "Zeitung"}
|
||||
- {id: 54, cat: PC/Mobile-Other, desc: "Spiele - Handy"}
|
||||
- {id: 55, cat: Console, desc: "Spiele - Konsolen"}
|
||||
- {id: 57, cat: PC/Games, desc: "Spiele - Mac / Linux / PC"}
|
||||
|
194
src/Jackett.Common/Definitions/dajiao.yml
Normal file
194
src/Jackett.Common/Definitions/dajiao.yml
Normal file
@@ -0,0 +1,194 @@
|
||||
---
|
||||
id: dajiao
|
||||
name: Dajiao
|
||||
description: "Dajiao (打胶) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://dajiao.cyou/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 414, cat: Console, desc: "Games/游戏"}
|
||||
- {id: 412, cat: Audio/Audiobook, desc: "Audio Books/有声书"}
|
||||
- {id: 409, cat: Other, desc: "Others/音乐"}
|
||||
- {id: 411, cat: Books/Comics, desc: "Manga/漫画"}
|
||||
- {id: 413, cat: Books/EBook, desc: "E-Books/电子书"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 403, cat: TV, desc: "TV Variety Shows/综艺"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动漫"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
- {id: 416, cat: TV, desc: "TV Shows/电视节目"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the Kufei Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.4 2023-06-13
|
@@ -68,8 +68,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -81,8 +79,10 @@ search:
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
imdb: "{{ .Query.IMDBIDShort }}"
|
||||
|
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
202
src/Jackett.Common/Definitions/dark-shadow.yml
Normal file
@@ -0,0 +1,202 @@
|
||||
---
|
||||
id: dark-shadow
|
||||
name: Dark-Shadow
|
||||
description: "Dark-Shadow is a GERMAN Private site for TV / MOVIES / GENERAL"
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://projekt.dark-shadow.me/
|
||||
legacylinks:
|
||||
- https://dark-shadow.ml/
|
||||
- https://dark-shadow.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movie
|
||||
- {id: 28, cat: Movies/SD, desc: "Filme SD"}
|
||||
- {id: 32, cat: Movies/HD, desc: "Filme HD"}
|
||||
- {id: 114, cat: Movies/UHD, desc: "Filme UHD"}
|
||||
- {id: 140, cat: Movies/BluRay, desc: "Filme BluRay"}
|
||||
- {id: 138, cat: Movies, desc: "Filme Pack`s"}
|
||||
# Serien
|
||||
- {id: 60, cat: TV/SD, desc: "Serien SD"}
|
||||
- {id: 57, cat: TV/HD, desc: "Serien HD"}
|
||||
- {id: 139, cat: TV/UHD, desc: "Serien UHD"}
|
||||
- {id: 59, cat: TV, desc: "Serien Pack`s"}
|
||||
# Audio
|
||||
- {id: 110, cat: Audio/MP3, desc: "Audio MP3"}
|
||||
- {id: 48, cat: Audio/Lossless, desc: "Audio Flac"}
|
||||
- {id: 52, cat: Audio, desc: "Audio Pack"}
|
||||
- {id: 63, cat: Audio/Audiobook, desc: "Audio Hörbuch"}
|
||||
- {id: 120, cat: Audio/Video, desc: "Audio Videos"}
|
||||
# Apps
|
||||
- {id: 12, cat: PC/0day, desc: "Apps Windows"}
|
||||
- {id: 125, cat: PC/Mac, desc: "Apps Mac-OSX"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "Apps Mobil"}
|
||||
- {id: 141, cat: PC/ISO, desc: "Apps Other"}
|
||||
# Doku
|
||||
- {id: 15, cat: TV/Documentary, desc: "Doku SD"}
|
||||
- {id: 14, cat: TV/Documentary, desc: "Doku HD"}
|
||||
- {id: 123, cat: TV/Documentary, desc: "Doku Reihe"}
|
||||
# Spiel
|
||||
- {id: 126, cat: Console/Other, desc: "Spiel Mobil"}
|
||||
- {id: 17, cat: PC/Games, desc: "Spiel PC"}
|
||||
- {id: 24, cat: Console, desc: "Spiel Konsole"}
|
||||
- {id: 121, cat: Console, desc: "Spiel Wimmelbild"}
|
||||
# Sport
|
||||
- {id: 61, cat: TV/Sport, desc: "Sport HD"}
|
||||
- {id: 62, cat: TV/Sport, desc: "Sport SD"}
|
||||
# ePaper
|
||||
- {id: 96, cat: Books/Mags, desc: "ePaper Zeitungen"}
|
||||
- {id: 136, cat: Books/EBook, desc: "ePaper E-Book"}
|
||||
- {id: 137, cat: Books/Comics, desc: "ePaper Comics"}
|
||||
# XXX
|
||||
- {id: 76, cat: XXX/XviD, desc: "XXX SD"}
|
||||
- {id: 73, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 75, cat: XXX/Pack, desc: "XXX Pack"}
|
||||
- {id: 142, cat: XXX/ImageSet, desc: "XXX Pic´s"}
|
||||
# Internal
|
||||
- {id: 129, cat: Movies/SD, desc: "Internal Film SD"}
|
||||
- {id: 128, cat: Movies/HD, desc: "Internal Film HD"}
|
||||
- {id: 131, cat: TV/SD, desc: "Internal Serie SD"}
|
||||
- {id: 130, cat: TV/HD, desc: "Internal Serien HD"}
|
||||
- {id: 132, cat: Other, desc: "Internal Sonstiges"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
test:
|
||||
path: selection.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: 0
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
keywordsfilters:
|
||||
# prefix and postfix percent wildcard as well as replacing spaces between words
|
||||
- name: re_replace
|
||||
args: ["\\W+", "%"]
|
||||
- name: re_replace
|
||||
args: ["^(.+)$", "%$1%"]
|
||||
|
||||
rows:
|
||||
selector: "div.selection_wrap{{ if .Config.freeleech }}:root:has(div.onlyup){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
title:
|
||||
selector: a.selection_a
|
||||
filters:
|
||||
# remove [REQ] and anything else in [] that prefixes titles
|
||||
- name: re_replace
|
||||
args: ["^(\\[.*\\])(.*)", "$2"]
|
||||
details:
|
||||
selector: a.selection_a
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download_ssl.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ad
|
||||
grabs:
|
||||
selector: div.selection_unter_ae
|
||||
date_day:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
date_year:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: dateparse
|
||||
args: "dd.MM.yyyy HH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
description:
|
||||
selector: selection_unter_af
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 36 hours (as seconds = 36 x 60 x 60)
|
||||
text: 129600
|
||||
# 3xT
|
@@ -61,8 +61,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -70,15 +68,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -90,7 +90,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -99,8 +98,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -10,13 +10,11 @@ links:
|
||||
- https://www.demonoid.is/
|
||||
- https://www.dnoid.to/
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoid.unblockit.click/
|
||||
- https://demonoid.unblockit.mov/
|
||||
- https://demonoid.torrentbay.net/
|
||||
- https://demonoid.mrunblock.life/
|
||||
- https://demonoid.nocensor.click/
|
||||
legacylinks:
|
||||
- https://demonoid.unblockit.how/
|
||||
- https://demonoid.unblockit.cam/
|
||||
- https://demonoid.nocensor.biz/
|
||||
- https://demonoid.unblockit.day/
|
||||
- https://demonoid.unblockit.llc/
|
||||
@@ -42,6 +40,8 @@ legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.tor2web.link/ # Origin is unreachable Error code 523
|
||||
- https://demonoid.mrunblock.guru/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.unblockit.click/
|
||||
- https://demonoid.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -54,8 +54,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -63,15 +61,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -83,7 +83,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -92,8 +91,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -71,6 +71,10 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: p2p_releases_only
|
||||
type: checkbox
|
||||
label: Search P2P releases only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -109,6 +113,7 @@ search:
|
||||
index: 0
|
||||
limit: 100
|
||||
order: "{{ .Config.type }}"
|
||||
p2p: "{{ if .Config.p2p_releases_only }}true{{ else }}{{ end }}"
|
||||
page: search
|
||||
searchText: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
section: all
|
||||
|
@@ -1,9 +1,9 @@
|
||||
---
|
||||
id: dimeadozen
|
||||
name: DimeADozen
|
||||
description: "DimeADozen (EzTorrent) is a Semi-Private Torrent Tracker for BOOTLEG MUSIC"
|
||||
description: "DimeADozen (EzTorrent) is a Private Torrent Tracker for BOOTLEG MUSIC"
|
||||
language: en-GB
|
||||
type: semi-private
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://www.dimeadozen.org/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
|
@@ -92,6 +92,7 @@ caps:
|
||||
- {id: 117, cat: Audio, desc: "Compact Disc Club"}
|
||||
- {id: 20, cat: Audio/Video, desc: "Music Videos"}
|
||||
- {id: 118, cat: Audio, desc: "Dream Radio Music"}
|
||||
- {id: 124, cat: Movies, desc: "VIP Movies"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
217
src/Jackett.Common/Definitions/drugari.yml
Normal file
217
src/Jackett.Common/Definitions/drugari.yml
Normal file
@@ -0,0 +1,217 @@
|
||||
---
|
||||
id: drugari
|
||||
name: Drugari
|
||||
description: "Drugari is a CROATIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: hr-HR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://drugari.org/ # does not support https, ERR_CONNECTION_CLOSED
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 3, cat: TV/Anime, desc: "ANIMIRANI"}
|
||||
- {id: 4, cat: PC, desc: "Appz"}
|
||||
- {id: 1, cat: Movies, desc: "BEZ PRAVILA"}
|
||||
- {id: 39, cat: Movies, desc: "BEZ PREVODA"}
|
||||
- {id: 41, cat: Movies, desc: "BEZ PREVODA Filmovi"}
|
||||
- {id: 40, cat: TV, desc: "BEZ PREVODA Serije"}
|
||||
- {id: 7, cat: TV/Documentary, desc: "DOKUMENTARNI"}
|
||||
- {id: 18, cat: Movies, desc: "DOMACI FILMOVI"}
|
||||
- {id: 49, cat: Movies, desc: "DOMACI FILMOVI Predstava"}
|
||||
- {id: 10, cat: Movies/DVD, desc: "DVD FILMOVI"}
|
||||
- {id: 37, cat: TV, desc: "Emisije"}
|
||||
- {id: 8, cat: Movies, desc: "FILM"}
|
||||
- {id: 34, cat: Movies, desc: "FILM Kolekcije"}
|
||||
- {id: 48, cat: Movies, desc: "FILM Ruski Film"}
|
||||
- {id: 23, cat: Movies/SD, desc: "FILM TS"}
|
||||
- {id: 24, cat: Movies, desc: "FILM TV RIP"}
|
||||
- {id: 38, cat: Movies, desc: "FILM- Western"}
|
||||
- {id: 22, cat: Movies/HD, desc: "FILM x264/x265-Filmovi"}
|
||||
- {id: 21, cat: Movies/SD, desc: "FILM XviD/Strani Filmovi"}
|
||||
- {id: 15, cat: Console, desc: "IGRE"}
|
||||
- {id: 19, cat: Books, desc: "KNJIGE"}
|
||||
- {id: 53, cat: Audio/Audiobook, desc: "KNJIGE Audio"}
|
||||
- {id: 52, cat: Books/Mags, desc: "KNJIGE Casopisi"}
|
||||
- {id: 55, cat: Books/EBook, desc: "KNJIGE pdf"}
|
||||
- {id: 14, cat: Audio, desc: "MUZIKA"}
|
||||
- {id: 50, cat: Audio, desc: "MUZIKA Domaca Diskografija"}
|
||||
- {id: 29, cat: Audio, desc: "MUZIKA DVD Muzika"}
|
||||
- {id: 33, cat: Audio/Lossless, desc: "MUZIKA FLAC"}
|
||||
- {id: 35, cat: Audio, desc: "MUZIKA Karaoke"}
|
||||
- {id: 32, cat: Audio/MP3, desc: "MUZIKA MP3"}
|
||||
- {id: 31, cat: Audio/Other, desc: "MUZIKA Muzika Ostalo"}
|
||||
- {id: 51, cat: Audio, desc: "MUZIKA Strana Diskografija"}
|
||||
- {id: 30, cat: Audio/Video, desc: "MUZIKA Video Muzika"}
|
||||
- {id: 11, cat: Other, desc: "RAZNO"}
|
||||
- {id: 20, cat: TV, desc: "SERIJE"}
|
||||
- {id: 27, cat: TV, desc: "SERIJE Domace Serije"}
|
||||
- {id: 54, cat: TV, desc: "SERIJE Ruske Serije"}
|
||||
- {id: 28, cat: TV, desc: "SERIJE Strane Serije"}
|
||||
- {id: 16, cat: Other, desc: "SLIKE"}
|
||||
- {id: 12, cat: TV/Sport, desc: "SPORT"}
|
||||
- {id: 6, cat: Other, desc: "STRANI TORENTI"}
|
||||
- {id: 5, cat: Other, desc: "STRIP"}
|
||||
- {id: 13, cat: Other, desc: "UPUTSTVA"}
|
||||
- {id: 25, cat: XXX, desc: "XXX"}
|
||||
- {id: 47, cat: XXX, desc: "XXX XXX-Strip"}
|
||||
- {id: 42, cat: TV, desc: "Za Decu"}
|
||||
- {id: 43, cat: TV, desc: "Za Decu Edukativni Programi"}
|
||||
- {id: 44, cat: Console, desc: "Za Decu Igrice"}
|
||||
- {id: 45, cat: Books, desc: "Za Decu Knjige"}
|
||||
- {id: 46, cat: Audio, desc: "Za Decu Muzika"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>40</b> on your account profile. The Default is <i>30</i>.
|
||||
- name: info_results
|
||||
type: info
|
||||
label: Search results
|
||||
default: "If you are getting the error <b>Found no results while trying to browse this tracker</b> then first access the site with your browser and read any new mail you may have received. You cannot browse torrents with unread mail outstanding."
|
||||
|
||||
login:
|
||||
path: login.php?
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img#regimage
|
||||
input: imagestring
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
logout: ""
|
||||
error:
|
||||
- selector: table:contains("Greska")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href*="/logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
selectors:
|
||||
- selector: a[href*="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["[\\s]+", "%"]
|
||||
inputs:
|
||||
do: search
|
||||
keywords: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# t_name, t_description, t_both, t_uploader, t_genre
|
||||
search_type: "{{ if .Query.IMDBID }}t_genre{{ else }}t_name{{ end }}"
|
||||
# does not support multi category searching so defaulting to all.
|
||||
category: 0
|
||||
# yes, no
|
||||
include_dead_torrents: yes
|
||||
sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}"
|
||||
order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: "table.sortable tr:has(a[href*=\"/download.php?id=\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}"
|
||||
filters:
|
||||
- name: strdump
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="/browse.php?category="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
title_default:
|
||||
# is usually abbreaviated
|
||||
selector: a[href*="/details.php?id="]
|
||||
title:
|
||||
# while still abbreviated, is usually longer than the default
|
||||
selector: div.tooltip-content div
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[src*="/torrents/images/"]
|
||||
attribute: src
|
||||
date:
|
||||
selector: td:nth-child(2)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})"
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
grabs:
|
||||
selector: td:nth-last-child(4)
|
||||
seeders:
|
||||
selector: td:nth-last-child(3)
|
||||
leechers:
|
||||
selector: td:nth-last-child(2)
|
||||
description:
|
||||
# Wait: 4 h
|
||||
# Cekanje: 4 h
|
||||
selector: div.tooltip-content > div:last-child
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="/freedownload.gif"]: 0
|
||||
img[src$="/silverdownload.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="/x2.gif"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.1
|
||||
minimumseedtime:
|
||||
# 60 hours (as seconds = 60 x 60 x 60)
|
||||
text: 216000
|
||||
# TS Special Edition v.8.0
|
@@ -14,6 +14,7 @@ caps:
|
||||
- {id: "Action/Adventure", cat: Books/EBook, desc: "Action/Adventure"}
|
||||
- {id: "Animals", cat: Books/EBook, desc: "Animals"}
|
||||
- {id: "Arts", cat: Books/EBook, desc: "Arts"}
|
||||
- {id: "Audio Books", cat: Audio/Audiobook, desc: "Audio Books"}
|
||||
- {id: "Beauty", cat: Books/EBook, desc: "Beauty"}
|
||||
- {id: "Business", cat: Books/EBook, desc: "Business"}
|
||||
- {id: "Certification", cat: Books/EBook, desc: "Certification"}
|
||||
@@ -29,7 +30,7 @@ caps:
|
||||
- {id: "Fantasy", cat: Books/EBook, desc: "Fantasy"}
|
||||
- {id: "Gardening", cat: Books/EBook, desc: "Gardening"}
|
||||
- {id: "Health", cat: Books/EBook, desc: "Health"}
|
||||
- {id: "Historical", cat: Books/EBook, desc: "Historical"}
|
||||
- {id: "Historical Fiction", cat: Books/EBook, desc: "Historical Fiction"}
|
||||
- {id: "History", cat: Books/EBook, desc: "History"}
|
||||
- {id: "Horror", cat: Books/EBook, desc: "Horror"}
|
||||
- {id: "Humorous", cat: Books/EBook, desc: "Humorous"}
|
||||
@@ -64,6 +65,7 @@ caps:
|
||||
modes:
|
||||
search: [q]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
settings: []
|
||||
|
||||
@@ -101,8 +103,10 @@ search:
|
||||
optional: true
|
||||
default: Other
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)\\bEbooks?\\b", ""]
|
||||
- name: regexp
|
||||
args: "E book under:\\s+(.+?)\\s"
|
||||
args: "E book under:\\s+(.+?)\\s?\\\xA0"
|
||||
title:
|
||||
selector: div.postname a
|
||||
details:
|
||||
|
@@ -6,6 +6,8 @@ language: pl-PL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://electro-torrent.pl/
|
||||
legacylinks:
|
||||
- http://electro-torrent.pl/
|
||||
|
||||
caps:
|
||||
@@ -49,12 +51,20 @@ caps:
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
label: Cookie
|
||||
- name: info
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser</li><li>Open the <b>DevTools</b> panel by pressing <b>F12</b></li><li>Select the <b>Network</b> tab</li><li>Click on the <b>Doc</b> button (Chrome Browser) or <b>HTML</b> button (FireFox)</li><li>Refresh the page by pressing <b>F5</b></li><li>Click on the first row entry</li><li>Select the <b>Headers</b> tab on the Right panel</li><li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
- name: useragent
|
||||
type: text
|
||||
label: User-Agent
|
||||
- name: info_useragent
|
||||
type: info
|
||||
label: How to get the User-Agent
|
||||
default: "<ol><li>From the same place you fetched the cookie,</li><li>Find <b>'user-agent:'</b> in the <b>Request Headers</b> section</li><li><b>Select</b> and <b>Copy</b> the whole user-agent string <i>(everything after 'user-agent: ')</i> and <b>Paste</b> here.</li></ol>"
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
@@ -68,25 +78,17 @@ settings:
|
||||
MULTi POLISH: MULTi POLISH
|
||||
|
||||
login:
|
||||
path: logowanie
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[src^="img.php?size=3"]
|
||||
input: vImageCodP
|
||||
method: cookie
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: ""
|
||||
error:
|
||||
- selector: div#center-side:contains("Logowanie nie")
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: /
|
||||
selector: a[href$="/logout.php"]
|
||||
|
||||
search:
|
||||
# http://electro-torrent.pl/szukaj.php?search=&typ=torrent&cat=0
|
||||
headers:
|
||||
User-Agent: ["{{ .Config.useragent }}"]
|
||||
paths:
|
||||
- path: szukaj.php
|
||||
allowEmptyInputs: true
|
||||
|
@@ -7,13 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.click/
|
||||
- https://extratorrent.unblockit.mov/
|
||||
- https://extratorrent.mrunblock.life/
|
||||
- https://extratorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
- https://extratorrent.unblockit.how/
|
||||
- https://extratorrent.unblockit.cam/
|
||||
- https://extratorrent.nocensor.biz/
|
||||
- https://extratorrent.unblockit.day/
|
||||
- https://extratorrent.unblockit.llc/
|
||||
@@ -33,6 +31,8 @@ legacylinks:
|
||||
- https://extratorrent.unblockit.bio/
|
||||
- https://extratorrent.unblockit.boo/
|
||||
- https://extratorrent.mrunblock.guru/
|
||||
- https://extratorrent.unblockit.click/
|
||||
- https://extratorrent.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -123,6 +123,8 @@ search:
|
||||
category:
|
||||
selector: td:nth-child(1) div div a:last-child
|
||||
attribute: href
|
||||
optional: true
|
||||
default: "/other/"
|
||||
title:
|
||||
selector: td:nth-child(1) div a
|
||||
details:
|
||||
|
@@ -13,7 +13,7 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.click/
|
||||
- https://eztv.unblockit.mov/
|
||||
- https://eztv.mrunblock.life/
|
||||
- https://eztv.nocensor.click/
|
||||
legacylinks:
|
||||
@@ -40,6 +40,8 @@ legacylinks:
|
||||
- https://eztv.unblockit.bio/
|
||||
- https://eztv.unblockit.boo/
|
||||
- https://eztv.mrunblock.guru/
|
||||
- https://eztv.unblockit.click/
|
||||
- https://eztv.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -6,7 +6,9 @@ language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://fantastiko.space/ # https is not supported
|
||||
- https://fantastiko.space/
|
||||
legacylinks:
|
||||
- http://fantastiko.space/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
139
src/Jackett.Common/Definitions/fappaizuri.yml
Normal file
139
src/Jackett.Common/Definitions/fappaizuri.yml
Normal file
@@ -0,0 +1,139 @@
|
||||
---
|
||||
id: fappaizuri
|
||||
name: Fappaizuri
|
||||
description: "Fappaizuri is a Private Torrent Tracker for HENTAI / JAV"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://fappaizuri.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 8, cat: TV/Anime, desc: "Hentai"}
|
||||
- {id: 7, cat: Console, desc: "H-games"}
|
||||
- {id: 5, cat: XXX, desc: "JAV"}
|
||||
- {id: 6, cat: Books, desc: "Manga"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: lang
|
||||
type: select
|
||||
label: Language
|
||||
default: 0
|
||||
options:
|
||||
0: All
|
||||
4: Japanese
|
||||
5: Chinese
|
||||
6: Malaysia
|
||||
7: North Korea
|
||||
8: English
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: id
|
||||
options:
|
||||
id: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
method: post
|
||||
path: account-login.php
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: b:contains("The specified username or password was incorrect.")
|
||||
test:
|
||||
path: account.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://fappaizuri.me/torrents-search.php?search=&c8=1&c6=1&incldead=1&freeleech=0&lang=0
|
||||
- path: torrents-search.php
|
||||
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}&c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all, 1 notfree, 2 onlyfree
|
||||
freeleech: "{{ if .Config.freeleech }}{{ .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
lang: "{{ .Config.lang }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: tr.t-row:has(a[href^="download.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="search-torrents.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="torrents-details.php?id="] > b
|
||||
details:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=(.+?)>
|
||||
_language:
|
||||
selector: img[src*="images/languages/"]
|
||||
attribute: alt
|
||||
description:
|
||||
selector: font[color="red"]
|
||||
filters:
|
||||
- name: append
|
||||
args: " - {{ .Result._language }}"
|
||||
size:
|
||||
selector: td:nth-child(4)
|
||||
seeders:
|
||||
selector: td:nth-child(5)
|
||||
leechers:
|
||||
selector: td:nth-child(6)
|
||||
date:
|
||||
text: now
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/free.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src="images/doubleupload.gif"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# evolution
|
@@ -20,14 +20,13 @@ caps:
|
||||
- {id: 601, cat: TV/Anime, desc: " |- Мультсериалы DVD Master's"}
|
||||
# Кино, видео, мультипликация и ТВ
|
||||
# Film, video, animation and TV
|
||||
- {id: 995, cat: Movies, desc: " |- Экранки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы)"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы)"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежное кино"}
|
||||
- {id: 988, cat: Movies, desc: " |- Кино России и СНГ"}
|
||||
- {id: 337, cat: Movies, desc: " |- Мультфильмы"}
|
||||
- {id: 72, cat: Movies, desc: " |- DVD, HD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1001, cat: Movies, desc: " |- UHD Видео (фильмы , мультфильмы)"}
|
||||
- {id: 1002, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 987, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы [SD]"}
|
||||
- {id: 1003, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [HD/UHD]"}
|
||||
- {id: 988, cat: Movies, desc: " |- Отечественные фильмы , мультфильмы [SD]"}
|
||||
- {id: 337, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы на других языках [SD/HD/UHD]"}
|
||||
- {id: 994, cat: Movies, desc: " |- Новинки с рекламой (фильмы, мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 385, cat: Movies, desc: " |- Экранки (фильмы , мультфильмы) [SD/HD/UHD]"}
|
||||
- {id: 999, cat: Movies, desc: " |- Фильмы (2021-2022)"}
|
||||
- {id: 996, cat: Movies, desc: " |- Фильмы (2019-2020)"}
|
||||
- {id: 921, cat: Movies, desc: " |- Фильмы (2016-2018)"}
|
||||
@@ -51,7 +50,6 @@ caps:
|
||||
- {id: 62, cat: Movies, desc: " |- Кино для детей"}
|
||||
- {id: 962, cat: Movies, desc: " |- Антология отечественного кино"}
|
||||
- {id: 990, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы на языках ближнего.."}
|
||||
- {id: 993, cat: Movies, desc: " |- Фильмы , мультфильмы и сериалы ближнего зарубежья и СНГ в ор.."}
|
||||
- {id: 991, cat: Movies, desc: " |- Зарубежные фильмы , мультфильмы и сериалы в оригинале"}
|
||||
- {id: 74, cat: Movies, desc: " |- Зарубежные мультфильмы"}
|
||||
- {id: 73, cat: Movies, desc: " |- Отечественные мультфильмы"}
|
||||
|
@@ -6,6 +6,8 @@ language: es-ES
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
requestDelay: 2
|
||||
certificates:
|
||||
- 1c5fd7a2e0464ac60f947eda247c2fe209768834 # expired 18 June 2023
|
||||
links:
|
||||
- https://www.frozen-layer.com/
|
||||
|
||||
@@ -60,6 +62,8 @@ search:
|
||||
selector: table#descargas > tbody > tr:has(td:has(a[href^="magnet:?"]))
|
||||
|
||||
fields:
|
||||
category:
|
||||
text: "{{ if eq .Config.category \"todos\" }}Anime{{ else }}{{ .Config.category }}{{ end }}"
|
||||
title:
|
||||
selector: td.tit a
|
||||
filters:
|
||||
@@ -84,10 +88,6 @@ search:
|
||||
magnet:
|
||||
selector: td:nth-child(1) a[href^="magnet:?"]
|
||||
attribute: href
|
||||
category:
|
||||
selector: td.tit span
|
||||
optional: true
|
||||
default: Anime
|
||||
date_day:
|
||||
# 1d
|
||||
# 2d 3h
|
||||
|
@@ -77,12 +77,13 @@ settings:
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
- name: info_news
|
||||
type: info
|
||||
label: Reminder from GF-Free Admin
|
||||
default: "Attention users of third-party software like Jackett or Radarr, Sonarr or similar:<br>Despite your seed downloads you must physically connect to the web site with your browser or risk being <b>Banned for non-participation</b>...<br><ol>We ask :<li>Remain in seed at least 48 hours on the media to avoid H$R</li><li>And much more depending on your storage means</li><li>Participate in the life of the site shout forum...</li><li>Connect regularly to possibly read your private messages.</li></ol>"
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -90,15 +91,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -106,11 +109,10 @@ search:
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
free: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
||||
free[]: "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -119,8 +121,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -96,8 +96,8 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}{{ if .Query.Genre }} genre:{{ .Query.Genre }}{{ else }}{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo
|
||||
blah: "{{ if or .Query.IMDBID .Query.Genre }}3{{ else }}0{{ end }}"
|
||||
# 0 title, 1 nfo, 2 filelist, 3 title+nfo, 4 imdb
|
||||
blah: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.Genre }}3{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.Genre }}{{ else }}0{{ end }}"
|
||||
# 0 active only, 1 dead only
|
||||
incldead: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
|
@@ -9,6 +9,7 @@ followredirect: true
|
||||
# to fetch current domain use https://www.protege-liens.com/Gktorrent
|
||||
links:
|
||||
- https://www.gktorrents.cc/
|
||||
- https://gktorrent.nocensor.click/
|
||||
legacylinks:
|
||||
- https://www.gktorrent.org/
|
||||
- https://www.gktorrent.me/
|
||||
|
@@ -10,15 +10,13 @@ links:
|
||||
- https://glodls.to/
|
||||
- https://gtdb.cc/
|
||||
- https://www.gtdb.to/
|
||||
- https://glotorrents.unblockit.click/
|
||||
- https://glotorrents.unblockit.mov/
|
||||
- https://glotorrents.mrunblock.life/
|
||||
- https://glodls.unblockninja.com/
|
||||
- https://glotorrents.nocensor.click/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://gtdb.to/
|
||||
- https://glotorrents.unblockit.how/
|
||||
- https://glotorrents.unblockit.cam/
|
||||
- https://glotorrents.nocensor.biz/
|
||||
- https://glotorrents.unblockit.day/
|
||||
- https://glotorrents.unblockit.llc/
|
||||
@@ -38,6 +36,8 @@ legacylinks:
|
||||
- https://glotorrents.unblockit.bio/
|
||||
- https://glotorrents.unblockit.boo/
|
||||
- https://glotorrents.mrunblock.guru/
|
||||
- https://glotorrents.unblockit.click/
|
||||
- https://glotorrents.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -77,7 +77,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [1, 4091, 4097, 4098, 4099, 4101, 4104, 4105]
|
||||
categories: ["!", 4103]
|
||||
- path: live.php
|
||||
categories: [4103]
|
||||
inputs:
|
||||
|
@@ -10,10 +10,13 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 11, cat: XXX, desc: "Asian"}
|
||||
- {id: 3, cat: XXX, desc: "Gay"}
|
||||
- {id: 4, cat: XXX, desc: "Interracial"}
|
||||
- {id: 5, cat: XXX, desc: "Lesbian"}
|
||||
- {id: 6, cat: XXX, desc: "Onlyfans"}
|
||||
- {id: 9, cat: XXX, desc: "Packs"}
|
||||
- {id: 10, cat: XXX, desc: "Pics"}
|
||||
- {id: 1, cat: XXX, desc: "Pron"}
|
||||
- {id: 8, cat: XXX, desc: "Retro"}
|
||||
- {id: 7, cat: XXX, desc: "VR"}
|
||||
|
@@ -50,8 +50,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -59,14 +57,16 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
@@ -76,7 +76,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -85,8 +84,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
|
@@ -53,8 +53,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -62,15 +60,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -82,7 +82,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -91,8 +90,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -151,4 +148,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# json UNIT3D 6.3.0
|
||||
# json UNIT3D 6.4.1
|
||||
|
@@ -175,4 +175,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-04-16
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -146,4 +146,4 @@ search:
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
# NexusPHP 2c858e7 (Customised)
|
||||
# NexusPHP 4e16128 (Customised)
|
||||
|
@@ -122,7 +122,7 @@ search:
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href*=bookmark])
|
||||
selector: td#mcol table.lista > tbody > tr:has(a[href^="magnet:?xt="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
@@ -132,13 +132,16 @@ search:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: td:nth-child(2) > a
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
details:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="index.php?page=torrent-details"]
|
||||
attribute: onmouseover
|
||||
@@ -146,17 +149,19 @@ search:
|
||||
- name: regexp
|
||||
args: "src=(.+?) "
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
selector: td:nth-child(7)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd/MM/yyyy"
|
||||
size:
|
||||
selector: td:nth-child(11)
|
||||
selector: td:nth-child(12)
|
||||
seeders:
|
||||
selector: td:nth-child(8)
|
||||
leechers:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
grabs:
|
||||
selector: td:nth-child(11)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="freeleech.gif"]: 0
|
||||
|
@@ -103,14 +103,14 @@ search:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if 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 }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
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 }}"
|
||||
@@ -139,12 +139,14 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
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:nth-child(4) > span[title]
|
||||
@@ -193,4 +195,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.0 2023-01-20
|
||||
# NexusPHP v1.8.4 2023-05-27
|
||||
|
@@ -103,7 +103,7 @@ search:
|
||||
# 1 active, 2 dead, 3 gold, 4 sticky, lots of others
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
ascdesc: "{{ .Config.type }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01 to сезон 1
|
||||
@@ -225,6 +225,23 @@ search:
|
||||
# 1 day ago
|
||||
selector: a[href^="browse.php?date="]
|
||||
filters:
|
||||
# translations for Russian|Romanian|Ukrainian
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(назад|În urmă)\\b", "ago"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(секунд(а|и|ы)?|secund(a|ă|e))\\b", "seconds"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(минуты?|minute?|хвилини?)\\b", "minutes"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(час(а|ов)?|or(e|ă)|години?)\\b", "hours"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(де?не?(ь|я|й|ів)|zi(le)?)\\b", "days"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(недел(ю|и)|săptămân(ă|i)|тиж(день|ні))\\b", "weeks"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(месяц(а|ев)?|lun(ă|i)|місяц(ь|я|ів))\\b", "months"]
|
||||
- name: re_replace
|
||||
args: ["(?i)\\b(года?|an|р(ік|оки))\\b", "years"]
|
||||
- name: timeago
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
|
@@ -19,6 +19,7 @@ caps:
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 409, cat: Other, desc: "Misc/其他"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 410, cat: PC, desc: "Softs/软件"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -170,4 +171,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.29 2022-10-12
|
||||
# NexusPHP v1.8.3 2023-05-13
|
||||
|
@@ -56,23 +56,28 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: api/torrents/filter
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
# 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 }}"
|
||||
@@ -80,13 +85,10 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
@@ -182,11 +184,15 @@ search:
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0: 1 # not free
|
||||
1: 0 # freeleech
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
@@ -196,4 +202,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 4 days (as seconds = 4 x 24 x 60 x 60)
|
||||
text: 345600
|
||||
# json UNIT3D ???
|
||||
# json UNIT3D 6.0.4
|
||||
|
@@ -98,8 +98,8 @@ search:
|
||||
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 (not working)
|
||||
search_area: "{{ if or .Query.IMDBID .Query.DoubanID }}1{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 1 OR, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
@@ -188,4 +188,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.33 2023-01-04
|
||||
# NexusPHP v1.8.4 2023-06-04
|
||||
|
@@ -1,161 +0,0 @@
|
||||
---
|
||||
id: hdtorrentsit
|
||||
name: HDTorrents.it
|
||||
description: "HDTorrents.it is an ITALIAN Private site for TV / MOVIES"
|
||||
language: it-IT
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://hdtorrents.xyz/ # Italian IP address filtering
|
||||
legacylinks:
|
||||
- http://hdtorrents.it/
|
||||
- http://hdtorrents.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 2040, cat: Movies/HD}
|
||||
- {id: 5040, cat: TV/HD}
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: ip_filtering
|
||||
type: info
|
||||
label: "IP Filtering"
|
||||
default: "The <b>404 Not Found</b> error means your IP was not accepted. Check the <a href=\"https://check-host.net/check-report/e5b649bkfa\" target=\"_blank\">Locations report</a>, only those with a Status of <b>OK</b> will be accepted."
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: div.error
|
||||
- selector: h1:contains("404 Not Found")
|
||||
test:
|
||||
path: browse.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
method: post
|
||||
allowEmptyInputs: true
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["[^a-zA-Z0-9]+", "%"]
|
||||
- name: diacritics
|
||||
args: replace
|
||||
- name: re_replace # remove SXXEYY from research
|
||||
args: ["(?i)(S\\d{1,2}E\\d{1,2})", ""]
|
||||
- name: re_replace # remove SXX from research
|
||||
args: ["(?i)(S\\d{1,2})", ""]
|
||||
inputs:
|
||||
ajax: false
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active 1 incldead 2 onlydead 3 gold 4 no seeders
|
||||
incldead: 0
|
||||
|
||||
rows:
|
||||
selector: tbody#highlighted tr
|
||||
|
||||
fields:
|
||||
year:
|
||||
selector: td:nth-child(2) a:nth-child(1)
|
||||
filters:
|
||||
- name: regexp # find torrent year
|
||||
args: (\d{4})
|
||||
_quality: # (BDRip 1080, BDRip 720p etc)
|
||||
selector: td:nth-child(1) a:nth-child(1) img
|
||||
attribute: alt
|
||||
_audio: # ita audio TAG
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: name
|
||||
- name: regexp
|
||||
args: (DTS AC3 ITA|DTS ITA|AC3 ITA)
|
||||
- name: re_replace
|
||||
args: ["ITA", ""]
|
||||
title:
|
||||
selector: td:nth-child(2) a:nth-child(1)
|
||||
filters:
|
||||
- name: re_replace # separate title
|
||||
args: ["(\\s+\\/\\s+|\\/\\s+|\\s+\\/|\\/)(.*)\\s\\(", " ("]
|
||||
- name: re_replace # remove (yyyy) from the title
|
||||
args: ["(\\(\\d{4}\\)?\\s?)", ""]
|
||||
- name: re_replace # remove |
|
||||
args: ["(\\s\\||\\s\\/)", ""]
|
||||
- name: re_replace # Stagione X --> S0X
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{1})\\b|\\bSeason'?s?\\s?(\\d{1})\\b", "S0$1$2"]
|
||||
- name: re_replace # Stagione XX --> SXX
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{2,})\\b|\\bSeason'?s?\\s?(\\d{2,})\\b", "S$1$2"]
|
||||
- name: re_replace # / Episodio [YY-YY --> EYY-YY
|
||||
args: ["(?i)(\\s\\/?\\s?Episodi[o]?)\\s\\[", "E"]
|
||||
- name: re_replace # Episodio 4 to E4
|
||||
args: ["(?i)\\b(?:[\\s\\/\\|]?Episodi[o]?\\s?(\\d+)|Puntata\\s?(\\d+))", "E$1$2"]
|
||||
- name: re_replace # / Completa [episodi YY-YY --> EYY-YY
|
||||
args: ["(?i)(\\s\\/\\sCompleta\\s\\[episodi\\s)", "E"]
|
||||
- name: re_replace # remove di YY] | remove /YY]
|
||||
args: ["(?i)(\\sdi\\s\\d{1,2}|\\/\\d{1,2})\\]", " "]
|
||||
- name: re_replace # remove various
|
||||
args: ["(?i)(Serie completa|Completa|\\[in pausa\\])", ""]
|
||||
- name: append
|
||||
args: " ({{ .Result.year }}) [{{ .Result._quality }} - {{ .Result._audio }} ITA]"
|
||||
- name: re_replace # replace multiple spaces
|
||||
args: ["[ ]{2,}", " "]
|
||||
details:
|
||||
selector: td:nth-child(2) a:nth-child(1)
|
||||
attribute: href
|
||||
poster:
|
||||
selector: td:nth-child(2)[onmousemove]
|
||||
attribute: onmousemove
|
||||
filters:
|
||||
- name: regexp
|
||||
args: ".*\\(.*,.*,.*,'(.*?)'\\)"
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(3)
|
||||
seeders:
|
||||
selector: td:nth-child(4)
|
||||
optional: true
|
||||
default: 1
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(\\d*) \\(\\+\\d*\\)\n? \\| (\\d*) \\(\\+\\d*\\)", "$1"]
|
||||
leechers:
|
||||
selector: td:nth-child(4)
|
||||
optional: true
|
||||
default: 1
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(\\d*) \\(\\+\\d*\\)\n? \\| (\\d*) \\(\\+\\d*\\)", "$2"]
|
||||
date:
|
||||
selector: td:nth-child(2) i
|
||||
filters:
|
||||
- name: append
|
||||
args: " +02:00" # EET
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
category:
|
||||
case:
|
||||
"a[href^=\"details.php\"]:contains(\"Stagione\")": 5040 # TV/HD
|
||||
"*": 2040 # default to Movies/HD
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine tbd
|
@@ -1,193 +0,0 @@
|
||||
---
|
||||
id: hellashut
|
||||
name: HellasHut
|
||||
description: "HellasHut is a GREEK Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: el-GR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
testlinktorrent: false
|
||||
links:
|
||||
- https://hellashut.de/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 28, cat: TV/Anime, desc: "Anime/Cartoon HD"}
|
||||
- {id: 47, cat: TV/Anime, desc: "Anime/Cartoon HDTV"}
|
||||
- {id: 48, cat: TV/Anime, desc: "Anime/Cartoon SD"}
|
||||
- {id: 50, cat: TV/Anime, desc: "Anime/Cartoon SD Emb"}
|
||||
- {id: 51, cat: TV/Anime, desc: "Anime/Cartoon TV"}
|
||||
- {id: 77, cat: PC, desc: "Applications DOS"}
|
||||
- {id: 20, cat: PC, desc: "Applications Linux"}
|
||||
- {id: 19, cat: PC/Mac, desc: "Applications MAC"}
|
||||
- {id: 68, cat: PC, desc: "Applications OS2 WARP"}
|
||||
- {id: 21, cat: PC, desc: "Applications Other"}
|
||||
- {id: 18, cat: PC/0day, desc: "Applications Windows"}
|
||||
- {id: 52, cat: Books, desc: "Books/Magazines All"}
|
||||
- {id: 9, cat: TV/Documentary, desc: "Documentaries All"}
|
||||
- {id: 53, cat: TV/Documentary, desc: "Documentaries Greek"}
|
||||
- {id: 54, cat: TV/Documentary, desc: "Documentaries HD"}
|
||||
- {id: 55, cat: Movies/DVD, desc: "DVD-R All"}
|
||||
- {id: 17, cat: Console/Other, desc: "Games Other"}
|
||||
- {id: 11, cat: Console/PS4, desc: "Games PSX"}
|
||||
- {id: 10, cat: PC/Games, desc: "Games Windows"}
|
||||
- {id: 13, cat: Console/XBox, desc: "Games Xbox"}
|
||||
- {id: 56, cat: Other, desc: "Miscellaneous All"}
|
||||
- {id: 57, cat: PC/Mobile-Other, desc: "Mobile All"}
|
||||
- {id: 1, cat: Movies/3D, desc: "Movies 3D"}
|
||||
- {id: 2, cat: Movies/UHD, desc: "Movies 4K"}
|
||||
- {id: 42, cat: Movies/BluRay, desc: "Movies BluRay"}
|
||||
- {id: 58, cat: Movies/DVD, desc: "Movies DVD"}
|
||||
- {id: 4, cat: Movies/HD, desc: "Movies HD"}
|
||||
- {id: 69, cat: Movies/HD, desc: "Movies HD Packs"}
|
||||
- {id: 3, cat: Movies/SD, desc: "Movies SD"}
|
||||
- {id: 67, cat: Movies/SD, desc: "Movies SD Packs"}
|
||||
- {id: 71, cat: Audio, desc: "Music CDA"}
|
||||
- {id: 59, cat: Audio, desc: "Music Discographies"}
|
||||
- {id: 23, cat: Audio/Lossless, desc: "Music FLAC"}
|
||||
- {id: 22, cat: Audio/MP3, desc: "Music MP3"}
|
||||
- {id: 25, cat: Audio/Video, desc: "Music Video"}
|
||||
- {id: 75, cat: Movies/HD, desc: "NO IN SUBS Movies HD"}
|
||||
- {id: 76, cat: Movies/UHD, desc: "NO SUBS IN Movies 4K"}
|
||||
- {id: 35, cat: TV/Sport, desc: "Sports HD"}
|
||||
- {id: 34, cat: TV/Sport, desc: "Sports SD"}
|
||||
- {id: 5, cat: TV, desc: "TV Greek Movies"}
|
||||
- {id: 6, cat: TV, desc: "TV Greek Series"}
|
||||
- {id: 7, cat: TV, desc: "TV Greek Series Packs"}
|
||||
- {id: 60, cat: TV, desc: "TV Greek Shows"}
|
||||
- {id: 41, cat: TV/HD, desc: "TV HD"}
|
||||
- {id: 61, cat: TV, desc: "TV Series"}
|
||||
- {id: 62, cat: TV, desc: "TV Series Emb"}
|
||||
- {id: 63, cat: TV, desc: "TV Series Emb Packs"}
|
||||
- {id: 64, cat: TV/HD, desc: "TV Series HD"}
|
||||
- {id: 65, cat: TV/HD, desc: "TV Series HD Packs"}
|
||||
- {id: 66, cat: TV, desc: "TV Series Packs"}
|
||||
- {id: 73, cat: Movies/BluRay, desc: "UNTOUCHED BluRay"}
|
||||
- {id: 72, cat: Movies/DVD, desc: "UNTOUCHED DVD"}
|
||||
|
||||
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
|
||||
|
||||
login:
|
||||
path: account-login.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
returnto: /
|
||||
error:
|
||||
- selector: td.embedded:contains("Access Denied")
|
||||
test:
|
||||
path: /
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="], a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hellashut.de/torrents-search.php?c52=1&search=&cat=0&incldead=1&advanced=1&lang=0&blah=0&freeleech=0&sort=id&order=desc
|
||||
- path: torrents-search.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 all, 1 notfree, 2 onlyfree
|
||||
freeleech: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 all, 1 English, 2 French, 3 German, 4 Italian, 5 Japanese, 6 Spanish, 7 Russian, 8 Greek
|
||||
lang: 0
|
||||
# 0 name, 1 descr, 2 uploader
|
||||
blah: "{{ if .Query.IMDBID }}1{{ else }}0{{ end }}"
|
||||
# 0 all
|
||||
team: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
# does not return imdb link in results
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner tr.t-row
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="cat="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: 56
|
||||
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
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["&hit=1", ""] # avoid redirect
|
||||
size:
|
||||
selector: td:nth-last-child(7)
|
||||
date:
|
||||
selector: td:nth-last-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm:ss"
|
||||
grabs:
|
||||
selector: td:nth-last-child(5)
|
||||
seeders:
|
||||
selector: td:nth-last-child(4)
|
||||
leechers:
|
||||
selector: td:nth-last-child(3)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="pic/freedownload.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 10 day (as seconds = 10 x 24 x 60 x 60)
|
||||
text: 864000
|
||||
# TorrentTrader v2-svn
|
@@ -169,4 +169,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.34 2023-01-16
|
||||
# NexusPHP v1.7.39 2023-05-15
|
||||
|
@@ -29,7 +29,7 @@ caps:
|
||||
- {id: 127, cat: Movies, desc: "Fuer Unsere Kleinsten"}
|
||||
- {id: 121, cat: PC/Mobile-Other, desc: "Handy-Stuff"}
|
||||
- {id: 124, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 140, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 141, cat: Audio, desc: "Musik - Diskografie"}
|
||||
- {id: 122, cat: Audio/Audiobook, desc: "Musik - Hoerbuch"}
|
||||
- {id: 123, cat: Audio, desc: "Musik - Mixe"}
|
||||
- {id: 133, cat: Audio/MP3, desc: "Musik - MP3"}
|
||||
|
@@ -21,9 +21,9 @@ caps:
|
||||
- {id: 409, cat: Other, desc: "Misc/其他", default: true}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐", default: true}
|
||||
# special
|
||||
- {id: 410, cat: Movies, desc: "Video/视频资料", default: true}
|
||||
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: true}
|
||||
- {id: 412, cat: Other, desc: "Other/其他资料", default: true}
|
||||
- {id: 410, cat: Movies, desc: "Video/视频资料", default: false}
|
||||
- {id: 411, cat: Audio, desc: "Audio/音频资料", default: false}
|
||||
- {id: 412, cat: Other, desc: "Other/其他资料", default: false}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -96,7 +96,7 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
categories: [401, 402, 403, 404, 405, 406, 407, 408, 409]
|
||||
categories: ["!", 410, 411, 412]
|
||||
- path: special.php
|
||||
categories: [410, 411, 412]
|
||||
inputs:
|
||||
@@ -189,4 +189,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.1 2023-04-21
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
158
src/Jackett.Common/Definitions/infire.yml
Normal file
158
src/Jackett.Common/Definitions/infire.yml
Normal file
@@ -0,0 +1,158 @@
|
||||
---
|
||||
id: infire
|
||||
name: Infire
|
||||
description: "Infire is a SLOVENIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: sl-SI
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://infire.si/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 15, cat: Movies/HD, desc: "HD 720p"}
|
||||
- {id: 16, cat: Movies/HD, desc: "HD 1080p"}
|
||||
- {id: 17, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 18, cat: TV/Documentary, desc: "Dokumentarci"}
|
||||
- {id: 19, cat: Movies/DVD, desc: "DVD/R5"}
|
||||
- {id: 20, cat: Movies/WEB-DL, desc: "WEB/Rip"}
|
||||
- {id: 21, cat: Movies/WEB-DL, desc: "WEB/Download"}
|
||||
- {id: 14, cat: Movies/SD, desc: "XviD"}
|
||||
- {id: 32, cat: XXX, desc: "XXX"}
|
||||
- {id: 50, cat: Movies/BluRay, desc: "BluRay 1080p"}
|
||||
- {id: 49, cat: Movies/UHD, desc: "HD 2160p"}
|
||||
- {id: 23, cat: TV, desc: "TV"}
|
||||
- {id: 24, cat: TV/HD, desc: "HD TV"}
|
||||
- {id: 26, cat: TV/Anime, desc: "Animirano"}
|
||||
- {id: 28, cat: PC/Games, desc: "PC"}
|
||||
- {id: 29, cat: PC/ISO, desc: "PC ISO"}
|
||||
- {id: 30, cat: Console/Other, desc: "GBA"}
|
||||
- {id: 31, cat: Console/PS3, desc: "PS2"}
|
||||
- {id: 33, cat: Audio, desc: "Glasba"}
|
||||
- {id: 34, cat: Console/PS3, desc: "PS3"}
|
||||
- {id: 35, cat: Console/XBox, desc: "Xbox"}
|
||||
- {id: 36, cat: Console/PSP, desc: "PSP"}
|
||||
- {id: 37, cat: TV/Sport, desc: "Sport"}
|
||||
- {id: 38, cat: PC, desc: "Programi"}
|
||||
- {id: 39, cat: Books/EBook, desc: "eKnjige"}
|
||||
- {id: 40, cat: Other, desc: "Slike"}
|
||||
- {id: 41, cat: Audio/Audiobook, desc: "AudioBook"}
|
||||
- {id: 42, cat: Audio/Video, desc: "Music DVD"}
|
||||
- {id: 43, cat: TV/Other, desc: "Videospoti"}
|
||||
- {id: 44, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 45, cat: PC/Mobile-iOS, desc: "iOS"}
|
||||
- {id: 46, cat: PC/Mac, desc: "Mac"}
|
||||
- {id: 47, cat: PC, desc: "Linux"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: data
|
||||
options:
|
||||
data: created
|
||||
seeds: seeders
|
||||
size: size
|
||||
filename: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: DESC
|
||||
options:
|
||||
DESC: desc
|
||||
ASC: asc
|
||||
|
||||
login:
|
||||
method: post
|
||||
path: login.php
|
||||
inputs:
|
||||
uid: "{{ .Config.username }}"
|
||||
pwd: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: font[color="#FF0000"]
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
# does not support multi categories, defaulting to all.
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 all, 1 active, 2 dead
|
||||
active: 0
|
||||
# 0 all, 1 classic, 2 silver, 3 gold, 4 gold & silver
|
||||
gold: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.lista > tbody > tr.a
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="torrents.php?category="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: category
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img
|
||||
attribute: src
|
||||
size:
|
||||
selector: td:nth-child(7)
|
||||
date:
|
||||
selector: td:nth-child(6)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "dd/MM/yyyy HH:mm:ss"
|
||||
seeders:
|
||||
selector: td:nth-child(9)
|
||||
leechers:
|
||||
selector: td:nth-child(10)
|
||||
grabs:
|
||||
selector: td:nth-child(11)
|
||||
genre:
|
||||
selector: td:nth-child(2) span
|
||||
description:
|
||||
text: "{{ .Result.genre }}"
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/gold.png"]: 0
|
||||
img[src="images/silver.png"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 30 hours (as seconds = 30 x 60 x 60)
|
||||
text: 108000
|
||||
# BtiTracker 1.5.8
|
177
src/Jackett.Common/Definitions/itatorrents.yml
Normal file
177
src/Jackett.Common/Definitions/itatorrents.yml
Normal file
@@ -0,0 +1,177 @@
|
||||
---
|
||||
id: itatorrents
|
||||
name: ItaTorrents
|
||||
description: "ItaTorrents is an ITALIAN Private tracker for MOVIES / TV / GENERAL"
|
||||
language: it-IT
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://itatorrents.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Film"}
|
||||
- {id: 2, cat: TV, desc: "Serie TV"}
|
||||
- {id: 3, cat: Audio, desc: "Musica"}
|
||||
- {id: 4, cat: Console, desc: "Giochi"}
|
||||
- {id: 5, cat: PC, desc: "Applicazioni"}
|
||||
- {id: 6, cat: Books/Mags, desc: "Edicola"}
|
||||
- {id: 7, cat: Books/EBook, desc: "E-Book"}
|
||||
- {id: 8, cat: Audio/Audiobook, desc: "AudioLibri"}
|
||||
- {id: 12, cat: Other, desc: "Corsi"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-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://itatorrents.xyz/\" target=\"_blank\">ItaTorrents</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
$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: 100
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
- name: re_replace # S01 to Stagione 1
|
||||
args: ["(?i)\\bS0*(\\d+)\\b", "Stagione $1"]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: category_id
|
||||
title:
|
||||
selector: name
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
- name: re_replace # Stagione X --> S0X
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{1})\\b|\\bSeason'?s?\\s?(\\d{1})\\b", "S0$1$2"]
|
||||
- name: re_replace # Stagione XX --> SXX
|
||||
args: ["(?i)\\bStagion[ei]\\s?(\\d{2,})\\b|\\bSeason'?s?\\s?(\\d{2,})\\b", "S$1$2"]
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
infohash:
|
||||
selector: info_hash
|
||||
poster:
|
||||
selector: meta.poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
genre:
|
||||
selector: meta.genres
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(televisione film)", "televisione_film"]
|
||||
- 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 0=false, 1=true
|
||||
selector: double_upload
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
minimumseedtime:
|
||||
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
||||
text: 604800
|
||||
# json UNIT3D 6.5.0
|
@@ -61,8 +61,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -70,15 +68,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -90,7 +90,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -99,8 +98,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
|
@@ -179,4 +179,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.7.26 2022-09-15
|
||||
# NexusPHP v1.8.2 2023-05-08
|
||||
|
@@ -2,7 +2,7 @@
|
||||
id: korsar
|
||||
name: Korsar
|
||||
description: "Korsar is a RUSSIAN Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: ru-ru
|
||||
language: ru-RU
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
|
@@ -9,8 +9,6 @@ links:
|
||||
- https://krazyzone.net/
|
||||
legacylinks:
|
||||
- http://krazyzone.net/
|
||||
certificates:
|
||||
- 867fcd460bed7ded541674414267a54cc13f6d02 # selfsigned
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -112,11 +110,6 @@ login:
|
||||
path: index.php
|
||||
selector: a[href="account-logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: td a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://krazyzone.net/torrents-search.php?incldead=1&freeleech=0&inclrosub=0&sort=id&order=desc
|
||||
@@ -135,7 +128,7 @@ search:
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner > tbody > tr
|
||||
selector: table.ttable_headinner > tbody > tr:has(a[href^="download.php?id="])
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
@@ -143,6 +136,8 @@ search:
|
||||
category:
|
||||
selector: a[href^="torrents.php?cat="]
|
||||
attribute: href
|
||||
optional: true
|
||||
default: 95
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
@@ -156,7 +151,7 @@ search:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="torrents-details.php?id="]
|
||||
@@ -185,23 +180,23 @@ search:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
size:
|
||||
selector: td:nth-child(3)
|
||||
selector: td:nth-child(4)
|
||||
date:
|
||||
# 24.Jul<br>2022<br>07:47
|
||||
selector: td:nth-child(4)
|
||||
selector: td:nth-child(5)
|
||||
# auto adjusted by site account profile
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "d.MMMyyyyHH:mm"
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
grabs:
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="images/free.png"]: 0
|
||||
img[src="images/free.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
|
199
src/Jackett.Common/Definitions/kufei.yml
Normal file
199
src/Jackett.Common/Definitions/kufei.yml
Normal file
@@ -0,0 +1,199 @@
|
||||
---
|
||||
id: kufei
|
||||
name: Kufei
|
||||
description: "Kufei (库非) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: zh-CN
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://kufei.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 410, cat: Console, desc: "Games/游戏"}
|
||||
- {id: 411, cat: Books, desc: "E-Books/电子书"}
|
||||
- {id: 408, cat: Audio, desc: "Music/音乐"}
|
||||
- {id: 412, cat: PC, desc: "Software/软件"}
|
||||
- {id: 415, cat: TV, desc: "Drama/戏剧"}
|
||||
- {id: 416, cat: Audio/Audiobook, desc: "Audio Books/有声读物"}
|
||||
- {id: 409, cat: Other, desc: "Others/其他"}
|
||||
- {id: 413, cat: Other, desc: "Education/教育"}
|
||||
- {id: 414, cat: Audio/Video, desc: "Concert/演唱会"}
|
||||
- {id: 407, cat: TV/Sport, desc: "Sports/体育"}
|
||||
- {id: 406, cat: Audio/Video, desc: "Music Videos/音乐、视频"}
|
||||
- {id: 403, cat: TV, desc: "TV Shows/综艺"}
|
||||
- {id: 402, cat: TV, desc: "TV Series/电视剧"}
|
||||
- {id: 405, cat: TV/Anime, desc: "Animations/动画、动漫"}
|
||||
- {id: 404, cat: TV/Documentary, desc: "Documentaries/纪录片"}
|
||||
- {id: 401, cat: Movies, desc: "Movies/电影"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, doubanid]
|
||||
movie-search: [q, imdbid, doubanid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the Kufei Web Site. Otherwise just leave it empty."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
- name: info_tpp
|
||||
type: info
|
||||
label: Results Per Page
|
||||
default: For best results, change the <b>Torrents per page:</b> setting to <b>100</b> on your account profile.
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
logout: ""
|
||||
securelogin: ""
|
||||
ssl: yes
|
||||
trackerssl: yes
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: torrents.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }} {{ else }}{{ .Keywords }}{{ end }}{{ if .Query.DoubanID }}{{ .Query.DoubanID }}{{ else }}{{ end }}"
|
||||
# 0 incldead, 1 active, 2 dead
|
||||
incldead: 0
|
||||
# 0 all, 1 normal, 2 free, 3 2x, 4 2xfree, 5 50%, 6 2x50%, 7 30%
|
||||
spstate: "{{ if .Config.freeleech }}2{{ else }}0{{ end }}"
|
||||
# 0 title, 1 descr, 3 uploader, 4 imdburl
|
||||
search_area: "{{ if .Query.IMDBID }}4{{ else }}{{ end }}{{ if .Query.DoubanID }}1{{ else }}{{ end }}{{ if or .Query.IMDBID .Query.DoubanID }}{{ else }}0{{ end }}"
|
||||
# 0 AND, 2 exact
|
||||
search_mode: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
notnewword: 1
|
||||
|
||||
rows:
|
||||
selector: table.torrents > tbody > tr:has(table.torrentname)
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title_default:
|
||||
selector: a[href^="details.php?id="]
|
||||
title:
|
||||
selector: a[title][href^="details.php?id="]
|
||||
attribute: title
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[data-src]
|
||||
attribute: data-src
|
||||
imdbid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
doubanid:
|
||||
# site currently only has a badge and rating, the id is not present. just in case a future update.
|
||||
selector: a[href*="movie.douban.com/subject/"]
|
||||
attribute: href
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
attribute: title
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd HH:mm:ss zzz"
|
||||
date_added:
|
||||
# time added
|
||||
selector: td.rowfollow:nth-child(4):not(:has(span))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +08:00" # CST
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
date:
|
||||
text: "{{ if or .Result.date_elapsed .Result.date_added }}{{ or .Result.date_elapsed .Result.date_added }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td.rowfollow:nth-child(5)
|
||||
seeders:
|
||||
selector: td.rowfollow:nth-child(6)
|
||||
leechers:
|
||||
selector: td.rowfollow:nth-child(7)
|
||||
grabs:
|
||||
selector: td.rowfollow:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img.pro_free: 0
|
||||
img.pro_free2up: 0
|
||||
img.pro_50pctdown: 0.5
|
||||
img.pro_50pctdown2up: 0.5
|
||||
img.pro_30pctdown: 0.3
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img.pro_50pctdown2up: 2
|
||||
img.pro_free2up: 2
|
||||
img.pro_2up: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.8.4 2023-06-13
|
@@ -121,7 +121,7 @@ search:
|
||||
# https://www.last-torrents.org/externalid?searchex=tt5834760&search_by=imdbid
|
||||
# cannot support imdbid or tmdbid searches while using path category filters
|
||||
- path: browse.php
|
||||
categories: [1, 2, 5, 6, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 42, 43, 44, 49, 51, 54, 55, 56, 57, 58, 59, 60, 61, 62, 81, 82]
|
||||
categories: ["!", 27, 60]
|
||||
- path: browseadult.php
|
||||
categories: [27, 60]
|
||||
|
||||
|
@@ -65,8 +65,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -74,15 +72,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -94,7 +94,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -103,8 +102,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -131,6 +131,7 @@ login:
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
logintype: yes
|
||||
error:
|
||||
- selector: table:contains("An error has occured!")
|
||||
test:
|
||||
@@ -207,6 +208,8 @@ search:
|
||||
optional: true
|
||||
remove: a, b, img, span
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["|", ""]
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd hh:mm tt"
|
||||
date:
|
||||
|
@@ -6,8 +6,9 @@ language: fr-FR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://lesaloonv2-0.net/
|
||||
- https://lesaloonv2-0.xyz/
|
||||
legacylinks:
|
||||
- https://lesaloonv2-0.net/
|
||||
- http://lesaloonv2-0.net/ # site forces https
|
||||
|
||||
caps:
|
||||
@@ -121,7 +122,7 @@ settings:
|
||||
default: false
|
||||
|
||||
login:
|
||||
# https://lesaloonv2-0.net/yupy_login.php
|
||||
# https://lesaloonv2-0.xyz/yupy_login.php
|
||||
path: yupy_login.php
|
||||
method: form
|
||||
form: form[action^="login"]
|
||||
@@ -137,7 +138,7 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# http://lesaloonv2-0.net/index.php?page=torrents&search=supernatural+s13e20&parentcategory=0&category=0&genre=0&options=0&active=0
|
||||
# http://lesaloonv2-0.xyz/index.php?page=torrents&search=supernatural+s13e20&parentcategory=0&category=0&genre=0&options=0&active=0
|
||||
- path: index.php
|
||||
inputs:
|
||||
page: torrents
|
||||
|
167
src/Jackett.Common/Definitions/lesbians4u.yml
Normal file
167
src/Jackett.Common/Definitions/lesbians4u.yml
Normal file
@@ -0,0 +1,167 @@
|
||||
---
|
||||
id: lesbians4u
|
||||
name: Lesbians4u
|
||||
description: "Lesbians4u is a Private Torrent Tracker for 3X"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- http://lesbians4u.org/ # does not support https, CA invalid
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 7, cat: XXX, desc: "Amateur"}
|
||||
- {id: 12, cat: XXX, desc: "Anime &Hentai &JAV"}
|
||||
- {id: 17, cat: XXX, desc: "Appz"}
|
||||
- {id: 3, cat: XXX, desc: "Classics"}
|
||||
- {id: 6, cat: XXX, desc: "Clips &Siterips"}
|
||||
- {id: 16, cat: XXX, desc: "DVD"}
|
||||
- {id: 15, cat: XXX, desc: "EX-V.I.P. Torrents"}
|
||||
- {id: 9, cat: XXX, desc: "Fetish"}
|
||||
- {id: 8, cat: XXX, desc: "Games"}
|
||||
- {id: 11, cat: XXX, desc: "Misc."}
|
||||
- {id: 10, cat: XXX, desc: "Movie"}
|
||||
- {id: 5, cat: XXX, desc: "Solo"}
|
||||
- {id: 14, cat: XXX, desc: "V.I.P."}
|
||||
- {id: 13, cat: XXX, desc: "Watersport"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: added
|
||||
options:
|
||||
added: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
logout: ""
|
||||
error:
|
||||
- selector: table:has(a[href*="login.php?error=1"])
|
||||
message:
|
||||
text: "ERROR: Incorrect username!"
|
||||
- selector: table:has(a[href*="login.php?error=4"])
|
||||
message:
|
||||
text: "ERROR: Incorrect password!"
|
||||
- selector: table:has(a[href*="login.php?error="])
|
||||
message:
|
||||
text: "ERROR: Something went wrong during login!"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href*="/logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ re_replace .DownloadUri.PathAndQuery \".*torrent-details-(\\d+).*\" \"$1\"}}"
|
||||
selectors:
|
||||
- selector: a[href*="download-torrent-"]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
|
||||
keywordsfilters:
|
||||
# prefix and postfix percent wildcard as well as replacing spaces between words
|
||||
- name: re_replace
|
||||
args: ["\\W+", "%"]
|
||||
- name: re_replace
|
||||
args: ["^(.+)$", "%$1%"]
|
||||
|
||||
inputs:
|
||||
do: search
|
||||
keywords: "{{ .Keywords }}"
|
||||
# t_name, t_description, t_both, t_uploader, t_genre
|
||||
search_type: t_name
|
||||
# does not support multi category searching so defaulting to all.
|
||||
category: 0
|
||||
include_dead_torrents: yes
|
||||
sort: "{{ if .Config.freeleech }}free{{ else }}{{ .Config.sort }}{{ end }}"
|
||||
order: "{{ if .Config.freeleech }}asc{{ else }}{{ .Config.type }}{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: "table.sortable tr:has(a[href*=\"/download-torrent-\"]){{ if .Config.freeleech }}:has(img[src$=\"/freedownload.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href*="torrent-category-"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: regexp
|
||||
args: torrent-category-(\d+)
|
||||
title_default:
|
||||
# is often abbreviated
|
||||
selector: a[href*="torrent-details-"]
|
||||
title:
|
||||
# usually longer than details title
|
||||
selector: div[id^="port-content-"] div
|
||||
optional: true
|
||||
default: "{{ .Result.title_default }}"
|
||||
details:
|
||||
selector: a[href*="torrent-details-"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="torrent-details-"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: div[id^="port-content-"] img
|
||||
attribute: src
|
||||
date:
|
||||
selector: td:nth-child(2) > div:last-child
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d{2}-\d{2}-\d{4} \d{2}:\d{2})
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "dd-MM-yyyy HH:mm zzz"
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(6)
|
||||
seeders:
|
||||
selector: td:nth-child(7)
|
||||
leechers:
|
||||
selector: td:nth-child(8)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src$="/freedownload.gif"]: 0
|
||||
img[src$="/silverdownload.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
img[src$="/x2.gif"]: 2
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# TS Special Edition v.7.3
|
@@ -1,172 +0,0 @@
|
||||
---
|
||||
id: lightning-tor
|
||||
name: Lightning-Tor
|
||||
description: "Lightning-Tor is a DUTCH Semi-Private Torrent Tracker for MOVIES / TV / GENERAL"
|
||||
language: nl-NL
|
||||
type: semi-private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://lightning-tor.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# the search pull down cats disagrees with the prior category count links, so merged the two lists, with count overriding pull
|
||||
- {id: 2, cat: Movies/DVD, desc: "DVD Retail"}
|
||||
- {id: 17, cat: Movies/Other, desc: "DVD Promo/R5"}
|
||||
- {id: 3, cat: Audio/Video, desc: "DVD Muziek"}
|
||||
- {id: 4, cat: Movies/SD, desc: " DVD Cam"}
|
||||
- {id: 18, cat: Movies/Other, desc: "DVD Kinderen"}
|
||||
- {id: 6, cat: TV, desc: "Tv Serie"}
|
||||
- {id: 19, cat: XXX/DVD, desc: "DVD XXX"}
|
||||
- {id: 20, cat: TV/Documentary, desc: "Docomentaire"}
|
||||
- {id: 45, cat: Audio/Video, desc: "Cabaret Div."}
|
||||
- {id: 9, cat: PC/Games, desc: "Spelletjes Pc"}
|
||||
- {id: 10, cat: Console/NDS, desc: "Ps2/NDS"}
|
||||
- {id: 11, cat: Console/XBox, desc: "XBoX"}
|
||||
- {id: 22, cat: Console/Wii, desc: "Wii"}
|
||||
- {id: 8, cat: Audio, desc: "Muziek Album"}
|
||||
- {id: 23, cat: Audio/Other, desc: "Muziek Diversen"}
|
||||
- {id: 1, cat: Other, desc: "Kinderen Diversen"}
|
||||
- {id: 13, cat: Other, desc: "Afbeeldingen"}
|
||||
- {id: 14, cat: PC/Mobile-Other, desc: "GSM/Navigatie"}
|
||||
- {id: 7, cat: PC, desc: "Software PC"}
|
||||
- {id: 12, cat: PC/0day, desc: "Microsoft"}
|
||||
- {id: 21, cat: PC/Mobile-Other, desc: "Software PDA"}
|
||||
- {id: 5, cat: Movies/SD, desc: "Xvid Film"}
|
||||
- {id: 15, cat: XXX/SD, desc: "Xvid XXX"}
|
||||
- {id: 24, cat: Other, desc: "Xvid Diversen"}
|
||||
- {id: 16, cat: Other/Misc, desc: "Overigen"}
|
||||
- {id: 50, cat: Books, desc: "E-books"}
|
||||
- {id: 48, cat: Movies/HD, desc: "movies 264"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: thankyou
|
||||
type: text
|
||||
label: Thank You Comment
|
||||
- name: info
|
||||
type: info
|
||||
label: Thank you comment
|
||||
default: This site requires you to leave a Thank You comment before you can download. Enter your personalised comment above.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: table.main:contains("Aanmelden mislukt")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
before:
|
||||
# https://lightning-tor.org/comment.php?action=add&tid=166386
|
||||
path: comment.php
|
||||
method: post
|
||||
inputs:
|
||||
action: add
|
||||
tid: "{{ .DownloadUri.Query.id }}"
|
||||
text: "{{ .Config.thankyou }}"
|
||||
selectors:
|
||||
- selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
incldead: 1
|
||||
# does not support imdbid search and does not return imdb link in results
|
||||
keywordsfilters:
|
||||
- name: re_replace # S01E02 to 1 2
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\s*E0*(\\d{1,2})\\b", "$1 $2"]
|
||||
- name: re_replace # S01 to 1
|
||||
args: ["(?i)\\bS0*(\\d{1,2})\\b", "$1"]
|
||||
|
||||
rows:
|
||||
selector: table.embedded[width="99%"][border="1"][cellspacing="0"][cellpadding="0"]
|
||||
filters:
|
||||
- name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
filters:
|
||||
- name: re_replace
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "S$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(seizoen\\s*)(\\d{1,2})", "S$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})\\s*(tot|t\/m|&|\\+)\\s*(\\d{1,2})", "E$2-$4"]
|
||||
- name: re_replace
|
||||
args: ["(?i)(afl.\\s*|aflevering\\s*|ep.\\s*)(\\d{1,2})", "E$2"]
|
||||
- name: re_replace
|
||||
args: ["(?i)compleet", "Complete"]
|
||||
details:
|
||||
# using the download link because the details link has an error
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["download", "details"]
|
||||
download:
|
||||
# need to say thanks first
|
||||
text: "{{ .Result.details }}"
|
||||
size:
|
||||
selector: a[href^="details_bestanden.php?torrent_id="]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(.+?) in"
|
||||
files:
|
||||
selector: a[href^="details_bestanden.php?torrent_id="]
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "in (\\d+) bestan"
|
||||
grabs:
|
||||
selector: table table tr:nth-child(2) td:nth-child(1)
|
||||
date:
|
||||
selector: table tr:nth-child(3) td:nth-child(7)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: (\d+)
|
||||
- name: append
|
||||
args: " hours ago"
|
||||
- name: timeago
|
||||
seeders:
|
||||
selector: table tr:nth-child(3) td:nth-child(5) font b
|
||||
optional: true
|
||||
default: 0
|
||||
leechers:
|
||||
selector: table tr:nth-child(3) td:nth-child(5) font b:nth-child(2)
|
||||
optional: true
|
||||
default: 0
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# engine n/a
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
# changes to this indexer should also be made to limetorrentsclone
|
||||
links:
|
||||
- https://www.limetorrents.lol/
|
||||
- https://limetorrents.unblockit.click/
|
||||
- https://limetorrents.unblockit.mov/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.mrunblock.life/
|
||||
- https://limetorrents.nocensor.click/
|
||||
@@ -37,6 +37,8 @@ legacylinks:
|
||||
- https://limetorrents.unblockit.bio/
|
||||
- https://limetorrents.unblockit.boo/
|
||||
- https://limetorrents.mrunblock.guru/
|
||||
- https://limetorrents.unblockit.click/
|
||||
- https://limetorrents.unblockit.asia/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -126,7 +128,7 @@ search:
|
||||
default: "{{ if .Result.category_is_tv_show }}TV shows{{ else }}Other{{ end }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: " in (.+?)$"
|
||||
args: " in (.+?)[.]?$"
|
||||
details:
|
||||
selector: div.tt-name > a[href^="/"]
|
||||
attribute: href
|
||||
|
@@ -98,7 +98,7 @@ search:
|
||||
default: "{{ if .Result.category_is_tv_show }}TV shows{{ else }}Other{{ end }}"
|
||||
filters:
|
||||
- name: regexp
|
||||
args: " in (.+?)$"
|
||||
args: " in (.+?)[.]?$"
|
||||
details:
|
||||
selector: div.tt-name > a[href^="/"]
|
||||
attribute: href
|
||||
|
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: locadora
|
||||
name: Locadora
|
||||
description: "Locadora is a Brazilian tracker for Movies and TV Shows"
|
||||
description: "Locadora is a BRAZILIAN Private Tracker for MOVIES and TV"
|
||||
language: pt-BR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
@@ -12,15 +12,16 @@ legacylinks:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies}
|
||||
- {id: 2, cat: TV}
|
||||
- {id: 6, cat: TV/Anime}
|
||||
- {id: 7, cat: Movies, desc: "Concerts"}
|
||||
- {id: 1, cat: Movies, desc: "Filmes"}
|
||||
- {id: 2, cat: TV, desc: "Series"}
|
||||
- {id: 6, cat: TV/Anime, desc: "Animes"}
|
||||
- {id: 7, cat: Audio/Video, desc: "Shows"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
@@ -54,8 +55,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -63,15 +62,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -83,7 +84,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -92,8 +92,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -59,8 +59,6 @@ settings:
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
@@ -68,15 +66,17 @@ login:
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v7.0.0)
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L349
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
headers:
|
||||
Authorization: ["Bearer {{ .Config.apikey }}"]
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
@@ -88,7 +88,6 @@ search:
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
@@ -97,8 +96,6 @@ search:
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -82,11 +82,11 @@ login:
|
||||
search:
|
||||
paths:
|
||||
- path: letoltes.php
|
||||
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
|
||||
categories: ["!", 70, 39, 57]
|
||||
inputs:
|
||||
tipus: 1
|
||||
- path: letoltes.php
|
||||
categories: [4, 5, 48, 50, 75, 76, 26, 25, 58, 59, 42, 51, 38, 24, 85, 87, 47, 36, 6, 7, 56, 33, 44, 28, 32, 30, 53, 74, 40, 41, 34, 35, 46]
|
||||
categories: ["!", 70, 39, 57]
|
||||
inputs:
|
||||
tipus: 2
|
||||
- path: xxx.php
|
||||
|
@@ -146,6 +146,7 @@ caps:
|
||||
- {id: 293, cat: Books, desc: "Shipmodeling-Radio controlled models"}
|
||||
- {id: 292, cat: Books, desc: "Shipmodeling-Marine Modelling Magazines"}
|
||||
- {id: 291, cat: Books, desc: "Shipmodeling-Drawings and models of ships (CAD, 3D)"}
|
||||
- {id: 346, cat: Books, desc: "Shipmodeling-Raster drawings (JPG, PDF, TIFF)"}
|
||||
- {id: 290, cat: Books, desc: "Shipmodeling-Reference Material"}
|
||||
- {id: 289, cat: Books, desc: "Shipmodeling-Ships in Bottles"}
|
||||
- {id: 197, cat: Books, desc: "Marine bulletins"}
|
||||
|
159
src/Jackett.Common/Definitions/masters-tb.yml
Normal file
159
src/Jackett.Common/Definitions/masters-tb.yml
Normal file
@@ -0,0 +1,159 @@
|
||||
---
|
||||
id: masters-tb
|
||||
name: Masters-TB
|
||||
description: "Masters-TB is a BULGARIAN Semi-Private Torrent Tracker for 0DAY / GENERAL"
|
||||
language: bg-BG
|
||||
type: semi-private
|
||||
encoding: windows-1251
|
||||
links:
|
||||
- https://masters-tb.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 23, cat: TV/Anime, desc: "Анимации"}
|
||||
- {id: 56, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 53, cat: Books/EBook, desc: "e-Books"}
|
||||
- {id: 17, cat: Console, desc: "Игри/конзоли"}
|
||||
- {id: 4, cat: PC/Games, desc: "Игри/PC ISO"}
|
||||
- {id: 21, cat: PC/Games, desc: "Игри/PC Rip"}
|
||||
- {id: 1, cat: PC/ISO, desc: "Програми/PC ISO"}
|
||||
- {id: 22, cat: PC, desc: "Програми/други"}
|
||||
- {id: 57, cat: TV, desc: "Препоръчано MastersTB"}
|
||||
- {id: 57, cat: Movies, desc: "Препоръчано MastersTB"}
|
||||
- {id: 6, cat: Audio, desc: "Музика"}
|
||||
- {id: 12, cat: Audio/Video, desc: "Музика/Видео"}
|
||||
- {id: 33, cat: Audio/Video, desc: "Музика/DVD-R"}
|
||||
- {id: 52, cat: Audio/Lossless, desc: "Музика/Lossless"}
|
||||
- {id: 35, cat: TV, desc: "Сериали/BoxSet"}
|
||||
- {id: 7, cat: TV, desc: "Сериали/TV"}
|
||||
- {id: 32, cat: Movies, desc: "Филми/БГ"}
|
||||
- {id: 55, cat: Movies, desc: "Филми/Asian"}
|
||||
- {id: 36, cat: Movies, desc: "Филми/BoxSet"}
|
||||
- {id: 28, cat: Movies, desc: "Филми/Руски"}
|
||||
- {id: 34, cat: Movies/DVD, desc: "Филми/Руски DVD-R"}
|
||||
- {id: 20, cat: Movies/DVD, desc: "Филми/DVD-R"}
|
||||
- {id: 37, cat: Movies/HD, desc: "Филми/HD"}
|
||||
- {id: 30, cat: TV/Sport, desc: "Филми/Спорт"}
|
||||
- {id: 19, cat: Movies/SD, desc: "Филми/XviD"}
|
||||
- {id: 29, cat: TV/Documentary, desc: "Филми/Документални"}
|
||||
- {id: 54, cat: TV, desc: "TV Show"}
|
||||
- {id: 2, cat: Other, desc: "Други"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 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>Tоренти на страница:</b> setting to <b>100</b> on your account profile. The default is <i>20</i>.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("failed"))
|
||||
test:
|
||||
path: my.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}cat{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 active, 1 all, 2 dead
|
||||
incldead: 1
|
||||
# 0 name, 1 descr
|
||||
searchrs: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: "table[width=\"65%\"] > tbody > tr[onmouseover]{{ if .Config.freeleech }}:has(img[src=\"pic/freeleech.png\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
optional: true
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: src=([^\s]+)
|
||||
files:
|
||||
selector: td:nth-last-child(8)
|
||||
date:
|
||||
# 2023-05-19<br/>14:10:17
|
||||
selector: td:nth-last-child(6)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +02:00" # EET
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-ddHH:mm:ss zzz"
|
||||
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:
|
||||
img[src="pic/freeleech.png"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# engine tbd
|
@@ -77,6 +77,11 @@ caps:
|
||||
- {id: 96, cat: Books, desc: " |- Українська художня література"}
|
||||
- {id: 95, cat: Books, desc: " |- Зарубіжна художня література"}
|
||||
- {id: 94, cat: Books, desc: " |- Історія, біографістика, спогади"}
|
||||
- {id: 168, cat: PC, desc: "Програмне забезпечення Операційні системи"}
|
||||
- {id: 169, cat: PC, desc: "Програмне забезпечення Системні програми"}
|
||||
- {id: 170, cat: PC, desc: "Програмне забезпечення Офіс, текстові редактори"}
|
||||
- {id: 171, cat: PC, desc: "Програмне забезпечення Аудіо, відео обробка"}
|
||||
- {id: 173, cat: PC, desc: "Програмне забезпечення Операційні системи Інше"}
|
||||
- {id: 23, cat: Movies, desc: "Архів"} # Archive - unlisted
|
||||
|
||||
modes:
|
||||
|
159
src/Jackett.Common/Definitions/mdan.yml
Normal file
159
src/Jackett.Common/Definitions/mdan.yml
Normal file
@@ -0,0 +1,159 @@
|
||||
---
|
||||
id: mdan
|
||||
name: MDAN
|
||||
description: "Mansão dos Animes (MDAN) is a BRAZILIAN Private Torrent Tracker for ANIME"
|
||||
language: pt-BR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://bt.mdan.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 5, cat: TV/Anime, desc: "Animes Completo"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Animes Episódios"}
|
||||
- {id: 2, cat: TV/Anime, desc: "Animes OVAs"}
|
||||
- {id: 3, cat: Movies, desc: "Filmes"}
|
||||
- {id: 6, cat: Movies/Other, desc: "Live"}
|
||||
- {id: 7, cat: Books/Comics, desc: "Mangá"}
|
||||
- {id: 4, cat: Audio, desc: "OST"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: 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 por página (Torrents per Page):</b> setting to <b>100</b> on your Perfil (Profile). The default is <i>30</i>.
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
error:
|
||||
- selector: :contains("incorret")
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
# note: site uses the catsX[]=nn method which cardigann does not support.
|
||||
search: "{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
searchin: title
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 no, 1 yes
|
||||
only_free: "{{ if .Config.freeleech }}1{{else}}{{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table[style^="width"] > tbody > tr:has(a[href^="details.php?id="]), table[style^="width"] > tbody > tr[id^="kdescr"]
|
||||
after: 1
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
# titles are abbreviated :-(
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
_id:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: id
|
||||
download:
|
||||
text: "download.php?torrent={{ .Result._id }}&ssl=1"
|
||||
poster:
|
||||
selector: td:nth-child(9) img
|
||||
attribute: src
|
||||
date_day:
|
||||
# 10:50<br/>Hoje
|
||||
# 13:15<br/>Ontem
|
||||
selector: td:nth-child(7):contains("e")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Hoje", "Today"]
|
||||
- name: replace
|
||||
args: ["Ontem", "Yesterday"]
|
||||
date_year:
|
||||
# 18:55<br/>03-05-2023
|
||||
selector: td:nth-child(7):not(:contains("e"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "HH:mm dd-MM-yyyy"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(6)
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
grabs:
|
||||
selector: td:nth-child(4)
|
||||
seeders:
|
||||
selector: a[href$="seeders"]
|
||||
optional: true
|
||||
default: 0
|
||||
leechers:
|
||||
selector: a[href$="leechers"]
|
||||
optional: true
|
||||
default: 0
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="./pic/free.gif"]: 0
|
||||
img[src="./pic/silver2.gif"]: 0.5
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.4
|
||||
# U-232
|
171
src/Jackett.Common/Definitions/metalguru.yml
Normal file
171
src/Jackett.Common/Definitions/metalguru.yml
Normal file
@@ -0,0 +1,171 @@
|
||||
---
|
||||
id: metalguru
|
||||
name: MetalGuru
|
||||
description: "MetalGuru is a Private Torrent Tracker for General with focus on Music"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://metalguru.me/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 51, cat: Audio/Lossless, desc: "24bit"}
|
||||
- {id: 58, cat: TV/Anime, desc: "Anime"}
|
||||
- {id: 39, cat: PC/Mobile-Other, desc: "Anything Mobile"}
|
||||
- {id: 1, cat: PC, desc: "Applications"}
|
||||
- {id: 2, cat: Books, desc: "Books Ebooks & mags"}
|
||||
- {id: 59, cat: Movies/SD, desc: "Cams"}
|
||||
- {id: 52, cat: Audio, desc: "DJ"}
|
||||
- {id: 53, cat: Audio, desc: "DJ PACKS"}
|
||||
- {id: 46, cat: Books, desc: "Documents"}
|
||||
- {id: 47, cat: Audio/Lossless, desc: "Flac/HD Audio"}
|
||||
- {id: 61, cat: Console, desc: "Games"}
|
||||
- {id: 62, cat: Audio, desc: "Karaoke"}
|
||||
- {id: 45, cat: Other, desc: "Misc"}
|
||||
- {id: 57, cat: Movies, desc: "Movie Packs"}
|
||||
- {id: 10, cat: Movies, desc: "Movies"}
|
||||
- {id: 50, cat: Audio, desc: "MQA"}
|
||||
- {id: 29, cat: Audio, desc: "Music"}
|
||||
- {id: 31, cat: Audio/Video, desc: "Music| Movie/Videos"}
|
||||
- {id: 32, cat: Audio, desc: "Music| Packs"}
|
||||
- {id: 60, cat: TV, desc: "Toons"}
|
||||
- {id: 54, cat: TV, desc: "TV"}
|
||||
- {id: 63, cat: TV, desc: "TV Packs"}
|
||||
- {id: 56, cat: XXX, desc: "XXX"}
|
||||
|
||||
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: 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
|
||||
|
||||
login:
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
submitme: X
|
||||
error:
|
||||
- selector: h2:contains("failed")
|
||||
message:
|
||||
selector: td.colhead2
|
||||
test:
|
||||
path: browse.php
|
||||
selector: a[href*="logout.php?hash_please="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }} {{ else }}{{ end }}{{ .Keywords }}"
|
||||
# title, descr, genre, all
|
||||
searchin: "{{ if .Query.IMDBID }}descr{{else}}title{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead
|
||||
incldead: 1
|
||||
# 0 no, 1 yes
|
||||
only_free: "{{ if .Config.freeleech }}1{{else}}0{{end}}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
# no imdbid in results
|
||||
|
||||
rows:
|
||||
selector: table.table-bordered > tbody > tr:has(a[href^="details.php?id="])
|
||||
# filters:
|
||||
# - name: andmatch
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[href^="details.php?id="]
|
||||
details:
|
||||
selector: a[href^="details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href^="download.php?torrent="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[href^="details.php?id="][onmouseover]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
# onmouseover="Tip('<img src=\'https://metalguru.me/bucket/2023/05/75ad78_theofficialtop40singleschart12-05-2023.jpg\' width=
|
||||
- name: regexp
|
||||
args: src=\\'(.*?)\\'
|
||||
files:
|
||||
selector: td:nth-child(5)
|
||||
date_day:
|
||||
# Today<br/>10:20 AM
|
||||
# Yesterday<br/>08:03 PM
|
||||
selector: td:nth-child(7):contains("day")
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
date_year:
|
||||
# Feb 14 2019<br/>10:20 AM
|
||||
selector: td:nth-child(7):not(:contains("day"))
|
||||
# auto adjusted by site account profile
|
||||
optional: true
|
||||
filters:
|
||||
- name: dateparse
|
||||
args: "MMM d yyyy hh:mm tt"
|
||||
date:
|
||||
text: "{{ if or .Result.date_day .Result.date_year }}{{ or .Result.date_day .Result.date_year }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(8)
|
||||
grabs:
|
||||
selector: td:nth-child(9)
|
||||
seeders:
|
||||
text: 1
|
||||
leechers:
|
||||
text: 1
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
a.infofree: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 48h freeleech (as seconds = 48 x 60 x 60)
|
||||
# 36h notfree (as seconds = 36 x 60 x 60)
|
||||
case:
|
||||
a.infofree: 172800
|
||||
"*": 129600
|
||||
# U-232 v5
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user