Compare commits

...

75 Commits

Author SHA1 Message Date
Garfield69
c2ff657272 add DesiReleasers an Indian private tracker. 2019-03-25 04:51:23 +13:00
Fippsy
0d3c29df4f Add world-of-tomorrow a private German tracker. (#4951) 2019-03-25 03:39:11 +13:00
Fippsy
8d195f3c8e add das-unerwartete a private German tracker (#4950) 2019-03-25 03:29:55 +13:00
flightlevel
d5dea458cb Separate Windows Appveyor and dev builds 2019-03-24 16:22:12 +11:00
flightlevel
b9b94009bf Update readme for renamed macOS mono install script 2019-03-24 16:02:41 +11:00
flightlevel
8bfe5edc0a Update build script for macOS changes 2019-03-24 16:01:33 +11:00
flightlevel
cc2071dc53 Make macos install scripts executable 2019-03-24 15:59:36 +11:00
flightlevel
e745b02c55 Attempt to make install_service_macos .NET Core compatible 2019-03-24 15:57:11 +11:00
flightlevel
ee162756d1 Rename install_service_macos to install_service_macos_mono 2019-03-24 15:55:59 +11:00
Garfield69
9a571f6f4b Update ISSUE_TEMPLATE.md 2019-03-24 16:07:33 +13:00
Garfield69
1b740f1a04 yggtorrent: add a legacy lnik for #4946 2019-03-24 15:55:38 +13:00
Garfield69
9e695151b7 ourbits: fix size selector. resolves #4944
also update categories
turn on incldead
add login error message selector
2019-03-24 08:48:32 +13:00
Garfield69
c1c86ddd60 btgigs: correction to login error selector 2019-03-24 06:25:29 +13:00
Garfield69
328cf7090a Revert "gazelletracker: implement torznab Limit #4901"
This reverts commit bee30b2c1c.
2019-03-23 16:16:51 +13:00
Garfield69
64f461bc98 Revert "7tor: implement torznab Limit #4901"
This reverts commit 28dbb29513.
2019-03-23 16:16:41 +13:00
Garfield69
c6639e7d9b Revert "720pier: implement torznab Limit #4901"
This reverts commit cf03b6e216.
2019-03-23 16:15:48 +13:00
Garfield69
841fac48f9 Revert "rarbg: implement torznab Limit #4901"
This reverts commit 87c4f26d02.
2019-03-23 16:12:13 +13:00
Garfield69
0a2651e635 Revert "yts: implement torznab Limit #4901"
This reverts commit 022b88ea22.
2019-03-23 16:11:45 +13:00
Garfield69
bee30b2c1c gazelletracker: implement torznab Limit #4901 2019-03-23 14:50:50 +13:00
Garfield69
28dbb29513 7tor: implement torznab Limit #4901 2019-03-23 11:34:38 +13:00
Garfield69
cf03b6e216 720pier: implement torznab Limit #4901 2019-03-23 10:26:51 +13:00
Garfield69
87c4f26d02 rarbg: implement torznab Limit #4901 2019-03-23 09:46:58 +13:00
Garfield69
022b88ea22 yts: implement torznab Limit #4901 2019-03-23 09:27:58 +13:00
Garfield69
858658cdcf add cinefilhd a private site for movies / tv. resolves #4908 2019-03-22 18:57:35 +13:00
Sc4nd4l
16b3c43861 add ChannelX, a private Tracker for High Quality Optimized HD MOVIES / TV #4924 2019-03-22 08:34:36 +13:00
Garfield69
def90ea2fb hdsky: switch to cookie login method 2019-03-21 19:44:36 +13:00
Garfield69
a859f58e8f cpabien: new domain .vg 2019-03-21 17:44:05 +13:00
Garfield69
449c478012 hdsky: upload to show imdb
both http and https
also search now include dead
2019-03-21 15:23:53 +13:00
Garfield69
896df26151 rarbg: fix details link not working
apparently ALL requests to the API server need to include the app_id
2019-03-21 12:26:07 +13:00
Garfield69
50441fbc1d torrent9: drop login 2019-03-21 07:26:44 +13:00
Garfield69
32005e1120 torrent9: drop alternate domain wvw. 2019-03-21 07:08:11 +13:00
Garfield69
33c7b69ee8 racingforeveryone: update categories
and login error detection
2019-03-21 06:21:20 +13:00
Garfield69
4d1c0265c6 romve btstornet, gone. resolves #4875 2019-03-20 21:28:08 +13:00
Garfield69
e1bc60ed29 beyondhd: add new category 2019-03-20 21:24:17 +13:00
Garfield69
fc43bd65be audiobooktorrents: drop redundant tv and movie search 2019-03-20 20:16:11 +13:00
Garfield69
234eed9e66 audiobookbay: add new categories
and supply default seeders, leechers, volumefactors
2019-03-20 20:09:42 +13:00
xfouloux
cf5ebe7909 Update sharewood.yml (#4917)
added cat TV, but TV and Movies are mixed no choices
2019-03-20 19:08:11 +13:00
Garfield69
a2ba3d68f9 animetosho: provide some defaults when not set by API response.
set Seeders and Leechers to 0 is none returned by API
set downloadvolumefactor to 0 (freeleech)
set uploadvolumefactor to 1
2019-03-20 16:56:26 +13:00
Garfield69
2ffbedc2fa anidex: use torznab categories for search, add lang id info in config 2019-03-20 15:26:24 +13:00
lps-rocks
b54c6bfa1f Change release name to use 'title' attribute (#4915)
Use link 'title' attribute. The text gets truncated by the website automatically if its longer than a certain length causing matching problems.
2019-03-20 14:42:10 +13:00
Garfield69
a45cd07434 amigosshare: add new categories 2019-03-20 14:29:15 +13:00
Garfield69
5b75796250 720pier: add missing categories 2019-03-20 11:36:10 +13:00
Garfield69
3d0e57f273 add btdb re-incanation of the public DHT crawler. resolves #4913 2019-03-20 10:03:41 +13:00
Garfield69
68de3e7a6a add casatorrent a French Private tracker. Resolves #4911 2019-03-20 09:09:31 +13:00
Garfield69
693f2b5965 turktorrent: #4871 2019-03-20 06:08:32 +13:00
Garfield69
749a33abc5 remove btxpress, gone. #3339 2019-03-20 03:20:47 +13:00
Garfield69
95a2f38e79 remove redtopia, shutdown. #3660 2019-03-20 03:17:59 +13:00
Garfield69
55e5db4e28 remove 420files, its gone. #4288 2019-03-20 03:15:21 +13:00
Garfield69
204e3f8fd2 3evils: add banner 2019-03-19 22:04:02 +13:00
Garfield69
613a554314 add xktorrent a French private site. resolves #4903 2019-03-19 20:32:56 +13:00
Garfield69
5efc7cd88c tag unit3d yaml 2019-03-19 19:22:15 +13:00
HDVinnie
5462ce0fd9 blutopia: updates for unit3d 1.9.1 (#4910) 2019-03-19 19:12:57 +13:00
Garfield69
d379319050 7tor: update categories 2019-03-19 12:18:34 +13:00
Garfield69
d0daf0d00b add btdigg a public DHT crawler. Resolves #4907 2019-03-19 10:41:02 +13:00
Garfield69
7f1e3dbb62 add pleasuredone, a private games tracker. resolves #4897 2019-03-19 08:53:32 +13:00
Garfield69
36f1b79927 remove archetorrent, gone. resolves #4906 2019-03-19 07:22:27 +13:00
Garfield69
f3302e5d53 add Sharewood, a semi-private French tracker. resolves #4898 2019-03-19 07:13:21 +13:00
Garfield69
b71bbe49c5 3evils: size and date cols have shifted 2019-03-18 18:44:47 +13:00
Garfield69
b3dec55a86 cardigannIndexer: implement torznab Limit for #4901 2019-03-18 17:41:23 +13:00
Garfield69
1bbc01cfcd add bit-titan a German tracker. resolves #4896 2019-03-17 21:00:47 +13:00
Garfield69
502ac57cd4 freedomhd: fix bluray movies cat 2019-03-17 20:19:01 +13:00
Garfield69
37430c5e79 freedomhd: update categories and date 2019-03-17 12:12:47 +13:00
Garfield69
85752ca58c add freetorrent a private tracker. resolves #4894 2019-03-17 11:23:12 +13:00
Garfield69
86881e2ad6 kinozal: sort out tv series for sonarr. #4767
inspired by rutracker
2019-03-16 17:09:45 +13:00
Garfield69
97367a55ac nnm-club: sort out tv series for sonarr. #4767
inspired by rutracker
2019-03-16 16:46:00 +13:00
Garfield69
d52f38efb9 add p2pbg a bulgarian private tracker. resolves #4888 2019-03-16 15:07:28 +13:00
Garfield69
9d3e41cb5c kinozal and nnm-club: #4767
drop adding a leading 0 on numbers
add kubik replacement
drop brackets on sxxexx for nnm-club
2019-03-16 10:28:20 +13:00
Garfield69
093425ac0a add mactorrents a public tracker for mac software. resolves #4889 2019-03-16 09:23:16 +13:00
Garfield69
e5c9fcd58e icetorrent: correct login error selector. #4890 2019-03-16 08:08:43 +13:00
flightlevel
6882715a3f Give scripts execute permission 2019-03-15 20:59:00 +11:00
buckmelanoma
21c206feb7 Raised number of search results returned (#4887) 2019-03-15 18:23:05 +13:00
Garfield69
67d7562882 kinozal: more sonarr stuff 2019-03-15 12:47:47 +13:00
Garfield69
1785b0832c add KikiBT, a Chinese DHT search engine. Reseolves #4886 2019-03-15 06:28:52 +13:00
Garfield69
2fc92e84c4 arenaBG: optionally use .torrent instead of magnet
Also fix date processing.
2019-03-14 16:30:54 +13:00
Garfield69
8db99363b6 kinozal: more for sonarr #4767
drop brackets around the season/episode and around the quality
2019-03-14 14:00:17 +13:00
59 changed files with 2125 additions and 597 deletions

View File

@@ -7,7 +7,7 @@ If you are experiencing an issue with a tracker, then:
2. If you haven't already, try upgrading to the latest version of Jackett, your issue may have already been resolved.
3. If it is still not working for you, then a **full enhanced log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
**Jackett version**:
**Mono version** (if not using Windows):
(At the bottom of your Jackett Dashboard page) **Jackett version**:
(if you installed using Jackett.Binaries.Mono.tar.gz) **Mono version**:
-------------------------------

View File

@@ -27,8 +27,9 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* Anime Tosho
* AniRena
* AudioBook Bay (ABB)
* BTstor.net
* btbit
* BTDB
* BTDigg
* BTKitty
* cpasbien
* cpasbienClone
@@ -46,7 +47,9 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* KATcrs
* KickAssTorrent (KATcr)
* KickAssTorrent (thekat.se clone)
* KikiBT
* LimeTorrents
* MacTorrents
* MagnetDL
* MejorTorrent <!-- maintained by ivandelabeldad -->
* Monova
@@ -102,6 +105,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* NoName Club (NNM-Club)
* RockBox
* RuTracker
* Sharewood
* SkTorrent
* Union Fansub
* Vanila
@@ -113,7 +117,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* 2 Fast 4 You
* 3D Torrents (3DT)
* 3evils
* 420files
* 720pier
* Abnormal
* Acid Lounge (A-L)
@@ -125,7 +128,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* Anthelion
* AOX (Chippu)
* Araba Fenice (Phoenix)
* ArcheTorrent
* AsianCinema
* AsianDVDClub
* AST4u
@@ -142,6 +144,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* BigTower
* Bit-City Reloaded
* BIT-HDTV
* BiT-TiTAN
* Bithorlo (BHO)
* BitHUmen
* BitMe
@@ -158,13 +161,15 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* BrokenStones
* BTGigs (TG)
* BTNext (BTNT)
* BTXpress (BTX)
* Carpathians
* CartoonChaos (CC)
* CasaTorrent
* CasStudioTV
* CCFBits
* CGPeers
* CHDBits
* ChannelX
* CiNEFiLHD
* Cinemageddon
* Cinematik
* CinemaZ (EuTorrents)
@@ -172,7 +177,9 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* CrnaBerza
* DanishBits (DB)
* Dark-Shadow
* Das Unerwartete
* DataScene (DS)
* DesiReleasers
* DesiTorrents
* Diablo Torrent
* DigitalCore
@@ -193,6 +200,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* FileList (FL)
* Femdomcult
* Freedom-HD (Freedom Paradise)
* FreeTorrent
* FullMixMusic
* FunFile (FF)
* FunkyTorrents (FT)
@@ -260,11 +268,13 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* notwhat.cd
* Orpheus
* Ourbits (HDPter)
* P2PBG
* Passione Torrent <!-- maintained by bonny1992 -->
* PassThePopcorn (PTP)
* PiratBit
* PirateTheNet (PTN)
* PiXELHD (PxHD)
* Pleasuredome
* PolishSource (PS)
* PolishTracker
* Pretome
@@ -280,7 +290,6 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* RacingForMe (RFM)
* Redacted (PassTheHeadphones)
* Red Star Torrent (RST)
* Redtopia (RED)
* RetroFlix
* RevolutionTT
* RGU
@@ -350,10 +359,12 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/
* Vizuk
* Waffles
* World-In-HD
* World-of-Tomorrow
* WorldOfP2P (WOP)
* x-ite.me (XM)
* xBytesV2
* XSpeeds (XS)
* XKTorrent
* XWTorrents (XWT)
* Xthor
* ExoticaZ (YourExotic)
@@ -394,7 +405,7 @@ When installed as a service the tray icon acts as a way to open/start/stop Jacke
Jackett can also be run from the command line if you would like to see log messages (Ensure the server isn't already running from the tray/service). This can be done by using "JackettConsole.exe" (for Command Prompt), found in the Jackett data folder: "%ProgramData%\Jackett".
### Install on Linux (AMDx64)
## Install on Linux (AMDx64)
1. Download and extract the latest `Jackett.Binaries.LinuxAMDx64.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases) and run Jackett with the command `./jackett`
2. (Optional) To install Jackett as a service, open the Terminal and run `sudo ./install_service_systemd.sh` You need root permissions to install the service. The service will start on each logon. You can always stop it by running `systemctl stop jackett.service` from Terminal. You can start it again it using `systemctl start jackett.service`. Logs are stored as usual under `~/.config/Jackett/log.txt` and also in `journalctl -u jackett.service`.
@@ -402,7 +413,7 @@ On most operating systems all the required dependencies will already be present.
If you want to run it with a user without a /home directory you need to add `Environment=XDG_CONFIG_HOME=/path/to/folder` to your systemd file, this folder will be used to store your config files.
### Install on Linux (ARMv7 or above)
## Install on Linux (ARMv7 or above)
1. Download and extract the latest `Jackett.Binaries.LinuxARM32.tar.gz` or `Jackett.Binaries.LinuxARM64.tar.gz` (32 bit is the most common on ARM) release from the [releases page](https://github.com/Jackett/Jackett/releases) and run Jackett with the command `./jackett`
2. (Optional) To install Jackett as a service, open the Terminal and run `sudo ./install_service_systemd.sh` You need root permissions to install the service. The service will start on each logon. You can always stop it by running `systemctl stop jackett.service` from Terminal. You can start it again it using `systemctl start jackett.service`. Logs are stored as usual under `~/.config/Jackett/log.txt` and also in `journalctl -u jackett.service`.
@@ -411,7 +422,7 @@ On most operating systems all the required dependencies will already be present.
If you want to run it with a user without a /home directory you need to add `Environment=XDG_CONFIG_HOME=/path/to/folder` to your systemd file, this folder will be used to store your config files.
### Installation on Linux (ARMv6 or below)
## Installation on Linux (ARMv6 or below)
1. Install [Mono 5.8](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release is recommended)
* Follow the instructions on the mono website and install the `mono-devel` and the `ca-certificates-mono` packages.
* On Red Hat/CentOS/openSUSE/Fedora the `mono-locale-extras` package is also required.
@@ -440,7 +451,7 @@ Install [Mono 5.8](http://www.mono-project.com/download/#download-mac) or better
### Install as service
1. Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases).
2. Open the extracted folder and double-click on `install_service_macos`.
2. Open the extracted folder and double-click on `install_service_macos_mono`.
3. If the installation was a success, you can close the Terminal window.
The service will start on each logon. You can always stop it by running `launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist` from Terminal. You can start it again it using `launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist`.

View File

@@ -21,7 +21,7 @@ dotnet_csproj:
file_version: '{version}'
informational_version: '{version}'
build_script:
- ps: .\build.ps1 --target=Default
- ps: .\build.ps1 --target=Windows-Appveyor
- sh: ./build.sh --target=Linux
test: off
before_deploy:

View File

@@ -126,7 +126,7 @@ Task("Package-Mono-Full-Framework")
CopyFiles("./src/Jackett.Updater/bin/" + configuration + "/net461" + "/JackettUpdater.*", buildOutputPath); //builds against multiple frameworks
CopyFileToDirectory("./install_service_macos", buildOutputPath);
CopyFileToDirectory("./install_service_macos_mono", buildOutputPath);
CopyFileToDirectory("./install_service_systemd_mono.sh", buildOutputPath);
CopyFileToDirectory("./Upstart.config", buildOutputPath);
@@ -165,7 +165,7 @@ Task("Package-DotNetCore-macOS")
CopyFileToDirectory("./install_service_macos", buildOutputPath);
Gzip($"./BuildOutput/{netCoreFramework}/{runtimeId}", $"./{artifactsDirName}", "Jackett", "Experimental.Jackett.Binaries.macOS.tar.gz");
Gzip($"./BuildOutput/{netCoreFramework}/{runtimeId}", $"./{artifactsDirName}", "Jackett", "Jackett.Binaries.macOS.tar.gz");
});
Task("Package-DotNetCore-LinuxAMDx64")
@@ -290,13 +290,23 @@ Task("Release-Notes")
});
Task("Windows-Environment")
Task("Windows-Environment-Dev")
.IsDependentOn("Package-Windows-Full-Framework")
.IsDependentOn("Package-Mono-Full-Framework")
.IsDependentOn("Package-DotNetCore-macOS")
.IsDependentOn("Package-DotNetCore-LinuxAMDx64")
.IsDependentOn("Package-DotNetCore-LinuxARM32")
.IsDependentOn("Package-DotNetCore-LinuxARM64")
.IsDependentOn("Appveyor-Push-Artifacts")
.IsDependentOn("Release-Notes")
.Does(() =>
{
Information("Windows-Environment Task Completed");
});
Task("Windows-Environment-Appveyor")
.IsDependentOn("Package-Windows-Full-Framework")
.IsDependentOn("Package-Mono-Full-Framework")
//.IsDependentOn("Package-DotNetCore-macOS")
//.IsDependentOn("Package-DotNetCore-LinuxAMDx64")
//.IsDependentOn("Package-DotNetCore-LinuxARM32")
//.IsDependentOn("Package-DotNetCore-LinuxARM64")
.IsDependentOn("Appveyor-Push-Artifacts")
.IsDependentOn("Release-Notes")
.Does(() =>
@@ -395,6 +405,19 @@ private void Gzip(string sourceFolder, string outputDirectory, string tarCdirect
RunLinuxCommand("find", MakeAbsolute(Directory(sourceFolder)) + @" -type f -exec chmod 644 {} \;");
RunLinuxCommand("chmod", $"755 {MakeAbsolute(Directory(sourceFolder))}/Jackett/jackett");
RunLinuxCommand("chmod", $"755 {MakeAbsolute(Directory(sourceFolder))}/Jackett/JackettUpdater");
string systemdScript = MakeAbsolute(Directory(sourceFolder)) + "/Jackett/install_service_systemd.sh";
if (FileExists(systemdScript))
{
RunLinuxCommand("chmod", $"755 {systemdScript}");
}
string macOsServiceScript = MakeAbsolute(Directory(sourceFolder)) + "/Jackett/install_service_macos";
if (FileExists(macOsServiceScript))
{
RunLinuxCommand("chmod", $"755 {macOsServiceScript}");
}
RunLinuxCommand("tar", $"-C {sourceFolder} -zcvf {outputDirectory}/{tarFileName}.gz {tarCdirectoryOption}");
}
}
@@ -416,12 +439,19 @@ private void DotNetCorePublish(string projectPath, string framework, string runt
//////////////////////////////////////////////////////////////////////
Task("Default")
.IsDependentOn("Windows-Environment")
.IsDependentOn("Windows-Environment-Dev")
.Does(() =>
{
Information("Default Task Completed");
});
Task("Windows-Appveyor")
.IsDependentOn("Windows-Environment-Appveyor")
.Does(() =>
{
Information("Windows Appveyor Task Completed");
});
Task("Linux")
.IsDependentOn("Linux-Environment")
.Does(() =>

View File

@@ -12,16 +12,12 @@ launchctl remove org.user.Jackett
cd "$(dirname "$0")"
# Check if we're running from Jackett's directory
if [ ! -f ./JackettConsole.exe ]; then
echo "${BOLDRED}ERROR${NC}: Couldn't locate JackettConsole.exe. Is the script in the right directory?"
if [ ! -f ./jackett ]; then
echo "${BOLDRED}ERROR${NC}: Couldn't locate ./jackett - Is the script in the right directory?"
exit 1
fi
jackettdir="$(pwd)"
# Check if mono is installed
command -v mono >/dev/null 2>&1 || { echo >&2 "${BOLDRED}ERROR${NC}: Jackett requires Mono but it's not installed. Aborting."; exit 1; }
monodir="$(dirname $(command -v mono))"
# Check that no other service called Jackett is already running
if [[ $(launchctl list | grep org.user.Jackett) ]]; then
echo "${BOLDRED}ERROR${NC}: Jackett already seems to be running as a service. Please stop it before running this script again."
@@ -38,7 +34,7 @@ cat >~/Library/LaunchAgents/org.user.Jackett.plist <<EOL
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin:${monodir}</string>
<string>/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
<key>KeepAlive</key>
<true/>
@@ -46,9 +42,7 @@ cat >~/Library/LaunchAgents/org.user.Jackett.plist <<EOL
<string>org.user.Jackett</string>
<key>ProgramArguments</key>
<array>
<string>${monodir}/mono</string>
<string>--debug</string>
<string>JackettConsole.exe</string>
<string>${jackettdir}/jackett</string>
<string>--NoRestart</string>
</array>
<key>RunAtLoad</key>
@@ -70,7 +64,6 @@ else
cat << EOL
${BOLDRED}ERROR${NC}: Could not launch agent. The installation might have failed.
Please open an issue on https://github.com/Jackett/Jackett/issues and paste following information:
Mono directory: \`${monodir}\`
Jackett directory: \`${jackettdir}\`
EOL

77
install_service_macos_mono Executable file
View File

@@ -0,0 +1,77 @@
#!/bin/bash
#Setting up colors
BOLDRED="$(printf '\033[1;31m')"
BOLDGREEN="$(printf '\033[1;32m')"
NC="$(printf '\033[0m')" # No Color
# Stop and unload the service if it's running
launchctl remove org.user.Jackett
# Move working directory to Jackett's
cd "$(dirname "$0")"
# Check if we're running from Jackett's directory
if [ ! -f ./JackettConsole.exe ]; then
echo "${BOLDRED}ERROR${NC}: Couldn't locate JackettConsole.exe. Is the script in the right directory?"
exit 1
fi
jackettdir="$(pwd)"
# Check if mono is installed
command -v mono >/dev/null 2>&1 || { echo >&2 "${BOLDRED}ERROR${NC}: Jackett requires Mono but it's not installed. Aborting."; exit 1; }
monodir="$(dirname $(command -v mono))"
# Check that no other service called Jackett is already running
if [[ $(launchctl list | grep org.user.Jackett) ]]; then
echo "${BOLDRED}ERROR${NC}: Jackett already seems to be running as a service. Please stop it before running this script again."
exit 1
fi
# Write the plist to LaunchAgents
mkdir -p ~/Library/LaunchAgents/
cat >~/Library/LaunchAgents/org.user.Jackett.plist <<EOL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/bin:/bin:/usr/sbin:/sbin:${monodir}</string>
</dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>org.user.Jackett</string>
<key>ProgramArguments</key>
<array>
<string>${monodir}/mono</string>
<string>--debug</string>
<string>JackettConsole.exe</string>
<string>--NoRestart</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>WorkingDirectory</key>
<string>${jackettdir}</string>
</dict>
</plist>
EOL
# Run the agent
launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist
# Check that it's running
if [[ $(launchctl list | grep org.user.Jackett) ]]; then
echo "${BOLDGREEN}Agent successfully installed and launched!${NC}"
else
cat << EOL
${BOLDRED}ERROR${NC}: Could not launch agent. The installation might have failed.
Please open an issue on https://github.com/Jackett/Jackett/issues and paste following information:
Mono directory: \`${monodir}\`
Jackett directory: \`${jackettdir}\`
EOL
fi

View File

@@ -58,6 +58,7 @@
inputs:
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
search: "{{.Keywords}}"
searchin: "title"
incldead: 1
rows:
selector: table.table-bordered tr:has(a[href^="browse.php?cat="])
@@ -89,8 +90,19 @@
filters:
- name: replace
args: ["details.php?id=", "download.php?torrent="]
banner:
selector: a[href^="details.php?id="][onmouseover]
attribute: onmouseover
filters:
# onmouseover="Tip('<b>blahblah /><img src=\'/imdb/images/0090293.jpg\' blahblah />');"
- name: regexp
args: "/imdb/(.*?).jpg"
- name: prepend
args: "/imdb/"
- name: append
args: ".jpg"
size:
selector: td:nth-last-child(6)
selector: td:nth-last-child(4)
files:
selector: a[href^="filelist.php?id="]
grabs:
@@ -103,11 +115,11 @@
# Today<br /> 10:20 AM
# Yesterday<br /> 08:03 PM
optional: true
selector: td:nth-last-child(7):contains("day")
selector: td:nth-last-child(5):contains("day")
date:
# Feb 14 2019<br /> 10:20 AM
optional: true
selector: td:nth-last-child(7):not(:contains("day"))
selector: td:nth-last-child(5):not(:contains("day"))
filters:
- name: dateparse
args: "Jan 2 2006 03:04 pm"

View File

@@ -0,0 +1,124 @@
---
site: Das-Unerwartete
name: Das Unerwartete
description: "Das Unerwartete is a Private GERMAN tracker"
language: de-de
type: private
encoding: UTF-8
links:
- https://dasunerwartete.nl
caps:
categorymappings:
- {id: 112, cat: Audio/Audiobook, desc: "Hoerbuecher/Hoerspiele"}
- {id: 51, cat: Audio, desc: "Musik"}
- {id: 124, cat: Audio/Video, desc: "Musikvideo"}
- {id: 103, cat: Movies/DVD, desc: "DVD"}
- {id: 88, cat: Movies, desc: "Kids Only"}
- {id: 43, cat: Movies, desc: "Movie Packs"}
- {id: 105, cat: Movies/HD, desc: "Movie/1080 P"}
- {id: 107, cat: Movies/HD, desc: "Movie/3D"}
- {id: 102, cat: Movies/HD, desc: "Movie/720 P"}
- {id: 101, cat: Movies/BluRay, desc: "Movie/Blueray - HD"}
- {id: 108, cat: Movies, desc: "Movie/Bollywood"}
- {id: 93, cat: TV/Documentary, desc: "Movie/Dokus"}
- {id: 125, cat: Movies/Foreign, desc: "Movie/International"}
- {id: 91, cat: Movies/SD, desc: "Movie/SD"}
- {id: 114, cat: Movies, desc: "Movie/TV-Rip"}
- {id: 132, cat: Movies/HD, desc: "Movie/UHD"}
- {id: 110, cat: Movies/HD, desc: "x264"}
- {id: 106, cat: Console/PS3, desc: "Games/PS3"}
- {id: 109, cat: Console/PSP, desc: "Games/PSP"}
- {id: 113, cat: Console/Wii, desc: "Games/Wii"}
- {id: 86, cat: PC/Games, desc: "Games/Windows"}
- {id: 104, cat: Console/XBox360, desc: "Games/Xbox360"}
- {id: 104, cat: Console/XBox360, desc: "Games/Xbox360"}
- {id: 116, cat: PC/Games, desc: "Linux/Spiele"}
- {id: 53, cat: PC/Phone-Android, desc: "Android/Appz/Games/Navi"}
- {id: 126, cat: PC, desc: "Win/Mac/linux"}
- {id: 129, cat: TV/HD, desc: "Serien/Folgen HD"}
- {id: 61, cat: TV/SD, desc: "Serien/Folgen SD"}
- {id: 131, cat: TV/HD, desc: "Serien/Staffeln HD"}
- {id: 130, cat: TV/SD, desc: "Serien/Staffeln SD"}
- {id: 94, cat: Books/Ebook, desc: "Ebooks"}
- {id: 96, cat: TV/Anime, desc: "Anime / Hentai"}
- {id: 9, cat: Other/Misc, desc: "Sonstiges"}
- {id: 115, cat: TV/Sport, desc: "Sport"}
- {id: 69, cat: XXX, desc: "XXX"}
- {id: 122, cat: Books/Magazines, desc: "Zeitschriften/Zeitungen"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
login:
path: login.php
method: form
form: form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: .tablea:contains("Benutzername oder Passwort ungültig")
test:
path: browse.php
search:
path: browse.php
inputs:
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
search: "{{ .Query.Keywords }}"
incldead: "1"
rows:
selector: table.tableinborder > tbody > tr:has(a[href^="download.php"])
fields:
title:
selector: a[href^="details.php"]
filters:
- name: replace
args: [".torrent", ""]
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: a[href^="details.php"]
attribute: href
download:
selector: a[href^="download.php"]
attribute: href
files:
selector: .tablea tr:nth-child(2) td:nth-child(1) b:nth-child(2)
grabs:
selector: .tablea tr:nth-child(2) td:nth-child(3) b
size:
selector: .tablea tr:nth-child(2) td:nth-child(1) b:nth-child(1)
filters:
- name: replace
args: [".", ""]
- name: replace
args: [",", "."]
seeders:
selector: .tablea tr:nth-child(2) td:nth-child(2) b:nth-child(1) font
leechers:
selector: .tablea tr:nth-child(2) td:nth-child(2) b:nth-child(3) font
downloadvolumefactor:
case:
img[src="pic/oupic.gif"]: "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"

View File

@@ -12,6 +12,8 @@
caps:
categorymappings:
- {id: 107, cat: XXX, desc: "Adultos: Gay"}
- {id: 108, cat: XXX, desc: "Adultos: Transex/Female"}
- {id: 74, cat: XXX, desc: "Adultos: XXX"}
- {id: 75, cat: XXX, desc: "Adultos: Hentai"}
- {id: 69, cat: TV/Anime, desc: "Anime: Anime"}
@@ -59,6 +61,8 @@
- {id: 56, cat: Console/Xbox, desc: "Jogos: Xbox"}
- {id: 55, cat: Console/Wii, desc: "Jogos: Wii"}
- {id: 58, cat: Console/NDS, desc: "Jogos: Nintendo DS"}
- {id: 111, cat: Console, desc: "Jogos: Nintendo Swich"}
- {id: 110, cat: Console, desc: "Jogos: Nintendo Switch"}
- {id: 57, cat: Console, desc: "Jogos: Android"}
- {id: 82, cat: Console/PSP, desc: "Jogos: PSP"}
- {id: 78, cat: Console/Xbox One, desc: "Jogos: Xbox One"}

View File

@@ -31,20 +31,18 @@
tv-search: [q, season, ep]
settings:
- name: cat-id
type: text
label: Category Id
- name: info
type: info
label: Category Id Note
default: "You can filter your searches by using any of the following category numbers (comma delimited):<br>1 :Anime - Sub<br>2 :Anime - Raw<br>3 :Anime - Dub<br>4 :LA - Sub<br>5 :LA - Raw<br>6 :Light Novel<br>7 :Manga - TLed<br>8 :Manga - Raw<br>9 :♫ - Lossy<br>10 :♫ - Lossless<br>11 :♫ - Video<br>12 :Games<br>13 :Applications<br>14 :Pictures<br>15 :Adult Video<br>16 :Other"
- name: lang-id
type: text
label: Language Id
label: Language ID
- name: info
type: info
label: Language ID Note
default: "You can filter your searches using any of the following language ID (comma delimited):<br>19 :Arabic<br>22 :Bengali<br>14 :Bulgarian<br>21 :Chinese (Simplified)<br>24 :Czech<br>20 :Danish<br>5 :Dutch<br>1 :English<br>11 :Finnish<br>10 :French<br>8 :German<br>13 :Greek<br>9 :Hungarian<br>27 :Indonesian<br>6 :Italian<br>2 :Japanese<br>28 :Korean<br>31 :Malaysian<br>25 :Mongolian<br>30 :Persian<br>3 :Polish<br>16 :Portuguese (Brazil)<br>17 :Portuguese (Portugal)<br>23 :Romanian<br>7 :Russian<br>4 :Serbo-Croatian<br>29 :Spanish (LATAM)<br>15 :Spanish (Spain)<br>18 :Swedish<br>26 :Turkish<br>12 :Vietnamese"
search:
paths:
- path: "?{{if .Config.cat-id}}id={{.Config.cat-id }}&{{else}}{{end}}{{if .Config.lang-id}}lang_id={{.Config.lang-id}}&{{else}}{{end}}q={{if .Keywords}}{{.Keywords}}{{else}}{{end}}"
# https://anidex.info/?page=search&id=1,2,3&lang_id=5,1,10&group_id=0&q=rinshi
- path: "?page=search&id={{if .Categories}}{{range .Categories}}{{.}},{{end}}{{else}}0{{end}}{{if .Config.lang-id}}&lang_id={{.Config.lang-id}}{{else}}{{end}}&group_id=0&q={{if .Keywords}}{{.Keywords}}{{else}}{{end}}"
rows:
selector: div.table-responsive > table > tbody > tr
fields:

View File

@@ -1,206 +0,0 @@
---
site: archetorrent
name: ArcheTorrent
description: "ArcheTorrent is a FRENCH Private Torrent Tracker"
language: fr-fr
type: private
encoding: UTF-8
links:
- https://archetorrent.com/
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: filter_title
type: checkbox
label: Try to normalize releases names by moving year after the title
default: false
- name: multilang
type: checkbox
label: Replace MULTI by another language in release name
default: false
- name: multilanguage
type: select
label: Replace MULTI by this language
default: FRENCH
options:
FRENCH : "FRENCH"
MULTI.FRENCH: "MULTI.FRENCH"
ENGLISH: "ENGLISH"
MULTI.ENGLISH: "MULTI.ENGLISH"
VOSTFR: "VOSTFR"
MULTI.VOSTFR: "MULTI.VOSTFR"
- name: vostfr
type: checkbox
label: Replace VOSTFR with ENGLISH
default: false
caps:
categorymappings:
- {id: 18, cat: PC, desc: "Applications: PC"}
- {id: 19, cat: PC/Mac, desc: "Applications: Mac"}
- {id: 54, cat: PC, desc: "Applications: linux"}
- {id: 56, cat: XXX/Other, desc: "Autres: ebook xxx"}
- {id: 36, cat: Books, desc: "Autres: E-Books"}
- {id: 37, cat: Other, desc: "Autres: Images"}
- {id: 38, cat: PC/Phone-Other, desc: "Autres: Telephone-mobile"}
- {id: 47, cat: Movies, desc: "Films: Animé"}
- {id: 1, cat: Movies/DVD, desc: "Films: DVD"}
- {id: 2, cat: Movies/SD, desc: "Films: Dvdrip"}
- {id: 68, cat: Movies, desc: "Films: TAT Releases"}
- {id: 70, cat: Movies/HD, desc: "Films: UHD 4K"}
- {id: 69, cat: Movies, desc: "Films: Retro"}
- {id: 3, cat: Movies/HD, desc: "Films: HD1080"}
- {id: 42, cat: Movies/HD, desc: "Films: HD720"}
- {id: 4, cat: Movies, desc: "Films: Cam/Ts"}
- {id: 22, cat: Movies/BluRay, desc: "Films: bluray"}
- {id: 23, cat: Movies/3D, desc: "Films: 3D"}
- {id: 24, cat: Movies/Foreign, desc: "Films: VOSTFR"}
- {id: 25, cat: XXX, desc: "Films: Adulte"}
- {id: 48, cat: TV/Documentary, desc: "Films: Documentaire"}
- {id: 49, cat: Movies/Other, desc: "Films: Spectacle"}
- {id: 51, cat: Movies/SD, desc: "Films: R5"}
- {id: 52, cat: Movies/SD, desc: "Films: bdrip"}
- {id: 53, cat: Movies/SD, desc: "Films: brrip"}
- {id: 55, cat: Movies/DVD, desc: "Films: dvd-pack"}
- {id: 57, cat: Movies, desc: "Films: manga"}
- {id: 59, cat: Movies/WEBDL, desc: "Films: Webrip"}
- {id: 63, cat: Movies/SD, desc: "Films: M-HD"}
- {id: 10, cat: PC/Games, desc: "Jeux: PC"}
- {id: 11, cat: Console/Other, desc: "Jeux: PS2"}
- {id: 43, cat: Console/PS3, desc: "Jeux: PS3"}
- {id: 12, cat: Console/PSP, desc: "Jeux: PSP"}
- {id: 14, cat: Console/Xbox 360, desc: "Jeux: Xbox360"}
- {id: 44, cat: Console/Wii, desc: "Jeux: Wii"}
- {id: 45, cat: Console/NDS, desc: "Jeux: DS"}
- {id: 27, cat: Audio/Video, desc: "Musique: Clip Video"}
- {id: 62, cat: TV/SD, desc: "Serie tv: TV BDRip"}
- {id: 5, cat: TV/SD, desc: "Serie tv: Dvdrip"}
- {id: 41, cat: TV/HD, desc: "Serie tv: Hd"}
- {id: 60, cat: TV/SD, desc: "Serie tv: pack série tv"}
- {id: 64, cat: TV/FOREIGN, desc: "Serie tv: vostfr"}
- {id: 65, cat: TV/HD, desc: "Serie tv: Série tv 720P"}
- {id: 66, cat: TV/HD, desc: "Serie tv: Série tv 1080P"}
- {id: 67, cat: TV/HD, desc: "Serie tv: Série tv PackHD"}
- {id: 73, cat: TV/Anime, desc: "Serie tv: Anime "}
- {id: 72, cat: TV/Sport, desc: "Sport: sport"}
- {id: 61, cat: TV/SD, desc: "Tv: DVDRip"}
modes:
search: [q]
tv-search: [q, season, ep]
login:
path: account-login.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: form:contains("Erreur")
message:
selector: form
remove: table
test:
path: torrents-search.php
search:
keywordsfilters:
- name: replace
args: ["-", " "] # remove special search character (negative search)
- name: replace
args: ["+", " "] # remove special search character (positive search)
- name: re_replace
args: ["(\\w+)", " +$1"] # prepend + to each word
paths:
- path: torrents-search.php
inputs:
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
incldead: "1"
rows:
selector: table.ttable_headinner > tbody > tr[class^="t-row"]
fields:
download:
selector: a[href^="torrents-details.php?id="]
attribute: href
filters:
- name: replace
args: ["torrents-details.php", "download.php"]
date:
selector: td:nth-child(3) a
attribute: onmouseover
filters:
- name: regexp
args: "Poster le: </b>(.*?)<br />"
- name: dateparse
args: "02-01-2006"
title_normal:
selector: a[href^="torrents-details.php?id="]
filters:
- name: replace
args: [" - (Nouveau!)", ""]
title_filtered:
selector: a[href^="torrents-details.php?id="]
filters:
- name: replace
args: [" - (Nouveau!)", ""]
- name: re_replace
args: ["(?i)^(?:(.+?)((?:[\\.\\-\\s_\\[]+(?:imax|(?:dvd|bd|tv)(?:rip|scr)|bluray(?:\\-?rip)?|720\\s*p?|1080\\s*p?|vof?|vost(?:fr)?|multi|vf(?:f|q)?[1-3]?|(?:true)?french|eng?)[\\.\\-\\s_\\]]*)*)([\\(\\[]?(?:20|1[7-9])\\d{2}[\\)\\]]?)(.*)$|(.*))$", "$1 $3 $2 $4 $5"]
- name: replace
args: [".", " "]
- name: trim
- name: re_replace
args: ["(?i)\\s(mkv|avi|divx|xvid|mp4)$", ""]
- name: re_replace
args: ["(\\s{2,5})", " "]
- name: trim
title_phase1:
text: "{{if .Config.filter_title }}{{ .Result.title_filtered }}{{else}}{{ .Result.title_normal }}{{end}}"
title_multilang:
text: "{{ .Result.title_phase1 }}"
filters:
- name: re_replace
args: ["[\\.\\s\\[\\-][Mm][Uu][Ll][Tt][Ii][\\.\\s\\]\\-]", ".{{ .Config.multilanguage }}."]
title_phase2:
text: "{{if .Config.multilang }}{{ .Result.title_multilang }}{{else}}{{ .Result.title_phase1 }}{{end}}"
title_vostfr:
text: "{{ .Result.title_phase2 }}"
filters:
- name: re_replace
args: ["[\\.\\s\\[\\-][Vv][Oo][Ss][Tt][Ff][Rr][\\.\\s\\]\\-]", ".ENGLISH."]
title:
text: "{{if .Config.vostfr }}{{ .Result.title_vostfr }}{{else}}{{ .Result.title_phase2 }}{{end}}"
category:
selector: a[href^="torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: a[href^="torrents-details.php?id="]
attribute: href
banner:
selector: img.rounded-img
attribute: src
size:
selector: td:nth-child(6)
grabs:
selector: td:nth-child(9) font b
seeders:
selector: td:nth-child(7) font b
leechers:
selector: td:nth-child(8) font b
downloadvolumefactor:
case:
img[title="freeleech"]: "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"

View File

@@ -68,6 +68,21 @@
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
- name: downloadlink
type: select
label: Download link
default: "magnet:"
options:
"/download/" : ".torrent"
"magnet:": "magnet"
login:
path: /
method: form
@@ -85,7 +100,7 @@
selector: a[href="/users/logout/"]
download:
selector: a[href^="magnet:?"]
selector: a[href^="{{ .Config.downloadlink }}"]
search:
paths:
@@ -122,14 +137,14 @@
selector: td:nth-child(4)
date:
# 08:49:09
selector: td:nth-child(3):has(":")
selector: td:nth-child(3):contains(":")
optional: true
filters:
- name: dateparse
args: "15:04:05"
date:
# 2018-10-19
selector: td:nth-child(3):has("-")
selector: td:nth-child(3):contains("-")
optional: true
filters:
- name: dateparse

View File

@@ -108,3 +108,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -11,61 +11,64 @@
caps:
categorymappings:
- {id: Children, cat: Audio/Audiobook, desc: "Children"}
- {id: Teen, cat: Audio/Audiobook, desc: "Teen & Young Adult"}
- {id: Adults, cat: Audio/Audiobook, desc: "Adults"}
- {id: The, cat: Audio/Audiobook, desc: "The Undead"}
- {id: "(Post)apocalyptic", cat: Audio/Audiobook, desc: "(Post)apocalyptic"}
- {id: "True", cat: Audio/Audiobook, desc: "True Crime"}
- {id: Action, cat: Audio/Audiobook, desc: "Action"}
- {id: Adults, cat: Audio/Audiobook, desc: "Adults"}
- {id: Adventure, cat: Audio/Audiobook, desc: "Adventure"}
- {id: Anthology, cat: Audio/Audiobook, desc: "Anthology"}
- {id: Art, cat: Audio/Audiobook, desc: "Art"}
- {id: Autobiography, cat: Audio/Audiobook, desc: "Autobiography & Biographies"}
- {id: Bestsellers, cat: Audio/Audiobook, desc: "Bestsellers"}
- {id: Business, cat: Audio/Audiobook, desc: "Business"}
- {id: Children, cat: Audio/Audiobook, desc: "Children"}
- {id: Classic, cat: Audio/Audiobook, desc: "Classic"}
- {id: Computer, cat: Audio/Audiobook, desc: "Computer"}
- {id: Contemporary, cat: Audio/Audiobook, desc: "Contemporary"}
- {id: Crime, cat: Audio/Audiobook, desc: "Crime"}
- {id: Detective, cat: Audio/Audiobook, desc: "Detective"}
- {id: Doctor, cat: Audio/Audiobook, desc: "Doctor Who"}
- {id: Documentary, cat: Audio/Audiobook, desc: "Documentary"}
- {id: Education, cat: Audio/Audiobook, desc: "Education"}
- {id: Fantasy, cat: Audio/Audiobook, desc: "Fantasy"}
- {id: Full, cat: Audio/Audiobook, desc: "Full Cast"}
- {id: Gay, cat: Audio/Audiobook, desc: "Gay"}
- {id: General, cat: Audio/Audiobook, desc: "General Fiction"}
- {id: Historical, cat: Audio/Audiobook, desc: "Historical Fiction"}
- {id: History, cat: Audio/Audiobook, desc: "History"}
- {id: Horror, cat: Audio/Audiobook, desc: "Horror"}
- {id: Humor, cat: Audio/Audiobook, desc: "Humor"}
- {id: Lecture, cat: Audio/Audiobook, desc: "Lecture"}
- {id: LGBT, cat: Audio/Audiobook, desc: "LGBT"}
- {id: Literature, cat: Audio/Audiobook, desc: "Literature"}
- {id: Lecture, cat: Audio/Audiobook, desc: "Lecture"}
- {id: Lesbian, cat: Audio/Audiobook, desc: "Lesbian"}
- {id: Libertarian, cat: Audio/Audiobook, desc: "Libertarian"}
- {id: LitRPG, cat: Audio/Audiobook, desc: "LitRPG"}
- {id: Literature, cat: Audio/Audiobook, desc: "Literature"}
- {id: Military, cat: Audio/Audiobook, desc: "Military"}
- {id: Misc., cat: Audio/Audiobook, desc: "Misc. Non-fiction"}
- {id: Mystery, cat: Audio/Audiobook, desc: "Mystery"}
- {id: Myth, cat: Audio/Audiobook, desc: "Myth Hunting"}
- {id: Novel, cat: Audio/Audiobook, desc: "Novel"}
- {id: Other, cat: Audio/Audiobook, desc: "Other"}
- {id: Paranormal, cat: Audio/Audiobook, desc: "Paranormal"}
- {id: Plays, cat: Audio/Audiobook, desc: "Plays & Theater"}
- {id: Poetry, cat: Audio/Audiobook, desc: "Poetry"}
- {id: Political, cat: Audio/Audiobook, desc: "Political"}
- {id: Postapocalyptic, cat: Audio/Audiobook, desc: "Postapocalyptic"}
- {id: Radio, cat: Audio/Audiobook, desc: "Radio Productions"}
- {id: Romance, cat: Audio/Audiobook, desc: "Romance"}
- {id: Sci-Fi, cat: Audio/Audiobook, desc: "Sci-Fi"}
- {id: Science, cat: Audio/Audiobook, desc: "Science"}
- {id: Self-help, cat: Audio/Audiobook, desc: "Self-help"}
- {id: SHTF, cat: Audio/Audiobook, desc: "SHTF"}
- {id: Sex, cat: Audio/Audiobook, desc: "Sex Scenes"}
- {id: Short, cat: Audio/Audiobook, desc: "Short Story"}
- {id: Spiritual, cat: Audio/Audiobook, desc: "Spiritual & Religious"}
- {id: Sports, cat: Audio/Audiobook, desc: "Sports"}
- {id: Suspense, cat: Audio/Audiobook, desc: "Suspense"}
- {id: Teen, cat: Audio/Audiobook, desc: "Teen & Young Adult"}
- {id: The, cat: Audio/Audiobook, desc: "The Undead"}
- {id: Thriller, cat: Audio/Audiobook, desc: "Thriller"}
- {id: "True", cat: Audio/Audiobook, desc: "True Crime"}
- {id: Tutorial, cat: Audio/Audiobook, desc: "Tutorial"}
- {id: Violence, cat: Audio/Audiobook, desc: "Violence"}
- {id: Westerns, cat: Audio/Audiobook, desc: "Westerns"}
- {id: Anthology, cat: Audio/Audiobook, desc: "Anthology"}
- {id: Bestsellers, cat: Audio/Audiobook, desc: "Bestsellers"}
- {id: Classic, cat: Audio/Audiobook, desc: "Classic"}
- {id: Documentary, cat: Audio/Audiobook, desc: "Documentary"}
- {id: Full, cat: Audio/Audiobook, desc: "Full Cast"}
- {id: Libertarian, cat: Audio/Audiobook, desc: "Libertarian"}
- {id: Military, cat: Audio/Audiobook, desc: "Military"}
- {id: Novel, cat: Audio/Audiobook, desc: "Novel"}
- {id: Short, cat: Audio/Audiobook, desc: "Short Story"}
modes:
search: [q]
@@ -130,3 +133,11 @@
filters:
- name: regexp
args: "File Size: (.+?)s"
seeders:
text: 1
leechers:
text: 1
downloadvolumefactor:
text: 0
uploadvolumefactor:
text: 1

View File

@@ -43,8 +43,6 @@
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
login:
path: takelogin.php

View File

@@ -0,0 +1,172 @@
---
site: bit-titan
name: BiT-TiTAN
description: "BiT-TiTAN is a GERMAN Private Torrent Tracker for MOVIES / TV / GENERAL"
language: de-de
type: private
encoding: iso-8859-1
links:
- https://bit-titan.net/
caps:
categorymappings:
- {id: 1, cat: TV/Documentary, desc: "Doku HD"}
- {id: 2, cat: TV/Documentary, desc: "Doku Packs"}
- {id: 3, cat: TV/Documentary, desc: "Doku SD"}
- {id: 4, cat: Movies/FOREIGN, desc: "International"}
- {id: 5, cat: Movies/HD, desc: "Movies 1080p"}
- {id: 6, cat: Movies/3D, desc: "Movies 3D"}
- {id: 7, cat: Movies/HD, desc: "Movies 720p"}
- {id: 36, cat: Movies/BluRay, desc: "Movies BluRay"}
- {id: 8, cat: Movies/DVD, desc: "Movies DVD / HDVD"}
- {id: 37, cat: Movies/HD, desc: "Movies HD Pack"}
- {id: 9, cat: Movies/SD, desc: "Movies SD"}
- {id: 38, cat: Movies/SD, desc: "Movies SD Pack"}
- {id: 10, cat: Movies/UHD, desc: "Movies UHD"}
- {id: 11, cat: TV/HD, desc: "Serien HD"}
- {id: 12, cat: TV/OTHER, desc: "Serien Packs"}
- {id: 13, cat: TV/SD, desc: "Serien SD"}
- {id: 14, cat: TV/Sport, desc: "Sport"}
- {id: 15, cat: XXX/x264, desc: "XXX HD"}
- {id: 16, cat: XXX/XviD, desc: "XXX SD"}
- {id: 17, cat: Audio/Lossless, desc: "Musik FLAC"}
- {id: 18, cat: Audio/MP3, desc: "Musik MP3"}
- {id: 19, cat: Audio/Other, desc: "Musik Sonstiges"}
- {id: 20, cat: Audio/Video, desc: "Musik Videos"}
- {id: 23, cat: Console, desc: "Spiele Handy"}
- {id: 24, cat: Console, desc: "Spiele Linux"}
- {id: 21, cat: Console/NDS, desc: "Spiele Nintendo"}
- {id: 22, cat: Console/PSP, desc: "Spiele PlayStation"}
- {id: 25, cat: Console, desc: "Spiele Sonstige"}
- {id: 40, cat: Console, desc: "Spiele Wimmelbild"}
- {id: 26, cat: PC/Games, desc: "Spiele Windows"}
- {id: 27, cat: Console, desc: "XBOX 360/ONE"}
- {id: 28, cat: PC, desc: "Software Handy"}
- {id: 29, cat: PC, desc: "Software Linux"}
- {id: 30, cat: PC/Mac, desc: "Software Mac Os"}
- {id: 31, cat: PC, desc: "Software Sonstige"}
- {id: 32, cat: PC/0day, desc: "Software Windows"}
- {id: 33, cat: TV/Anime, desc: "Anime"}
- {id: 39, cat: Books/Ebook, desc: "eBook"}
- {id: 34, cat: Audio/Audiobook, desc: "Hörbücher/ -spiele"}
- {id: 35, cat: XXX/Other, desc: "XXX Sonstiges"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: username
type: text
label: Username
- name: password
type: password
label: Password
login:
path: login.php
method: form
form: form[action="takelogin.php"]
cookies: ["JAVA=OK"] # avoid jscheck redirect
captcha:
type: image
selector: img[src^="cap/captcha_math.php"]
input: stringCaptcha
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: div#login_error
test:
path: browse.php
selector: a[href="logout.php"]
ratio:
path: browse.php
selector: div#tom-b-t8
filters:
- name: replace
args: [".", ""]
- name: replace
args: [",", "."]
search:
paths:
- path: browse.php
inputs:
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
# seachin 0=name 1=descr 2=both
blah: 0
# include dead 0=active 1=all 2=dead
incldead: 1
orderby: "added"
sort: "desc"
showsearch: 0
rows:
selector: table.tableinborder[border="0"][cellspacing="0"][cellpadding="0"] tr
fields:
category:
selector: td.tableb a
attribute: href
filters:
- name: querystring
args: cat
title:
selector: div a.tor-name
details:
selector: div a.tor-name
attribute: href
download:
selector: div a.tor-name
attribute: href
filters:
- name: replace
args: ["details.php?id=", "download.php?torrent="]
banner:
selector: div[id^="details-"] img
attribute: src
seeders:
selector: div.tor-sl b
leechers:
selector: div.tor-sl b:last-of-type
# 2 flavours of dates
date:
# Heute 13:30:04
# Gestern 09:10:10
selector: div.tor-date:not(:contains("."))
optional: true
filters:
- name: replace
args: ["Heute", "Today"]
- name: replace
args: ["Gestern", "Yesterday"]
date:
# 30.02.2018&nbsp;23:12:50
selector: div.tor-date:contains(".")
optional: true
filters:
- name: replace
args: ["\u00a0", " "]
- name: dateparse
args: "02.01.2006 15:04:05"
size:
selector: div.tor-size
filters:
- name: replace
args: [".", ""]
- name: replace
args: [",", "."]
grabs:
selector: div.tor-take
filters:
- name: regexp
args: "(\\d+)"
downloadvolumefactor:
case:
img[src="pic/ou_new.png"]: "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"

View File

@@ -64,11 +64,11 @@
size:
selector: td:nth-child(5)
seeders:
selector: td:nth-child(7)
leechers:
selector: td:nth-child(8)
grabs:
selector: td:nth-child(6)
leechers:
selector: td:nth-child(7)
grabs:
selector: td:nth-child(8)
filters:
- name: regexp
args: ([\d\.]+)
@@ -104,12 +104,17 @@
args: [" (ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
downloadvolumefactor:
case:
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
"i[data-original-title=\"Personal Freeleech\"]": "0" # 24 Hour FreeLeech From BON Store
"i[data-original-title=\"Special Freeleech\"]": "0" # Special FreeLeech For Certain User Groups
"i[data-original-title=\"Freeleech Token\"]": "0" # Freeleech From Token
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
"i[data-original-title=\"Freeleech\"]": "0" # Freeleech
"i[data-original-title=\"Featured\"]": "0" # Featured Torrent
"*": "1"
uploadvolumefactor:
case:
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Global Double Upload\"]": "2" # Global Double Upload
"i[data-original-title=\"Featured\"]": "2" # Featured Torrent
"*": "1"
# UNIT3D

View File

@@ -0,0 +1,64 @@
---
site: btdb
name: BTDB
description: "BTDB is a Public BitTorrent DHT search engine."
language: en-us
type: public
encoding: UTF-8
links:
- https://btdb.eu/
legacylinks:
- https://btdb.to/
- https://btdb.unblocked.app/
caps:
categorymappings:
- {id: 1, cat: Other, desc: "Other"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: info
type: info
label: Category for Sonarr and Radarr
default: BTDB does not use categories. In your Sonarr or Radarr Torznab Indexer settings, set the category to 100001.
search:
paths:
- path: "{{if .Keywords}}?search={{ .Keywords}}&sort=time{{else}}recent{{end}}"
- path: "{{if .Keywords}}?search={{ .Keywords}}&sort=time&page=2{{else}}{{end}}"
- path: "{{if .Keywords}}?search={{ .Keywords}}&sort=time&page=3{{else}}{{end}}"
- path: "{{if .Keywords}}?search={{ .Keywords}}&sort=time&page=4{{else}}{{end}}"
rows:
selector: li[class$="item"]
fields:
title:
selector: h2[class$="title"] a[href*="/torrent/"]
attribute: title
category:
text: "1"
details:
selector: h2[class$="title"] a[href*="/torrent/"]
attribute: href
magnet:
selector: div[class$="info"] a[href^="magnet:?xt="]
attribute: href
size:
selector: div[class$="info"] span:nth-of-type(1)
files:
selector: div[class$="info"] span:nth-of-type(2)
date:
selector: div[class$="info"] span:nth-of-type(3)
grabs:
selector: div[class$="info"] span:nth-of-type(4)
seeders:
text: 1
leechers:
text: 1
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -0,0 +1,80 @@
---
site: btdigg
name: BTDigg
description: "BTDigg is a Public BitTorrent DHT search engine."
language: en-us
type: public
encoding: UTF-8
links:
- https://btdig.com/
caps:
categories:
1: Other
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: info
type: info
default: BTDigg does not use categories. In your software Indexer settings, set the category to 100001.
search:
# https://btdig.com/search?q=test&order=2
# only 10 results per page
# https://btdig.com/search?q=test&p=1&order=2
paths:
- path: search
- path: search
inputs:
p: 1
- path: search
inputs:
p: 2
- path: search
inputs:
p: 3
- path: search
inputs:
p: 4
inputs:
q: "{{if .Keywords }}{{.Keywords}}{{else}}test{{end}}"
order: 2
rows:
selector: div.one_result
filters:
- name: andmatch
fields:
title:
selector: div.torrent_name a
category:
text: 1
details:
selector: div.torrent_name a
attribute: href
download:
selector: a[href^="magnet:?xt="]
attribute: href
date:
selector: span.torrent_age
filters:
- name: replace
args: ["found ", ""]
files:
text: 1
files:
selector: span.torrent_files
optional: true
size:
selector: span.torrent_size
seeders:
text: 1
leechers:
text: 1
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -46,7 +46,7 @@
password__dupa: "{{ .Config.password }}"
error:
- selector: td.embedded:has(h2:contains("failed"))
- selector: td.embedded:has(h2:contains("Error"))aD
- selector: td.embedded:has(h2:contains("Error"))
test:
selector: a[href^="logout.php"]
path: browse.php

View File

@@ -1,78 +0,0 @@
---
site: btstornet
name: BTstor.net
description: "BTstor.net is a Public BT-Scene clone for MOVIES / TV / GENERAL"
language: us-en
type: public
encoding: UTF-8
links:
- https://btstor.net/
caps:
categories:
"anime": TV/Anime
"books": Books
"games": PC/Games
"movies": Movies
"music": Audio
"other": Other
"shows": TV
"software": PC
"video": Movies
"xxx": XXX
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings: []
download:
selector: "#dlt_"
search:
# https://btstor.net/
# https://btstor.net/q/midnight+texas+s01e10/date/
keywordsfilters:
# replace space between keywords with +
- name: re_replace
args: [" ", "+"]
paths:
- path: "q/{{ if .Keywords }}{{ .Keywords }}{{else}}test{{end}}/date/"
rows:
selector: table.tor > tbody > tr[class$="_tr"]
filters:
- name: andmatch
fields:
title:
selector: td.tname_index > a
details:
selector: td.tname_index > a
attribute: href
category:
# src="https://btstor.net/templates/btscene/images/shows.png"
selector: td.tname_index > img
attribute: src
filters:
- name: replace
args: [".png", ""]
- name: split
args: ["/", 6]
download:
selector: td.tname_index > a
attribute: href
size:
selector: td.tsize_index
seeders:
selector: td.tseeds_index
leechers:
selector: td.tpeers_index
date:
selector: td.tupd_index
filters:
- name: timeago
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -0,0 +1,141 @@
---
site: casatorrent
name: Casa-Torrent
description: "Casa-Torrent is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
language: fr-fr
type: private
encoding: UTF-8
links:
- https://teamctgame.co/
caps:
categorymappings:
- {id: 65, cat: Movies/HD, desc: "BD: BD"}
- {id: 68, cat: Books/Magazines, desc: "Ebooks: Presse"}
- {id: 56, cat: Books/Ebook, desc: "Ebooks: Ebooks"}
- {id: 90, cat: Audio/Audiobook, desc: "Ebooks: Audio books"}
- {id: 84, cat: XXX, desc: "Ebooks: XXX"}
- {id: 95, cat: Books/Comics, desc: "Ebooks: Mangas"}
- {id: 53, cat: Movies/HD, desc: "Films: 4K"}
- {id: 50, cat: Movies/UHD, desc: "Films: 4K-Remux"}
- {id: 72, cat: Movies/HD, desc: "Films: x265"}
- {id: 54, cat: Movies/3D, desc: "Films: 3D"}
- {id: 71, cat: Movies/BluRay, desc: "Films: Full Bluray"}
- {id: 96, cat: Movies, desc: "Films: Remux"}
- {id: 78, cat: Movies/DVD, desc: "Films: DVD-R"}
- {id: 52, cat: Movies/HD, desc: "Films: HD.1080p"}
- {id: 51, cat: Movies/HD, desc: "Films: HD.720p"}
- {id: 87, cat: Movies/HD, desc: "Films: HDRiP"}
- {id: 60, cat: Movies, desc: "Films: Pack"}
- {id: 47, cat: Movies/DVD, desc: "Films: DVDRip"}
- {id: 48, cat: Movies/BluRay, desc: "Films: BDRip / BRRip"}
- {id: 80, cat: Movies/HD, desc: "Films: HDLiGHT / M-HD"}
- {id: 63, cat: Movies/HD, desc: "Films: HD TV"}
- {id: 58, cat: Movies/WEBDL, desc: "Films: Web - DL"}
- {id: 75, cat: TV, desc: "Films: TVRiP"}
- {id: 61, cat: Movies, desc: "Films: Animation"}
- {id: 82, cat: TV/Anime, desc: "Films: Mangas"}
- {id: 55, cat: Movies, desc: "Films: VOSTFR"}
- {id: 89, cat: Movies, desc: "Films: VO"}
- {id: 57, cat: Movies/WEBDL, desc: "Films: WebRip"}
- {id: 98, cat: Movies, desc: "Films: VFSTFR"}
- {id: 1, cat: XXX, desc: "Films: XXX"}
- {id: 66, cat: PC/Games, desc: "Jeux: PC"}
- {id: 97, cat: Console/PSP, desc: "Jeux : Jeux PS"}
- {id: 81, cat: Console/Xbox, desc: "Jeux : XboX"}
- {id: 62, cat: PC/0day, desc: "Logiciels: Windows"}
- {id: 99, cat: Other, desc: "Logiciels: Graph / Wallpaper"}
- {id: 77, cat: PC/Phone-Android, desc: "Logiciels: Android"}
- {id: 94, cat: PC/Mac, desc: "Logiciels: MAC"}
- {id: 93, cat: TV/Anime, desc: "Mangas: Animés"}
- {id: 86, cat: TV/HD, desc: "Series: Episode HD"}
- {id: 85, cat: TV/SD, desc: "Series: Episode SD"}
- {id: 59, cat: TV/SD, desc: "Series: Tv - Pack SD"}
- {id: 100, cat: TV/HD, desc: "Series: Tv - Pack HD"}
- {id: 101, cat: TV/HD, desc: "Series: Episode HD Vostfr"}
- {id: 102, cat: TV/SD, desc: "Series: Episode SD Vostfr"}
- {id: 103, cat: TV/HD, desc: "Series: Tv - Pack HD Vostfr"}
- {id: 104, cat: TV/SD, desc: "Series: Tv - Pack SD Vostfr"}
- {id: 88, cat: TV, desc: "Spectacles: Tous"}
- {id: 73, cat: TV/Documentary, desc: "TV: Documentaires"}
- {id: 83, cat: TV, desc: "TV: Emissions"}
- {id: 74, cat: TV/Sport, desc: "TV: Sports"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
login:
path: account-login.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: p#msgError
test:
path: torrents-search.php
selector: a[href="account-logout.php"]
ratio:
path: torrents-search.php
selector: div#infobar b
search:
paths:
- path: torrents-search.php
inputs:
$raw: "{{range .Categories}}c{{.}}=1&{{end}}"
search: "{{ .Keywords }}"
incldead: 1
freeleech: 0
lang: 0
rows:
selector: table.ttable_headinner > tbody > tr.t-row
fields:
title:
selector: a[href^="torrents-details.php?id="] b
category:
selector: a[href^="torrents.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: a[href^="torrents-details.php?id="]
attribute: href
download:
selector: a[href^="download.php?id="]
attribute: href
banner:
selector: img[src*="/uploads/images/"]
attribute: src
grabs:
selector: a[onmouseover][href^="torrents-details.php?id="]
attribute: onmouseover
filters:
- name: regexp
args: "Snatched: </b>(\\d+)<br"
size:
selector: td:nth-last-child(5)
seeders:
selector: td:nth-last-child(4)
leechers:
selector: td:nth-last-child(3)
date:
selector: a[onmouseover][href^="torrents-details.php?id="]
attribute: onmouseover
filters:
- name: regexp
args: "le: </b>(.*?)<br"
- name: dateparse
args: "02-01-2006"
downloadvolumefactor:
case:
img[src="images/free.gif"]: "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"

View File

@@ -1,17 +1,19 @@
---
site: btxpress
name: BTXpress
description: "HD Tracker Movies/TV"
site: Channelx
name: ChannelX
description: "ChannelX is a Private Torrent Tracker for High Quality Optimized HD MOVIES / TV"
language: en-us
type: private
encoding: UTF-8
links:
- https://btxpress.org/
- https://channelx.online/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 3, cat: Audio, desc: "Audiotracks"}
- {id: 4, cat: TV/Sport, desc: "Sports"}
modes:
search: [q]
@@ -24,10 +26,22 @@
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: 1
error:
- selector: table.main:contains("Login Failed!")
- selector: form[action*="/login"] .text-red
test:
path: torrents
selector: a[href$="/logout"]
ratio:
path: torrents
selector: li:has(i.fa-sync-alt)
filters:
- name: regexp
args: "Ratio : (\\d+)"
download:
selector: a[href*="/download/"]
search:
paths:
@@ -35,12 +49,13 @@
inputs:
$raw: "{{range .Categories}}categories[]={{.}}&{{end}}"
search: "{{if .Query.IMDBID}}{{else}}{{ .Keywords }}{{end}}"
description: ""
uploader: ""
imdb: "{{ .Query.IMDBIDShort }}"
tvdb: ""
tmdb: ""
mal: ""
sorting: created_at
sort: created_at
direction: desc
qty: 100
rows:
@@ -55,22 +70,33 @@
title:
selector: a.view-torrent
download:
selector: a[href*="/download/"]
selector: a[href*="/download_check/"]
attribute: href
details:
selector: a.view-torrent
attribute: href
banner:
optional: true
selector: div.torrent-poster img
attribute: src
filters:
- name: replace
args: ["https://via.placeholder.com/600x900", ""]
size:
selector: td:nth-child(4)
seeders:
selector: td:nth-child(6)
leechers:
selector: td:nth-child(7)
grabs:
selector: td:nth-child(5)
grabs:
selector: td:nth-child(6)
filters:
- name: regexp
args: ([\d\.]+)
seeders:
selector: td:nth-child(7)
leechers:
selector: td:nth-child(8)
imdb:
optional: true
selector: a[href*="www.imdb.com/title/tt"]
attribute: href
date:
selector: time
filters:
@@ -99,11 +125,17 @@
args: [" (ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
downloadvolumefactor:
case:
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
"i[data-original-title=\"Personal Freeleech\"]": "0" # 24 Hour FreeLeech From BON Store
"i[data-original-title=\"Special Freeleech\"]": "0" # Special FreeLeech For Certain User Groups
"i[data-original-title=\"Freeleech Token\"]": "0" # Freeleech From Token
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
"i[data-original-title=\"Freeleech\"]": "0" # Freeleech
"i[data-original-title=\"Featured\"]": "0" # Featured Torrent
"*": "1"
uploadvolumefactor:
case:
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Global Double Upload\"]": "2" # Global Double Upload
"i[data-original-title=\"Featured\"]": "2" # Featured Torrent
"*": "1"
# UNIT3D 1.9

View File

@@ -0,0 +1,142 @@
---
site: cinefilhd
name: CiNEFiLHD
description: "CiNEFiLHD is a Private Torrent Tracker for MOVIES / TV / MUSIC"
language: en-us
type: private
encoding: UTF-8
links:
- 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/WEBDL, desc: " Internal/WEB-DL"}
- {id: 25, cat: Movies/3D, desc: " Movies/3D-Ou"}
- {id: 16, cat: Movies/3D, desc: " Movies/3D-SbS"}
- {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/WEBDL, 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, imdbid]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
login:
path: takelogin.php
method: post
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
submitme: "LOGIN"
returnto: /
error:
- selector: h2:contains("failed")
message:
selector: td.colhead2
test:
path: browse.php
selector: :has(a[href^="logout.php?hash_please="])
ratio:
path: browse.php
selector: div div font:contains("Ratio:")
filters:
- name: regexp
args: "Ratio:\\s(.*?)\\s"
search:
paths:
- path: browse.php
inputs:
$raw: "{{range .Categories}}cat{{.}}=1&{{end}}"
search: "{{if .Query.IMDBID}}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
# title descr genre all
searchin: "{{ if .Query.IMDBID }}descr{{else}}title{{end}}"
# 0=active 1=incl dead 2=only dead
incldead: 1
# 0=no 1=yes
only_free: 0
rows:
selector: table.mainouter table > tbody > tr:has(a[href^="details.php?id="]), table.mainouter table > tbody > tr[id^="kdescr"]
after: 1
fields:
title:
selector: a[href^="details.php?id="]
details:
selector: a[href^="details.php?id="]
attribute: href
category:
selector: a[href^="browse.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
download:
selector: a[href^="details.php?id="]
attribute: href
filters:
- name: replace
args: ["details.php?id=", "download.php?torrent="]
banner:
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=\\'(.*?)\\'
imdb:
optional: true
selector: a[href*="www.imdb.com/title/tt"]
files:
selector: td:nth-child(4)
# 2 flavours of dates
date:
# Today<br /> 10:20 AM
# Yesterday<br /> 08:03 PM
optional: true
selector: td:nth-child(6):contains("day")
date:
# Feb 14 2019<br /> 10:20 AM
optional: true
selector: td:nth-child(6):not(:contains("day"))
filters:
- name: dateparse
args: "Jan 2 2006 03:04 pm"
size:
selector: td:nth-child(7)
grabs:
selector: td:nth-child(8)
filters:
- name: regexp
args: ([\d,]+)
seeders:
selector: td:nth-child(9)
leechers:
selector: td:nth-child(10)
downloadvolumefactor:
case:
tr.freeleech_color: "0"
tr.highlight: "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"
# U-232 v3

View File

@@ -7,7 +7,7 @@
encoding: UTF-8
followredirect: true
links:
- https://www.cpasbiens.bz/
- https://www.cpasbien.vg/
legacylinks:
- http://www.cpasbiens.cc/
- http://www.cpabien.cm/
@@ -34,6 +34,7 @@
- https://www.cpabien.bz/
- https://www.cpabien.link/
- https://www.cpasbiens.cz/
- https://www.cpasbiens.bz/
caps:
categorymappings:

View File

@@ -1,50 +1,63 @@
---
site: redtopia
name: Redtopia
description: "Tracker Music/Podcasts/Audiobooks"
site: desireleasers
name: DesiReleasers
description: "DesiReleasers is an INDIAN Private Torrent Tracker for INDIAN MOVIES"
language: en-us
type: private
encoding: UTF-8
links:
- https://redtopia.xyz/
- https://desireleasers.be/
caps:
categorymappings:
- {id: 1, cat: Audio, desc: "Studio Album"}
- {id: 2, cat: Audio, desc: "Studio Single"}
- {id: 3, cat: Audio, desc: "Studio Collection"}
- {id: 4, cat: Audio, desc: "Indie Album"}
- {id: 5, cat: Audio, desc: "Indie Single"}
- {id: 6, cat: Audio, desc: "Indie Collection"}
- {id: 7, cat: Audio, desc: "Live Album"}
- {id: 8, cat: Audio, desc: "OST"}
- {id: 9, cat: Audio, desc: "Podcast"}
- {id: 10, cat: Audio, desc: "Audio Book"}
- {id: 11, cat: Audio, desc: "Audio Drama"}
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 3, cat: Audio, desc: "Music"}
- {id: 4, cat: Audio/Video, desc: "Music Videos"}
modes:
search: [q]
music-search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
settings:
- name: cookie
type: text
label: Cookie
- name: info
type: info
label: How to get the Cookie
default: "<ol><li>Login to this tracker in your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here</ol>"
login:
path: login
method: form
method: cookie
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: form[action*="/login"] .text-red
cookie: "{{ .Config.cookie }}"
test:
test:
path: torrents
selector: a[href$="/logout"]
ratio:
path: torrents
selector: li:has(i.fa-sync-alt)
filters:
- name: regexp
args: "Ratio : (\\d+)"
search:
paths:
- path: filterTorrents
inputs:
$raw: "{{range .Categories}}categories[]={{.}}&{{end}}"
search: "{{ .Keywords }}"
search: "{{if .Query.IMDBID}}{{else}}{{ .Keywords }}{{end}}"
description: ""
uploader: ""
sorting: created_at
imdb: "{{ .Query.IMDBIDShort }}"
tvdb: ""
tmdb: ""
mal: ""
sort: created_at
direction: desc
qty: 100
rows:
@@ -64,17 +77,25 @@
details:
selector: a.view-torrent
attribute: href
banner:
optional: true
selector: div.torrent-poster img
attribute: src
size:
selector: td:nth-child(4)
selector: td:nth-child(5)
seeders:
selector: td:nth-child(6)
leechers:
selector: td:nth-child(7)
grabs:
selector: td:nth-child(5)
selector: td:nth-child(8)
filters:
- name: regexp
args: ([\d\.]+)
imdb:
optional: true
selector: a[href*="www.imdb.com/title/tt"]
attribute: href
date:
selector: time
filters:
@@ -103,11 +124,17 @@
args: [" (ay|kuud|måneder|mesi|miesiące|meses|měsíce|месяца|месяцев|luni|meses|mois|Monaten|месеца|maanden)", "months"]
downloadvolumefactor:
case:
"i[data-original-title=\"100% Free\"]": "0"
"i[data-original-title=\"Global FreeLeech\"]": "0"
"i[data-original-title=\"Personal Freeleech\"]": "0" # 24 Hour FreeLeech From BON Store
"i[data-original-title=\"Special Freeleech\"]": "0" # Special FreeLeech For Certain User Groups
"i[data-original-title=\"Freeleech Token\"]": "0" # Freeleech From Token
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
"i[data-original-title=\"Freeleech\"]": "0" # Freeleech
"i[data-original-title=\"Featured\"]": "0" # Featured Torrent
"*": "1"
uploadvolumefactor:
case:
"i[data-original-title=\"Double Upload\"]": "2" # global flag
"i[data-original-title=\"Double upload\"]": "2" # torrent specific flag
"i[data-original-title=\"Double Upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Global Double Upload\"]": "2" # Global Double Upload
"i[data-original-title=\"Featured\"]": "2" # Featured Torrent
"*": "1"
# UNIT3D 1.9.1

View File

@@ -114,3 +114,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -21,55 +21,70 @@
caps:
categorymappings:
# ANIMES
- {id: 105, cat: TV/Anime, desc: "1080p"}
- {id: 104, cat: TV/Anime, desc: "720p"}
- {id: 90, cat: TV/Anime, desc: "HDRIP-720p"}
- {id: 93, cat: TV/Anime, desc: "HDRIP1080p"}
- {id: 131, cat: TV/Anime, desc: "SD"}
- {id: 120, cat: TV/Anime, desc: "X265-1080p"}
- {id: 119, cat: TV/Anime, desc: "X265-720p"}
- {id: 107, cat: TV/Anime, desc: "1080p"}
- {id: 106, cat: TV/Anime, desc: "720p"}
- {id: 94, cat: TV/Anime, desc: "HDRIP1080p"}
- {id: 91, cat: TV/Anime, desc: "HDRIP720p"}
- {id: 105, cat: TV/Anime, desc: "ANIMES 1080p-Bluray"}
- {id: 149, cat: TV/Anime, desc: "ANIMES 3D"}
- {id: 143, cat: TV/Anime, desc: "ANIMES 4K-2160p"}
- {id: 104, cat: TV/Anime, desc: "ANIMES 720p-Bluray"}
- {id: 90, cat: TV/Anime, desc: "ANIMES HDrip-720p"}
- {id: 93, cat: TV/Anime, desc: "ANIMES HDrip-1080p"}
- {id: 131, cat: TV/Anime, desc: "ANIMES SD"}
- {id: 120, cat: TV/Anime, desc: "ANIMES X265-1080p"}
- {id: 119, cat: TV/Anime, desc: "ANIMES X265-720p"}
# DOCUMENTAIRES
- {id: 107, cat: TV/Documentary, desc: "DOCS 1080p-Bluray"}
- {id: 152, cat: TV/Documentary, desc: "DOCS 2160p-Bluray"}
- {id: 106, cat: TV/Documentary, desc: "DOCS 720p-Bluray"}
- {id: 94, cat: TV/Documentary, desc: "DOCS HDrip-1080p"}
- {id: 91, cat: TV/Documentary, desc: "DOCS HDrip-720p"}
- {id: 142, cat: TV/Documentary, desc: "DOCS HDTV"}
- {id: 141, cat: TV/Documentary, desc: "DOCS SD"}
# EBOOK
- {id: 124, cat: Books, desc: "Livres et Magazines"}
# FILMS
- {id: 97, cat: Movies/HD, desc: "1080p"}
- {id: 103, cat: Movies/3D, desc: "3D"}
- {id: 111, cat: Movies/HD, desc: "4K"}
- {id: 96, cat: Movies/HD, desc: "720p"}
- {id: 127, cat: Movies/HD, desc: "BDrip"}
- {id: 128, cat: Movies/HD, desc: "BRrip"}
- {id: 126, cat: Movies/SD, desc: "DVDrip"}
- {id: 89, cat: Movies/HD, desc: "HDRIP-720p"}
- {id: 92, cat: Movies/HD, desc: "HDRIP1080p"}
- {id: 112, cat: Movies/SD, desc: "Team-Hush"}
- {id: 129, cat: Movies/HD, desc: "Team-Romkent"}
- {id: 125, cat: Movies/Other, desc: "WEBrip"}
- {id: 110, cat: Movies/HD, desc: "X265-1080p"}
- {id: 109, cat: Movies/HD, desc: "X265-720p"}
- {id: 97, cat: Movies/HD, desc: "FILMS Bluray-1080p"}
- {id: 103, cat: Movies/3D, desc: "FILMS 3D"}
- {id: 111, cat: Movies/UHD, desc: "FILMS 4K"}
- {id: 96, cat: Movies/HD, desc: "FILMS Bluray-720p"}
- {id: 127, cat: Movies/HD, desc: "FILMS BDrip"}
- {id: 128, cat: Movies/HD, desc: "FILMS BRrip"}
- {id: 140, cat: Movies/HD, desc: "FILMS BSD-Team"}
- {id: 126, cat: Movies/SD, desc: "FILMS DVDrip"}
- {id: 136, cat: Movies/BluRay, desc: "FILMS Full-Bluray"}
- {id: 135, cat: Movies/SD, desc: "FILMS Team Freedom-HD"}
- {id: 137, cat: Movies/SD, desc: "FILMS Team ticadow"}
- {id: 89, cat: Movies/HD, desc: "FILMS HDrip-720p"}
- {id: 92, cat: Movies/HD, desc: "FILMS HDrip-1080p"}
- {id: 112, cat: Movies/SD, desc: "FILMS Team-Hush"}
- {id: 129, cat: Movies/HD, desc: "FILMS Team-Romkent"}
- {id: 125, cat: Movies/Other, desc: "FILMS WEBrip"}
- {id: 110, cat: Movies/HD, desc: "FILMS X265-1080p"}
- {id: 109, cat: Movies/HD, desc: "FILMS X265-720p"}
# GAMES
- {id: 134, cat: PC/Games, desc: "jeu PC"}
# MUSIQUES
- {id: 114, cat: Audio/Lossless, desc: "Flac"}
- {id: 113, cat: Audio/MP3, desc: "MP3"}
- {id: 132, cat: Audio, desc: "Musiques-HQ"}
- {id: 130, cat: Audio/Video, desc: "video clip"}
# SERIE-sd
- {id: 121, cat: TV/SD, desc: "SD"}
# SERIES-HD
- {id: 102, cat: TV/HD, desc: "1080p"}
- {id: 101, cat: TV/HD, desc: "720p"}
- {id: 100, cat: TV/HD, desc: "HDrip1080p"}
- {id: 99, cat: TV/HD, desc: "HDrip720p"}
- {id: 114, cat: Audio/Lossless, desc: "MUSIQUES Flac"}
- {id: 113, cat: Audio/MP3, desc: "MUSIQUES MP3"}
- {id: 132, cat: Audio, desc: "MUSIQUES HQ"}
- {id: 130, cat: Audio/Video, desc: "MUSIQUES video clip"}
# SERIE
- {id: 121, cat: TV/SD, desc: "SERIE SD"}
- {id: 102, cat: TV/HD, desc: "SERIE 1080p-Bluray"}
- {id: 101, cat: TV/HD, desc: "SERIE 720p-Bluray"}
- {id: 100, cat: TV/HD, desc: "SERIE HDrip-1080p"}
- {id: 99, cat: TV/HD, desc: "SERIE HDrip-720p"}
- {id: 151, cat: TV/UHD, desc: "SERIE HDrip-2160p"}
# SPECTACLES
- {id: 118, cat: TV/Sport, desc: "HDRIP1080p"}
- {id: 117, cat: TV/Sport, desc: "HDRIP720p"}
- {id: 138, cat: TV, desc: "SPECTACLES Bluray-1080p"}
- {id: 139, cat: TV, desc: "SPECTACLES Bluray-720p"}
- {id: 133, cat: TV, desc: "SPECTACLES DVDrip"}
- {id: 118, cat: TV, desc: "SPECTACLES HDrip-1080p"}
- {id: 117, cat: TV, desc: "SPECTACLES HDrip-720p"}
# SPORT
- {id: 146, cat: TV/Sport, desc: "SPORT HDTV-1080p"}
- {id: 147, cat: TV/Sport, desc: "SPORT HDTV-720p"}
- {id: 148, cat: TV/Sport, desc: "SPORT SD"}
- {id: 144, cat: TV/Sport, desc: "SPORT WEB-DL-1080p"}
- {id: 145, cat: TV/Sport, desc: "SPORT WEB-DL-720p"}
modes:
search: [q]
@@ -134,6 +149,8 @@
selector: td:nth-child(4)
leechers:
selector: td:nth-child(5)
date:
text: now
downloadvolumefactor:
case:
img[alt="freeleech"]: "0"

View File

@@ -1,18 +1,28 @@
---
site: 420files
name: 420files
description: "Tracker Movies/TV/Music"
site: freetorrent
name: FreeTorrent
description: "FreeTorrent is a Private Torrent Tracker for HD MOVIES / TV"
language: en-us
type: private
encoding: UTF-8
links:
- https://420.org/
- https://freetorrent.tk/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Movies"}
- {id: 2, cat: TV, desc: "TV"}
- {id: 3, cat: Audio, desc: "Music"}
- {id: 4, cat: PC/0day, desc: "Software"}
- {id: 5, cat: Books, desc: "Ebook"}
- {id: 6, cat: PC/Games, desc: "Games"}
- {id: 7, cat: TV, desc: "Animations"}
- {id: 8, cat: PC, desc: "Linux"}
- {id: 9, cat: PC/Mac, desc: "MacOS"}
- {id: 10, cat: PC/Phone-Android, desc: "Android app"}
- {id: 11, cat: PC/Phone-Android, desc: "Android ROMs"}
- {id: 12, cat: TV/Documentary, desc: "Documentaries"}
- {id: 13, cat: TV, desc: "Shows"}
modes:
search: [q]
@@ -41,7 +51,7 @@
tvdb: ""
tmdb: ""
mal: ""
sorting: created_at
sort: created_at
direction: desc
qty: 100
rows:
@@ -72,6 +82,10 @@
filters:
- name: regexp
args: ([\d\.]+)
imdb:
optional: true
selector: a[href^="https://www.imdb.com/title/"]
attribute: href
date:
selector: time
filters:
@@ -102,9 +116,11 @@
case:
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
"i[data-original-title=\"Global FreeLeech\"]": "0" # Global Freeleech
"i[data-original-title=\"Freeleech\"]": "0" # Freeleech
"*": "1"
uploadvolumefactor:
case:
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -113,3 +113,4 @@
"i[data-original-title=\"Double upload\"]": "2"
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -120,3 +120,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -26,19 +26,19 @@
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
settings:
- name: cookie
type: text
label: Cookie
- name: info
type: info
label: How to get the Cookie
default: "<ol><li>Login to this tracker with your browser<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find 'cookie:' in the <b>Request Headers</b> section<li>Copy & paste the whole cookie string to here.</ol>"
login:
path: login.php
method: form
form: form[action="takelogin.php"]
captcha:
type: image
selector: img[alt="CAPTCHA"]
input: imagestring
method: cookie
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: td.embedded:has(h2:contains("failed"))
cookie: "{{ .Config.cookie }}"
test:
path: torrents.php
@@ -58,11 +58,16 @@
inputs:
$raw: "{{range .Categories}}cat{{.}}=1&{{end}}"
search: "{{if .Query.IMDBID}}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
incldead: "1"
spstate: "0"
inclbookmarked: "0"
# 0=including dead 1=active 2=dead
incldead: 0
# show promotions 0=all 1=normal 2=free 3=2x 4=2x free 5=50% 6=2x50% 7=30%
spstate: 0
# 0=all 1=bookmarked 2=not
inclbookmarked: 0
# 0=title 1=descr 3=uploaded 4=imdb url
search_area: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
search_mode: "0"
# 0=AND 1=OR 2=exact
search_mode: 0
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
filters:
@@ -84,7 +89,7 @@
selector: form[action^="download.php?id="]
attribute: action
imdb:
selector: a[href^="http://www.imdb.com/title/tt"]
selector: a[href*="www.imdb.com/title/tt"]
attribute: href
size:
selector: td.rowfollow:nth-child(5)
@@ -118,4 +123,5 @@
"*": "1"
description:
selector: td:nth-child(2)
remove: a, img
remove: a, img
# NexusPHP

View File

@@ -111,3 +111,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -60,7 +60,7 @@
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
error:
- selector: font:contains("failed") + table
- selector: div.alert:contains("failed")
test:
path: browse.php

View File

@@ -0,0 +1,70 @@
---
site: kikibt
name: KikiBT
description: "KikiBT is a CHINESE Public BitTorrent DHT search engine."
language: cn-cn
type: public
encoding: UTF-8
followredirect: true
links:
- https://kikibt.cc/
- https://kikibt.me/
caps:
categorymappings:
- {id: 1, cat: Other, desc: "Other"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
settings:
- name: info
type: info
default: KikiBT does not use categories. In your software Indexer settings, set the category to 100001.
download:
selector: a[href^="magnet:?"]
search:
paths:
- path: /
method: post
followredirect: true
inputs:
keyword: "{{if .Keywords }}{{.Keywords}}{{else}}test{{end}}"
rows:
selector: dl.item
filters:
- name: andmatch
fields:
title:
selector: dt a
category:
text: "1"
details:
selector: dt a
attribute: href
download:
selector: dt a
attribute: href
size:
selector: dd span:nth-of-type(2) b
files:
selector: dd span:nth-of-type(3) b
date:
selector: dd span:nth-of-type(1) b
filters:
- name: dateparse
args: "2006-01-02"
grabs:
selector: dd span:nth-of-type(5) b
seeders:
text: "1"
leechers:
text: "1"
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -110,6 +110,13 @@
paths:
# http://kinozal.tv/browse.php?s=lucifer+2017&g=0&c=0&v=0&d=0&w=0&t=0&f=0
- path: browse.php
keywordsfilters:
- name: diacritics
args: replace
- name: re_replace # S01 to 1
args: ["(?i)\\bS0*(\\d+)\\b", "$1"]
- name: re_replace # S01E01 to 1 1
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1 $2"]
inputs:
# multi cat is not supported. so defaulting to ALL
c: "0"
@@ -159,18 +166,25 @@
title:
selector: td.nam a[href^="/details.php?id="]
filters:
- name: re_replace
args: ["\\b(\\d)\\b", "0$1"]
# normalize to SXXEYY format
- name: replace
args: [" / ", " "]
- name: replace
args: ["Кураж-Бамбей", "kurazh"]
- name: replace
args: ["Кубик в Кубе", "Kubik"]
- name: re_replace
args: ["(\\((\\d+)\\s+[Сс]езон:\\s+((\\d+-*\\d*)\\s+[Сс]ери[ия]\\s+.*\\d+)*\\))", "(S$2E$4) RUS"]
args: ["\\((\\d+)\\s+[Сс]езон:\\s+(?:(\\d+-*\\d*)\\s+[Сс]ери[ия]\\s+.*\\d+)\\)(.*)\\s([12][0-9]{3})\\s(.*)", "$3 - S$1E$2 - rus $5"]
- name: re_replace
args: ["(\\([А-Яа-я\\W]+\\))|(^[А-Яа-я\\W\\d]+\\/ )|([а-яА-Я \\-]+,+)|([а-яА-Я]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
- name: re_replace
args: ["\\((\\d+p)\\)", "$1"]
- name: replace
args: ["-Rip", "Rip"]
- name: replace
args: ["WEB-DL", "WEBDL"]
- name: replace
args: ["WEBDLRip", "WEBDL"]
- name: replace
args: ["WEB-DLRip", "WEBDL"]
- name: replace
args: ["HDTVRip", "HDTV"]
details:

View File

@@ -0,0 +1,63 @@
---
site: mactorrents
name: MacTorrents
description: "MacTorrents is a Public tracker for Mac software"
language: en-us
type: public
encoding: UTF-8
links:
- https://mac-torrents.com/
caps:
categories:
"mac-os-apps": PC/Mac
"mac-os-games": PC/Games
modes:
search: [q]
settings: []
search:
paths:
- path: /
inputs:
s: "{{.Keywords}}"
rows:
selector: div.iso-item article
fields:
title:
selector: div.blog-content h3 a
category:
selector: a[href*="/category/"]
attribute: href
filters:
- name: split
args: ["/", 4]
details:
selector: div.blog-content h3 a
attribute: href
download:
selector: a.download
attribute: href
banner:
selector: div.blog-media p a img
attribute: data-src
date:
selector: div.blog-content div.entry-meta time
attribute: datetime
filters:
- name: replace
args: ["T", " "]
- name: dateparse
args: "2006-01-02 15:04:05-07:00"
size:
text: "500 MB"
seeders:
text: "1"
leechers:
text: "1"
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -732,18 +732,22 @@
title:
selector: a[href^="viewtopic.php?t="] > b
filters:
- name: re_replace
args: ["\\b(\\d)\\b", "0$1"]
- name: replace
args: [" / ", " "]
- name: replace
args: ["Кураж-Бамбей", "kurazh"]
- name: replace
args: ["Кубик в Кубе", "Kubik"]
- name: re_replace
args: ["(\\([Сс]езон\\s+(\\d+).+[Сс]ери[ия]\\s+(?:(\\d+-*\\d*).*\\d+)*\\))", "(S$2E$3) RUS"]
args: ["((\\([12][0-9]{3}\\))(.+)\\([Сс]езон\\s+(\\d+).+[Сс]ери[ия]\\s+(?:(\\d+-*\\d*).*\\d+)*\\))", " - S$4E$5 - rus $3"]
- name: re_replace
args: ["(\\([А-Яа-я\\W]+\\))|(^[А-Яа-я\\W\\d]+\\/ )|([а-яА-Я \\-]+,+)|([а-яА-Я]+)", "{{ if .Config.striprussian }}{{ else }}$1$2$3$4{{ end }}"]
- name: replace
args: ["WEBDLRip", "WEBDL"]
args: ["-Rip", "Rip"]
- name: replace
args: ["WEB-DLRip", "WEBDL"]
args: ["WEB-DL", "WEBDL"]
- name: replace
args: ["WEBDLRip", "WEBDL"]
- name: replace
args: ["HDTVRip", "HDTV"]
details:

View File

@@ -10,23 +10,17 @@
caps:
categorymappings:
- {id: 401, cat: Movies/BluRay, desc: "Movies Blu-ray"}
- {id: 402, cat: Movies/HD, desc: "Movies REMUX"}
- {id: 419, cat: Movies/HD, desc: "Movies 1080p"}
- {id: 404, cat: Movies/HD, desc: "Movies 720p"}
- {id: 405, cat: Movies/3D, desc: "Movies 3D"}
- {id: 406, cat: Movies/DVD, desc: "Movies DVD"}
- {id: 407, cat: Movies/WEBDL, desc: "Movies WEB-DL"}
- {id: 408, cat: Movies/SD, desc: "Movies HDTV"}
- {id: 409, cat: Movies/Other, desc: "Movies iPad"}
- {id: 401, cat: Movies, desc: "Movies"}
- {id: 402, cat: Movies/3D, desc: "Movies 3D"}
- {id: 405, cat: TV, desc: "TV Packs"}
- {id: 410, cat: TV/Documentary, desc: "Documentaries"}
- {id: 411, cat: TV/Anime, desc: "Animations"}
- {id: 412, cat: TV, desc: "TV Series"}
- {id: 412, cat: TV, desc: "TV Episodes"}
- {id: 413, cat: TV, desc: "TV Shows"}
- {id: 414, cat: Audio/Video, desc: "Music Videos"}
- {id: 415, cat: TV/Sport, desc: "Sports"}
- {id: 416, cat: Audio, desc: "Music"}
- {id: 420, cat: Other, desc: "Other"}
- {id: 419, cat: TV, desc: "Concert"}
modes:
search: [q]
@@ -41,8 +35,20 @@
password: "{{ .Config.password }}"
error:
- selector: td.embedded:has(h2:contains("登录失败"))
message:
selector: td.text
test:
path: torrents.php
selector: a[href="logout.php"]
ratio:
path: torrents.php
selector: span.medium:has(a[href="logout.php"])
filters:
- name: replace
args: ["分享率:", "Ratio: "] # for simplified chinese language setting
- name: regexp
args: "Ratio: (\\d+)"
search:
paths:
@@ -51,8 +57,14 @@
inputs:
$raw: "{{range .Categories}}cat{{.}}=1&{{end}}"
search: "{{if .Query.IMDBID}}{{ .Query.IMDBID }}{{else}}{{ .Keywords }}{{end}}"
incldead: "1"
# 0=including dead 1=active 2=dead
incldead: 0
# show promotions: 0=all 1=normal 2=free 3=2x 4=2xFree 5=50% 6=2x50% 7=30%
spstate: 0
# 0=title 1=descr 3=uploader 4=imdb URL
search_area: "{{ if .Query.IMDBID }}4{{else}}0{{end}}"
# 0=AND 1=OR 2=Exact
search_mode: 0
rows:
selector: table.torrents > tbody > tr:has(table.torrentname)
fields:
@@ -74,26 +86,22 @@
download:
selector: a[href^="download.php?id="]
attribute: href
imdb:
optional: true
selector: div.imdb_100 > a
attribute: href
size:
selector: td:nth-child(5)
grabs:
selector: td:nth-child(8)
seeders:
selector: td:nth-child(6)
leechers:
selector: td:nth-child(7)
date:
selector: td:nth-child(4) > span[title]
selector: td.rowfollow:nth-child(4) > span[title]
attribute: title
filters:
- name: append
args: " +08:00"
- name: dateparse
args: "2006-01-02 15:04:05 -07:00"
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"
@@ -109,5 +117,6 @@
img.pro_2up: "2"
"*": "1"
description:
selector: td:nth-child(2)
selector: td.rowfollow:nth-child(2)
remove: a, img
# NexusPHP Standard v1.5 Beta 4

View File

@@ -0,0 +1,169 @@
---
site: p2pbg
name: P2PBG
description: "P2PBG is a BULGARIAN Private Torrent Tracker for 0DAY / GENERAL"
language: bg
type: private
encoding: UTF-8
links:
- http://p2pbg.com/
caps:
categorymappings:
- {id: 1, cat: Movies/SD, desc: "Movies-XviD"}
- {id: 16, cat: Movies/HD, desc: "Movies-x264"}
- {id: 34, cat: Movies, desc: "Movies-BG"}
- {id: 17, cat: Movies/HD, desc: "Movies-MPEG2"}
- {id: 35, cat: Movies, desc: "Movies-GSM"}
- {id: 55, cat: Movies/3D, desc: "Movies-3D"}
- {id: 18, cat: Movies/BluRay, desc: "Movies-BR/HD-DVD"}
- {id: 7, cat: TV/Documentary , desc: "Movies-Documentaries"}
- {id: 11, cat: Movies/DVD, desc: "Movies-DVD"}
- {id: 24, cat: TV/SD, desc: "TV-BG"}
- {id: 14, cat: TV, desc: "TV-Shows"}
- {id: 15, cat: TV, desc: "TV-Boxset"}
- {id: 38, cat: TV/Anime, desc: "TV-Cartoons"}
- {id: 8, cat: PC/Games, desc: "Games-PC ISO"}
- {id: 9, cat: PC/Games, desc: "Games-PC Rips"}
- {id: 21, cat: Console/Xbox, desc: "Games-XboX"}
- {id: 22, cat: Console/Xbox 360, desc: "Games-X360"}
- {id: 33, cat: Console/Wii, desc: "Games-Wii"}
- {id: 20, cat: Console/PSP, desc: "Games-PSP"}
- {id: 23, cat: Console/PS3, desc: "Games-PS3"}
- {id: 12, cat: Console/PS3, desc: "Games-PS2"}
- {id: 2, cat: Audio/MP3, desc: "Music-Song"}
- {id: 28, cat: Audio, desc: "Music-Album"}
- {id: 19, cat: Audio/Video, desc: "Music-Video"}
- {id: 29, cat: Audio, desc: "Music-Discography"}
- {id: 3, cat: Audio/Video, desc: "Music-DVD"}
- {id: 31, cat: PC/0day, desc: "Appz Ripped"}
- {id: 26, cat: PC/ISO, desc: "Appz PC-ISO"}
- {id: 49, cat: PC/Mac, desc: "Appz MacOS"}
- {id: 30, cat: PC, desc: "Appz-Linux"}
- {id: 27, cat: PC, desc: "Appz-GSM"}
- {id: 39, cat: Other, desc: "e-Learning"}
- {id: 37, cat: Other/Misc, desc: "Pictures"}
- {id: 4, cat: Other, desc: "Other"}
- {id: 6, cat: Books, desc: "Books"}
- {id: 52, cat: PC/Phone-Other, desc: "Mobile-GSM"}
- {id: 40, cat: PC/Phone-IOS, desc: "Mobile-iPhone"}
- {id: 51, cat: TV/Sport, desc: "Sport"}
- {id: 5, cat: TV/Sport, desc: "Sport F1"}
- {id: 13, cat: XXX, desc: "XXX"}
- {id: 54, cat: XXX/x264, desc: "XXX HD"}
- {id: 32, cat: XXX/Imageset, desc: "XXX Pictures"}
- {id: 56, cat: XXX, desc: "XXX 3D"}
- {id: 53, cat: XXX, desc: "XXX Hentai"}
- {id: 48, cat: XXX, desc: "XXX BG Amateurs"}
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: info_results
type: info
label: "Search results"
default: "For best results, increase the torrents number in your profile to 100.<br />Default is 15."
login:
path: index.php?page=login
method: form
form: form[action="index.php?page=login"]
inputs:
uid: "{{ .Config.username }}"
pwd: "{{ .Config.password }}"
error:
- selector: td.lista span[style="color:#FF0000;"]
test:
path: index.php
selector: :has(a[href="logout.php"])
search:
paths:
# http://p2pbg.com/index.php?page=torrents&search=%D0%9A%D0%B0%D1%82%D0%BE&category=0&active=0
- path: index.php
inputs:
page: "torrents"
category: "{{if .Categories }}{{range .Categories}}{{.}};{{end}}{{else}}0;{{end}}"
search: "{{if .Keywords }}{{.Keywords}}{{else}}{{end}}"
active: "1"
rows:
selector: table.lista tr td table.lista tr:has(a[href^="index.php?page=torrent-details"])
fields:
title:
selector: td a[onclick]
attribute: title
filters:
- name: replace
args: ["View details: ", ""]
- name: replace
args: ["Преглед на детайли: ", ""]
- name: replace
args: ["Преглед на детайли: ", ""]
details:
selector: td a[href*="id="]
attribute: href
category:
selector: td a[href*="category="]
attribute: href
filters:
- name: querystring
args: category
download:
selector: td a[href*="id="]
attribute: href
filters:
- name: querystring
args: id
- name: prepend
args: "download.php?id="
- name: append
args: "&f={{.Result.title}}.torrent"
banner:
selector: td img[src="/torrentimg/pic.png"]
attribute: onmouseover
filters:
- name: regexp
args: "src=(.+?) width="
# two flavours
date:
# Yesterday
# Вчера
selector: td:nth-child(6):not(:contains("/"))
optional: true
filters:
- name: replace
args: ["сейчас", "now"]
- name: replace
args: ["сегодня", "Today"]
- name: replace
args: ["вчера", "Yesterday"]
date:
# 14/03/2019
selector: td:nth-child(6):contains("/")
optional: true
filters:
- name: dateparse
args: "02/01/2006"
size:
selector: td:nth-child(7)
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9)
grabs:
selector: td:nth-child(10)
downloadvolumefactor:
text: "0"
uploadvolumefactor:
text: "1"

View File

@@ -0,0 +1,137 @@
---
site: pleasuredome
name: PleasureDome
description: "PleasureDome is a private site for Arcade / Console / PC Games"
language: en
type: private
encoding: UTF-8
links:
- http://www.pleasuredome.org.uk/
caps:
categorymappings:
# Arcade
- {id: 10, cat: Console, desc: "MAME"}
- {id: 11, cat: Console, desc: "Pinball"}
- {id: 12, cat: Console, desc: "ZiNc"}
- {id: 13, cat: Console, desc: "Nebula"}
- {id: 14, cat: Console, desc: "Daphne"}
- {id: 17, cat: Console, desc: "Fruit"}
- {id: 32, cat: Console, desc: "Neo-Geo"}
- {id: 33, cat: Console, desc: "NonMAME"}
- {id: 34, cat: Console, desc: "RAINE"}
- {id: 35, cat: Console, desc: "Kawaks"}
- {id: 40, cat: Console, desc: "FBA"}
- {id: 51, cat: Console, desc: "HBMAME"}
- {id: 58, cat: Console, desc: "Dice"}
# Computer
- {id: 16, cat: Console, desc: "Amiga"}
- {id: 19, cat: Console, desc: "Amstrad"}
- {id: 20, cat: Console, desc: "Commodore 64"}
- {id: 22, cat: Console, desc: "Apple"}
- {id: 25, cat: Console, desc: "Sinclair"}
- {id: 41, cat: Console, desc: "Doom"}
- {id: 44, cat: Console, desc: "MS-DOS"}
- {id: 50, cat: Console, desc: "eXoDOS"}
- {id: 53, cat: Console, desc: "Win3xO"}
- {id: 55, cat: Console, desc: "Neo Kobe"}
# Computer / Console
- {id: 15, cat: Console, desc: "MESS"}
- {id: 24, cat: Console, desc: "Atari"}
- {id: 31, cat: Console, desc: "TOSEC"}
- {id: 38, cat: Console, desc: "Dreamcast"}
- {id: 43, cat: Console, desc: "ScummVM"}
- {id: 46, cat: Console, desc: "Redump"}
- {id: 48, cat: Console, desc: "Trurip"}
- {id: 52, cat: Console, desc: "GoodTools"}
- {id: 57, cat: Console, desc: "Hyperspin"}
- {id: 61, cat: Console, desc: "RAWdump"}
# Console
- {id: 18, cat: Console, desc: "Sega"}
- {id: 21, cat: Console, desc: "3DO"}
- {id: 23, cat: Console, desc: "PC Engine"}
- {id: 47, cat: Console, desc: "Demul"}
- {id: 49, cat: Console, desc: "Sega Saturn"}
- {id: 54, cat: Console, desc: "No-Intro"}
- {id: 59, cat: Console, desc: "XBOX"}
- {id: 60, cat: Console, desc: "DMC"}
# iscellaneous
- {id: 4, cat: Console, desc: "Other"}
- {id: 37, cat: Console, desc: "Remix Projects"}
- {id: 39, cat: Console, desc: "EmuMovies"}
- {id: 42, cat: Console, desc: "CDi"}
- {id: 45, cat: Console, desc: "NUON"}
modes:
search: [q]
login:
path: login2.php
method: form
form: form[action="login2.php"]
inputs:
uid: "{{ .Config.username }}"
pwd: "{{ .Config.password }}"
error:
- selector: div font[color="#FF0000"]
test:
path: torrents.php
selector: a[href="logout.php"]
search:
paths:
- path: torrents.php
inputs:
search: "{{ .Keywords }}"
category: 0
active: 0
sort: "data"
order: "DESC"
rows:
selector: table[width="100%"] > tbody tr:has(a[href^="download.php?id="])
fields:
title:
selector: td:nth-child(2) a
filters:
- name: replace
args: ["[FREE] ", ""]
details:
selector: td:nth-child(2) a
attribute: href
filters:
- name: replace
args: ["javascript:popdetails('", ""]
- name: replace
args: [");'", ""]
category:
selector: td:nth-child(1) a
attribute: href
filters:
- name: querystring
args: category
download:
optional: true
selector: td:nth-child(4) a
attribute: href
date:
# 19/01/2019
selector: td:nth-child(5)
filters:
- name: dateparse
args: "02/01/2006"
size:
selector: td:nth-child(6)
seeders:
selector: td:nth-child(8)
leechers:
selector: td:nth-child(9) a
grabs:
selector: td:nth-child(10)
downloadvolumefactor:
case:
"img[src=\"images/fdownload.gif\"]": "0"
"*": "1"
uploadvolumefactor:
case:
"*": "1"

View File

@@ -13,10 +13,8 @@
caps:
categorymappings:
- {id: 1, cat: TV/Sport, desc: "BTCC"}
- {id: 2, cat: TV/Sport, desc: "Documentaries/TV"}
- {id: 3, cat: TV/Sport, desc: "DTM"}
- {id: 4, cat: TV/Sport, desc: "Formula 1 2018"}
- {id: 6, cat: TV/Sport, desc: "Formula 1 2017-1950 (HD)"}
- {id: 21, cat: TV/Sport, desc: "Formula 1 2017-1950 (SD)"}
- {id: 22, cat: TV/Sport, desc: "Formula 2"}
- {id: 23, cat: TV/Sport, desc: "Formula E"}
- {id: 24, cat: TV/Sport, desc: "Misc"}
@@ -27,8 +25,19 @@
- {id: 33, cat: TV/Sport, desc: "Touring Cars"}
- {id: 50, cat: TV/Sport, desc: "WRC"}
- {id: 53, cat: TV/Sport, desc: "Open-Wheelers"}
- {id: 54, cat: TV/Sport, desc: "Documentaries/Movies"}
- {id: 55, cat: TV/Sport, desc: "Season Reviews"}
- {id: 56, cat: TV/Sport, desc: "WRX"}
- {id: 57, cat: TV/Sport, desc: "WEC"}
- {id: 58, cat: TV/Sport, desc: "Formula 1 Full Seasons"}
- {id: 60, cat: TV/Sport, desc: "Drag Racing"}
- {id: 61, cat: TV/Sport, desc: "Rally"}
- {id: 62, cat: TV/Sport, desc: "Formula 1 Testing"}
- {id: 63, cat: TV/Sport, desc: "Supercars"}
- {id: 64, cat: TV/Sport, desc: "Indycar Complete Seasons"}
- {id: 65, cat: TV/Sport, desc: "NASCAR Complete Seasons"}
- {id: 66, cat: TV/Sport, desc: "Documentaries"}
- {id: 67, cat: TV/Sport, desc: "Formula 1 2019"}
- {id: 68, cat: TV/Sport, desc: "Formula 1 2018-1950"}
modes:
search: [q]
@@ -39,10 +48,19 @@
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: 1
error:
- selector: table.main:contains("Login Failed!")
- selector: form[action$="/login"] .text-red
test:
path: torrents
selector: a[href$="/logout"]
ratio:
path: /
selector: span:has(i.fa-sync-alt)
filters:
- name: regexp
args: "Ratio : (\\d+)"
search:
paths:
@@ -50,8 +68,12 @@
inputs:
$raw: "{{range .Categories}}categories[]={{.}}&{{end}}"
search: "{{ .Keywords }}"
description: ""
uploader: ""
sorting: created_at
imdb: ""
tvdb: ""
tmdb: ""
sort: created_at
direction: desc
qty: 100
rows:
@@ -118,3 +140,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -0,0 +1,104 @@
---
site: sharewood
name: Sharewood
description: "sharewood is a Semi-Private FRENCH Torrent Tracker for GENERAL"
language: fr-fr
type: semi-private
encoding: UTF-8
links:
- https://www.sharewood.tv/
caps:
categorymappings:
- {id: "Vidéos Torrent", cat: Movies, desc: "Vidéos"}
- {id: "Vidéos Torrent", cat: TV, desc: "Vidéos"}
- {id: "Audios Torrent", cat: Audio, desc: "Audios"}
- {id: "Applications Torrent", cat: PC, desc: "Applications"}
- {id: "Ebooks Torrent", cat: Books, desc: "Ebooks"}
- {id: "Jeux-Vidéos Torrent", cat: Console, desc: "Jeux-Vidéos"}
- {id: "Formations Torrent", cat: Other, desc: "Formations"}
- {id: "XXX Torrent", cat: XXX, desc: "XXX"}
modes:
search: [q]
tv-search: [q, season, ep]
movie-search: [q]
login:
path: login
method: form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: 1
selectorinputs:
_token:
selector: meta[name="csrf-token"]
attribute: content
error:
- selector: form[action$="/login"] .text-red
test:
path: /
selector: a[href$="/logout"]
ratio:
path: /
selector: li:has(i.fa-signal)
filters:
- name: regexp
args: "Ratio : (\\d+)"
search:
paths:
- path: filterTorrents
inputs:
search: "{{ .Keywords }}"
uploader: ""
sort: created_at
direction: desc
qty: 100
rows:
selector: div.table-responsive-line
fields:
category:
selector: i.torrent-icon
attribute: data-original-title
title:
selector: a.view-torrent
download:
selector: a.view-torrent
attribute: href
filters:
- name: replace
args: ["/torrents/", "/download/"]
details:
selector: a.view-torrent
attribute: href
size:
selector: div.col-detail div.row div:nth-child(2)
seeders:
selector: div.bouton-s
leechers:
selector: div.bouton-l
date:
selector: div.col-detail div.row div span
filters:
- name: replace
args: ["il y a ", ""]
- name: replace
args: ["heure", "hour"]
- name: replace
args: ["jour", "day"]
- name: replace
args: ["semaine", "week"]
- name: replace
args: ["mois", "month"]
- name: append
args: " ago"
downloadvolumefactor:
case:
"*": "1"
uploadvolumefactor:
case:
"*": "1"
# UNIT3D

View File

@@ -122,3 +122,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -128,3 +128,4 @@
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -7,8 +7,8 @@
encoding: UTF-8
followredirect: true
links:
- https://wvw.torrent9.uno/
- https://wvw.t9.pe/
legacylinks:
- http://www.torrent9.ec/
- http://www.torrent9.red/
@@ -24,6 +24,8 @@
- https://ww1.torrent9.ph/
- https://torrent9.ga/
- https://www.torrent9.uno/
- https://wvw.torrent9.uno/
- https://ww1.torrent9.uno/
caps:
categorymappings:
@@ -39,6 +41,8 @@
search: [q]
tv-search: [q, season, ep]
settings: []
download:
selector: a[href^="/downloading/"]

View File

@@ -112,20 +112,26 @@
search:
paths:
- path: browse.php
keywordsfilters:
- name: re_replace # S01E01 to X.sezon X.blm
args: ["(?i)\\bS0*(\\d+)E0*(\\d+)\\b", "$1.sezon $2.blm"]
inputs:
# does not support multi categories so defaulting to ALL
do: "search"
keywords: "{{.Keywords}}"
keywords: "{{if .Keywords}}\"{{.Keywords}}\"{{else}}{{end}}"
category: "0"
search_type: "t_name"
include_dead_torrents: "yes"
rows:
selector: table#sortabletable tbody tr:has(div[id^="port-target-"])
filters:
- name: andmatch
fields:
title:
selector: div[id^="port-target-"] a
filters:
- name: re_replace # X.sezon X.blm to S01E01
args: ["(?i)\\b(\\d+).sezon\\s(\\d+).blm\\b", "S$1E$2"]
- name: re_replace # switch (dd.mm.yyyy) to mm.dd.yyyy
args: ["\\((\\d+)\\.(\\d+)\\.(\\d+)\\)", "$2/$1/$3"]
details:
selector: div[id^="port-target-"] a
attribute: href
@@ -159,4 +165,4 @@
uploadvolumefactor:
case:
img[src$="/x2.gif"]: "2"
"*": "1"
"*": "1"

View File

@@ -0,0 +1,143 @@
---
site: world-of-tomorrow
name: world-of-tomorrow
description: "world-of-tomorrow is a Private GERMAN tracker"
language: de-de
type: private
encoding: UTF-8
followredirect: true
links:
- https://world-of-tomorrow.eu
caps:
categorymappings:
# Movie
- {id: 47, cat: Movies/HD, desc: "Bluray"}
- {id: 48, cat: Movies/HD, desc: "720p"}
- {id: 49, cat: Movies/HD, desc: "1080p"}
- {id: 11, cat: Movies/SD, desc: "DVD-R"}
- {id: 60, cat: Movies/HD, desc: "HDTV"}
- {id: 62, cat: Movies/SD, desc: "SD"}
- {id: 89, cat: Movies/HD, desc: "UHD"}
- {id: 91, cat: Movies, desc: "Packs"}
# Serien
- {id: 16, cat: TV, desc: "Serien-Packs"}
- {id: 64, cat: TV/Documentary, desc: "Serien-Doku"}
- {id: 77, cat: TV/SD, desc: "Serien-SD"}
- {id: 78, cat: TV/HD, desc: "Serien-720p"}
- {id: 79, cat: TV/HD, desc: "Serien-1080p"}
- {id: 95, cat: TV/HD, desc: "Serien-2160p"}
# Games
- {id: 4, cat: PC/Games, desc: "Windows"}
- {id: 84, cat: Console/PS3, desc: "PS3/PS4"}
- {id: 84, cat: Console/PS4, desc: "PS3/PS4"}
- {id: 85, cat: Console/Xbox 360, desc: "Xbox-360"}
- {id: 92, cat: PC/Games, desc: "Wimmelbild"}
# Musik
- {id: 14, cat: Audio/MP3, desc: "MP3"}
- {id: 36, cat: Audio/Audiobook, desc: "Hörbuch"}
- {id: 71, cat: Audio, desc: "Soundtracks"}
- {id: 70, cat: Audio, desc: "Flac"}
- {id: 72, cat: Audio, desc: "Musik-Packs"}
- {id: 93, cat: Audio/Video, desc: "Musik-Videos"}
# Programme
- {id: 18, cat: PC, desc: "Appz-Sonstige"}
- {id: 28, cat: PC, desc: "Windows"}
# Sport
- {id: 23, cat: TV/Sport, desc: "Wrestling"}
- {id: 74, cat: TV/Sport, desc: "Fussball"}
- {id: 75, cat: TV/Sport, desc: "Formel 1"}
# Misc
- {id: 88, cat: XXX, desc: "XXX"}
- {id: 19, cat: Books/Ebook, desc: "Ebooks"}
- {id: 87, cat: TV/Anime, desc: "Anime/Zeichentrick"}
- {id: 96, cat: Other/Misc, desc: "Sonstiges"}
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: secure_code
type: password
label: "Secure Code"
login:
path: login.php
method: form
form: form
inputs:
take: "yes"
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
secure_code: "{{ .Config.secure_code }}"
test:
path: sessioncheck.php
search:
path: tfiles.php
inputs:
search: "{{ .Query.Keywords }}"
incldead: "1"
showsearch: 0
rows:
selector: table.table-bordered > tbody > tr
fields:
title:
selector: a[href^="details.php"]
category:
selector: a[href^="tfiles.php?cat="]
attribute: href
filters:
- name: querystring
args: cat
details:
selector: a[href^="details.php"]
attribute: href
download:
selector: a[href^="download.php"]
attribute: href
grabs:
selector: span:nth-child(5)
filters:
- name: split
args: [":",1]
size:
selector: span:nth-child(2)
filters:
- name: split
args: [":",1]
- name: replace
args: [".", ""]
- name: replace
args: [",", "."]
seeders:
selector: span:nth-child(3)
filters:
- name: split
args: [":",1]
leechers:
selector: span:nth-child(4)
filters:
- name: split
args: [":",1]
date:
selector: td:nth-child(3)
remove: center, br
filters:
- name: dateparse
args: "02.01.2006 15:04:05"

View File

@@ -0,0 +1,128 @@
---
site: xktorrent
name: XKTorrent
description: "XKTorrent is a FRENCH Private Torrent Tracker for MOVIES / TV / GENERAL"
language: fr-fr
type: private
encoding: UTF-8
links:
- https://xktorrent.com/
caps:
categorymappings:
- {id: 1, cat: Movies, desc: "Film"}
- {id: 2, cat: TV, desc: "Série"}
- {id: 3, cat: TV/Anime, desc: "Film d'Animation"}
- {id: 5, cat: TV/Sport, desc: "Sport"}
- {id: 6, cat: TV/Documentary, desc: "Documentaire"}
- {id: 7, cat: Audio, desc: "Musique"}
- {id: 8, cat: Audio/Other, desc: "Podcast Audio"}
- {id: 13, cat: Books/Ebook, desc: "eBooks"}
- {id: 14, cat: TV, desc: "Spectacle"}
- {id: 15, cat: Audio/Video, desc: "Concert"}
- {id: 18, cat: TV/Anime, desc: "Manga"}
- {id: 19, cat: Books/Comics, desc: "Comics"}
- {id: 20, cat: Books/Comics, desc: "Bande dessinée"}
- {id: 22, cat: Console, desc: "Jeux"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid]
movie-search: [q, imdbid]
login:
path: login
method: form
inputs:
username: "{{ .Config.username }}"
password: "{{ .Config.password }}"
remember: 1
selectorinputs:
_token:
selector: meta[name="csrf-token"]
attribute: content
error:
- selector: form[action$="/login"] span strong
test:
path: /
selector: a[href$="/logout"]
ratio:
path: /
selector: span:has(i.fa-sync-alt)
filters:
- name: regexp
args: "Ratio : (\\d+)"
search:
paths:
- path: filterTorrents
inputs:
$raw: "{{range .Categories}}categories[]={{.}}&{{end}}"
search: "{{if .Query.IMDBID}}{{else}}{{ .Keywords }}{{end}}"
uploader: ""
imdb: "{{ .Query.IMDBIDShort }}"
tvdb: ""
tmdb: ""
mal: ""
sorting: created_at
direction: desc
qty: 100
rows:
selector: table > tbody > tr
fields:
category:
selector: a[href*="/categories/"]
attribute: href
filters:
- name: regexp
args: "/categories/.*?\\.(\\d+)"
title:
selector: a.view-torrent
download:
selector: a[href*="/download/"]
attribute: href
details:
selector: a.view-torrent
attribute: href
imdb:
selector: a[href^="https://www.imdb.com/title/"]
attribute: href
optional: true
size:
selector: td:nth-child(5)
seeders:
selector: td:nth-child(7)
leechers:
selector: td:nth-child(8)
grabs:
selector: td:nth-child(6)
filters:
- name: regexp
args: ([\d\.]+)
date:
selector: time
filters:
- name: replace
args: ["il y a ", ""]
- name: replace
args: ["heure", "hour"]
- name: replace
args: ["jour", "day"]
- name: replace
args: ["semaine", "week"]
- name: replace
args: ["mois", "month"]
- name: append
args: " ago"
downloadvolumefactor:
case:
"i[data-original-title=\"100% Free\"]": "0" # Single Torrent Freeleech
"i[data-original-title=\"Global freeleech\"]": "0" # Global Freeleech
"*": "1"
uploadvolumefactor:
case:
"i[data-original-title=\"Double upload\"]": "2" # Single Torrent Double Upload
"i[data-original-title=\"Double Upload\"]": "2" # Global Double Upload
"*": "1"
# UNIT3D

View File

@@ -25,6 +25,8 @@
- https://ygg.to/
- https://www.ygg.to/
- https://ww3.yggtorrent.gg/
- http://www2.yggtorrent.gg/
caps:
categorymappings:
- {id: 2145, cat: TV, desc: "Film/Vidéo"}

View File

@@ -60,6 +60,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(66, TorznabCatType.TVSport, "Football - Super Bowls");
AddCategoryMapping(53, TorznabCatType.TVSport, "Football - NCAA");
AddCategoryMapping(99, TorznabCatType.TVSport, "Football - CFL");
AddCategoryMapping(101, TorznabCatType.TVSport, "Football - AAF");
AddCategoryMapping(54, TorznabCatType.TVSport, "Football - Reviews and highlights");
AddCategoryMapping(97, TorznabCatType.TVSport, "Football - Documentaries");
AddCategoryMapping(44, TorznabCatType.TVSport, "Football - Other");
@@ -103,6 +104,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(94, TorznabCatType.TVSport, "Other sports - Misc");
AddCategoryMapping(56, TorznabCatType.TVSport, "Sports on tv");
AddCategoryMapping(30, TorznabCatType.TVSport, "Sports");
}
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)

View File

@@ -41,6 +41,7 @@ namespace Jackett.Common.Indexers
Type = "semi-private";
AddCategoryMapping(30, TorznabCatType.Movies, "Video content");
AddCategoryMapping(1918, TorznabCatType.Movies, "UHD Video");
AddCategoryMapping(31, TorznabCatType.TVDocumentary, " Documentary films, TV and other video");
AddCategoryMapping(127, TorznabCatType.TVDocumentary, " Documentary movies and TV shows");
AddCategoryMapping(1071, TorznabCatType.TVDocumentary, " Documentary (DVD)");
@@ -114,17 +115,10 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1111, TorznabCatType.TV, " Evening Quarter");
AddCategoryMapping(1112, TorznabCatType.TV, " Films with a funny transfer (parody)");
AddCategoryMapping(1113, TorznabCatType.TV, " Stand-up comedy");
AddCategoryMapping(1114, TorznabCatType.TV, " Moment of glory");
AddCategoryMapping(1115, TorznabCatType.TV, " Ukrainian Show");
AddCategoryMapping(1116, TorznabCatType.TV, " Star Factory");
AddCategoryMapping(1117, TorznabCatType.TV, " Dance shows, concerts, performances");
AddCategoryMapping(1118, TorznabCatType.TV, " Circus");
AddCategoryMapping(1119, TorznabCatType.TV, " School for Scandal");
AddCategoryMapping(1120, TorznabCatType.TV, " Satirists and humorists");
AddCategoryMapping(1873, TorznabCatType.TV, " Musical show");
AddCategoryMapping(1121, TorznabCatType.TV, " Humorous audio transmission");
AddCategoryMapping(1122, TorznabCatType.TV, " Audio and video clips (Jokes and humor)");
AddCategoryMapping(32, TorznabCatType.Movies, " Foreign movies");
AddCategoryMapping(1906, TorznabCatType.Movies, " Foreign films of 2019");
AddCategoryMapping(33, TorznabCatType.Movies, " Russian movies");
AddCategoryMapping(567, TorznabCatType.Movies, " Foreign films 2016");
AddCategoryMapping(37, TorznabCatType.Movies, " Foreign films 2011 - 2015 the year");
AddCategoryMapping(38, TorznabCatType.Movies, " Foreign films of the year 2006-2010");
@@ -173,11 +167,8 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(51, TorznabCatType.TV, " Domestic series");
AddCategoryMapping(1860, TorznabCatType.TV, " Domestic series 2016");
AddCategoryMapping(1810, TorznabCatType.TV, " Domestic series 2015");
AddCategoryMapping(574, TorznabCatType.TV, " Domestic series 2014");
AddCategoryMapping(50, TorznabCatType.TV, " Foreign TV series");
AddCategoryMapping(1861, TorznabCatType.TV, " Foreign series 2016");
AddCategoryMapping(1809, TorznabCatType.TV, " Foreign series 2015");
AddCategoryMapping(575, TorznabCatType.TV, " Foreign series 2014");
AddCategoryMapping(1181, TorznabCatType.TV, " Foreign TV shows (HD Video)");
AddCategoryMapping(1184, TorznabCatType.TV, " Soaps Spain, Italy, Latin America, Turkey and India");
AddCategoryMapping(1185, TorznabCatType.TV, " Indian series");
@@ -300,6 +291,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1152, TorznabCatType.TVSport, " Ukraine");
AddCategoryMapping(1153, TorznabCatType.TVSport, " Other national championships and cups");
AddCategoryMapping(1154, TorznabCatType.TVSport, " International football tournaments");
AddCategoryMapping(1901, TorznabCatType.TVSport, " Confederations Cup 2017");
AddCategoryMapping(1157, TorznabCatType.TVSport, " European Cups");
AddCategoryMapping(1156, TorznabCatType.TVSport, " Eurocup 2011-2014");
AddCategoryMapping(1155, TorznabCatType.TVSport, " Eurocup 2014-2015");
@@ -324,15 +316,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1886, TorznabCatType.TVSport, " Football");
AddCategoryMapping(1887, TorznabCatType.TVSport, " Basketball");
AddCategoryMapping(1888, TorznabCatType.TVSport, " Volleyball / Beach Volleyball / Handball / Water Polo");
AddCategoryMapping(1889, TorznabCatType.TVSport, " Athletics");
AddCategoryMapping(1890, TorznabCatType.TVSport, " Tennis / Table Tennis / Badminton");
AddCategoryMapping(1891, TorznabCatType.TVSport, " Boxing / Martial Arts and Martial Arts / Weightlifting");
AddCategoryMapping(1892, TorznabCatType.TVSport, " Water Sports / Boating");
AddCategoryMapping(1893, TorznabCatType.TVSport, " cycle racing");
AddCategoryMapping(1894, TorznabCatType.TVSport, " Gymnastics");
AddCategoryMapping(1895, TorznabCatType.TVSport, " Other Sports");
AddCategoryMapping(1896, TorznabCatType.TVSport, " The survey and analysis of transmission");
AddCategoryMapping(1897, TorznabCatType.Books, " Books, manuals, periodicals on the Olympic theme");
AddCategoryMapping(1907, TorznabCatType.TVSport, " 2018 Winter Olympics");
AddCategoryMapping(1575, TorznabCatType.Movies, " Video for mobile devices");
AddCategoryMapping(1576, TorznabCatType.Movies, " Video for Smartphones and PDAs");
AddCategoryMapping(1577, TorznabCatType.Movies, " Mobile Video (3GP)");
@@ -390,18 +374,17 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(73, TorznabCatType.PCGames, " Simulations");
AddCategoryMapping(74, TorznabCatType.PCGames, " Autos and Racing");
AddCategoryMapping(75, TorznabCatType.PCGames, " Sports simulators");
AddCategoryMapping(464, TorznabCatType.PCGames, " Other simulators");
AddCategoryMapping(1531, TorznabCatType.PCGames, " Space and flight simulators");
AddCategoryMapping(76, TorznabCatType.PCGames, " Aviasimulators");
AddCategoryMapping(463, TorznabCatType.PCGames, " space Simulation");
AddCategoryMapping(1540, TorznabCatType.PCGames, " Microsoft Flight Simulator add-ons, and for him");
AddCategoryMapping(1541, TorznabCatType.PCGames, " Scripts, meshes and airports");
AddCategoryMapping(1542, TorznabCatType.PCGames, " Airplanes and helicopters");
AddCategoryMapping(1902, TorznabCatType.PCGames, " Planes, helicopters (FSX-P3D)");
AddCategoryMapping(1903, TorznabCatType.PCGames, " Planes and helicopters [FS2004]");
AddCategoryMapping(1543, TorznabCatType.PCGames, " Mission, traffic sounds, packs and tools");
AddCategoryMapping(1899, TorznabCatType.PCGames, " Scenarios (FSX-P3D)");
AddCategoryMapping(77, TorznabCatType.PCGames, " Arcade");
AddCategoryMapping(459, TorznabCatType.PCGames, " Arcade (various)");
AddCategoryMapping(461, TorznabCatType.PCGames, " Board &amp; Card Arcade");
AddCategoryMapping(78, TorznabCatType.PCGames, " Adventure Quests");
AddCategoryMapping(746, TorznabCatType.PCGames, " Quest-style \"search objects\"");
AddCategoryMapping(79, TorznabCatType.PCGames, " Online Games");
@@ -409,25 +392,17 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(744, TorznabCatType.PCGames, " paid");
AddCategoryMapping(742, TorznabCatType.PCGames, " Other online gaming");
AddCategoryMapping(157, TorznabCatType.PCGames, " For the little ones");
AddCategoryMapping(465, TorznabCatType.PCGames, " Old games for PC");
AddCategoryMapping(466, TorznabCatType.PCGames, " Arcade and Puzzle Games (old games)");
AddCategoryMapping(1871, TorznabCatType.PCGames, " Arcade (Old Games)");
AddCategoryMapping(1872, TorznabCatType.PCGames, " Puzzle games (old games)");
AddCategoryMapping(467, TorznabCatType.PCGames, " Adventure quests (old games)");
AddCategoryMapping(468, TorznabCatType.PCGames, " Action (old games)");
AddCategoryMapping(469, TorznabCatType.PCGames, " Strategy (old games)");
AddCategoryMapping(470, TorznabCatType.PCGames, " RPG (old games)");
AddCategoryMapping(471, TorznabCatType.PCGames, " Simulations (old games)");
AddCategoryMapping(1532, TorznabCatType.PCGames, " Autos and Racing (old games)");
AddCategoryMapping(1533, TorznabCatType.PCGames, " Space simulators, flight simulators and aviaigry (old games)");
AddCategoryMapping(1534, TorznabCatType.PCGames, " Sports simulators (old games)");
AddCategoryMapping(1535, TorznabCatType.PCGames, " Other simulators (Old Games)");
AddCategoryMapping(472, TorznabCatType.PCGames, " Multi-genre compilations (old games)");
AddCategoryMapping(1536, TorznabCatType.PCGames, " Erotic games (old games)");
AddCategoryMapping(1537, TorznabCatType.PCGames, " For the little ones (Old Games)");
AddCategoryMapping(1538, TorznabCatType.PCGames, " Puzzle Games (Old Games)");
AddCategoryMapping(1539, TorznabCatType.PCGames, " IBM PC are not compatible (old games)");
AddCategoryMapping(473, TorznabCatType.PCGames, " Erotic games");
AddCategoryMapping(745, TorznabCatType.PCGames, " Chess");
AddCategoryMapping(924, TorznabCatType.PCGames, " game Collections");
AddCategoryMapping(970, TorznabCatType.PCGames, " Other for PC-games");
@@ -469,15 +444,12 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(622, TorznabCatType.ConsolePSP, " PS1 games for PSP");
AddCategoryMapping(143, TorznabCatType.ConsolePSP, " PSP | Programs | Other");
AddCategoryMapping(1548, TorznabCatType.ConsolePSP, " Software for PSP (Homebrew)");
AddCategoryMapping(455, TorznabCatType.ConsolePSVita, " PS Vita | Games");
AddCategoryMapping(130, TorznabCatType.ConsoleOther, " Nintendo");
AddCategoryMapping(144, TorznabCatType.ConsoleNDS, " NDS | Games");
AddCategoryMapping(145, TorznabCatType.ConsoleWii, " Wii | Games");
AddCategoryMapping(146, TorznabCatType.ConsoleWiiwareVC, " WiiWare | Games");
AddCategoryMapping(147, TorznabCatType.ConsoleOther, " GameCube | Games");
AddCategoryMapping(456, TorznabCatType.ConsoleOther, " Sega");
AddCategoryMapping(588, TorznabCatType.ConsoleOther, " Dreamcast");
AddCategoryMapping(457, TorznabCatType.ConsoleOther, " Games for older consoles");
AddCategoryMapping(589, TorznabCatType.ConsoleOther, " Games for the DVD player");
AddCategoryMapping(928, TorznabCatType.PCGames, " Games for Linux");
AddCategoryMapping(1868, TorznabCatType.PCGames, " Native games for Linux");
@@ -514,7 +486,6 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(282, TorznabCatType.PC0day, " Operating Systems (Linux, Unix)");
AddCategoryMapping(1574, TorznabCatType.PC0day, " Program (Linux, Unix)");
AddCategoryMapping(284, TorznabCatType.PC0day, " Other operating systems and software for them");
AddCategoryMapping(287, TorznabCatType.PC0day, " Archive (Linux OS, Unix etc)");
AddCategoryMapping(276, TorznabCatType.PCMac, " Apple OS");
AddCategoryMapping(277, TorznabCatType.PCMac, " Mac OS [for Macintosh]");
AddCategoryMapping(278, TorznabCatType.PCMac, " Mac OS [PC-Hackintosh]");
@@ -538,13 +509,11 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1811, TorznabCatType.PC0day, " Windows 10");
AddCategoryMapping(274, TorznabCatType.PC0day, " Windows Server");
AddCategoryMapping(927, TorznabCatType.PC0day, " Other (Operating Systems from Microsoft)");
AddCategoryMapping(275, TorznabCatType.PC0day, " Archive (OS from Microsoft)");
AddCategoryMapping(84, TorznabCatType.PC0day, " System programs");
AddCategoryMapping(86, TorznabCatType.PC0day, " Programs for configuring and optimizing OS");
AddCategoryMapping(87, TorznabCatType.PC0day, " Archivers and File Managers");
AddCategoryMapping(1630, TorznabCatType.PC0day, " Safety protection system and PC");
AddCategoryMapping(93, TorznabCatType.PC0day, " Software to protect your computer (antivirus software, firewalls)");
AddCategoryMapping(580, TorznabCatType.PC0day, " Keys and Activation");
AddCategoryMapping(94, TorznabCatType.PC0day, " Anti-spyware and anti-trojan");
AddCategoryMapping(95, TorznabCatType.PC0day, " Programs for the protection of information");
AddCategoryMapping(88, TorznabCatType.PC0day, " Backup");
@@ -585,29 +554,20 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(941, TorznabCatType.PC0day, " Libraries and projects for architects and interior designers");
AddCategoryMapping(942, TorznabCatType.PC0day, " Other reference systems");
AddCategoryMapping(107, TorznabCatType.PC0day, " Web Development and Programming");
AddCategoryMapping(293, TorznabCatType.PC0day, " Search / Offer");
AddCategoryMapping(943, TorznabCatType.PC0day, " WYSIWYG editors for web design");
AddCategoryMapping(496, TorznabCatType.PC0day, " Database Management Systems (DBMS)");
AddCategoryMapping(494, TorznabCatType.PC0day, " programming environments, compilers and software tools");
AddCategoryMapping(290, TorznabCatType.PC0day, " The components for the development of media");
AddCategoryMapping(495, TorznabCatType.PC0day, " Text editors Illuminated");
AddCategoryMapping(291, TorznabCatType.PC0day, " Scripting engines and websites, CMS and extensions to it");
AddCategoryMapping(944, TorznabCatType.PC0day, " Templates for websites and CMS");
AddCategoryMapping(292, TorznabCatType.PC0day, " Miscellaneous (Web Development and Programming)");
AddCategoryMapping(294, TorznabCatType.PC0day, " Archive (Web Development and Programming)");
AddCategoryMapping(108, TorznabCatType.PC0day, " Programs to work with multimedia and 3D");
AddCategoryMapping(487, TorznabCatType.PC0day, " Software kits");
AddCategoryMapping(488, TorznabCatType.PC0day, " Plug-ins for Adobe's programs");
AddCategoryMapping(491, TorznabCatType.PC0day, " 3D modeling, rendering and plugins for them");
AddCategoryMapping(489, TorznabCatType.PC0day, " Graphic editor");
AddCategoryMapping(303, TorznabCatType.PC0day, " Editors video");
AddCategoryMapping(305, TorznabCatType.PC0day, " Virtual Studios, sequencers and audio editor");
AddCategoryMapping(492, TorznabCatType.PC0day, " Animation");
AddCategoryMapping(490, TorznabCatType.PC0day, " Programs for typesetting, printing, and working with fonts");
AddCategoryMapping(304, TorznabCatType.PC0day, " Video, Audio Conversion");
AddCategoryMapping(493, TorznabCatType.PC0day, " Creating a BD / HD / DVD-Video");
AddCategoryMapping(306, TorznabCatType.PC0day, " Plug-ins for sound processing");
AddCategoryMapping(308, TorznabCatType.PC0day, " Archive (Programme for multimedia and 3D)");
AddCategoryMapping(595, TorznabCatType.PC0day, " Miscellaneous (Programme for multimedia and 3D)");
AddCategoryMapping(596, TorznabCatType.PC0day, " Miscellaneous (Programs for working with audio)");
AddCategoryMapping(597, TorznabCatType.PC0day, " Virtual instruments and synthesizers");
@@ -637,8 +597,6 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(955, TorznabCatType.PC0day, " Multitracks");
AddCategoryMapping(956, TorznabCatType.PC0day, " Materials for creating menus and DVD covers");
AddCategoryMapping(351, TorznabCatType.PC0day, " Styles, brushes, shapes and patterns for Adobe Photoshop");
AddCategoryMapping(356, TorznabCatType.PC0day, " Fonts");
AddCategoryMapping(358, TorznabCatType.PC0day, " Miscellaneous (Materials for Multimedia and Design)");
AddCategoryMapping(1632, TorznabCatType.PC0day, " Digital Juice");
AddCategoryMapping(1874, TorznabCatType.PC0day, " Projects");
AddCategoryMapping(1875, TorznabCatType.PC0day, " Children (projects)");
@@ -653,14 +611,8 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1884, TorznabCatType.PC0day, " Miscellaneous (projects)");
AddCategoryMapping(1898, TorznabCatType.PC0day, " Trailers (projects)");
AddCategoryMapping(295, TorznabCatType.PC0day, " Reference and legal system");
AddCategoryMapping(296, TorznabCatType.PC0day, " Consultant Plus");
AddCategoryMapping(584, TorznabCatType.PC0day, " Consultant Accountant");
AddCategoryMapping(755, TorznabCatType.PC0day, " Archive irrelevant hands");
AddCategoryMapping(297, TorznabCatType.PC0day, " code");
AddCategoryMapping(298, TorznabCatType.PC0day, " Guarantee");
AddCategoryMapping(299, TorznabCatType.PC0day, " other");
AddCategoryMapping(300, TorznabCatType.PC0day, " Archive (Reference and legal system)");
AddCategoryMapping(301, TorznabCatType.PC0day, " RG PCA - a hidden forum");
AddCategoryMapping(587, TorznabCatType.PC0day, " Collections of programs and WPI");
AddCategoryMapping(929, TorznabCatType.PC0day, " Test drives to adjust the audio / video equipment");
AddCategoryMapping(957, TorznabCatType.PC0day, " GIS, navigation systems and maps");
@@ -683,16 +635,11 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(544, TorznabCatType.AudioVideo, " Concert recording");
AddCategoryMapping(1781, TorznabCatType.AudioVideo, " Concerts (DVD)");
AddCategoryMapping(1782, TorznabCatType.AudioVideo, " Concerts (HD)");
AddCategoryMapping(1784, TorznabCatType.AudioVideo, " Opera, Ballet, Musicals");
AddCategoryMapping(1785, TorznabCatType.AudioVideo, " Music videos (transit)");
AddCategoryMapping(501, TorznabCatType.AudioLossless, " unsorted Lossless");
AddCategoryMapping(532, TorznabCatType.Audio, " Multi-channel HD Audio and Music");
AddCategoryMapping(533, TorznabCatType.Audio, " DVD-Audio, SACD, Audio-DVD");
AddCategoryMapping(1687, TorznabCatType.Audio, " DVD-Audio");
AddCategoryMapping(1688, TorznabCatType.Audio, " SACD-R");
AddCategoryMapping(534, TorznabCatType.Audio, " DTS");
AddCategoryMapping(535, TorznabCatType.Audio, " Vinyl-Rip and Hand-Made");
AddCategoryMapping(536, TorznabCatType.Audio, " Hi-Res stereo");
AddCategoryMapping(529, TorznabCatType.Audio, " discography");
AddCategoryMapping(530, TorznabCatType.Audio, " Domestic");
AddCategoryMapping(531, TorznabCatType.Audio, " foreign");
@@ -754,7 +701,6 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1735, TorznabCatType.Audio, " Rap, Hip-hop domestic (transit Lossy)");
AddCategoryMapping(1736, TorznabCatType.Audio, " RnB, Reggae (transit Lossless)");
AddCategoryMapping(1737, TorznabCatType.Audio, " RnB, Reggae (transit Lossy)");
AddCategoryMapping(1819, TorznabCatType.Audio, " Rap, Hip-hop, RnB (transit Lossless)");
AddCategoryMapping(1738, TorznabCatType.Audio, " East Asian Music (transit)");
AddCategoryMapping(1739, TorznabCatType.Audio, " Asian Traditional, Ethnic (transit Lossless)");
AddCategoryMapping(1740, TorznabCatType.Audio, " Asian Traditional, Ethnic (transit Lossy)");
@@ -797,14 +743,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1798, TorznabCatType.Audio, " Author and war songs (transit Lossless)");
AddCategoryMapping(1799, TorznabCatType.Audio, " Author and war songs (transit Lossy)");
AddCategoryMapping(1772, TorznabCatType.Audio, " Unofficial collections (transit)");
AddCategoryMapping(1773, TorznabCatType.Audio, " Jazz, Blues, Soul (transit collections)");
AddCategoryMapping(1774, TorznabCatType.Audio, " Chanson, Author and war songs (collections transit)");
AddCategoryMapping(1775, TorznabCatType.Audio, " Rock, Alternative, Punk, Metal (collections of transit)");
AddCategoryMapping(1776, TorznabCatType.Audio, " Pop (transit collections)");
AddCategoryMapping(1777, TorznabCatType.Audio, " Electronic (transit collections)");
AddCategoryMapping(1778, TorznabCatType.Audio, " Rap, Hip-hop, RnB, Reggae (transit collections)");
AddCategoryMapping(1779, TorznabCatType.Audio, " Instrumental / New Age / Meditative / Relax (transit collections)");
AddCategoryMapping(1780, TorznabCatType.Audio, " Other (transit collections)");
AddCategoryMapping(1816, TorznabCatType.Audio, " Chanson, Author and war songs (transit)");
AddCategoryMapping(1677, TorznabCatType.Audio, " Chanson, Author and war songs (transit lossless)");
AddCategoryMapping(1678, TorznabCatType.Audio, " Chanson, Author and war songs (transit lossy)");
@@ -1192,9 +1131,9 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1606, TorznabCatType.Audio, " Music Lossy (AAC) (Singles, EPs)");
AddCategoryMapping(113, TorznabCatType.Books, "Books, Audio Books, Journals");
AddCategoryMapping(561, TorznabCatType.Books, " Books, Audio Books, Journals (General Discussion)");
AddCategoryMapping(316, TorznabCatType.Books, " Archive (Books, Audio Books, Journals)");
AddCategoryMapping(1620, TorznabCatType.Books, " Meditation");
AddCategoryMapping(1802, TorznabCatType.Books, " Historiography");
AddCategoryMapping(1900, TorznabCatType.Books, " Classic, modern prose and poetry");
AddCategoryMapping(116, TorznabCatType.AudioAudiobook, " Audiobooks");
AddCategoryMapping(1231, TorznabCatType.AudioAudiobook, " Audio, history, memoirs (Audiobooks)");
AddCategoryMapping(119, TorznabCatType.AudioAudiobook, " Audio and literary readings (Audiobooks)");
@@ -1203,6 +1142,8 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(321, TorznabCatType.AudioAudiobook, " Science fiction, fantasy, mystery, horror, fanfiction (Audiobooks)");
AddCategoryMapping(1234, TorznabCatType.AudioAudiobook, " Russian fiction, fantasy, mystery, horror, fanfiction (audiobook)");
AddCategoryMapping(1235, TorznabCatType.AudioAudiobook, " Foreign fiction, fantasy, mystery, horror, fanfiction (audiobook)");
AddCategoryMapping(1904, TorznabCatType.AudioAudiobook, " Love-fiction novel (audiobooks)");
AddCategoryMapping(1905, TorznabCatType.AudioAudiobook, " Compilations / Miscellaneous Fantastic, Fantasy, Mystic, Horror, Fan-fiction (Audiobooks)");
AddCategoryMapping(317, TorznabCatType.AudioAudiobook, " Fiction (Audiobooks)");
AddCategoryMapping(1236, TorznabCatType.AudioAudiobook, " Poetry (audiobook)");
AddCategoryMapping(118, TorznabCatType.AudioAudiobook, " Foreign literature (audiobook)");
@@ -1218,7 +1159,6 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(1242, TorznabCatType.AudioAudiobook, " Nontraditional religious philosophies (Audio)");
AddCategoryMapping(1243, TorznabCatType.AudioAudiobook, " Educational, scientific and popular literature (Audio)");
AddCategoryMapping(1244, TorznabCatType.AudioAudiobook, " Audiobooks in lossless-format");
AddCategoryMapping(323, TorznabCatType.AudioAudiobook, " Business (Audio)");
AddCategoryMapping(319, TorznabCatType.AudioAudiobook, " Historical literature (Audiobooks)");
AddCategoryMapping(1245, TorznabCatType.AudioAudiobook, " Miscellaneous (Audiobooks)");
AddCategoryMapping(1622, TorznabCatType.AudioAudiobook, " Meditation (Audio)");
@@ -1235,7 +1175,6 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(889, TorznabCatType.Books, " Celebrities and idols");
AddCategoryMapping(890, TorznabCatType.Books, " Miscellaneous");
AddCategoryMapping(982, TorznabCatType.Books, " Magazines and newspapers (general section)");
AddCategoryMapping(566, TorznabCatType.Books, " Men's magazines");
AddCategoryMapping(1204, TorznabCatType.Books, " For women (magazines and books)");
AddCategoryMapping(1793, TorznabCatType.Books, " Popular science magazines");
AddCategoryMapping(1794, TorznabCatType.Books, " Journals of Electrical and Electronics");

View File

@@ -85,6 +85,7 @@ namespace Jackett.Common.Indexers
AddCategoryMapping(55, TorznabCatType.AudioVideo, "Music / 1080p/i");
AddCategoryMapping(56, TorznabCatType.AudioVideo, "Music / 720p");
AddCategoryMapping(42, TorznabCatType.AudioVideo, "Music / Blu-ray");
AddCategoryMapping(41, TorznabCatType.AudioVideo, "Music / Movie OST");
}
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)

View File

@@ -1570,6 +1570,8 @@ namespace Jackett.Common.Indexers
OnParseError(results, ex);
}
}
if (query.Limit > 0)
releases = releases.Take(query.Limit).ToList();
return releases;
}

View File

@@ -49,6 +49,11 @@ namespace Jackett.Common.Indexers.Feeds
var enclosure = enclosures.First().Attribute("url").Value;
release.Link = enclosure.ToUri();
}
// add some default values if none returned by feed
release.Seeders = release.Seeders > 0 ? release.Seeders : 0;
release.Peers = release.Peers > 0 ? release.Peers : 0;
release.DownloadVolumeFactor = release.DownloadVolumeFactor > 0 ? release.DownloadVolumeFactor : 0;
release.UploadVolumeFactor = release.UploadVolumeFactor > 0 ? release.UploadVolumeFactor : 1;
return release;
}

View File

@@ -290,7 +290,7 @@ namespace Jackett.Common.Indexers
release.MinimumSeedTime = 172800;
var qLink = row.ChildElements.ElementAt(1).Cq().Find("a").First();
release.Title = qLink.Text().Trim();
release.Title = qLink.Attr("title");
if (qLink.Find("span").Count() == 1 && release.Title.StartsWith("NEW! |"))
{
release.Title = release.Title.Substring(6).Trim();

View File

@@ -18,7 +18,7 @@ namespace Jackett.Common.Indexers
{
public class Rarbg : BaseWebIndexer
{
// API doc: https://torrentapi.org/apidocs_v2.txt
// API doc: https://torrentapi.org/apidocs_v2.txt?app_id=Jackett
private static readonly string defaultSiteLink = "https://torrentapi.org/";
private Uri BaseUri
@@ -232,8 +232,8 @@ namespace Jackett.Common.Indexers
release.MagnetUri = new Uri(item.Value<string>("download"));
release.InfoHash = release.MagnetUri.ToString().Split(':')[3].Split('&')[0];
release.Comments = new Uri(item.Value<string>("info_page"));
// append app_id to prevent api server returning 403 forbidden
release.Comments = new Uri(item.Value<string>("info_page") + "&app_id=" + app_id);
if (provideTorrentLink)
release.Link = release.Comments; // in case of a torrent download we grab the link from the details page in Download()
release.Guid = release.MagnetUri;

View File

@@ -74,7 +74,7 @@ namespace Jackett.Common.Indexers {
var queryCollection = new NameValueCollection ();
queryCollection.Add ("q", searchString);
queryCollection.Add ("size", "100");
queryCollection.Add ("size", "500");
queryCollection.Add ("type_", "torrent");
var searchUrl = ApiEndpoint + "?" + queryCollection.GetQueryString ();

View File

@@ -287,10 +287,14 @@ namespace Jackett.Updater
"Definitions/idope.yml",
"Definitions/bt-scene.yml",
"Definitions/extratorrentclone.yml",
"Definitions/btdb.yml",
"Definitions/torrentcouch.yml",
"Definitions/idopeclone.yml",
"Definitions/torrof.yml",
"Definitions/archetorrent.yml",
"Definitions/420files.yml",
"Definitions/redtopia.yml",
"Definitions/btxpress.yml",
"Definitions/btstornet.yml",
};
foreach (var oldFile in oldFiles)