mirror of
https://github.com/Jackett/Jackett.git
synced 2025-09-12 23:14:08 +02:00
Compare commits
50 Commits
v0.20.2034
...
v0.20.2109
Author | SHA1 | Date | |
---|---|---|---|
![]() |
3bc25ea784 | ||
![]() |
9415b24d2e | ||
![]() |
8b3ca306e1 | ||
![]() |
22f19a2a5f | ||
![]() |
8029f87430 | ||
![]() |
8a1f2cdc9b | ||
![]() |
fc07995b38 | ||
![]() |
69e147929f | ||
![]() |
f8ee6a5c80 | ||
![]() |
270697b439 | ||
![]() |
d638719f3a | ||
![]() |
7eb4425efa | ||
![]() |
d6dc7ee53f | ||
![]() |
636fb2348e | ||
![]() |
be9f7ffa3e | ||
![]() |
33923913f5 | ||
![]() |
2f0ac6190f | ||
![]() |
91dd3f6a4a | ||
![]() |
10f6b5779e | ||
![]() |
26b4a27311 | ||
![]() |
d51d005476 | ||
![]() |
ed6f79661a | ||
![]() |
4f596e14b2 | ||
![]() |
6a81366206 | ||
![]() |
e71cd1105f | ||
![]() |
548b2801ee | ||
![]() |
efa1071e09 | ||
![]() |
9c526c17c0 | ||
![]() |
46517f2a06 | ||
![]() |
641a2f39da | ||
![]() |
280572b3aa | ||
![]() |
06ddc9d037 | ||
![]() |
1a3e846a0f | ||
![]() |
056727b36a | ||
![]() |
917d0c2a7e | ||
![]() |
88f5a0d8fe | ||
![]() |
86bda5f468 | ||
![]() |
c59a9ff4bb | ||
![]() |
4c81a86df6 | ||
![]() |
6c7b8b6468 | ||
![]() |
4655ece26b | ||
![]() |
9a7705b208 | ||
![]() |
fd0d86f02c | ||
![]() |
cb59eaee2b | ||
![]() |
d45f40bfab | ||
![]() |
feb47facaa | ||
![]() |
80c91222e9 | ||
![]() |
2e284892c7 | ||
![]() |
dc2943cb06 | ||
![]() |
94c90f4225 |
@@ -106,7 +106,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* NoNaMe Club (NNM-Club)
|
||||
* Nyaa.si
|
||||
* OneJAV
|
||||
* OpenSharing
|
||||
* ParnuXi
|
||||
* PC-torrent
|
||||
* PiratBit
|
||||
@@ -379,6 +378,7 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* HD-Space (HDS)
|
||||
* HD-Spain [![(invite needed)][inviteneeded]](#)
|
||||
* HD-Torrents (HDT)
|
||||
* HD-UNiT3D
|
||||
* HD4FANS [![(invite needed)][inviteneeded]](#)
|
||||
* HDAI
|
||||
* HDArea (HDA)
|
||||
@@ -452,7 +452,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* NetCosmo
|
||||
* NorBits
|
||||
* OpenCD [![(invite needed)][inviteneeded]](#)
|
||||
* Oppaitime
|
||||
* Orpheus
|
||||
* OshenPT
|
||||
* Ourbits (HDPter) [![(invite needed)][inviteneeded]](#)
|
||||
@@ -535,7 +534,6 @@ A third-party Golang SDK for Jackett is available from [webtor-io/go-jackett](ht
|
||||
* teracod (Movie Zone)
|
||||
* The Falling Angels (TFA) [![(invite needed)][inviteneeded]](#)
|
||||
* The Geeks
|
||||
* The Horror Charnel (THC)
|
||||
* The New Retro
|
||||
* The Occult [![(invite needed)][inviteneeded]](#)
|
||||
* The Place [![(invite needed)][inviteneeded]](#)
|
||||
@@ -848,7 +846,7 @@ To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/a
|
||||
## Building from source
|
||||
|
||||
### Windows
|
||||
* Install the .NET 5 [SDK](https://www.microsoft.com/net/download/windows)
|
||||
* Install the .NET 6 [SDK](https://www.microsoft.com/net/download/windows)
|
||||
* Clone Jackett
|
||||
* Open PowerShell and from the `src` directory:
|
||||
* - run `dotnet msbuild /restore`
|
||||
|
@@ -5,8 +5,11 @@ BOLDRED="$(printf '\033[1;31m')"
|
||||
BOLDGREEN="$(printf '\033[1;32m')"
|
||||
NC="$(printf '\033[0m')" # No Color
|
||||
|
||||
|
||||
userid=$(id -u)
|
||||
|
||||
# Stop and unload the service if it's running
|
||||
launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist &>/dev/null
|
||||
launchctl bootout gui/${userid}/org.user.Jackett &>/dev/null
|
||||
|
||||
# Move working directory to Jackett's
|
||||
cd "$(dirname "$0")"
|
||||
@@ -64,11 +67,14 @@ if [[ $qstr ]]; then
|
||||
fi
|
||||
|
||||
# Run the agent
|
||||
launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
echo "Launching agent..."
|
||||
#launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
launchctl bootstrap gui/${userid} ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
sleep .5
|
||||
|
||||
# Check that it's launched
|
||||
userid=$(id -u)
|
||||
# Check that it's loaded
|
||||
if [[ $(launchctl list | grep org.user.Jackett) ]]; then
|
||||
# Check that service is running
|
||||
if [[ $(launchctl print gui/${userid}/org.user.Jackett | grep 'state') =~ "running" ]]; then
|
||||
echo "${BOLDGREEN}Agent successfully installed and running!${NC}"
|
||||
echo "Jackett location: ${jackettdir}"
|
||||
|
@@ -1238,6 +1238,59 @@ function clearSearchResultTable(element) {
|
||||
element.find("#jackett-search-results-datatable_paginate").empty();
|
||||
}
|
||||
|
||||
function getSavedPresets() {
|
||||
var lsKey = "jackett_saved_presets";
|
||||
if (JSON !== undefined && localStorage !== undefined) {
|
||||
var lsSavedPresets = localStorage.getItem(lsKey);
|
||||
var presets = lsSavedPresets !== null ? JSON.parse(lsSavedPresets) : [];
|
||||
return presets;
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
}
|
||||
|
||||
function setSavedPresets(presets) {
|
||||
var lsKey = "jackett_saved_presets";
|
||||
if (JSON !== undefined && localStorage !== undefined) {
|
||||
localStorage.setItem(lsKey, JSON.stringify(presets));
|
||||
}
|
||||
}
|
||||
|
||||
function setSavePresetsButtonState(table, element, state = false) {
|
||||
var button = element.find("button[id=jackett-search-results-datatable_savepreset_button]")
|
||||
if (state) {
|
||||
button.attr("class", "btn btn-danger btn-sm");
|
||||
button.on("click", function () {
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
var preset = inputSearch.val().trim();
|
||||
if (preset !== "") {
|
||||
var presets = getSavedPresets();
|
||||
if (presets.includes(preset)) {
|
||||
presets = presets.filter(item => item != preset);
|
||||
setSavedPresets(presets);
|
||||
var datalist = element.find("datalist[id=jackett-search-saved-presets]")
|
||||
datalist.empty();
|
||||
table.api().draw();
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
button.attr("class", "btn btn-success btn-sm");
|
||||
button.on("click", function () {
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
var preset = inputSearch.val().trim();
|
||||
if (preset !== "") {
|
||||
var presets = getSavedPresets();
|
||||
if (!presets.includes(preset)) {
|
||||
presets.push(preset);
|
||||
setSavedPresets(presets);
|
||||
table.api().draw();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// dataTable dead torrent filter
|
||||
$.fn.dataTable.ext.search = [
|
||||
function (settings, data, dataIndex) {
|
||||
@@ -1313,16 +1366,34 @@ function updateSearchResultTable(element, results) {
|
||||
],
|
||||
fnPreDrawCallback: function () {
|
||||
var table = this;
|
||||
var datalist = element.find("datalist[id=jackett-search-saved-presets]")
|
||||
|
||||
var presets = getSavedPresets();
|
||||
if (presets.length > 0) {
|
||||
datalist.empty();
|
||||
presets.forEach(preset => {
|
||||
var option = $('<option></option>');
|
||||
option.attr("value", preset);
|
||||
datalist.append(option);
|
||||
})
|
||||
}
|
||||
|
||||
var inputSearch = element.find("input[type=search]");
|
||||
setSavePresetsButtonState(table, element, presets.includes(inputSearch.val().trim()));
|
||||
|
||||
if (!inputSearch.attr("custom")) {
|
||||
var newInputSearch = inputSearch.clone();
|
||||
newInputSearch.attr("custom", "true");
|
||||
newInputSearch.attr("data-toggle", "tooltip");
|
||||
newInputSearch.attr("title", "Search query consists of several keywords.\nKeyword starting with \"-\" is considered a negative match.");
|
||||
newInputSearch.attr("title", "Search query consists of several keywords.\nKeyword starting with \"-\" is considered a negative match.\nKeywords separated by \"|\" are considered as OR filters.");
|
||||
newInputSearch.attr("list", "jackett-search-saved-presets");
|
||||
newInputSearch.on("input", function () {
|
||||
var newKeywords = [];
|
||||
var filterTextKeywords = $(this).val().split(" ");
|
||||
var filterText = $(this).val().trim();
|
||||
var presets = getSavedPresets();
|
||||
setSavePresetsButtonState(table, element, presets.includes(filterText));
|
||||
|
||||
var filterTextKeywords = filterText.split(" ");
|
||||
$.each(filterTextKeywords, function (index, keyword) {
|
||||
if (keyword === "" || keyword === "+" || keyword === "-")
|
||||
return;
|
||||
@@ -1332,7 +1403,7 @@ function updateSearchResultTable(element, results) {
|
||||
else if (keyword.startsWith("-"))
|
||||
newKeyword = "^((?!" + $.fn.dataTable.util.escapeRegex(keyword.substring(1)) + ").)*$";
|
||||
else
|
||||
newKeyword = $.fn.dataTable.util.escapeRegex(keyword);
|
||||
newKeyword = '(' + keyword.split('|').map(k => $.fn.dataTable.util.escapeRegex(k)).join('|') + ')';
|
||||
newKeywords.push(newKeyword);
|
||||
});
|
||||
var filterText = newKeywords.join(" ");
|
||||
@@ -1352,6 +1423,10 @@ function updateSearchResultTable(element, results) {
|
||||
table.api().draw();
|
||||
});
|
||||
deadfiltercheckbox.prop('checked', settings.deadfilter);
|
||||
|
||||
savepresetlabel = $('<button id="jackett-search-results-datatable_savepreset_button" title="Save Search Preset" class="btn btn-success btn-sm" style="margin-left: 10px;"><span class="fa fa-save"></span></button>');
|
||||
var searchfilterdiv = element.find("#jackett-search-results-datatable_filter");
|
||||
searchfilterdiv.append(savepresetlabel);
|
||||
}
|
||||
},
|
||||
initComplete: function () {
|
||||
|
@@ -565,6 +565,7 @@
|
||||
{{/if}}
|
||||
, {{/each}}
|
||||
</p>
|
||||
<datalist id="jackett-search-saved-presets"></datalist>
|
||||
<table id="jackett-search-results-datatable" class="dataTable compact cell-border hover stripe">
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -754,6 +755,6 @@
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="../libs/api.js?changed=2017083001"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20220721002"></script>
|
||||
<script type="text/javascript" src="../custom.js?changed=20221003"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -12,12 +12,11 @@ links:
|
||||
- https://x1337x.ws/
|
||||
- https://x1337x.eu/
|
||||
- https://x1337x.se/
|
||||
- https://1337x.unblockit.cat/
|
||||
- https://1337x.unblockit.nz/
|
||||
- https://1337x.nocensor.world/
|
||||
- https://1337x.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://1337x.unblocked.monster/
|
||||
- https://1337x.unblockit.li/
|
||||
- https://1337x.unblockit.uno/
|
||||
- https://1337x.is/
|
||||
- https://1337x.unblockit.ch/
|
||||
@@ -38,6 +37,7 @@ legacylinks:
|
||||
- https://1337x.nocensor.sbs/
|
||||
- https://1337x.unblockit.ist/
|
||||
- https://1337x.unblockit.bet/
|
||||
- https://1337x.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -27,7 +27,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
|
@@ -11,11 +11,14 @@ links:
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 7, cat: TV/Anime, desc: "Series English"}
|
||||
- {id: 16, cat: TV/Anime, desc: "ongoing"}
|
||||
- {id: 11, cat: TV/Anime, desc: "Series Non-English"}
|
||||
- {id: 1, cat: TV/Anime, desc: "Raws"}
|
||||
- {id: 2, cat: TV/Anime, desc: "OVA"}
|
||||
- {id: 4, cat: Movies, desc: "Movie"}
|
||||
- {id: 6, cat: XXX, desc: "Hentai OVA"}
|
||||
- {id: 15, cat: Books/Comics, desc: "Manga"}
|
||||
- {id: 6, cat: XXX, desc: "Hentai Censored"}
|
||||
- {id: 14, cat: XXX, desc: "Hentai Uncensored"}
|
||||
- {id: 9, cat: XXX, desc: "Hentai Manga"}
|
||||
- {id: 10, cat: Movies, desc: "Live Action"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
@@ -25,6 +28,7 @@ caps:
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
|
@@ -77,6 +77,7 @@ search:
|
||||
args: [",", -1]
|
||||
year:
|
||||
selector: year
|
||||
optional: true
|
||||
_codec:
|
||||
selector: codec
|
||||
_container:
|
||||
|
@@ -8,7 +8,7 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://audiobookbay.fi/
|
||||
- https://audiobookbay.se/
|
||||
- https://audiobookbay.unblockit.cat/
|
||||
- https://audiobookbay.unblockit.nz/
|
||||
legacylinks:
|
||||
- https://audiobookbay.la/
|
||||
- https://audiobookbay.unblockit.uno/
|
||||
@@ -32,6 +32,7 @@ legacylinks:
|
||||
- http://audiobookbayabb.com/
|
||||
- https://audiobookbay.unblockit.ist/
|
||||
- https://audiobookbay.unblockit.bet/
|
||||
- https://audiobookbay.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -21,7 +21,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -57,7 +57,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -95,7 +95,7 @@ login:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href^="logout.php?k="]
|
||||
selector: span[onclick^="window.open('logout.php?k="]
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -19,7 +19,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -20,7 +20,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -7,12 +7,13 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://btsao.com/
|
||||
- https://btmirror.unblockit.cat/
|
||||
- https://btmirror.unblockit.nz/
|
||||
legacylinks:
|
||||
- https://btmirror.unblockit.blue/
|
||||
- https://btmirror.unblockit.name/
|
||||
- https://btmirror.unblockit.ist/
|
||||
- https://btmirror.unblockit.bet/
|
||||
- https://btmirror.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -7,10 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
# use https://tellme.pw/btsow to find the new domain
|
||||
links:
|
||||
- https://btsow.cfd/
|
||||
- https://btsow.sbs/
|
||||
legacylinks:
|
||||
- https://btsow.monster/
|
||||
- https://btsow.casa/
|
||||
- https://btsow.website/
|
||||
- https://btsow.online/
|
||||
- https://btsow.work/
|
||||
@@ -25,6 +23,7 @@ legacylinks:
|
||||
- https://btsow.rest/
|
||||
- https://btsow.bar/
|
||||
- https://btsow.click/
|
||||
- https://btsow.cfd/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -21,7 +21,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -3,11 +3,11 @@ id: cpasbien
|
||||
name: cpasbien
|
||||
description: "cpasbien is a FRENCH Public site for TV / MOVIES / GENERAL"
|
||||
language: fr-FR
|
||||
type: semi-private
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://vwwvwvwvvw.cpasbien-fr.nz/
|
||||
- https://cpasbiens3.fr/
|
||||
legacylinks:
|
||||
- http://www.cpasbiens.cc/
|
||||
- http://www.cpabien.cm/
|
||||
@@ -43,6 +43,7 @@ legacylinks:
|
||||
- https://wwwv.cpasbien-fr.fr/
|
||||
- https://www2.cpasbien-fr.fr/
|
||||
- https://www.cpasbien-fr.nz/
|
||||
- https://vwwvwvwvvw.cpasbien-fr.nz/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
@@ -54,13 +55,6 @@ caps:
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info
|
||||
label: How to get the Cookie
|
||||
default: "<ol><li>Login to this tracker with your browser<li>Solve the challenge<li>Open the <b>DevTools</b> panel by pressing <b>F12</b><li>Select the <b>Network</b> tab<li>Click on the <b>Doc</b> button<li>Refresh the page by pressing <b>F5</b><li>Select the <b>Headers</b> tab<li>Find <b>'cookie:'</b> in the <b>Request Headers</b> section<li><b>Select</b> and <b>Copy</b> the whole cookie string <i>(everything after 'cookie: ')</i> and <b>Paste</b> here.</ol>"
|
||||
- name: flaresolverr
|
||||
type: info
|
||||
label: FlareSolverr
|
||||
@@ -89,11 +83,6 @@ settings:
|
||||
label: Replace VOSTFR with ENGLISH
|
||||
default: false
|
||||
|
||||
login:
|
||||
method: cookie
|
||||
inputs:
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="magnet:?xt="]
|
||||
@@ -114,7 +103,7 @@ search:
|
||||
args: ["(?i)(S)(\\d{1,3})$", "saison $2"]
|
||||
|
||||
rows:
|
||||
selector: div#gauche > table > tbody > tr:has(a)
|
||||
selector: div#gauche > table > tbody > tr:has(a), div#dle-content > table > tbody > tr:has(a)
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
@@ -12,12 +12,11 @@ links:
|
||||
- https://www.dnoid.pw/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ws/
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.pet/
|
||||
- https://demonoid.unblockit.cat/
|
||||
- https://demonoid.unblockit.nz/
|
||||
- https://demonoid.torrentbay.to/
|
||||
- https://demonoid.nocensor.world/
|
||||
legacylinks:
|
||||
- https://demonoidevmsgasmojajlhikwetsr4pxzw6xkjt3dgdv6nr5yxvsamid.onion.ly/
|
||||
- https://demonoid.unblockit.li/
|
||||
- https://demonoid.unblockit.uno/
|
||||
- https://demonoid.unblockit.ch/
|
||||
- https://demonoid.nocensor.space/
|
||||
@@ -36,6 +35,7 @@ legacylinks:
|
||||
- https://demonoid.nocensor.sbs/
|
||||
- https://demonoid.unblockit.ist/
|
||||
- https://demonoid.unblockit.bet/
|
||||
- https://demonoid.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -36,7 +36,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -33,7 +33,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
book-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://extratorrent.st/
|
||||
- https://extratorrent.unblockit.cat/
|
||||
- https://extratorrent.unblockit.nz/
|
||||
- https://extratorrent.nocensor.world/
|
||||
legacylinks:
|
||||
- https://extratorrent.nocensor.work/
|
||||
@@ -24,6 +24,7 @@ legacylinks:
|
||||
- https://extratorrent.nocensor.sbs/
|
||||
- https://extratorrent.unblockit.ist/
|
||||
- https://extratorrent.unblockit.bet/
|
||||
- https://extratorrent.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -41,7 +41,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
|
@@ -13,7 +13,7 @@ links:
|
||||
- https://eztv.yt/
|
||||
- https://eztv1.xyz/
|
||||
- https://eztv.unblockninja.com/
|
||||
- https://eztv.unblockit.cat/
|
||||
- https://eztv.unblockit.nz/
|
||||
- https://eztv.nocensor.world/
|
||||
legacylinks:
|
||||
- https://eztv.ag/ # redirects to .re
|
||||
@@ -21,7 +21,6 @@ legacylinks:
|
||||
- https://eztv.ch/ # redirects to .re
|
||||
- https://eztv.io/
|
||||
- https://eztv.unblocked.monster/
|
||||
- https://eztv.unblockit.li/
|
||||
- https://eztv.unblockit.uno/
|
||||
- https://eztv.unblockit.ch/
|
||||
- https://eztv.nocensor.space/
|
||||
@@ -40,6 +39,7 @@ legacylinks:
|
||||
- https://eztv.nocensor.sbs/
|
||||
- https://eztv.unblockit.ist/
|
||||
- https://eztv.unblockit.bet/
|
||||
- https://eztv.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
@@ -88,7 +88,7 @@ search:
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBID }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 name&descr, 1 name, 2 descr, 3 tags
|
||||
# 0 name, 1 name&desc, 2 descr, 3 tags, 4 imdb with rating
|
||||
hae: 1
|
||||
# 0 active, 1 incldead, 2 deadonly
|
||||
incldead: 1
|
||||
@@ -120,10 +120,8 @@ search:
|
||||
imdbid:
|
||||
selector: a[href*="imdb.com/title/tt"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-last-child(6)
|
||||
date:
|
||||
# 26.03.2020 <br/>3:53
|
||||
# 26.3.2022 <br/>3:53
|
||||
selector: td:nth-last-child(4)
|
||||
filters:
|
||||
- name: re_replace
|
||||
@@ -131,7 +129,7 @@ search:
|
||||
- name: append
|
||||
args: " +02:00" # EET
|
||||
- name: dateparse
|
||||
args: "2.01.2006 15:04 -07:00"
|
||||
args: "2.1.2006 15:04 -07:00"
|
||||
size:
|
||||
selector: td:nth-last-child(3)
|
||||
seeders:
|
||||
|
@@ -50,7 +50,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -39,7 +39,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
search:
|
||||
paths:
|
||||
|
@@ -87,7 +87,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
|
@@ -86,7 +86,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
|
@@ -10,14 +10,13 @@ links:
|
||||
- https://glodls.to/
|
||||
- https://gtdb.cc/
|
||||
- https://www.gtdb.to/
|
||||
- https://glotorrents.unblockit.cat/
|
||||
- https://glotorrents.unblockit.nz/
|
||||
- https://glotorrents.nocensor.world/
|
||||
- https://glodls.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://glodls.rocks/
|
||||
- https://gtdb.to/
|
||||
- https://glodls.unblocked.monster/
|
||||
- https://glotorrents.unblockit.li/
|
||||
- https://glotorrents.unblockit.uno/
|
||||
- https://glotorrents.unblockit.ch/
|
||||
- https://glotorrents.nocensor.space/
|
||||
@@ -36,6 +35,7 @@ legacylinks:
|
||||
- https://glotorrents.nocensor.sbs/
|
||||
- https://glotorrents.unblockit.ist/
|
||||
- https://glotorrents.unblockit.bet/
|
||||
- https://glotorrents.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -22,7 +22,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
|
143
src/Jackett.Common/Definitions/hd-unit3d-api.yml
Normal file
143
src/Jackett.Common/Definitions/hd-unit3d-api.yml
Normal file
@@ -0,0 +1,143 @@
|
||||
---
|
||||
id: hd-unit3d-api
|
||||
name: HD-UNiT3D (API)
|
||||
description: "HD-UNiT3D is a Private Torrent Tracker for HD MOVIES / TV"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://hd-united.vn/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: Movies, desc: "Movies"}
|
||||
- {id: 2, cat: TV, desc: "TV"}
|
||||
- {id: 3, cat: Audio, desc: "Music"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid, tvdbid, tmdbid]
|
||||
movie-search: [q, imdbid, tmdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: apikey
|
||||
type: text
|
||||
label: APIKey
|
||||
- name: info_key
|
||||
type: info
|
||||
label: About your API key
|
||||
default: "Find or Generate a new API Token by accessing your <a href=\"https://hd-united.vn/\" target =_blank>HD-UNiT3D</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: created_at
|
||||
options:
|
||||
created_at: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: /api/torrents
|
||||
method: get
|
||||
inputs:
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
error:
|
||||
- selector: a[href*="/login"]
|
||||
message:
|
||||
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://hdinnovations.github.io/UNIT3D-Community-Edition-Docs/api_endpoints.html
|
||||
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php
|
||||
- path: "/api/torrents/filter"
|
||||
response:
|
||||
type: json
|
||||
|
||||
inputs:
|
||||
# if we have an id based search, add Season and Episode as query in name for UNIT3D < v6. Else pass S/E Params for UNIT3D >= v6
|
||||
api_token: "{{ .Config.apikey }}"
|
||||
name: "{{ .Keywords }}"
|
||||
$raw: "{{ if .Query.Season }}&seasonNumber={{ .Query.Season }}{{ else }}{{ end }}{{ if .Query.Ep }}&episodeNumber={{ .Query.Ep }}{{ else }}{{ end }}{{ if .Query.TMDBID }}&tmdbId={{ .Query.TMDBID }}{{ else }}{{ end }}{{ if .Query.IMDBIDShort }}&imdbId={{ .Query.IMDBIDShort }}{{ else }}{{ end }}{{ if .Query.TVDBID }}&tvdbId={{ .Query.TVDBID }}{{ else }}{{ end }}{{ range .Categories }}&categories[]={{.}}{{end}}{{ if .Config.freeleech }}&free=1{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
perPage: 100
|
||||
page: 1
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace
|
||||
args: ["\\.", " "]
|
||||
|
||||
rows:
|
||||
selector: data
|
||||
attribute: attributes
|
||||
count:
|
||||
selector: meta.total
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: category
|
||||
title:
|
||||
selector: name
|
||||
details:
|
||||
selector: details_link
|
||||
download:
|
||||
selector: download_link
|
||||
poster:
|
||||
selector: poster
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["https://via.placeholder.com/90x135", ""]
|
||||
imdbid:
|
||||
selector: imdb_id
|
||||
tmdbid:
|
||||
selector: tmdb_id
|
||||
tvdbid:
|
||||
selector: tvdb_id
|
||||
files:
|
||||
selector: num_file
|
||||
seeders:
|
||||
selector: seeders
|
||||
leechers:
|
||||
selector: leechers
|
||||
grabs:
|
||||
selector: times_completed
|
||||
date:
|
||||
# 2021-10-18T00:34:50.000000Z"
|
||||
selector: created_at
|
||||
size:
|
||||
selector: size
|
||||
downloadvolumefactor:
|
||||
# api returns 0%, 25%, 50%, 75%, 100%
|
||||
selector: freeleech
|
||||
case:
|
||||
0%: 1 # not free
|
||||
25%: 0.75
|
||||
50%: 0.5
|
||||
75%: 0.25
|
||||
100%: 0 # freeleech
|
||||
"*": 0 # catch errors
|
||||
uploadvolumefactor:
|
||||
# api returns 0=false, 1=true
|
||||
selector: double_upload
|
||||
case:
|
||||
0: 1 # normal
|
||||
1: 2 # double
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# json UNIT3D 6.3.0
|
@@ -20,7 +20,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -26,7 +26,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -25,7 +25,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -5,6 +5,8 @@ description: "JPopSuki is a Private Torrent Tracker for ASIAN MUSIC"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 23b2a81c132d993d90cb5c7f1a28225bb8ab6d83 # expired 7th Oct 2022
|
||||
links:
|
||||
- https://jpopsuki.eu/
|
||||
|
||||
|
@@ -24,7 +24,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -9,7 +9,7 @@ followredirect: true
|
||||
# changes to this indexer should also be made to limetorrentsclone
|
||||
links:
|
||||
- https://www.limetorrents.lol/
|
||||
- https://limetorrents.unblockit.cat/
|
||||
- https://limetorrents.unblockit.nz/
|
||||
- https://limetorrents.unblockninja.com/
|
||||
- https://limetorrents.nocensor.world/
|
||||
legacylinks:
|
||||
@@ -41,6 +41,7 @@ legacylinks:
|
||||
- https://limetorrents.nocensor.sbs/
|
||||
- https://limetorrents.unblockit.ist/
|
||||
- https://limetorrents.unblockit.bet/
|
||||
- https://limetorrents.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -37,7 +37,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
music-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -51,7 +51,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings: []
|
||||
|
@@ -102,7 +102,7 @@ search:
|
||||
category: "{{ range .Categories }}{{.}};{{end}}"
|
||||
# 0 all, 1 active, 2 dead
|
||||
active: 0
|
||||
# 0 filename, 1 file&descr, 2 descr, 3 uploader, 5 gold, 6 silver, 7 bronze
|
||||
# 0 filename, 1 file&descr, 2 descr, 3 uploader, 5 gold, 6 silver, 7 bronze, 18 genre
|
||||
options: "{{ if .Config.freeleech }}5{{ else }}0{{ end }}"
|
||||
order: "{{ .Config.sort }}"
|
||||
by: "{{ .Config.type }}"
|
||||
@@ -132,6 +132,8 @@ search:
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=(.*?) "
|
||||
- name: replace
|
||||
args: ["torrentimg/nocover.jpg", ""]
|
||||
details:
|
||||
selector: a[onmouseover][href^="index.php?page=torrent-details&id="]
|
||||
attribute: href
|
||||
@@ -174,6 +176,6 @@ search:
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# xbtitFM v2.2.09
|
||||
# 1 day (as seconds = 1 x 24 x 60 x 60)
|
||||
text: 86400
|
||||
# xbtitFM v3.1.01
|
||||
|
@@ -648,7 +648,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -8,6 +8,7 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://nyaa.si/
|
||||
- https://nyaa.iss.ink/
|
||||
- https://nyaa.nocensor.world/ # for magnets only
|
||||
legacylinks:
|
||||
- https://nyaa.black-mirror.xyz/
|
||||
- https://nyaa.unblocked.casa/
|
||||
@@ -113,7 +114,7 @@ caps:
|
||||
- {id: 6_2, cat: PC/Games, desc: "Games"}
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
@@ -1,119 +0,0 @@
|
||||
---
|
||||
id: opensharing
|
||||
name: OpenSharing
|
||||
description: "OpenSharing is a RUSSIAN Public Torrent Tracker for 3X"
|
||||
language: ru-RU
|
||||
type: public
|
||||
encoding: windows-1251
|
||||
links:
|
||||
- https://opensharing.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 5000, cat: XXX, desc: "Animation: Cartoon"}
|
||||
- {id: 225, cat: XXX, desc: "Animation: Hentai"}
|
||||
- {id: 145, cat: XXX, desc: "Misc & Other: Documentary"}
|
||||
- {id: 245, cat: XXX/Pack, desc: "Misc & Other: Video Pack"}
|
||||
- {id: 435, cat: XXX/Other, desc: "Misc & Other: Games XXX"}
|
||||
- {id: 440, cat: XXX/ImageSet, desc: "Misc & Other: Images & Wallpaper"}
|
||||
- {id: 1, cat: XXX, desc: "Movies XXX: Asian"}
|
||||
- {id: 20, cat: XXX, desc: "Movies XXX: Amateur"}
|
||||
- {id: 40, cat: XXX, desc: "Movies XXX: Anal & DP"}
|
||||
- {id: 60, cat: XXX, desc: "Movies XXX: BDSM"}
|
||||
- {id: 80, cat: XXX, desc: "Movies XXX: Boobs"}
|
||||
- {id: 85, cat: XXX, desc: "Movies XXX: BBW & Plump Woman"}
|
||||
- {id: 100, cat: XXX, desc: "Movies XXX: Classic & Feature"}
|
||||
- {id: 120, cat: XXX, desc: "Movies XXX: Compilation"}
|
||||
- {id: 140, cat: XXX, desc: "Movies XXX: Casting"}
|
||||
- {id: 150, cat: XXX, desc: "Movies XXX: Erotic"}
|
||||
- {id: 180, cat: XXX, desc: "Movies XXX: Fetish"}
|
||||
- {id: 185, cat: XXX, desc: "Movies XXX: Femdom"}
|
||||
- {id: 190, cat: XXX, desc: "Movies XXX: Fisting & Dildos"}
|
||||
- {id: 200, cat: XXX, desc: "Movies XXX: Gonzo"}
|
||||
- {id: 220, cat: XXX, desc: "Movies XXX: Group & GangBang"}
|
||||
- {id: 222, cat: XXX, desc: "Movies XXX: Threesomes"}
|
||||
- {id: 240, cat: XXX, desc: "Movies XXX: Interracial"}
|
||||
- {id: 260, cat: XXX, desc: "Movies XXX: Ebony & Latin, Arab"}
|
||||
- {id: 275, cat: XXX, desc: "Movies XXX: Taboo"}
|
||||
- {id: 280, cat: XXX, desc: "Movies XXX: Lesbians"}
|
||||
- {id: 285, cat: XXX, desc: "Movies XXX: Lesbian Strap-On"}
|
||||
- {id: 290, cat: XXX, desc: "Movies XXX: Midgets"}
|
||||
- {id: 295, cat: XXX, desc: "Movies XXX: Skinny & Petite"}
|
||||
- {id: 300, cat: XXX, desc: "Movies XXX: Young"}
|
||||
- {id: 320, cat: XXX, desc: "Movies XXX: MILF & Mature"}
|
||||
- {id: 325, cat: XXX, desc: "Movies XXX: Granny"}
|
||||
- {id: 340, cat: XXX, desc: "Movies XXX: Oral & Blowjob"}
|
||||
- {id: 360, cat: XXX, desc: "Movies XXX: Parody"}
|
||||
- {id: 370, cat: XXX, desc: "Movies XXX: Pregnants"}
|
||||
- {id: 380, cat: XXX, desc: "Movies XXX: Public & Car, Outdoors"}
|
||||
- {id: 385, cat: XXX, desc: "Movies XXX: Rape Roleplay"}
|
||||
- {id: 400, cat: XXX, desc: "Movies XXX: Russian"}
|
||||
- {id: 425, cat: XXX, desc: "Movies XXX: С Русским переводом!"}
|
||||
- {id: 1195, cat: XXX, desc: "Movies XXX: LegalPorno"}
|
||||
- {id: 1200, cat: XXX, desc: "Movies XXX: Solo & Masturbation"}
|
||||
- {id: 1250, cat: XXX, desc: "Movies XXX: Movie Scenes"}
|
||||
- {id: 7000, cat: XXX, desc: "Movies XXX: -= XXX =-"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
|
||||
settings:
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: id
|
||||
options:
|
||||
id: created
|
||||
seeders: seeders
|
||||
size: size
|
||||
name: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
search:
|
||||
paths:
|
||||
# https://opensharing.org/torrents-search.php?c20=1&c435=1&search=2021+720p&sort=id&order=desc
|
||||
- path: torrents-search.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ .Keywords }}"
|
||||
cat: 0
|
||||
sort: "{{ .Config.sort }}"
|
||||
order: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: table.ttable_headinner tbody tr:has(a[href^="download.php?id="])
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: td a[href^="torrents.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: td a[href^="torrents-details.php?id="]
|
||||
details:
|
||||
selector: td a[href^="torrents-details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: td a[href^="download.php?id="]
|
||||
attribute: href
|
||||
date:
|
||||
text: now
|
||||
size:
|
||||
selector: td:nth-child(5)
|
||||
seeders:
|
||||
selector: td:nth-child(6)
|
||||
leechers:
|
||||
selector: td:nth-child(7)
|
||||
downloadvolumefactor:
|
||||
text: 0
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
# engine n/a
|
@@ -80,7 +80,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
|
@@ -39,7 +39,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
|
@@ -145,7 +145,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
|
@@ -76,7 +76,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -494,7 +494,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -273,7 +273,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -9,6 +9,7 @@ links:
|
||||
- http://rutor.info/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
- http://rutor.is/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
- http://new-rutor.org/ # site does not support https ERR_CONNECTION_REFUSED
|
||||
- https://rutor.nocensor.world/ # for magnet only
|
||||
legacylinks:
|
||||
- http://live-rutor.org/ # domain expired 9 Feb 2020
|
||||
- https://rutor.black-mirror.xyz/
|
||||
|
@@ -200,7 +200,12 @@ search:
|
||||
- name: append
|
||||
args: "{{ if .Result.genre }}</br>{{ .Result.genre }}{{ else }}{{ end }}"
|
||||
date:
|
||||
text: now
|
||||
selector: a:has(span.bx-calendar)
|
||||
filters:
|
||||
- name: append
|
||||
args: " +03:00" # MSK
|
||||
- name: dateparse
|
||||
args: "2.01.2006 15:04 -07:00"
|
||||
seeders:
|
||||
selector: a:has(i.bx-chevrons-up)
|
||||
filters:
|
||||
|
@@ -77,7 +77,7 @@ login:
|
||||
error:
|
||||
- selector: table:has(td.thead:contains("An error has occured!"))
|
||||
test:
|
||||
path: index.php
|
||||
path: userdetails.php
|
||||
selector: a[href*="logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
|
@@ -135,7 +135,7 @@ login:
|
||||
selector: td.text
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
selector: a[href*="logout.php"]
|
||||
|
||||
search:
|
||||
paths:
|
||||
@@ -173,6 +173,9 @@ search:
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img.nexus-lazy-load
|
||||
attribute: data-src
|
||||
date_elapsed:
|
||||
# time type: time elapsed (default)
|
||||
selector: td.rowfollow:nth-child(4) > span[title]
|
||||
|
@@ -121,7 +121,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
|
@@ -62,7 +62,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
|
||||
settings:
|
||||
|
@@ -181,8 +181,9 @@ search:
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
# global MR is 0.4 but torrents must be seeded for 3 days regardless of ratio
|
||||
# minimumratio:
|
||||
# text: 0.4
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
|
@@ -48,7 +48,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
|
||||
settings:
|
||||
- name: cookie
|
||||
|
@@ -1,227 +0,0 @@
|
||||
---
|
||||
id: thehorrorcharnel
|
||||
name: The Horror Charnel
|
||||
description: "The Horror Charnel (THC) is a Private Torrent Tracker for HORROR / CULT / SLEAZE / SCI FI MOVIES"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://horrorcharnel.org/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 14, cat: PC, desc: "-- Appz --"}
|
||||
- {id: 15, cat: Books/Comics, desc: "-- Comics --"}
|
||||
- {id: 17, cat: Books/EBook, desc: "-- E-books --"}
|
||||
- {id: 16, cat: PC/Games, desc: "-- Games --"}
|
||||
- {id: 19, cat: Audio, desc: "-- Music --"}
|
||||
- {id: 82, cat: Other, desc: "-- Other --"}
|
||||
- {id: 18, cat: Other, desc: "-- OTR --"}
|
||||
- {id: 20, cat: Movies, desc: "Action"}
|
||||
- {id: 21, cat: Movies, desc: "Adult"}
|
||||
- {id: 74, cat: Movies, desc: "Aliens"}
|
||||
- {id: 22, cat: Movies, desc: "Anthology"}
|
||||
- {id: 23, cat: Movies, desc: "Asian"}
|
||||
- {id: 94, cat: Movies/BluRay, desc: "BD full"}
|
||||
- {id: 79, cat: Movies, desc: "Bizarre"}
|
||||
- {id: 90, cat: Movies, desc: "Blaxploitation"}
|
||||
- {id: 24, cat: Movies, desc: "Cannibal"}
|
||||
- {id: 25, cat: Movies, desc: "Cheese"}
|
||||
- {id: 51, cat: Movies, desc: "Comedy"}
|
||||
- {id: 95, cat: Movies, desc: "Contests"}
|
||||
- {id: 26, cat: Movies, desc: "Creatures/Monsters"}
|
||||
- {id: 75, cat: Movies, desc: "Crime"}
|
||||
- {id: 27, cat: Movies, desc: "Cult"}
|
||||
- {id: 50, cat: Movies, desc: "Demons"}
|
||||
- {id: 84, cat: Movies, desc: "Disaster"}
|
||||
- {id: 28, cat: TV/Documentary, desc: "Documentary"}
|
||||
- {id: 81, cat: Movies, desc: "Drama"}
|
||||
- {id: 68, cat: Movies, desc: "Drugs"}
|
||||
- {id: 85, cat: Movies, desc: "Ecodisaster"}
|
||||
- {id: 92, cat: Movies, desc: "Euro Horror"}
|
||||
- {id: 29, cat: Movies, desc: "Exploitation"}
|
||||
- {id: 93, cat: Movies, desc: "Fan Edit"}
|
||||
- {id: 30, cat: Movies, desc: "Fantasy"}
|
||||
- {id: 31, cat: Movies, desc: "Foreign Language"}
|
||||
- {id: 32, cat: Movies, desc: "Found Footage"}
|
||||
- {id: 33, cat: Movies, desc: "Free"}
|
||||
- {id: 59, cat: Movies, desc: "Ghosts"}
|
||||
- {id: 34, cat: Movies, desc: "Giallo"}
|
||||
- {id: 70, cat: Movies, desc: "Gore"}
|
||||
- {id: 87, cat: Movies, desc: "Grindhouse"}
|
||||
- {id: 53, cat: Movies, desc: "Hammer"}
|
||||
- {id: 78, cat: Movies, desc: "Haunting"}
|
||||
- {id: 67, cat: Movies, desc: "Hicksploitation"}
|
||||
- {id: 35, cat: Movies, desc: "Indie"}
|
||||
- {id: 73, cat: Movies, desc: "Killer Dolls"}
|
||||
- {id: 58, cat: Movies, desc: "Mad Doctors"}
|
||||
- {id: 36, cat: TV, desc: "Made For TV"}
|
||||
- {id: 37, cat: Movies, desc: "Martial arts"}
|
||||
- {id: 91, cat: Movies, desc: "Musicals"}
|
||||
- {id: 69, cat: Movies, desc: "Mutants"}
|
||||
- {id: 38, cat: Movies, desc: "Mystery"}
|
||||
- {id: 86, cat: Movies, desc: "Occult"}
|
||||
- {id: 76, cat: Movies, desc: "Off-Beat Comedy"}
|
||||
- {id: 72, cat: Movies, desc: "Possession"}
|
||||
- {id: 39, cat: Movies, desc: "Post Apocalypse"}
|
||||
- {id: 61, cat: Movies, desc: "Psychos"}
|
||||
- {id: 40, cat: Movies, desc: "Psychosis"}
|
||||
- {id: 65, cat: Movies, desc: "Religious"}
|
||||
- {id: 62, cat: Movies, desc: "Revenge"}
|
||||
- {id: 89, cat: Movies, desc: "RiffTrax"}
|
||||
- {id: 64, cat: Movies, desc: "Satanic"}
|
||||
- {id: 41, cat: Movies, desc: "Sci-Fi"}
|
||||
- {id: 55, cat: Movies, desc: "Serial Killers"}
|
||||
- {id: 42, cat: Movies, desc: "Short"}
|
||||
- {id: 43, cat: Movies, desc: "Slasher"}
|
||||
- {id: 44, cat: Movies, desc: "Sleaze"}
|
||||
- {id: 80, cat: Movies, desc: "Spaghetti Westerns"}
|
||||
- {id: 45, cat: Movies, desc: "Supernatural"}
|
||||
- {id: 60, cat: Movies, desc: "Surreal"}
|
||||
- {id: 54, cat: Movies, desc: "Survival"}
|
||||
- {id: 88, cat: Movies, desc: "Suspense"}
|
||||
- {id: 49, cat: Movies, desc: "Theme of the month"}
|
||||
- {id: 46, cat: Movies, desc: "Thriller"}
|
||||
- {id: 63, cat: Movies, desc: "Toonz"}
|
||||
- {id: 47, cat: TV, desc: "TV Series"}
|
||||
- {id: 52, cat: Movies, desc: "Vampire"}
|
||||
- {id: 77, cat: Movies, desc: "Voodoo"}
|
||||
- {id: 57, cat: Movies, desc: "Werewolf"}
|
||||
- {id: 66, cat: Movies, desc: "Witchcraft"}
|
||||
- {id: 48, cat: Movies, desc: "Zombie"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep, imdbid]
|
||||
movie-search: [q, imdbid]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
default: 4
|
||||
options:
|
||||
4: created
|
||||
7: seeders
|
||||
5: size
|
||||
1: title
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
default: desc
|
||||
options:
|
||||
desc: desc
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: loginto.php
|
||||
method: form
|
||||
form: form
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
use_ssl: 1
|
||||
perm_ssl: 1
|
||||
returnto: /
|
||||
error:
|
||||
- selector: "div#base_content > table.mainouter > tbody > tr > td.outer > table.main > tbody > tr > td:has(h2)"
|
||||
test:
|
||||
path: usercp.php
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
search: "{{ if .Query.IMDBID }}{{ .Query.IMDBIDShort }}{{ else }}{{ .Keywords }}{{ end }}"
|
||||
# 0 active, 1 incldead, 2 onlydead, 3 free
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
rows:
|
||||
selector: p + table > tbody > tr:has(a[href^="download.php"]), p + table > tbody > tr:has(a[href^="download.php"]) + tr[id^="kdescr"]
|
||||
after: 1
|
||||
|
||||
fields:
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a[onmouseover][href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: <b>(.*?)</b>
|
||||
details:
|
||||
selector: a[onmouseover][href^="details.php?id="]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: a[onmouseover][href^="details.php?id="]
|
||||
attribute: onmouseover
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "src=\\\\'(.*?)\\\\'"
|
||||
download:
|
||||
selector: a[href^="download.php"]
|
||||
attribute: href
|
||||
files:
|
||||
selector: td:nth-child(6)
|
||||
date_day:
|
||||
# Yesterday<br /> 11:29 PM
|
||||
# Today<br /> 05:23 PM
|
||||
selector: td:nth-child(8):contains("day")
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: fuzzytime
|
||||
date_year:
|
||||
# Aug 4 2021<br />02:36 AM
|
||||
selector: td:nth-child(8):not(:contains("day"))
|
||||
optional: true
|
||||
filters:
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "Jan 2 2006 03:04 PM -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
size:
|
||||
selector: td:nth-child(9)
|
||||
grabs:
|
||||
selector: td:nth-child(10)
|
||||
seeders:
|
||||
selector: td:nth-child(11)
|
||||
leechers:
|
||||
selector: td:nth-child(12)
|
||||
description:
|
||||
selector: td[colspan="13"]
|
||||
remove: a
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
img[src="free.gif"]: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 0.65
|
||||
minimumseedtime:
|
||||
# 3 days (as seconds = 3 x 24 x 60 x 60)
|
||||
text: 259200
|
||||
# Btdev,U232
|
@@ -9,11 +9,10 @@ followredirect: true
|
||||
links:
|
||||
- https://www.torlock2.com/
|
||||
- https://www.torlock.com/
|
||||
- https://torlock.unblockit.cat/
|
||||
- https://torlock.unblockit.nz/
|
||||
- https://torlock.nocensor.world/
|
||||
legacylinks:
|
||||
- https://torlock.com/
|
||||
- https://torlock.unblockit.li/
|
||||
- https://torlock.unblockit.uno/
|
||||
- https://torlock.unblockit.ch/
|
||||
- https://torlock.nocensor.space/
|
||||
@@ -33,6 +32,7 @@ legacylinks:
|
||||
- https://torlock.nocensor.sbs/
|
||||
- https://torlock.unblockit.ist/
|
||||
- https://torlock.unblockit.bet/
|
||||
- https://torlock.unblockit.cat/
|
||||
|
||||
caps:
|
||||
# dont forget to update the search fields category case block
|
||||
|
@@ -10,58 +10,63 @@ links:
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
# Movie
|
||||
- {id: 28, cat: Movies/SD, desc: "Movie SD"}
|
||||
- {id: 166, cat: Movies/HD, desc: "Movie HD"}
|
||||
- {id: 170, cat: Movies/UHD, desc: "Movie U-HD"}
|
||||
- {id: 172, cat: Movies/BluRay, desc: "Movie Bluray"}
|
||||
- {id: 183, cat: Movies, desc: "Movie Remux"}
|
||||
- {id: 175, cat: Movies, desc: "Movie Kids"}
|
||||
- {id: 155, cat: Movies/DVD, desc: "Movie DVD"}
|
||||
- {id: 171, cat: Movies/3D, desc: "Movie Pack 3-D"}
|
||||
- {id: 130, cat: Movies/HD, desc: "Movie Packs"}
|
||||
- {id: 186, cat: Movies/Foreign, desc: "Movie Englisch"}
|
||||
# Serien
|
||||
- {id: 158, cat: TV/SD, desc: "Serien SD-Folgen"}
|
||||
- {id: 167, cat: TV/HD, desc: "Serien HD-Folgen"}
|
||||
- {id: 60, cat: TV/SD, desc: "Serien Packs-SD"}
|
||||
- {id: 177, cat: TV/HD, desc: "Serien Packs-HD"}
|
||||
- {id: 185, cat: TV, desc: "Serien TV-Shows"}
|
||||
- {id: 157, cat: TV/UHD, desc: "Serien U-HD"}
|
||||
- {id: 187, cat: TV/Foreign, desc: "Serien Englisch"}
|
||||
# Musik
|
||||
- {id: 159, cat: Audio/Audiobook, desc: "Musik Hörbuch"}
|
||||
- {id: 174, cat: Audio, desc: "Musik Soundtracks"}
|
||||
- {id: 48, cat: Audio/MP3, desc: "Musik mp3"}
|
||||
- {id: 53, cat: Audio/Lossless, desc: "Musik Flac"}
|
||||
- {id: 52, cat: Audio, desc: "Musik Pack"}
|
||||
- {id: 109, cat: Audio/Video, desc: "Musik Musik Videos"}
|
||||
# Software
|
||||
- {id: 12, cat: PC/0day, desc: "Appz Windows"}
|
||||
- {id: 179, cat: PC/Mac, desc: "Appz Mac"}
|
||||
- {id: 178, cat: PC, desc: "Appz Linux"}
|
||||
- {id: 184, cat: PC/Mobile-Other, desc: "Appz Handy"}
|
||||
- {id: 11, cat: PC/Mobile-Other, desc: "Appz Sonstiges"}
|
||||
# Sport
|
||||
- {id: 62, cat: TV/Sport, desc: "Sport Fussball"}
|
||||
- {id: 161, cat: TV/Sport, desc: "Sport Formel 1"}
|
||||
- {id: 174, cat: TV/Sport, desc: "Sport Wrestling"}
|
||||
# Game
|
||||
- {id: 17, cat: PC/Games, desc: "Game Windows"}
|
||||
- {id: 131, cat: Console, desc: "Game Konsole"}
|
||||
- {id: 24, cat: Console, desc: "Game Wimmelbild"}
|
||||
# Ebooks
|
||||
- {id: 163, cat: Books/Other, desc: "Paper Zeitungen"}
|
||||
- {id: 63, cat: Books/Comics, desc: "Paper Comic"}
|
||||
- {id: 96, cat: Books/EBook, desc: "Paper E-Book"}
|
||||
- {id: 39, cat: PC, desc: "Appz - Linux"}
|
||||
- {id: 48, cat: PC/Mac, desc: "Appz - Mac"}
|
||||
- {id: 45, cat: PC, desc: "Appz - Other"}
|
||||
- {id: 49, cat: PC/0day, desc: "Appz - Windows"}
|
||||
# Doku
|
||||
- {id: 181, cat: TV/Documentary, desc: "Doku SD"}
|
||||
- {id: 182, cat: TV/Documentary, desc: "Doku HD"}
|
||||
- {id: 40, cat: TV/Documentary, desc: "Doku - HD"}
|
||||
- {id: 41, cat: TV/Documentary, desc: "Doku - SD"}
|
||||
# Game
|
||||
- {id: 83, cat: Console, desc: "Game - Konsolen"}
|
||||
- {id: 51, cat: PC/Games, desc: "Game - Mac"}
|
||||
- {id: 52, cat: PC/Games, desc: "Game - PC"}
|
||||
- {id: 98, cat: Console, desc: "Game - Wimmelbild"}
|
||||
- {id: 50, cat: PC/Games, desc: "Game - Linux"}
|
||||
# Movie
|
||||
- {id: 30, cat: Movies/HD, desc: "Movie - 1080p"}
|
||||
- {id: 64, cat: Movies/3D, desc: "Movie - 3D"}
|
||||
- {id: 28, cat: Movies/HD, desc: "Movie - 720p"}
|
||||
- {id: 63, cat: Movies/BluRay, desc: "Movie - Bluray"}
|
||||
- {id: 32, cat: Movies/DVD, desc: "Movie - DVD / HD2DVD"}
|
||||
- {id: 85, cat: Movies, desc: "Movie - Int."}
|
||||
- {id: 99, cat: Movies/HD, desc: "Movie - Packs"}
|
||||
- {id: 33, cat: Movies/SD, desc: "Movie - SD x264"}
|
||||
- {id: 36, cat: Movies/SD, desc: "Movie - SD XviD"}
|
||||
- {id: 31, cat: Movies/UHD, desc: "Movie - U-HD"}
|
||||
- {id: 86, cat: Movies/HD, desc: "Movie - x265"}
|
||||
# Musik
|
||||
- {id: 57, cat: Audio, desc: "Musik - Alben"}
|
||||
- {id: 81, cat: Audio, desc: "Musik - Charts"}
|
||||
- {id: 53, cat: Audio/Lossless, desc: "Musik - Flac"}
|
||||
- {id: 88, cat: Audio/Other, desc: "Musik - Misc"}
|
||||
- {id: 54, cat: Audio/Video, desc: "Musik - MusikVideo"}
|
||||
- {id: 100, cat: Audio/Other, desc: "Musik - Ost"}
|
||||
- {id: 84, cat: Audio, desc: "Musik - Packs"}
|
||||
- {id: 87, cat: Audio/Other, desc: "Musik - Sampler"}
|
||||
# Serien
|
||||
- {id: 67, cat: TV/HD, desc: "Serien - Folgen HD"}
|
||||
- {id: 70, cat: TV/SD, desc: "Serien - Folgen SD"}
|
||||
- {id: 68, cat: TV/HD, desc: "Serien - Pack HD"}
|
||||
- {id: 69, cat: TV/SD, desc: "Serien - Pack SD"}
|
||||
# Sport
|
||||
- {id: 76, cat: TV/Sport, desc: "Sport - HD"}
|
||||
- {id: 74, cat: TV/Sport, desc: "Sport - SD"}
|
||||
# Other
|
||||
- {id: 91, cat: Audio/Audiobook, desc: "Unsorted - A-Book"}
|
||||
- {id: 90, cat: TV/Anime, desc: "Unsorted - Anime"}
|
||||
- {id: 92, cat: Books/EBook, desc: "Unsorted - E-Book DE."}
|
||||
- {id: 93, cat: Books/EBook, desc: "Unsorted - E-Book INT."}
|
||||
- {id: 94, cat: Books/Comics, desc: "Unsorted - E-Paper"}
|
||||
- {id: 95, cat: Other, desc: "Unsorted - Kids"}
|
||||
- {id: 96, cat: PC/Mobile-Other, desc: "Unsorted - Mobile"}
|
||||
- {id: 97, cat: Other, desc: "Unsorted - Other"}
|
||||
# XXX
|
||||
- {id: 176, cat: XXX/x264, desc: "XXX HD"}
|
||||
- {id: 76, cat: XXX/SD, desc: "XXX SD"}
|
||||
- {id: 76, cat: XXX/DVD, desc: "XXX DVD"}
|
||||
- {id: 75, cat: XXX/Pack, desc: "XXX Pack"}
|
||||
- {id: 78, cat: XXX/x264, desc: "XXX - HD"}
|
||||
- {id: 89, cat: XXX/Other, desc: "XXX - Other"}
|
||||
- {id: 79, cat: XXX/Pack, desc: "XXX - Packs"}
|
||||
- {id: 77, cat: XXX/SD, desc: "XXX - SD"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -77,9 +82,18 @@ settings:
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: pin
|
||||
type: text
|
||||
label: Pin
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Filter FreeLeech only
|
||||
default: false
|
||||
- name: onlyupload
|
||||
type: checkbox
|
||||
label: Filter OnlyUpload only
|
||||
default: false
|
||||
- name: info_free
|
||||
type: info
|
||||
label: About Freeleech and OnlyUpload at Torrent-Town
|
||||
default: <li>FreeLeech are torrents where neither the download or upload is counted. (On the Jackett dashboard search results these are tagged as NoUpload).</li><li>OnlyUpload are torrents where download is not counted but upload is. Good for building your Ratio up. (On the Jackett dashboard search results these are tagged as Freeleech).</li>
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -98,92 +112,86 @@ settings:
|
||||
asc: asc
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="/login.php"]
|
||||
cookies: ["JAVA=OK"] # avoid jscheck redirect
|
||||
path: takelogin.php
|
||||
method: post
|
||||
inputs:
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
pin: "{{ .Config.pin }}"
|
||||
error:
|
||||
- selector: div#login_error
|
||||
- selector: .tablea:contains("Fehler")
|
||||
test:
|
||||
path: selection.php
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
|
||||
download:
|
||||
selectors:
|
||||
- selector: a[href^="downloads.php?torrent="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: selection.php
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
showsearch: 1
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 name, 1 descr, 2 both
|
||||
blah: 0
|
||||
# 0 active, 1 all, 2 dead
|
||||
incldead: 1
|
||||
orderby: "{{ .Config.sort }}"
|
||||
sort: "{{ .Config.type }}"
|
||||
# site does not support imdbid search from the browse.php page or return imdb links in results
|
||||
|
||||
rows:
|
||||
selector: div.selection_wrap
|
||||
selector: "table.tableinborder[cellspacing=\"1\"][cellpadding=\"0\"]:not(:has(a[href=\"index.php\"])) > tbody > tr{{ if .Config.onlyupload }}:has(img[src=\"pic/oupic.gif\"]){{ else }}{{ end }}"
|
||||
|
||||
fields:
|
||||
category_p1:
|
||||
selector: div.kat_cat_pic_name
|
||||
category_p2:
|
||||
selector: div.kat_cat_pic_name_b
|
||||
categorydesc:
|
||||
text: "{{ .Result.category_p1 }} {{ .Result.category_p2 }}"
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a.selection_a
|
||||
selector: a[href^="details.php"]
|
||||
details:
|
||||
selector: a.selection_a
|
||||
selector: a[href^="details.php"]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a.selection_a
|
||||
selector: a[href^="details.php"]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["details.php?id=", "download_ssl.php?torrent="]
|
||||
poster:
|
||||
selector: div[id^="details"] img
|
||||
selector: img[id="img-1"]
|
||||
attribute: src
|
||||
size:
|
||||
selector: div.selection_unter_ag
|
||||
date_day:
|
||||
# Heute 13:30:04
|
||||
# Gestern 09:10:10
|
||||
selector: div.selection_unter_ab:not(:contains("."))
|
||||
optional: true
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(1)
|
||||
files:
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(1) b:nth-child(2)
|
||||
seeders:
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(2) b:nth-child(1)
|
||||
leechers:
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(2) > b:nth-of-type(2)
|
||||
grabs:
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(3) b:nth-child(1)
|
||||
date:
|
||||
selector: td.tablea table tbody tr:nth-child(2) td:nth-child(5)
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["Heute", "Today"]
|
||||
- name: replace
|
||||
args: ["Gestern", "Yesterday"]
|
||||
date_year:
|
||||
# 30.02.2018 um 23:12:50
|
||||
selector: div.selection_unter_ab:contains(".")
|
||||
optional: true
|
||||
filters:
|
||||
- name: replace
|
||||
args: [" um", ""]
|
||||
- name: append
|
||||
args: " +01:00" # CET
|
||||
- name: replace
|
||||
args: ["\xA0", " "]
|
||||
- name: dateparse
|
||||
args: "02.01.2006 15:04:05 -07:00"
|
||||
date:
|
||||
text: "{{ if or .Result.date_year .Result.date_day }}{{ or .Result.date_year .Result.date_day }}{{ else }}now{{ end }}"
|
||||
seeders:
|
||||
selector: div.selection_unter_aa
|
||||
leechers:
|
||||
selector: div.selection_unter_aaa
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
":root:has(div.onlyup)": 0
|
||||
img[src="pic/oupic.gif"]: 0 # only upload is counted
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
case:
|
||||
img[src="pic/freeleech.gif"]: 0 # nothing is counted
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
text: 0.7
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# 3xT
|
||||
# engine n/a
|
||||
|
@@ -137,7 +137,7 @@ search:
|
||||
"sortOptions[sortBy]": "{{ .Config.sort }}"
|
||||
"sortOptions[sortOrder]": "{{ .Config.type }}"
|
||||
error:
|
||||
- selector: div.error:not(:contains("Hiçbir sonuç bulunamadı."))
|
||||
- selector: div.error:not(:contains("Hiçbir sonuç bulunamadı.")):not(:contains("There are no results found.")):not(:contains("Click on The Flag to Change"))
|
||||
# does not support imdbid search and does not return imdb link in results.
|
||||
|
||||
rows:
|
||||
|
@@ -139,13 +139,13 @@ search:
|
||||
attribute: href
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
i.fa-star: 0 # Freeleech
|
||||
i.fa-certificate: 0 # Featured
|
||||
path[d^="M1728 "]: 0 # Freeleech
|
||||
path[d^="M320 "]: 0 # Featured
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
case:
|
||||
i.fa-certificate: 2 # Featured
|
||||
i.fa-gem: 2 # Double Upload
|
||||
path[d^="M320 "]: 2 # Featured
|
||||
path[d^="M485.5 "]: 2 # Double Upload
|
||||
"*": 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
|
@@ -8,12 +8,11 @@ encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://www.torrentdownload.info/
|
||||
- https://torrentdownload.unblockit.cat/
|
||||
- https://torrentdownload.unblockit.nz/
|
||||
- https://torrentdownload.nocensor.world/
|
||||
legacylinks:
|
||||
- https://torrentdownload.unblocked.rest/
|
||||
- https://torrentdownload.unblocked.monster/
|
||||
- https://torrentdownload.unblockit.li/
|
||||
- https://torrentdownload.unblockit.uno/
|
||||
- https://torrentdownload.unblockit.ch/
|
||||
- https://torrentdownload.nocensor.space/
|
||||
@@ -32,6 +31,7 @@ legacylinks:
|
||||
- https://torrentdownload.nocensor.sbs/
|
||||
- https://torrentdownload.unblockit.ist/
|
||||
- https://torrentdownload.unblockit.bet/
|
||||
- https://torrentdownload.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -9,12 +9,11 @@ followredirect: true
|
||||
links:
|
||||
- https://www.torrentdownloads.info/
|
||||
- https://www.torrentdownloads.pro/
|
||||
- https://torrentdownloads.unblockit.cat/
|
||||
- https://torrentdownloads.unblockit.nz/
|
||||
- https://torrentdownloads.nocensor.world/
|
||||
- https://torrentdownloads.unblockninja.com/
|
||||
legacylinks:
|
||||
- https://torrentdownloads.unblocked.monster/
|
||||
- https://torrentdownloads.unblockit.li/
|
||||
- https://torrentdownloads.unblockit.uno/
|
||||
- https://www.torrentdownloads.me/
|
||||
- https://torrentdownloads.unblockit.ch/
|
||||
@@ -34,6 +33,7 @@ legacylinks:
|
||||
- https://torrentdownloads.nocensor.sbs/
|
||||
- https://torrentdownloads.unblockit.ist/
|
||||
- https://torrentdownloads.unblockit.bet/
|
||||
- https://torrentdownloads.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -9,10 +9,9 @@ followredirect: true
|
||||
links:
|
||||
- https://www.torrentfunk.com/
|
||||
- https://www.torrentfunk2.com/
|
||||
- https://torrentfunk.unblockit.cat/
|
||||
- https://torrentfunk.unblockit.nz/
|
||||
- https://torrentfunk.nocensor.world/
|
||||
legacylinks:
|
||||
- https://torrentfunk.unblockit.li/
|
||||
- https://torrentfunk.unblockit.uno/
|
||||
- https://torrentfunk.unblockit.ch/
|
||||
- https://torrentfunk.nocensor.space/
|
||||
@@ -31,6 +30,7 @@ legacylinks:
|
||||
- https://torrentfunk.nocensor.sbs/
|
||||
- https://torrentfunk.unblockit.ist/
|
||||
- https://torrentfunk.unblockit.bet/
|
||||
- https://torrentfunk.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -10,14 +10,13 @@ links:
|
||||
- https://torrentgalaxy.to/
|
||||
- https://torrentgalaxy.mx/
|
||||
- https://torrentgalaxy.su/
|
||||
- https://tgx.rs/
|
||||
- https://torrentgalaxy.unblockninja.com/
|
||||
- https://torrentgalaxy.unblockit.cat/
|
||||
- https://torrentgalaxy.nocensor.world/
|
||||
- https://torrentgalaxy.unblockit.nz/
|
||||
legacylinks:
|
||||
- https://torrentgalaxy.org/ # redirects to *.to
|
||||
- https://torrentgalaxy.pw/ # proxy list only
|
||||
- https://tgx.unblocked.monster/
|
||||
- https://torrentgalaxy.unblockit.li/
|
||||
- https://torrentgalaxy.unblockit.uno/
|
||||
- https://torrentgalaxy.unblockit.ch/
|
||||
- https://torrentgalaxy.nocensor.space/
|
||||
@@ -36,6 +35,8 @@ legacylinks:
|
||||
- https://torrentgalaxy.nocensor.sbs/
|
||||
- https://torrentgalaxy.unblockit.ist/
|
||||
- https://torrentgalaxy.unblockit.bet/
|
||||
- https://torrentgalaxy.nocensor.world/ # banned
|
||||
- https://torrentgalaxy.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -7,10 +7,8 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentqq224.com/
|
||||
- https://torrentqq226.com/
|
||||
legacylinks:
|
||||
- https://torrentqq148.com/
|
||||
- https://torrentqq149.com/
|
||||
- https://torrentqq211.com/
|
||||
- https://torrentqq212.com/
|
||||
- https://torrentqq213.com/
|
||||
@@ -24,6 +22,8 @@ legacylinks:
|
||||
- https://torrentqq221.com/
|
||||
- https://torrentqq222.com/
|
||||
- https://torrentqq223.com/
|
||||
- https://torrentqq224.com/
|
||||
- https://torrentqq225.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -39,7 +39,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -5,6 +5,8 @@ description: "Torrent Sector Crew (TSC) is a GERMAN Private Torrent Tracker for
|
||||
language: de-DE
|
||||
type: private
|
||||
encoding: ISO-8859-1
|
||||
certificates:
|
||||
- a64165a04e1e7b7348af03c985c9d5cb4b38e6f5 # expired 12 October 2022
|
||||
links:
|
||||
- https://tsctracker.org/
|
||||
legacylinks:
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentsir76.com/
|
||||
- https://torrentsir77.com/
|
||||
legacylinks:
|
||||
- http://torrentsir60.com/
|
||||
- https://torrentsir60.com/
|
||||
@@ -30,6 +30,8 @@ legacylinks:
|
||||
- http://torrentsir75.com/
|
||||
- https://torrentsir75.com/
|
||||
- http://torrentsir76.com/
|
||||
- https://torrentsir76.com/
|
||||
- http://torrentsir77.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -48,7 +50,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -7,7 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentview67.com/
|
||||
- https://torrentview68.com/
|
||||
legacylinks:
|
||||
- https://torrentview.net/
|
||||
- https://torrentview.co/
|
||||
@@ -24,6 +24,7 @@ legacylinks:
|
||||
- https://torrentview63.com/
|
||||
- https://torrentview65.com/
|
||||
- https://torrentview66.com/
|
||||
- https://torrentview67.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -39,7 +40,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
|
||||
|
@@ -7,10 +7,9 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentwiz48.com/
|
||||
- https://torrentwiz49.com/
|
||||
legacylinks:
|
||||
- https://torrentwiz29.me/
|
||||
- https://torrentwiz32.com/
|
||||
- https://torrentwiz33.com/
|
||||
- https://torrentwiz34.com/
|
||||
- https://torrentwiz35.com/
|
||||
@@ -25,6 +24,7 @@ legacylinks:
|
||||
- https://torrentwiz45.com/
|
||||
- https://torrentwiz47.com/
|
||||
- https://torrentwiz48.com/.
|
||||
- https://torrentwiz48.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
@@ -38,7 +38,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -7,6 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://torrentz2.nz/
|
||||
- https://torrentz2.nocensor.world/
|
||||
|
||||
caps:
|
||||
# unfortunately torrentz2nz does not display categories anywhere in its search results page :-(
|
||||
|
@@ -6,6 +6,8 @@ language: tr-TR
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://trendfilm.net/
|
||||
legacylinks:
|
||||
- https://turkseed.com/
|
||||
|
||||
caps:
|
||||
@@ -14,14 +16,13 @@ caps:
|
||||
- {id: 47, cat: Movies/UHD, desc: "4K"}
|
||||
- {id: 61, cat: PC/Mobile-Android, desc: "Android"}
|
||||
- {id: 48, cat: TV/Anime, desc: "Animasyon"}
|
||||
- {id: 59, cat: PC, desc: "İşletim Sistemi"}
|
||||
- {id: 40, cat: TV/Documentary, desc: "Belgesel"}
|
||||
- {id: 49, cat: Movies/BluRay, desc: "Bluray"}
|
||||
- {id: 50, cat: Movies, desc: "Boxset"}
|
||||
- {id: 4, cat: Other, desc: "Diğer"}
|
||||
- {id: 70, cat: TV, desc: "DIGITAL TV"}
|
||||
- {id: 42, cat: Movies, desc: "Dini"}
|
||||
- {id: 51, cat: Movies/DVD, desc: "DVD"}
|
||||
- {id: 4, cat: Other, desc: "Diğer"}
|
||||
- {id: 42, cat: Movies, desc: "Dini"}
|
||||
- {id: 41, cat: Books/EBook, desc: "E-Kitap"}
|
||||
- {id: 64, cat: Books, desc: "Eğitim"}
|
||||
- {id: 55, cat: Audio/Lossless, desc: "FLAC"}
|
||||
@@ -40,6 +41,7 @@ caps:
|
||||
- {id: 71, cat: Movies, desc: "YENI FILMLER"}
|
||||
- {id: 44, cat: TV, desc: "Yerli Dizi"}
|
||||
- {id: 56, cat: Audio, desc: "Yerli Müzik"}
|
||||
- {id: 59, cat: PC, desc: "İşletim Sistemi"}
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
@@ -85,16 +87,6 @@ login:
|
||||
path: index.php
|
||||
selector: a[href*="/logout.php?logouthash="]
|
||||
|
||||
download:
|
||||
before:
|
||||
path: takethanks.php
|
||||
method: post
|
||||
inputs:
|
||||
torrentid: "{{ .DownloadUri.Query.id }}"
|
||||
selectors:
|
||||
- selector: a[href*="/download.php?id="]
|
||||
attribute: href
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: browse.php
|
||||
@@ -125,7 +117,10 @@ search:
|
||||
selector: a[href*="/details.php?id="]
|
||||
attribute: href
|
||||
download:
|
||||
selector: a[href*="/details.php?id="]
|
||||
selector: a[href*="/download.php?id="]
|
||||
attribute: href
|
||||
magnet:
|
||||
selector: a[href^="magnet:"]
|
||||
attribute: href
|
||||
poster:
|
||||
selector: img[src*="/torrents/images/"]
|
||||
@@ -134,11 +129,11 @@ search:
|
||||
selector: td:nth-child(2)
|
||||
filters:
|
||||
- name: regexp
|
||||
args: "(\\d{2}-\\d{2}-\\d{4} \\d{2}:\\d{2})"
|
||||
args: "(\\d{2}-\\d{2}-\\d{2} \\d{2}:\\d{2})"
|
||||
- name: append
|
||||
args: " +00:00" # auto adjusted by site account profile
|
||||
- name: dateparse
|
||||
args: "02-01-2006 15:04 -07:00"
|
||||
args: "02-01-06 15:04 -07:00"
|
||||
size:
|
||||
selector: td:nth-last-child(5)
|
||||
grabs:
|
||||
@@ -161,4 +156,4 @@ search:
|
||||
minimumseedtime:
|
||||
# 2 days (as seconds = 2 x 24 x 60 x 60)
|
||||
text: 172800
|
||||
# TS Special Edition v.7.5
|
||||
# TS Special Edition v.8.0
|
||||
|
@@ -33,7 +33,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
|
@@ -26,6 +26,7 @@ caps:
|
||||
- {id: 91, cat: Movies, desc: "Movie-Packs"}
|
||||
- {id: 66, cat: Movies, desc: "Movies"}
|
||||
- {id: 11, cat: Movies/DVD, desc: "Movies DVD / HD2DVD"}
|
||||
- {id: 104, cat: Movies/UHD, desc: "Movies UHD 8K"}
|
||||
- {id: 49, cat: Movies/HD, desc: "Movies-1080p"}
|
||||
- {id: 90, cat: Movies/3D, desc: "Movies-3-D"}
|
||||
- {id: 48, cat: Movies/HD, desc: "Movies-720p"}
|
||||
|
@@ -84,7 +84,7 @@ caps:
|
||||
|
||||
modes:
|
||||
search: [q]
|
||||
tv-search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
book-search: [q]
|
||||
|
||||
|
@@ -9,14 +9,13 @@ requestDelay: 2.5 # 2.5 requests per second (2 causes problems)
|
||||
links:
|
||||
# dont forget to update the details, download and poster replace args
|
||||
- https://yts.mx/
|
||||
- https://yts.unblockit.cat/
|
||||
- https://yts.unblockit.nz/
|
||||
- https://yts.unblockninja.com/
|
||||
- https://yts.nocensor.world/
|
||||
legacylinks:
|
||||
- https://yts.ag/
|
||||
- https://yts.am/
|
||||
- https://yts.lt/
|
||||
- https://yts.unblockit.li/
|
||||
- https://yts.unblockit.uno/
|
||||
- https://yts.unblockit.ch/
|
||||
- https://yts.unblockit.ws/
|
||||
@@ -35,6 +34,7 @@ legacylinks:
|
||||
- https://yts.nocensor.sbs/
|
||||
- https://yts.unblockit.ist/
|
||||
- https://yts.unblockit.bet/
|
||||
- https://yts.unblockit.cat/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
@@ -8,6 +8,7 @@ encoding: UTF-8
|
||||
# to fetch current domain use https://www.protege-liens.com/zetorrents
|
||||
links:
|
||||
- https://www.zetorrents.biz/
|
||||
- https://zetorrents.nocensor.world/
|
||||
legacylinks:
|
||||
- https://www.zetorrents.co/
|
||||
- https://www.zetorrents.io/
|
||||
|
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
||||
using System.Collections.Specialized;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Text;
|
||||
@@ -28,6 +29,7 @@ namespace Jackett.Common.Indexers
|
||||
private bool AddJapaneseTitle => ConfigData.AddJapaneseTitle.Value;
|
||||
private bool AddRomajiTitle => ConfigData.AddRomajiTitle.Value;
|
||||
private bool AddAlternativeTitles => ConfigData.AddAlternativeTitles.Value;
|
||||
private bool AddFileNameTitles => ConfigData.AddFileNameTitles.Value;
|
||||
private bool FilterSeasonEpisode => ConfigData.FilterSeasonEpisode.Value;
|
||||
|
||||
private ConfigurationDataAnimeBytes ConfigData => (ConfigurationDataAnimeBytes)configData;
|
||||
@@ -395,6 +397,36 @@ namespace Jackett.Common.Indexers
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
if (AddFileNameTitles && (int)torrent["FileCount"] == 1)
|
||||
{
|
||||
var releaseTitle = Path.GetFileNameWithoutExtension((string)torrent["FileList"][0]["filename"]);
|
||||
|
||||
var guid = new Uri(details + "&nh=" + StringUtil.Hash(releaseTitle));
|
||||
var release = new ReleaseInfo
|
||||
{
|
||||
MinimumRatio = 1,
|
||||
MinimumSeedTime = minimumSeedTime,
|
||||
Title = releaseTitle,
|
||||
Details = details,
|
||||
Guid = guid,
|
||||
Link = linkUri,
|
||||
Poster = poster,
|
||||
PublishDate = publishDate,
|
||||
Category = category,
|
||||
Description = description,
|
||||
Size = size,
|
||||
Seeders = seeders,
|
||||
Peers = peers,
|
||||
Grabs = snatched,
|
||||
Files = fileCount,
|
||||
DownloadVolumeFactor = rawDownMultiplier,
|
||||
UploadVolumeFactor = rawUpMultiplier
|
||||
};
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -39,7 +39,7 @@ namespace Jackett.Common.Indexers
|
||||
private const string SearchUrl = "buscar/";
|
||||
|
||||
public override string[] AlternativeSiteLinks { get; protected set; } = {
|
||||
"https://dontorrent.ist/",
|
||||
"https://dontorrent.fans/",
|
||||
"https://todotorrents.net/",
|
||||
"https://tomadivx.net/",
|
||||
"https://seriesblanco.one/",
|
||||
@@ -48,7 +48,6 @@ namespace Jackett.Common.Indexers
|
||||
};
|
||||
|
||||
public override string[] LegacySiteLinks { get; protected set; } = {
|
||||
"https://dontorrent.tw/",
|
||||
"https://dontorrent.yt/",
|
||||
"https://dontorrent.vg/",
|
||||
"https://dontorrent.eu/",
|
||||
@@ -62,7 +61,9 @@ namespace Jackett.Common.Indexers
|
||||
"https://dontorrent.moe/",
|
||||
"https://dontorrent.pub/",
|
||||
"https://dontorrent.tf/",
|
||||
"https://dontorrent.vin/"
|
||||
"https://dontorrent.vin/",
|
||||
"https://dontorrent.ist/",
|
||||
"https://dontorrent.uno/"
|
||||
};
|
||||
|
||||
private static Dictionary<string, string> CategoriesMap => new Dictionary<string, string>
|
||||
@@ -80,7 +81,7 @@ namespace Jackett.Common.Indexers
|
||||
: base(id: "dontorrent",
|
||||
name: "DonTorrent",
|
||||
description: "DonTorrent is a SPANISH public tracker for MOVIES / TV / GENERAL",
|
||||
link: "https://dontorrent.ist/",
|
||||
link: "https://dontorrent.fans/",
|
||||
caps: new TorznabCapabilities
|
||||
{
|
||||
TvSearchParams = new List<TvSearchParam>
|
||||
|
@@ -45,12 +45,11 @@ namespace Jackett.Common.Indexers
|
||||
|
||||
public override string[] AlternativeSiteLinks { get; protected set; } = {
|
||||
"https://www.epublibre.org/",
|
||||
"https://epublibre.unblockit.cat/"
|
||||
"https://epublibre.unblockit.nz/"
|
||||
};
|
||||
|
||||
public override string[] LegacySiteLinks { get; protected set; } = {
|
||||
"https://epublibre.org/",
|
||||
"https://epublibre.unblockit.li/",
|
||||
"https://epublibre.unblockit.uno/",
|
||||
"https://epublibre.unblockit.ch/",
|
||||
"https://epublibre.unblockit.ws/",
|
||||
@@ -64,7 +63,8 @@ namespace Jackett.Common.Indexers
|
||||
"https://epublibre.unblockit.blue/",
|
||||
"https://epublibre.unblockit.name/",
|
||||
"https://epublibre.unblockit.ist/",
|
||||
"https://epublibre.unblockit.bet/"
|
||||
"https://epublibre.unblockit.bet/",
|
||||
"https://epublibre.unblockit.cat/"
|
||||
};
|
||||
|
||||
public EpubLibre(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
|
@@ -61,24 +61,28 @@ namespace Jackett.Common.Indexers
|
||||
configData.AddDynamic("flaresolverr", new DisplayInfoConfigurationItem("FlareSolverr", "This site may use Cloudflare DDoS Protection, therefore Jackett requires <a href=\"https://github.com/Jackett/Jackett#configuring-flaresolverr\" target=\"_blank\">FlareSolverr</a> to access it."));
|
||||
|
||||
AddCategoryMapping(15, TorznabCatType.MoviesBluRay, "Movie / Blu-ray");
|
||||
AddCategoryMapping(19, TorznabCatType.MoviesHD, "Movie / 1080p");
|
||||
AddCategoryMapping(18, TorznabCatType.MoviesHD, "Movie / 720p");
|
||||
AddCategoryMapping(40, TorznabCatType.MoviesHD, "Movie / Remux");
|
||||
AddCategoryMapping(16, TorznabCatType.MoviesHD, "Movie / HD-DVD");
|
||||
AddCategoryMapping(41, TorznabCatType.MoviesUHD, "Movie / 4K UHD");
|
||||
AddCategoryMapping(18, TorznabCatType.MoviesHD, "Movie / 720p");
|
||||
AddCategoryMapping(19, TorznabCatType.MoviesHD, "Movie / 1080p");
|
||||
AddCategoryMapping(46, TorznabCatType.MoviesUHD, "Movie / 2160p");
|
||||
AddCategoryMapping(21, TorznabCatType.TVHD, "TV Show / 720p HDTV");
|
||||
AddCategoryMapping(22, TorznabCatType.TVHD, "TV Show / 1080p HDTV");
|
||||
AddCategoryMapping(45, TorznabCatType.TVUHD, "TV Show / 2160p HDTV");
|
||||
AddCategoryMapping(24, TorznabCatType.TVDocumentary, "Documentary / 720p");
|
||||
AddCategoryMapping(25, TorznabCatType.TVDocumentary, "Documentary / 1080p");
|
||||
AddCategoryMapping(47, TorznabCatType.TVDocumentary, "Documentary / 2160p");
|
||||
AddCategoryMapping(27, TorznabCatType.TVAnime, "Animation / 720p");
|
||||
AddCategoryMapping(28, TorznabCatType.TVAnime, "Animation / 1080p");
|
||||
AddCategoryMapping(48, TorznabCatType.TVAnime, "Animation / 2160p");
|
||||
AddCategoryMapping(30, TorznabCatType.AudioLossless, "Music / HQ Audio");
|
||||
AddCategoryMapping(31, TorznabCatType.AudioVideo, "Music / Videos");
|
||||
AddCategoryMapping(33, TorznabCatType.XXX, "XXX / 720p");
|
||||
AddCategoryMapping(34, TorznabCatType.XXX, "XXX / 1080p");
|
||||
AddCategoryMapping(49, TorznabCatType.XXX, "XXX / 2160p");
|
||||
AddCategoryMapping(36, TorznabCatType.MoviesOther, "Trailers");
|
||||
AddCategoryMapping(37, TorznabCatType.PC, "Software");
|
||||
AddCategoryMapping(38, TorznabCatType.Other, "Others");
|
||||
AddCategoryMapping(41, TorznabCatType.MoviesUHD, "Movie / 4K UHD");
|
||||
}
|
||||
|
||||
public override async Task<IndexerConfigurationStatus> ApplyConfiguration(JToken configJson)
|
||||
|
@@ -1,79 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Jackett.Common.Indexers.Abstract;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
using WebClient = Jackett.Common.Utils.Clients.WebClient;
|
||||
|
||||
namespace Jackett.Common.Indexers
|
||||
{
|
||||
[ExcludeFromCodeCoverage]
|
||||
public class OppaiTime : GazelleTracker
|
||||
{
|
||||
public OppaiTime(IIndexerConfigurationService configService, WebClient wc, Logger l, IProtectionService ps,
|
||||
ICacheService cs)
|
||||
: base(id: "oppaitime",
|
||||
name: "OppaiTime",
|
||||
description: "A porn tracker",
|
||||
link: "https://oppaiti.me/",
|
||||
caps: new TorznabCapabilities
|
||||
{
|
||||
TvSearchParams = new List<TvSearchParam>
|
||||
{
|
||||
TvSearchParam.Q
|
||||
},
|
||||
MovieSearchParams = new List<MovieSearchParam>
|
||||
{
|
||||
MovieSearchParam.Q
|
||||
},
|
||||
MusicSearchParams = new List<MusicSearchParam>
|
||||
{
|
||||
MusicSearchParam.Q, MusicSearchParam.Artist
|
||||
},
|
||||
BookSearchParams = new List<BookSearchParam>
|
||||
{
|
||||
BookSearchParam.Q
|
||||
}
|
||||
},
|
||||
configService: configService,
|
||||
client: wc,
|
||||
logger: l,
|
||||
p: ps,
|
||||
cs: cs,
|
||||
supportsFreeleechTokens: true,
|
||||
has2Fa: false,
|
||||
useApiKey: false
|
||||
)
|
||||
{
|
||||
Language = "en-US";
|
||||
Type = "private";
|
||||
|
||||
AddCategoryMapping(1, TorznabCatType.Movies, "Movies");
|
||||
AddCategoryMapping(2, TorznabCatType.TVAnime, "Anime");
|
||||
AddCategoryMapping(3, TorznabCatType.Books, "Manga");
|
||||
AddCategoryMapping(4, TorznabCatType.Console, "Games");
|
||||
AddCategoryMapping(5, TorznabCatType.Audio, "Audio");
|
||||
AddCategoryMapping(6, TorznabCatType.Other, "Other");
|
||||
}
|
||||
|
||||
protected override async Task<IEnumerable<ReleaseInfo>> PerformQuery(TorznabQuery query)
|
||||
{
|
||||
var releases = await base.PerformQuery(query);
|
||||
var releaseInfos = releases.ToList();
|
||||
if (query.Categories.Length <= 0)
|
||||
return releaseInfos;
|
||||
var categories = TorznabCaps.Categories.ExpandTorznabQueryCategories(query);
|
||||
|
||||
// Oppaitime does not provide category information, resulting in all results being filtered.
|
||||
// This implementation ensures that results never gets filtered
|
||||
foreach (var release in releaseInfos)
|
||||
release.Category = categories;
|
||||
return releaseInfos;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -11,6 +11,7 @@ namespace Jackett.Common.Models.IndexerConfig.Bespoke
|
||||
public BoolConfigurationItem AddJapaneseTitle { get; private set; }
|
||||
public BoolConfigurationItem AddRomajiTitle { get; private set; }
|
||||
public BoolConfigurationItem AddAlternativeTitles { get; private set; }
|
||||
public BoolConfigurationItem AddFileNameTitles { get; private set; }
|
||||
public BoolConfigurationItem FilterSeasonEpisode { get; private set; }
|
||||
|
||||
public ConfigurationDataAnimeBytes(string instructionMessageOptional = null)
|
||||
@@ -22,6 +23,7 @@ namespace Jackett.Common.Models.IndexerConfig.Bespoke
|
||||
AddJapaneseTitle = new BoolConfigurationItem("Add releases for Japanese Title") { Value = false };
|
||||
AddRomajiTitle = new BoolConfigurationItem("Add releases for Romaji Title") { Value = false };
|
||||
AddAlternativeTitles = new BoolConfigurationItem("Add releases for Alternative Title(s)") { Value = false };
|
||||
AddFileNameTitles = new BoolConfigurationItem("Add releases based on single filename") { Value = false };
|
||||
FilterSeasonEpisode = new BoolConfigurationItem("Filter results by season/episode") { Value = false };
|
||||
Instructions = new DisplayInfoConfigurationItem("", instructionMessageOptional);
|
||||
}
|
||||
|
@@ -449,6 +449,7 @@ namespace Jackett.Updater
|
||||
"Definitions/oncesearch.yml",
|
||||
"Definitions/onlineselfeducation.yml",
|
||||
"Definitions/onlyscene.yml",
|
||||
"Definitions/opensharing.yml",
|
||||
"Definitions/oxtorrent.yml",
|
||||
"Definitions/passionetorrent.yml",
|
||||
"Definitions/piratadigital.yml",
|
||||
@@ -511,6 +512,7 @@ namespace Jackett.Updater
|
||||
"Definitions/tenyardtracker.yml", // to be migrated to c#, #795
|
||||
"Definitions/tfile.yml",
|
||||
"Definitions/the-devils-lounge.yml",
|
||||
"Definitions/thehorrorcharnel.yml",
|
||||
"Definitions/the-madhouse.yml",
|
||||
"Definitions/themoviecave.yml",
|
||||
"Definitions/theresurrection.yml",
|
||||
|
@@ -35,7 +35,7 @@ done
|
||||
# Unload and delete agent
|
||||
if [[ "$delagent" = true ]]; then
|
||||
echo "Deleting agent..."
|
||||
launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
launchctl bootout gui/$(id -u)/org.user.Jackett
|
||||
rm ~/Library/LaunchAgents/org.user.Jackett.plist
|
||||
fi
|
||||
|
||||
|
Reference in New Issue
Block a user