mirror of
https://github.com/Jackett/Jackett.git
synced 2025-12-26 07:35:26 +01:00
Compare commits
45 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
93cfb32bad | ||
|
|
90e9dd4ed5 | ||
|
|
3f552d8c8f | ||
|
|
1987555dc5 | ||
|
|
410d0a5ab3 | ||
|
|
6ba4a83948 | ||
|
|
2563792909 | ||
|
|
1f725b078e | ||
|
|
a80a42b46f | ||
|
|
b8283d0982 | ||
|
|
f07af5dc54 | ||
|
|
8bf22fb3c3 | ||
|
|
05c6991783 | ||
|
|
2402ef6c6f | ||
|
|
d5f1f63486 | ||
|
|
c357a9f4a7 | ||
|
|
0097d823e6 | ||
|
|
798a4b160f | ||
|
|
b0dbd475dc | ||
|
|
14b132e4f3 | ||
|
|
5e78223cdc | ||
|
|
4cd883d432 | ||
|
|
a1a98f9836 | ||
|
|
0c9c144e5a | ||
|
|
a2da916252 | ||
|
|
8d85708721 | ||
|
|
a00ff4703e | ||
|
|
fcf7694ae7 | ||
|
|
503030045f | ||
|
|
5f53bea74a | ||
|
|
855d89296a | ||
|
|
7800813aee | ||
|
|
2151dba5d1 | ||
|
|
8e1887a133 | ||
|
|
587bef69d4 | ||
|
|
32863c2aa9 | ||
|
|
6e0a3ea759 | ||
|
|
7de44d8c9e | ||
|
|
53646c28de | ||
|
|
aa0ae46fd9 | ||
|
|
535f199e84 | ||
|
|
64dd9c6897 | ||
|
|
eb3898a961 | ||
|
|
75bf8d7078 | ||
|
|
390b1714f4 |
2
.github/workflows/codeql-analysis.yml
vendored
2
.github/workflows/codeql-analysis.yml
vendored
@@ -57,7 +57,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
|
||||
8
.github/workflows/definitions-update.yml
vendored
8
.github/workflows/definitions-update.yml
vendored
@@ -15,7 +15,7 @@ concurrency:
|
||||
jobs:
|
||||
update-rudub:
|
||||
name: Update rudub
|
||||
if: github.repository == 'Jackett/Jackett'
|
||||
if: (github.repository == 'Jackett/Jackett' && github.actor != 'dependabot[bot]')
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write
|
||||
@@ -34,14 +34,14 @@ jobs:
|
||||
GH_TOKEN: ${{ steps.app-token.outputs.token }}
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
token: ${{ steps.app-token.outputs.token }}
|
||||
|
||||
- name: Setup Environment Variables
|
||||
run: |
|
||||
echo "CURRENT_RUDUB_DOMAIN=$(date +'%b%d' | tr '[:upper:]' '[:lower:]').rudub.pics" >> $GITHUB_ENV
|
||||
echo "PREVIOUS_RUDUB_DOMAIN=$(date --date='yesterday' +'%b%d' | tr '[:upper:]' '[:lower:]').rudub.pics" >> $GITHUB_ENV
|
||||
echo "CURRENT_RUDUB_DOMAIN=$(date +'%b%d' | tr '[:upper:]' '[:lower:]').rudub.world" >> $GITHUB_ENV
|
||||
echo "PREVIOUS_RUDUB_DOMAIN=$(date --date='yesterday' +'%b%d' | tr '[:upper:]' '[:lower:]').rudub.world" >> $GITHUB_ENV
|
||||
|
||||
- name: Update rudub definition
|
||||
uses: mikefarah/yq@master
|
||||
|
||||
2
.github/workflows/issuebot.yml
vendored
2
.github/workflows/issuebot.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
steps:
|
||||
# This workflow will run a script that is stored in the repository. This step checks out the repository contents so that the workflow can access the script.
|
||||
- name: Check out repo content
|
||||
uses: actions/checkout@v5
|
||||
uses: actions/checkout@v6
|
||||
|
||||
# This step sets up Node.js. The script that this workflow will run uses Node.js.
|
||||
- name: Setup Node.js
|
||||
|
||||
@@ -431,7 +431,7 @@ Prior versions of Jackett are no longer supported.
|
||||
* LosslessClub [![(invite needed)][inviteneeded]](#)
|
||||
* LST
|
||||
* LuckPT [![(invite needed)][inviteneeded]](#)
|
||||
* M-Team TP (MTTP) [![(invite needed)][inviteneeded]](#)
|
||||
* M-Team - TP (MTTP)
|
||||
* MaDs Revolution
|
||||
* Majomparádé (TurkDepo)
|
||||
* Making Off
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
---
|
||||
id: 1337x
|
||||
name: 1337x
|
||||
description: "1337X is a Public torrent site that offers verified torrent downloads"
|
||||
description: "1337x is a Public torrent site that offers verified torrent downloads"
|
||||
language: en-US
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
@@ -115,7 +115,7 @@ caps:
|
||||
search: [q]
|
||||
tv-search: [q, season, ep]
|
||||
movie-search: [q]
|
||||
music-search: [q, album, artist]
|
||||
music-search: [q]
|
||||
book-search: [q]
|
||||
allowrawsearch: true
|
||||
|
||||
@@ -147,6 +147,10 @@ settings:
|
||||
type: info
|
||||
label: About the Download links
|
||||
default: As the iTorrents .torrent download link on this site is known to fail from time to time, we suggest using the magnet link as a fallback. The BTCache and Torrage services are not supported because they require additional user interaction (a captcha for BTCache and a download button on Torrage.)
|
||||
- name: disablesort
|
||||
type: checkbox
|
||||
label: Disable sorting - 1337x prevents sorting searches during high server load, which breaks the indexer when performing a keyword search - disable if you get zero results
|
||||
default: false
|
||||
- name: sort
|
||||
type: select
|
||||
label: Sort requested from site
|
||||
@@ -174,10 +178,10 @@ download:
|
||||
search:
|
||||
paths:
|
||||
# present first page of movies tv and music results if there are no search parms supplied (20 hits per page)
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Movies{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/1/"
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/TV{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}2{{ else }}1{{ end }}/"
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Music{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}3{{ else }}1{{ end }}/"
|
||||
- path: "{{ if or .Query.Album .Query.Artist .Keywords }}sort-search{{ else }}cat/Other{{ end }}{{ if or .Query.Album .Query.Artist }}/{{ or .Query.Album .Query.Artist }}{{ else }}/{{ .Keywords }}{{ end }}{{ if or .Query.Album .Query.Artist .Keywords }}/{{ else }}{{ end }}{{ .Config.sort }}/{{ .Config.type }}/{{ if or .Query.Album .Query.Artist .Keywords }}4{{ else }}1{{ end }}/"
|
||||
- path: "{{ if and (.Keywords) (eq .Config.disablesort .False) }}sort-{{ else }}{{ end }}{{ if .Keywords }}search/{{ .Keywords }}{{ else }}cat/Movies{{ end }}{{ if and (.Keywords) (eq .Config.disablesort .False) }}/{{ .Config.sort }}/{{ .Config.type }}{{ else }}{{ end }}/1/"
|
||||
- path: "{{ if and (.Keywords) (eq .Config.disablesort .False) }}sort-{{ else }}{{ end }}{{ if .Keywords }}search/{{ .Keywords }}{{ else }}cat/TV{{ end }}{{ if and (.Keywords) (eq .Config.disablesort .False)) }}/{{ .Config.sort }}/{{ .Config.type }}{{ else }}{{ end }}/{{ if .Keywords }}2{{ else }}1{{ end }}/"
|
||||
- path: "{{ if and (.Keywords) (eq .Config.disablesort .False) }}sort-{{ else }}{{ end }}{{ if .Keywords }}search/{{ .Keywords }}{{ else }}cat/Music{{ end }}{{ if and (.Keywords) (eq .Config.disablesort .False) }}/{{ .Config.sort }}/{{ .Config.type }}{{ else }}{{ end }}/{{ if .Keywords }}3{{ else }}1{{ end }}/"
|
||||
- path: "{{ if and (.Keywords) (eq .Config.disablesort .False) }}sort-{{ else }}{{ end }}{{ if .Keywords }}search/{{ .Keywords }}{{ else }}cat/Other{{ end }}{{ if and (.Keywords) (eq .Config.disablesort .False) }}/{{ .Config.sort }}/{{ .Config.type }}{{ else }}{{ end }}/{{ if .Keywords }}4{{ else }}1{{ end }}/"
|
||||
|
||||
keywordsfilters:
|
||||
- name: re_replace # daily standard S2023 > 2023
|
||||
|
||||
@@ -182,4 +182,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.10 2025-10-30
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -5,6 +5,8 @@ description: "ExtremeBits is a Private Torrent Tracker for EXTREME SPORTS"
|
||||
language: en-US
|
||||
type: private
|
||||
encoding: UTF-8
|
||||
certificates:
|
||||
- 0e7f0e9c468938a43058d72c69ffdb9a98e24eab # Expired 26th Nov 2025
|
||||
links:
|
||||
- https://extremebits.net/
|
||||
|
||||
|
||||
@@ -231,4 +231,4 @@ search:
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Result.description_verified }} "
|
||||
# NexusPHP v1.9.10 2025-10-30
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -62,7 +62,7 @@ settings:
|
||||
4: created
|
||||
1: title
|
||||
5: size
|
||||
8: seeders
|
||||
7: seeders
|
||||
- name: type
|
||||
type: select
|
||||
label: Order requested from site
|
||||
@@ -85,22 +85,16 @@ login:
|
||||
selector: a[href="mybonus.php"]
|
||||
|
||||
search:
|
||||
# https://www.trackerpmr.com/browse.php?search=&stype=0&s=0&cat=0&gr=0&kp=0&im=0&incldead=1&sort=0&type=desc
|
||||
# https://www.trackerpmr.com/browse.php?cat[]=0&shw_incl_cats=0&incldead=0&search=the+fix&tag=#results
|
||||
paths:
|
||||
- path: browse.php
|
||||
inputs:
|
||||
$raw: "{{ range .Categories }}c{{.}}=1&{{end}}"
|
||||
# $raw: "{{ range .Categories }}cat[]={{.}}&{{end}}"
|
||||
cat[]: 0
|
||||
shw_incl_cats: 0
|
||||
# 0 default, 1 active, 2 dead, 3 gold, 4 sticky, lots of others
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}0{{ end }}"
|
||||
search: "{{ .Keywords }}"
|
||||
# 0 title, 1 descr, 2 filename, 4 infohash
|
||||
stype: 0
|
||||
# 0 AND 1 OR
|
||||
s: 0
|
||||
# release group
|
||||
gr: 0
|
||||
# ratings
|
||||
kp: 0
|
||||
# 1 active, 2 dead, 3 gold, 4 sticky, lots of others
|
||||
incldead: "{{ if .Config.freeleech }}3{{ else }}1{{ end }}"
|
||||
sort: "{{ .Config.sort }}"
|
||||
type: "{{ .Config.type }}"
|
||||
|
||||
@@ -115,18 +109,25 @@ search:
|
||||
args: ["[^a-zA-Z0-9]+", "%"]
|
||||
|
||||
rows:
|
||||
selector: div.torrent-card
|
||||
selector: div.tr-torrent-card-compact:not(:has(div.tr-sticky-highlight))
|
||||
dateheaders:
|
||||
selector: a[href*="date="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: date
|
||||
- name: dateparse
|
||||
args: "yyyy-MM-dd"
|
||||
|
||||
fields:
|
||||
categorydesc:
|
||||
selector: div.category-badge
|
||||
optional: true
|
||||
default: Другое
|
||||
category:
|
||||
selector: a[href^="browse.php?cat="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: replace
|
||||
args: ["---", "Другое"]
|
||||
- name: querystring
|
||||
args: cat
|
||||
title:
|
||||
selector: a.torrent-title-link
|
||||
selector: a.tr-title-link-compact
|
||||
attribute: title
|
||||
filters:
|
||||
# normalize to SXXEYY format
|
||||
@@ -187,47 +188,32 @@ search:
|
||||
- name: append
|
||||
args: "{{ if .Config.addrussiantotitle }} RUS{{ else }}{{ end }}"
|
||||
details:
|
||||
selector: a.torrent-title-link
|
||||
selector: a.tr-title-link-compact
|
||||
attribute: href
|
||||
# there is either a magnet or a download link
|
||||
magnet:
|
||||
selector: a[href^="magnet:?xt="]
|
||||
attribute: href
|
||||
optional: true
|
||||
download:
|
||||
selector: a[href^="download.php?id="]
|
||||
attribute: href
|
||||
optional: true
|
||||
optional: true # for users that do not have DL access
|
||||
poster:
|
||||
selector: img.torrent-poster
|
||||
selector: img.tr-main-poster-compact
|
||||
attribute: src
|
||||
imdbid:
|
||||
selector: a[href^="browse.php?imdb="]
|
||||
attribute: href
|
||||
filters:
|
||||
- name: querystring
|
||||
args: imdb
|
||||
size:
|
||||
selector: div.size-section
|
||||
selector: div.tr-stat-block-compact:nth-child(3)
|
||||
seeders:
|
||||
selector: span.peers-seeders
|
||||
selector: div.tr-stat-block-compact:nth-child(4)
|
||||
leechers:
|
||||
selector: span.peers-leechers
|
||||
selector: div.tr-stat-block-compact:nth-child(5)
|
||||
grabs:
|
||||
selector: span:has(i.fa-download)
|
||||
date:
|
||||
selector: div.added-date
|
||||
filters:
|
||||
- name: timeago
|
||||
selector: div.tr-meta-info-compact span:has(i.fa-download)
|
||||
downloadvolumefactor:
|
||||
case:
|
||||
span.bg-success: 0
|
||||
span.tr-badge-free: 0
|
||||
"*": 1
|
||||
uploadvolumefactor:
|
||||
text: 1
|
||||
minimumratio:
|
||||
text: 1.0
|
||||
description:
|
||||
selector: a.tag
|
||||
selector: a.tr-tag-item-compact
|
||||
attribute: title
|
||||
# engine n/a
|
||||
|
||||
@@ -182,4 +182,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.9 2025-10-02
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -9,16 +9,12 @@ encoding: UTF-8
|
||||
links:
|
||||
- https://magnetcatcat.com/
|
||||
- https://clmclm.com/
|
||||
- https://www.8800519.xyz/
|
||||
- https://www.8800521.xyz/
|
||||
- https://www.8800522.xyz/
|
||||
- https://www.8800523.xyz/
|
||||
- https://www.8800524.xyz/
|
||||
- https://www.8800525.xyz/
|
||||
- https://www.8800526.xyz/
|
||||
- https://www.8800527.xyz/
|
||||
legacylinks:
|
||||
- https://www.clm472.sbs/
|
||||
- https://www.8800500.xyz/
|
||||
- https://www.8800503.xyz/
|
||||
- https://www.8800504.xyz/
|
||||
- https://www.8800505.xyz/
|
||||
- https://www.8800506.xyz/
|
||||
- https://www.8800507.xyz/
|
||||
- https://www.8800508.xyz/
|
||||
@@ -31,6 +27,10 @@ legacylinks:
|
||||
- https://www.8800517.xyz/
|
||||
- https://www.8800518.xyz/
|
||||
- https://www.8800520.xyz/
|
||||
- https://www.8800519.xyz/
|
||||
- https://www.8800521.xyz/
|
||||
- https://www.8800522.xyz/
|
||||
- https://www.8800523.xyz/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -31,7 +31,7 @@ caps:
|
||||
- {id: 62, cat: Movies/UHD, desc: "Film/HU/UHD"}
|
||||
- {id: 4, cat: PC/Games, desc: "Játékok/ISO"}
|
||||
- {id: 39, cat: PC/Games, desc: "Játékok/Rip/Dox"}
|
||||
# - {id: 47, cat: Other, desc: "Klippek"}
|
||||
- {id: 47, cat: Other, desc: "Klippek"}
|
||||
- {id: 30, cat: Audio/Lossless, desc: "Lossless/EN"}
|
||||
# - {id: 29, cat: Audio/Lossless, desc: "Lossless/HU"}
|
||||
- {id: 25, cat: Audio/MP3, desc: "MP3/EN"}
|
||||
@@ -141,7 +141,7 @@ search:
|
||||
img[src="/pic/categories/uhd_hun.png"]: 62
|
||||
img[src="/pic/categories/021.png"]: 4
|
||||
img[src="/pic/categories/cat_games.gif"]: 39
|
||||
# img[]: 47
|
||||
img[src="/pic/categories/026.png"]: 47
|
||||
img[src="/pic/categories/024.png"]: 30
|
||||
# img[]: 29
|
||||
img[src="/pic/categories/023.png"]: 25
|
||||
|
||||
@@ -23,19 +23,11 @@ caps:
|
||||
search: [q]
|
||||
|
||||
settings:
|
||||
- name: username
|
||||
- name: cookie
|
||||
type: text
|
||||
label: Username
|
||||
- name: password
|
||||
type: password
|
||||
label: Password
|
||||
- name: 2facode
|
||||
type: text
|
||||
label: 2FA code
|
||||
- name: info_2fa
|
||||
type: info
|
||||
label: "About 2FA code"
|
||||
default: "Only fill in the <b>2FA code</b> box if you have enabled <b>2FA</b> on the NicePT Web Site. Otherwise just leave it empty."
|
||||
label: Cookie
|
||||
- name: info_cookie
|
||||
type: info_cookie
|
||||
- name: freeleech
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
@@ -66,20 +58,10 @@ settings:
|
||||
default: "Account retention rules:<ol><li>Veteran Users users and above will be retained forever</li><li>Elite Users and above will not have their account deleted after parking (in the Control Panel)</li><li>Users with a parked account will be deleted if they do not log in for 400 consecutive days</li><li>Users with a non-parked account will be banned if they do not log in for 40 consecutive days</li><li>Users with no traffic (ie, upload/download data are both 0) will be banned if they do not log in for 7 consecutive days.</li></ol>"
|
||||
|
||||
login:
|
||||
path: login.php
|
||||
method: form
|
||||
form: form[action="takelogin.php"]
|
||||
captcha:
|
||||
type: image
|
||||
selector: img[alt="CAPTCHA"]
|
||||
input: imagestring
|
||||
# using cookie method because site does a JS call to API/Challenge via JQuery to load response parm required for takelogin.php
|
||||
method: cookie
|
||||
inputs:
|
||||
secret: ""
|
||||
username: "{{ .Config.username }}"
|
||||
password: "{{ .Config.password }}"
|
||||
two_step_code: "{{ .Config.2facode }}"
|
||||
error:
|
||||
- selector: td.embedded:has(h2:contains("失败"))
|
||||
cookie: "{{ .Config.cookie }}"
|
||||
test:
|
||||
path: index.php
|
||||
selector: a[href="logout.php"]
|
||||
@@ -187,4 +169,4 @@ search:
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Result.description_verified }} "
|
||||
# NexusPHP v1.9.4 2025-06-01
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -10,8 +10,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.org/
|
||||
links:
|
||||
- https://www.nortorrent.town/
|
||||
- https://nortorrent-proxy.site/
|
||||
- https://ww1-nortorrent.me/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
- https://www.rantop.org/
|
||||
@@ -27,8 +26,6 @@ legacylinks:
|
||||
- https://www.site-torrent.com/
|
||||
- https://www.rantop.my/
|
||||
# actual legacylinks
|
||||
- https://www.torrent9.run/
|
||||
- https://www.torrent9.cv/
|
||||
- https://www.torrent9.ke/
|
||||
- https://www.torrent9.gdn/
|
||||
- https://www.torrent9.men/
|
||||
@@ -42,6 +39,8 @@ legacylinks:
|
||||
- https://www.nortorrent5.com/
|
||||
- https://www.nortorrent6.com/
|
||||
- https://www.nortorrent.net/
|
||||
- https://www.nortorrent.town/
|
||||
- https://nortorrent-proxy.site/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -183,4 +183,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.6 2025-06-25
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -194,4 +194,4 @@ search:
|
||||
description:
|
||||
selector: td.rowfollow:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.6 2025-06-25
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -227,4 +227,4 @@ search:
|
||||
filters:
|
||||
- name: prepend
|
||||
args: "{{ .Result.description_verified }} "
|
||||
# NexusPHP v1.9.3 2025-05-24
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -9,26 +9,8 @@ type: semi-private
|
||||
encoding: windows-1251
|
||||
followredirect: true
|
||||
links:
|
||||
- https://nov21.rudub.pics/
|
||||
- https://nov30.rudub.world/
|
||||
legacylinks:
|
||||
- https://nov06.rudub.homes/
|
||||
- http://nov07.rudub.pics/
|
||||
- https://nov07.rudub.pics/
|
||||
- http://nov08.rudub.pics/
|
||||
- https://nov08.rudub.pics/
|
||||
- http://nov09.rudub.pics/
|
||||
- https://nov09.rudub.pics/
|
||||
- http://nov10.rudub.pics/
|
||||
- https://nov10.rudub.pics/
|
||||
- http://nov11.rudub.pics/
|
||||
- https://nov11.rudub.pics/
|
||||
- http://nov12.rudub.pics/
|
||||
- https://nov12.rudub.pics/
|
||||
- http://nov13.rudub.pics/
|
||||
- https://nov13.rudub.pics/
|
||||
- http://nov14.rudub.pics/
|
||||
- https://nov14.rudub.pics/
|
||||
- http://nov15.rudub.pics/
|
||||
- https://nov15.rudub.pics/
|
||||
- http://nov16.rudub.pics/
|
||||
- https://nov16.rudub.pics/
|
||||
@@ -41,6 +23,24 @@ legacylinks:
|
||||
- http://nov20.rudub.pics/
|
||||
- https://nov20.rudub.pics/
|
||||
- http://nov21.rudub.pics/
|
||||
- https://nov21.rudub.pics/
|
||||
- http://nov22.rudub.pics/
|
||||
- https://nov22.rudub.pics/
|
||||
- http://nov23.rudub.pics/
|
||||
- https://nov23.rudub.pics/
|
||||
- http://nov24.rudub.pics/
|
||||
- https://nov24.rudub.pics/
|
||||
- http://nov25.rudub.world/
|
||||
- https://nov25.rudub.world/
|
||||
- http://nov26.rudub.world/
|
||||
- https://nov26.rudub.world/
|
||||
- http://nov27.rudub.world/
|
||||
- https://nov27.rudub.world/
|
||||
- http://nov28.rudub.world/
|
||||
- https://nov28.rudub.world/
|
||||
- http://nov29.rudub.world/
|
||||
- https://nov29.rudub.world/
|
||||
- http://nov30.rudub.world/
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 1, cat: TV, desc: "TV"}
|
||||
|
||||
@@ -6,10 +6,11 @@ language: ru-RU
|
||||
type: public
|
||||
encoding: UTF-8
|
||||
links:
|
||||
- https://sosulki.com/
|
||||
- https://sosulki.hlom.ru/
|
||||
legacylinks:
|
||||
- http://sosulki.net/
|
||||
- http://sosulki.com/ # site forces https
|
||||
- https://sosulki.com/
|
||||
caps:
|
||||
categorymappings:
|
||||
- {id: 12, cat: XXX, desc: "Порно категории"}
|
||||
@@ -46,7 +47,7 @@ search:
|
||||
- path: "{{ if .Keywords }}?do=search&subaction=search&search_start=0&full_search=1&result_from=1&story={{ .Keywords }}&titleonly=3&catlist[]=0&searchdate=0&resorder=desc{{ else }}lastnews/{{ end }}"
|
||||
|
||||
rows:
|
||||
selector: tr.fr_viewn_in:has(td.frs:contains("B"))
|
||||
selector: tr.fr_viewn_in
|
||||
|
||||
fields:
|
||||
category:
|
||||
|
||||
@@ -40,6 +40,10 @@ settings:
|
||||
type: checkbox
|
||||
label: Search freeleech only
|
||||
default: false
|
||||
- name: tmdbidonly
|
||||
type: checkbox
|
||||
label: Disable IMDB and TVDB ID search (only support TMDB ID) to potentially improve Sonarr and Radarr results
|
||||
default: false
|
||||
- name: multilang
|
||||
type: checkbox
|
||||
label: Replace MULTi by another language in release name
|
||||
@@ -110,9 +114,9 @@ search:
|
||||
name: "{{ .Keywords }}"
|
||||
seasonNumber: "{{ .Query.Season }}"
|
||||
episodeNumber: "{{ .Query.Ep }}"
|
||||
imdbId: "{{ .Query.IMDBIDShort }}"
|
||||
imdbId: "{{ if .Config.tmdbidonly }}{{ else }}{{ .Query.IMDBIDShort }}{{ end }}"
|
||||
tmdbId: "{{ .Query.TMDBID }}"
|
||||
tvdbId: "{{ .Query.TVDBID }}"
|
||||
tvdbId: "{{ if .Config.tmdbidonly }}{{ else }}{{ .Query.TVDBID }}{{ end }}"
|
||||
"free[]": "{{ if .Config.freeleech }}100{{ else }}{{ end }}"
|
||||
sortField: "{{ .Config.sort }}"
|
||||
sortDirection: "{{ .Config.type }}"
|
||||
|
||||
@@ -36,7 +36,7 @@ settings:
|
||||
|
||||
search:
|
||||
paths:
|
||||
- path: "search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}"
|
||||
- path: "search/{{ if .Keywords }}{{ .Keywords }}{{ else }}{{ .Today.Year }}{{ end }}/"
|
||||
|
||||
rows:
|
||||
selector: table#archiveResult tbody tr:has(a[href^="magnet:?xt="])
|
||||
|
||||
@@ -7,13 +7,11 @@ type: public
|
||||
encoding: UTF-8
|
||||
followredirect: true
|
||||
links:
|
||||
- https://torrentqq395.com/
|
||||
- https://torrentegg83.com/
|
||||
- https://torrentqq396.com/
|
||||
- https://torrentegg84.com/
|
||||
legacylinks:
|
||||
- https://torrentegg68.com/
|
||||
- https://torrentegg69.com/
|
||||
- https://torrentegg70.com/
|
||||
- https://torrentqq380.com/
|
||||
- https://torrentegg71.com/
|
||||
- https://torrentqq381.com/
|
||||
- https://torrentqq382.com/
|
||||
@@ -40,6 +38,8 @@ legacylinks:
|
||||
- https://torrentegg82.com/
|
||||
- https://torrentqq393.com/
|
||||
- https://torrentqq394.com/
|
||||
- https://torrentqq395.com/
|
||||
- https://torrentegg83.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -9,9 +9,8 @@ followredirect: true
|
||||
requestDelay: 2
|
||||
# to fetch current domain use https://tzip.top/
|
||||
links:
|
||||
- https://torrentsome222.com/
|
||||
- https://torrentsome223.com/
|
||||
legacylinks:
|
||||
- https://torrentsome207.com/
|
||||
- https://torrentsome208.com/
|
||||
- https://torrentsome209.com/
|
||||
- https://torrentsome210.com/
|
||||
@@ -26,6 +25,7 @@ legacylinks:
|
||||
- https://torrentsome219.com/
|
||||
- https://torrentsome220.com/
|
||||
- https://torrentsome221.com/
|
||||
- https://torrentsome222.com/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -9,9 +9,8 @@ followredirect: true
|
||||
requestDelay: 2
|
||||
# to fetch current domain use https://tzip.top/
|
||||
links:
|
||||
- https://torrenttip203.top/
|
||||
- https://torrenttip204.top/
|
||||
legacylinks:
|
||||
- https://torrenttip188.top/
|
||||
- https://torrenttip189.top/
|
||||
- https://torrenttip190.top/
|
||||
- https://torrenttip191.top/
|
||||
@@ -26,6 +25,7 @@ legacylinks:
|
||||
- https://torrenttip200.top/
|
||||
- https://torrenttip201.top/
|
||||
- https://torrenttip202.top/
|
||||
- https://torrenttip203.top/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -171,4 +171,4 @@ search:
|
||||
description:
|
||||
selector: td:nth-child(2)
|
||||
remove: a, b, font, img, span
|
||||
# NexusPHP v1.9.10 2025-10-30
|
||||
# NexusPHP v1.9.11 2025-11-02
|
||||
|
||||
@@ -5,6 +5,8 @@ description: "Zelka (Zamunda) is a BULGARIAN Private Torrent Tracker for 0DAY /
|
||||
language: bg-BG
|
||||
type: private
|
||||
encoding: windows-1251
|
||||
certificates:
|
||||
- 996dbb1ef245699bdd5ea796b704c220c684b626 # Expired 29th Nov 2025
|
||||
links:
|
||||
- https://zelka.org/
|
||||
- https://zamunda.se/
|
||||
|
||||
@@ -7,8 +7,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.org/
|
||||
links:
|
||||
- https://www.zetorrents.town/
|
||||
- https://zetorrents-proxy.site/
|
||||
- https://ww1-zetorrents.me/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
- https://www.rantop.org/
|
||||
@@ -23,8 +22,6 @@ legacylinks:
|
||||
- https://www.site-torrent.com/
|
||||
- https://www.rantop.my/
|
||||
# actual legacylinks
|
||||
- https://www.zetorrents.nl/
|
||||
- https://www.zetorrents.biz/
|
||||
- https://www.zetorrents.ch/
|
||||
- https://zetorrents.mrunblock.bond/
|
||||
- https://zetorrents.nocensor.cloud/
|
||||
@@ -40,6 +37,8 @@ legacylinks:
|
||||
- https://www.zetorrents1.com/
|
||||
- https://www.zetorrents.diy/
|
||||
- https://www.zetorrents2.com/
|
||||
- https://www.zetorrents.town/
|
||||
- https://zetorrents-proxy.site/
|
||||
|
||||
caps:
|
||||
categories:
|
||||
|
||||
@@ -9,8 +9,7 @@ type: public
|
||||
encoding: UTF-8
|
||||
# to fetch current domain use https://www.rantop.org/
|
||||
links:
|
||||
- https://www.zktorrent.town/
|
||||
- https://zktorrent-proxy.site/
|
||||
- https://ww1-zktorrent.me/
|
||||
legacylinks:
|
||||
# latest domains list
|
||||
- https://www.rantop.org/
|
||||
@@ -26,8 +25,6 @@ legacylinks:
|
||||
- https://www.site-torrent.com/
|
||||
- https://www.rantop.my/
|
||||
# actual legacylinks
|
||||
- https://www.gktorrent.si/
|
||||
- https://www.gktorrent.my/
|
||||
- https://www.gktorrent.cz/
|
||||
- https://www.gktorrent.ke/
|
||||
- https://www.gktorrent.cv/
|
||||
@@ -41,6 +38,8 @@ legacylinks:
|
||||
- https://www.zktorrent5.com/
|
||||
- https://www.zktorrent.net/
|
||||
- https://www.zktorrent6.com/
|
||||
- https://www.zktorrent.town/
|
||||
- https://zktorrent-proxy.site/
|
||||
|
||||
caps:
|
||||
categorymappings:
|
||||
|
||||
@@ -8,10 +8,8 @@ using System.Xml.Linq;
|
||||
using Jackett.Common.Extensions;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Models.IndexerConfig.Bespoke;
|
||||
using Jackett.Common.Serializer;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
using Jackett.Common.Utils.Clients;
|
||||
using Microsoft.AspNetCore.Http;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using NLog;
|
||||
@@ -106,8 +104,16 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
|
||||
foreach (var releaseId in torrentIds)
|
||||
{
|
||||
var torrentsResponse = await RequestWithCookiesAsync($"{ApiBase}anime/torrents/{releaseId}");
|
||||
releases.AddRange(MapToReleaseInfo(torrentsResponse));
|
||||
var url = $"{ApiBase}anime/torrents/{releaseId}";
|
||||
try
|
||||
{
|
||||
var torrentsResponse = await RequestWithCookiesAsync(url);
|
||||
releases.AddRange(MapToReleaseInfo(torrentsResponse));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
logger.Error(ex, "Anilibria: Failed to load url [{0}]: {1}", url, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
return releases;
|
||||
@@ -123,8 +129,16 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
|
||||
foreach (var releaseId in releaseIds)
|
||||
{
|
||||
var torrentsResponse = await RequestWithCookiesAsync($"{ApiBase}anime/torrents/release/{releaseId}");
|
||||
releases.AddRange(MapToReleaseInfo(torrentsResponse));
|
||||
var url = $"{ApiBase}anime/torrents/release/{releaseId}";
|
||||
try
|
||||
{
|
||||
var torrentsResponse = await RequestWithCookiesAsync(url);
|
||||
releases.AddRange(MapToReleaseInfo(torrentsResponse));
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
logger.Error(ex, "Anilibria: Failed to load url [{0}]: {1}", url, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
return releases;
|
||||
@@ -204,44 +218,36 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
seasonPart = Regex.Replace(seasonPart, @"\b\d{4}\b$", "");
|
||||
var hasPartNumber = Regex.IsMatch(seasonPart, @"\bPart\s+\d+\b", RegexOptions.IgnoreCase);
|
||||
var seasonMatch = Regex.Match(seasonPart,
|
||||
@"\b(?:Season|S|Series)\s*(\d+)|\b(\d+)(?:st|nd|rd|th)?\s*Season\b|\b([IVXLCDM]+)\b|\b(\d+)\b",
|
||||
@"\b(?:Season|S|Series)\s*(?<season_number>\d+)|\b(?<season_number>\d+)(?:st|nd|rd|th)?\s*Season\b|\b(?<roman_number>M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3}))\b|\b(?<season_number>\d+)\b",
|
||||
RegexOptions.IgnoreCase);
|
||||
var season = "S01";
|
||||
|
||||
if (seasonMatch.Success && !hasPartNumber)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(seasonMatch.Groups[1].Value))
|
||||
if (seasonMatch.Groups["season_number"].Success
|
||||
&& !string.IsNullOrWhiteSpace(seasonMatch.Groups["season_number"].Value)
|
||||
&& int.TryParse(seasonMatch.Groups["season_number"].Value, out var seasonNumber))
|
||||
{
|
||||
season = $"S{int.Parse(seasonMatch.Groups[1].Value):D2}";
|
||||
season = $"S{seasonNumber:D2}";
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(seasonMatch.Groups[2].Value))
|
||||
{
|
||||
season = $"S{int.Parse(seasonMatch.Groups[2].Value):D2}";
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(seasonMatch.Groups[3].Value))
|
||||
else if (seasonMatch.Groups["roman_number"].Success && !string.IsNullOrWhiteSpace(seasonMatch.Groups["roman_number"].Value))
|
||||
{
|
||||
season = $"S{RomanToArabic(seasonMatch.Groups[3].Value):D2}";
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(seasonMatch.Groups[4].Value))
|
||||
{
|
||||
season = $"S{int.Parse(seasonMatch.Groups[4].Value):D2}";
|
||||
}
|
||||
}
|
||||
|
||||
var episodes = string.Empty;
|
||||
var epMatch = Regex.Match(episodesPart, @"(\d+)(?:[-–—](\d+))?");
|
||||
|
||||
if (epMatch.Success)
|
||||
if (epMatch.Success && int.TryParse(epMatch.Groups[1].Value, out var episodeStartNumber))
|
||||
{
|
||||
var start = int.Parse(epMatch.Groups[1].Value);
|
||||
if (epMatch.Groups[2].Success)
|
||||
{
|
||||
var end = int.Parse(epMatch.Groups[2].Value);
|
||||
episodes = $"E{start:D2}-E{end:D2}";
|
||||
episodes = $"E{episodeStartNumber:D2}-E{int.Parse(epMatch.Groups[2].Value):D2}";
|
||||
}
|
||||
else
|
||||
{
|
||||
episodes = $"E{start:D2}";
|
||||
episodes = $"E{episodeStartNumber:D2}";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -250,11 +256,12 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
|
||||
private static int RomanToArabic(string roman)
|
||||
{
|
||||
int[] values = { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 };
|
||||
string[] numerals = { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I" };
|
||||
roman = roman.ToUpperInvariant();
|
||||
|
||||
var values = new[] { 1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 };
|
||||
var numerals = new[] { "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I" };
|
||||
var result = 0;
|
||||
var i = 0;
|
||||
roman = roman.ToUpper();
|
||||
while (roman.Length > 0)
|
||||
{
|
||||
if (roman.StartsWith(numerals[i]))
|
||||
|
||||
@@ -249,13 +249,14 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
var details = new Uri(qDetailsLink.GetAttribute("href"));
|
||||
|
||||
var qPosterLink = row.QuerySelector("img[src*=\"/torrents/images/\"]");
|
||||
var qMagnetLink = row.QuerySelector("a[href^=\"magnet:?xt=\"]");
|
||||
var size = ParseUtil.GetBytes(row.QuerySelector("td:nth-last-child(5)").TextContent);
|
||||
var matchDateAdded = Regex.Match(row.QuerySelector(" td:nth-child(2)").TextContent, @"(\d{2}-\d{2}-\d{4} \d{2}:\d{2})", RegexOptions.IgnoreCase);
|
||||
var publishDate = matchDateAdded.Groups[1].Success && DateTime.TryParseExact(matchDateAdded.Groups[1].Value, "dd-MM-yyyy HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal, out var parsedDate) ? parsedDate : DateTime.Now;
|
||||
|
||||
var grabs = ParseUtil.CoerceInt(row.QuerySelector("td:nth-last-child(4)").TextContent);
|
||||
var seeders = ParseUtil.CoerceInt(row.QuerySelector("td:nth-last-child(3)").TextContent);
|
||||
var leechers = ParseUtil.CoerceInt(row.QuerySelector("td:nth-last-child(2)").TextContent) + seeders;
|
||||
var grabs = ParseUtil.CoerceLong(row.QuerySelector("td:nth-last-child(4)").TextContent);
|
||||
var seeders = ParseUtil.CoerceLong(row.QuerySelector("td:nth-last-child(3)").TextContent);
|
||||
var leechers = ParseUtil.CoerceLong(row.QuerySelector("td:nth-last-child(2)").TextContent) + seeders;
|
||||
|
||||
var dlVolumeFactor = 1.0;
|
||||
var upVolumeFactor = 1.0;
|
||||
@@ -287,6 +288,10 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
{
|
||||
release.Poster = new Uri(qPosterLink.GetAttribute("src"));
|
||||
}
|
||||
if (qMagnetLink != null)
|
||||
{
|
||||
release.MagnetUri = new Uri(qMagnetLink.GetAttribute("href"));
|
||||
}
|
||||
|
||||
releases.Add(release);
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
public override string Id => "mteamtp";
|
||||
public override string[] Replaces => new[] { "mteamtp2fa" };
|
||||
public override string Name => "M-Team - TP";
|
||||
public override string Description => "M-Team TP (MTTP) is a CHINESE Private Torrent Tracker for HD MOVIES / TV / 3X";
|
||||
public override string Description => "M-Team - TP (MTTP) is a CHINESE Private Torrent Tracker for MOVIES / TV / GENERAL";
|
||||
public override string SiteLink { get; protected set; } = "https://kp.m-team.cc/";
|
||||
public override string[] AlternativeSiteLinks => new[]
|
||||
{
|
||||
@@ -39,7 +39,7 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
|
||||
public override TorznabCapabilities TorznabCaps => SetCapabilities();
|
||||
|
||||
private readonly int[] _trackerAdultCategories = { 410, 429, 424, 430, 426, 437, 431, 432, 436, 425, 433, 411, 412, 413, 440 };
|
||||
private readonly int[] _trackerAdultCategories = { 410, 424, 437, 431, 429, 430, 426, 432, 436, 440, 425, 433, 411, 412, 413 };
|
||||
|
||||
private new ConfigurationDataMTeamTp configData => (ConfigurationDataMTeamTp)base.configData;
|
||||
|
||||
@@ -83,39 +83,37 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
caps.Categories.AddCategoryMapping(439, TorznabCatType.MoviesHD, "Movie(電影)/Remux");
|
||||
caps.Categories.AddCategoryMapping(403, TorznabCatType.TVSD, "TV Series(影劇/綜藝)/SD");
|
||||
caps.Categories.AddCategoryMapping(402, TorznabCatType.TVHD, "TV Series(影劇/綜藝)/HD");
|
||||
caps.Categories.AddCategoryMapping(435, TorznabCatType.TVSD, "TV Series(影劇/綜藝)/DVDiSo");
|
||||
caps.Categories.AddCategoryMapping(438, TorznabCatType.TVHD, "TV Series(影劇/綜藝)/BD");
|
||||
caps.Categories.AddCategoryMapping(435, TorznabCatType.TVSD, "TV Series(影劇/綜藝)/DVDiSo");
|
||||
caps.Categories.AddCategoryMapping(404, TorznabCatType.TVDocumentary, "紀錄教育");
|
||||
caps.Categories.AddCategoryMapping(434, TorznabCatType.Audio, "Music(無損)");
|
||||
caps.Categories.AddCategoryMapping(406, TorznabCatType.AudioVideo, "MV(演唱)");
|
||||
caps.Categories.AddCategoryMapping(423, TorznabCatType.PCGames, "PCGame(PC遊戲)");
|
||||
caps.Categories.AddCategoryMapping(448, TorznabCatType.ConsoleOther, "TvGame(TV遊戲)");
|
||||
caps.Categories.AddCategoryMapping(405, TorznabCatType.TVAnime, "Anime(動畫)");
|
||||
caps.Categories.AddCategoryMapping(407, TorznabCatType.TVSport, "Sports(運動)");
|
||||
caps.Categories.AddCategoryMapping(422, TorznabCatType.PC0day, "Software(軟體)");
|
||||
caps.Categories.AddCategoryMapping(423, TorznabCatType.PCGames, "PCGame(PC遊戲)");
|
||||
caps.Categories.AddCategoryMapping(427, TorznabCatType.BooksEBook, "Study/Edu ebook(教育書面)");
|
||||
caps.Categories.AddCategoryMapping(441, TorznabCatType.BooksOther, "Study/Edu video(教育影片)");
|
||||
caps.Categories.AddCategoryMapping(422, TorznabCatType.PC0day, "Software(軟體)");
|
||||
caps.Categories.AddCategoryMapping(442, TorznabCatType.AudioAudiobook, "Study/Edu audio(教育音檔)");
|
||||
caps.Categories.AddCategoryMapping(451, TorznabCatType.MoviesOther, "教育影片");
|
||||
caps.Categories.AddCategoryMapping(409, TorznabCatType.Other, "Misc(其他)");
|
||||
|
||||
// music
|
||||
caps.Categories.AddCategoryMapping(406, TorznabCatType.AudioVideo, "MV(演唱)");
|
||||
caps.Categories.AddCategoryMapping(408, TorznabCatType.AudioOther, "Music(AAC/ALAC)");
|
||||
caps.Categories.AddCategoryMapping(434, TorznabCatType.Audio, "Music(無損)");
|
||||
|
||||
// adult
|
||||
caps.Categories.AddCategoryMapping(410, TorznabCatType.XXX, "AV(有碼)/HD Censored");
|
||||
caps.Categories.AddCategoryMapping(429, TorznabCatType.XXX, "AV(無碼)/HD Uncensored");
|
||||
caps.Categories.AddCategoryMapping(424, TorznabCatType.XXXSD, "AV(有碼)/SD Censored");
|
||||
caps.Categories.AddCategoryMapping(430, TorznabCatType.XXXSD, "AV(無碼)/SD Uncensored");
|
||||
caps.Categories.AddCategoryMapping(426, TorznabCatType.XXXDVD, "AV(無碼)/DVDiSo Uncensored");
|
||||
caps.Categories.AddCategoryMapping(437, TorznabCatType.XXXDVD, "AV(有碼)/DVDiSo Censored");
|
||||
caps.Categories.AddCategoryMapping(431, TorznabCatType.XXX, "AV(有碼)/Blu-Ray Censored");
|
||||
caps.Categories.AddCategoryMapping(429, TorznabCatType.XXX, "AV(無碼)/HD Uncensored");
|
||||
caps.Categories.AddCategoryMapping(430, TorznabCatType.XXXSD, "AV(無碼)/SD Uncensored");
|
||||
caps.Categories.AddCategoryMapping(426, TorznabCatType.XXXDVD, "AV(無碼)/DVDiSo Uncensored");
|
||||
caps.Categories.AddCategoryMapping(432, TorznabCatType.XXX, "AV(無碼)/Blu-Ray Uncensored");
|
||||
caps.Categories.AddCategoryMapping(436, TorznabCatType.XXX, "AV(網站)/0Day");
|
||||
caps.Categories.AddCategoryMapping(440, TorznabCatType.XXX, "AV(Gay)/HD");
|
||||
caps.Categories.AddCategoryMapping(425, TorznabCatType.XXX, "IV(寫真影集)/Video Collection");
|
||||
caps.Categories.AddCategoryMapping(433, TorznabCatType.XXXImageSet, "IV(寫真圖集)/Picture Collection");
|
||||
caps.Categories.AddCategoryMapping(411, TorznabCatType.XXX, "H-Game(遊戲)");
|
||||
caps.Categories.AddCategoryMapping(412, TorznabCatType.XXX, "H-Anime(動畫)");
|
||||
caps.Categories.AddCategoryMapping(413, TorznabCatType.XXX, "H-Comic(漫畫)");
|
||||
caps.Categories.AddCategoryMapping(440, TorznabCatType.XXX, "AV(Gay)/HD");
|
||||
|
||||
return caps;
|
||||
}
|
||||
|
||||
@@ -72,38 +72,38 @@ namespace Jackett.Common.Indexers.Definitions
|
||||
}
|
||||
};
|
||||
|
||||
caps.Categories.AddCategoryMapping("23", TorznabCatType.TVAnime);
|
||||
caps.Categories.AddCategoryMapping("22", TorznabCatType.PC0day);
|
||||
caps.Categories.AddCategoryMapping("1", TorznabCatType.PCISO);
|
||||
caps.Categories.AddCategoryMapping("36", TorznabCatType.Books);
|
||||
caps.Categories.AddCategoryMapping("36", TorznabCatType.BooksEBook);
|
||||
caps.Categories.AddCategoryMapping("4", TorznabCatType.PCGames);
|
||||
caps.Categories.AddCategoryMapping("21", TorznabCatType.PCGames);
|
||||
caps.Categories.AddCategoryMapping("16", TorznabCatType.ConsolePS3);
|
||||
caps.Categories.AddCategoryMapping("40", TorznabCatType.ConsoleWii);
|
||||
caps.Categories.AddCategoryMapping("39", TorznabCatType.ConsoleXBox360);
|
||||
caps.Categories.AddCategoryMapping("35", TorznabCatType.ConsoleNDS);
|
||||
caps.Categories.AddCategoryMapping("34", TorznabCatType.ConsolePSP);
|
||||
caps.Categories.AddCategoryMapping("2", TorznabCatType.PCMac);
|
||||
caps.Categories.AddCategoryMapping("10", TorznabCatType.MoviesBluRay);
|
||||
caps.Categories.AddCategoryMapping("20", TorznabCatType.MoviesDVD);
|
||||
caps.Categories.AddCategoryMapping("12", TorznabCatType.MoviesHD);
|
||||
caps.Categories.AddCategoryMapping("44", TorznabCatType.MoviesOther);
|
||||
caps.Categories.AddCategoryMapping("11", TorznabCatType.MoviesSD);
|
||||
caps.Categories.AddCategoryMapping("19", TorznabCatType.MoviesSD);
|
||||
caps.Categories.AddCategoryMapping("6", TorznabCatType.Audio);
|
||||
caps.Categories.AddCategoryMapping("8", TorznabCatType.AudioLossless);
|
||||
caps.Categories.AddCategoryMapping("46", TorznabCatType.AudioOther);
|
||||
caps.Categories.AddCategoryMapping("29", TorznabCatType.AudioVideo);
|
||||
caps.Categories.AddCategoryMapping("43", TorznabCatType.TVOther);
|
||||
caps.Categories.AddCategoryMapping("42", TorznabCatType.TVHD);
|
||||
caps.Categories.AddCategoryMapping("45", TorznabCatType.TVOther);
|
||||
caps.Categories.AddCategoryMapping("41", TorznabCatType.TVSD);
|
||||
caps.Categories.AddCategoryMapping("7", TorznabCatType.TVSD);
|
||||
caps.Categories.AddCategoryMapping("9", TorznabCatType.XXX);
|
||||
caps.Categories.AddCategoryMapping("49", TorznabCatType.XXX);
|
||||
caps.Categories.AddCategoryMapping("47", TorznabCatType.XXXDVD);
|
||||
caps.Categories.AddCategoryMapping("48", TorznabCatType.XXX);
|
||||
caps.Categories.AddCategoryMapping("23", TorznabCatType.TVAnime, "Anime");
|
||||
caps.Categories.AddCategoryMapping("2", TorznabCatType.PCMac, "Appz-Mac/Linux");
|
||||
caps.Categories.AddCategoryMapping("1", TorznabCatType.PCISO, "Appz-Win/PC");
|
||||
caps.Categories.AddCategoryMapping("22", TorznabCatType.AudioAudiobook, "Book-Audio");
|
||||
caps.Categories.AddCategoryMapping("36", TorznabCatType.BooksEBook, "Book-Ebook");
|
||||
caps.Categories.AddCategoryMapping("40", TorznabCatType.ConsoleWii, "Games-Nin");
|
||||
caps.Categories.AddCategoryMapping("16", TorznabCatType.ConsolePS3, "Games-PS");
|
||||
caps.Categories.AddCategoryMapping("4", TorznabCatType.PCGames, "Games-Win");
|
||||
caps.Categories.AddCategoryMapping("39", TorznabCatType.ConsoleXBox360, "Games-XBOX");
|
||||
caps.Categories.AddCategoryMapping("35", TorznabCatType.ConsoleNDS, "Handheld/NDS");
|
||||
caps.Categories.AddCategoryMapping("34", TorznabCatType.PCMobileOther, "Mobile");
|
||||
caps.Categories.AddCategoryMapping("51", TorznabCatType.MoviesUHD, "Movies/4K");
|
||||
caps.Categories.AddCategoryMapping("10", TorznabCatType.MoviesBluRay, "Movies/BluRay");
|
||||
caps.Categories.AddCategoryMapping("20", TorznabCatType.MoviesDVD, "Movies/DVDR");
|
||||
caps.Categories.AddCategoryMapping("12", TorznabCatType.MoviesHD, "Movies/HDx264");
|
||||
caps.Categories.AddCategoryMapping("44", TorznabCatType.MoviesOther, "Movies/Packs");
|
||||
caps.Categories.AddCategoryMapping("11", TorznabCatType.MoviesHD, "Movies/x265");
|
||||
caps.Categories.AddCategoryMapping("19", TorznabCatType.MoviesSD, "Movies/XviD");
|
||||
caps.Categories.AddCategoryMapping("6", TorznabCatType.Audio, "Music");
|
||||
caps.Categories.AddCategoryMapping("8", TorznabCatType.AudioLossless, "Music/FLAC");
|
||||
caps.Categories.AddCategoryMapping("46", TorznabCatType.AudioOther, "Music/Packs");
|
||||
caps.Categories.AddCategoryMapping("29", TorznabCatType.AudioVideo, "MusicVideos");
|
||||
caps.Categories.AddCategoryMapping("21", TorznabCatType.TVSport, "Sports");
|
||||
caps.Categories.AddCategoryMapping("43", TorznabCatType.TVOther, "TV/DVDR");
|
||||
caps.Categories.AddCategoryMapping("42", TorznabCatType.TVHD, "TV/HDx264");
|
||||
caps.Categories.AddCategoryMapping("45", TorznabCatType.TVOther, "TV/Packs");
|
||||
caps.Categories.AddCategoryMapping("41", TorznabCatType.TVSD, "TV/SDx264");
|
||||
caps.Categories.AddCategoryMapping("7", TorznabCatType.TVSD, "TV/XViD");
|
||||
caps.Categories.AddCategoryMapping("9", TorznabCatType.XXX, "XXX");
|
||||
caps.Categories.AddCategoryMapping("49", TorznabCatType.XXX, "XXX/0DAY");
|
||||
caps.Categories.AddCategoryMapping("47", TorznabCatType.XXXDVD, "XXX/DVDR");
|
||||
caps.Categories.AddCategoryMapping("48", TorznabCatType.XXX, "XXX/HDx264");
|
||||
|
||||
return caps;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace Jackett.Common.Models.IndexerConfig.Bespoke
|
||||
public ConfigurationDataMTeamTp()
|
||||
{
|
||||
ApiKey = new StringConfigurationItem("API Key");
|
||||
ApiKeyInfo = new DisplayInfoConfigurationItem("ApiKey Info", "The API key can be obtained by accessing your M-Team-TP User Control Panel > Security > Laboratory.");
|
||||
ApiKeyInfo = new DisplayInfoConfigurationItem("ApiKey Info", "The API key can be obtained by accessing your M-Team - TP User CP > Laboratory.");
|
||||
FreeleechOnly = new BoolConfigurationItem("Search freeleech only") { Value = false };
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user