- Fix language vfq (French version with voice in Quebec) in sonarr. Sonarr tell episode is in english but episode is in french
- Fix some tv show have space between season number and episode number
* Create audiobookbay.yml
Basics of scraping AudioBookBay.
Will only scrape the first page at the moment, but seems to work ok.
* Update README.md
Added AudioBookBay in Supported Public Trackers
* Update README.md
for apps that use Jackett as a proxy, and rely ion the existence of category, size, etc, I've populated the returned results with the missing anime category, and default values for seeders, leechers, size, downloadvolumefactor, and uploadvolumefactor.
Last commit of nordicbits.cs only supported the 'old' v2 theme.
With this new update, I have added support for the v3 theme but continue to keep the old support for v2 by looking after the .css file loaded and return the proper _fDom in FindTorrentRows...
I have also added a extended error msg, when torrents can't be found that it could be because of an unsupported theme.
* Updated categories
A lot of categories got dropped, also there are some new categories.
Additionally I updated the namings.
* Fix TV series category names
using title: without a query string causes 0 results which meant the
jackett dashboard TEST button failed.
now we only add title: if a query was supplied.
* Make ReleaseInflo class derivation friendly
* Improve releaseinfo inheritance
Ensure provider order is respected
Some season numbers were not parsed in rss mode
Remove s00e00 from movies results
A little update to make:
case insensitive the regex
change web-dlmux to web-dl, sonar don't like it so much, hope resolve a lot of manual import from this traker
Changed the andmatch filter
All regex are case insensitivi
A lot of categories changed (noticed for coincidence, during some test on regex)
Some minor fix
* Create Nordicbits.cs
Add support for Nordicbits / DK Private Tracker
* Create ConfigurationDataNordicbits.cs
Create Nordicbits.cs
Add support for Nordicbits / DK Private Tracker
* Update README.md
Added a new tracker Nordicbits
* Update Nordicbits.cs
The self-tester didn't work, because of the trackers use of 'Today' and 'Yesterday' in releases. Where other releases are "MMM dd yyyy".
This is fixed now.
* Update Nordicbits.cs
Search string wasn't build proberly, due to the catagory of nordicbits.
The images, which we use to determin which catagory the release is from goes like this -
cat=5
But when we need to search under that catagory and have more than one, it should go like this -
cats2[]=5
Changed the categorieslist, by using replace and changed the query string to match the original search string.
* Update Nordicbits.cs
Should solve the bug - The string was not recognized as a valid DateTime. There is an unknown word starting at index 0.
* Update Nordicbits.cs
Tracker don't support imdb, therefore problems with handling of couchpotato, radarr or similar.
Fixed by setting imdb to false;
Italian release suck, you can find S01E01 or 01x01 or even S01 E01.
So removed S and E from search (this bring in extra results) then try to parse and reconstruct the results
Hope for now is enough to have a better search, at least on Italian tracker, for the external tracker (where are present Italian release too), only god can tell ... Sonarr will parse the result during a rss sync, but during a search I think no result will present ... There are 2 possible solution
1. Find and eliminate all release that don't respect the standard
2. Make Jackett / Sonarr / Radarr a little smartest and include a kind of regional substitution during a searching phase
Italian release suck, you can find S01E01 or 01x01 or even S01 E01.
So removed S and E from search (this bring in extra results) then try to parse and reconstruct the results
Hope for now is enough to have a better search, at least on Italian tracker, for the external tracker (where are present Italian release too), only god can tell ... Sonarr will parse the result during a rss sync, but during a search I think no result will present ... There are 2 possible solution
1. Find and eliminate all release that don't respect the standard
2. Make Jackett / Sonarr / Radarr a little smartest and include a kind of regional substitution during a searching phase
Italian release suck, you can find S01E01 or 01x01 or even S01 E01.
So removed S and E from search (this bring in extra results) then try to parse and reconstruct the results
Hope for now is enough to have a better search, at least on Italian tracker, for the external tracker (where are present Italian release too), only god can tell ... Sonarr will parse the result during a rss sync, but during a search I think no result will present ... There are 2 possible solution
1. Find and eliminate all release that don't respect the standard
2. Make Jackett / Sonarr / Radarr a little smartest and include a kind of regional substitution during a searching phase
Italian release suck, you can find S01E01 or 01x01 or even S01 E01.
So removed S and E from search (this bring in extra results) then try to parse and reconstruct the results
Hope for now is enough to have a better search, at least on Italian tracker, for the external tracker (where are present Italian release too), only god can tell ... Sonarr will parse the result during a rss sync, but during a search I think no result will present ... There are 2 possible solution
1. Find and eliminate all release that don't respect the standard
2. Make Jackett / Sonarr / Radarr a little smartest and include a kind of regional substitution during a searching phase
* Add btxpress.yml
* Update README.md
* Delete btworld
BTWorld is now known as BTXpress
* Update BTXpress
There was a issue with the selectors which has been fixed
* Update BTXpress
td:nth-child selectors were giving errors.
* Update btxpress.yml
- added new input field "description" which is used to be able to search into torrent descriptions and media info using keywords
- This doesn't fix#3355 . Im not sure what the issue is. Maybe @kaso17 can check it out. I believe you still have a account there. If not let me know.
OMDB recently added a private.omdbapi.com domain for supporters and this option allows the user to customize it while also allowing that url to change more rapidly in the future
* feat(newpct): rename title to make them more standarized
* fix: add site link configurable
* feat: add tests if news are not available
Sometimes the web has no news, and even if the tv show searcher is
working it throws an error. This way it will check news, and, if not
available, will check some series to check aliveness.
* fix: remove apostrophes from search
closes#3315
* fix: initialize search term if it's null
* fix: add multiepisode parsing and minor improvements
Now a quality it's ensured
Now quality it's cleaned from brackets
Add dash as multiepisode separator
* refactor: move tv search to function and change site link
Sitelink is now a property class
* refactor: extract function to get series uris
* refactor: extract function to get releases from one uri
* feat: add fallback to shows starting with "the"
Whenever a shows doesn't return results and doesn't start with "the"
search one more time prepending "the".
The motivation of this is because of Sonarr sanitizes queries before
sending them to Jackett. This indexer needs the article but Sonarr
removes it before.
* fix(newpct): add missing guid based on link
That was causing missing files on applications consuming the newpct
indexer.
* feat(mejortorrent): add movie search
closes: #3310
* feat(mejortorrent): add parse and filter by year
* feat(mejortorrent): change movie search algorithm
Now movie search is based on longest word, then results are filtered
ignoring special characters.
* fix(mejortorrent): restore query so jackett log it correctly
* fix: add small year correction
Some movies are tagged with the year before or after, I think it's safe to
fix years with exactly the same name and only a year of difference.
* refactor: move tv search to function and change site link
Sitelink is now a property class
* refactor: extract function to get series uris
* refactor: extract function to get releases from one uri
* feat: add fallback to shows starting with "the"
Whenever a shows doesn't return results and doesn't start with "the"
search one more time prepending "the".
The motivation of this is because of Sonarr sanitizes queries before
sending them to Jackett. This indexer needs the article but Sonarr
removes it before.
* fix: add multiepisode parsing and minor improvements
Now a quality it's ensured
Now quality it's cleaned from brackets
Add dash as multiepisode separator
* fix: prevent an error if cannot guess serie name from title
* fix: now title is being extracted correctly
* feat(newpct): rename title to make them more standarized
* fix: add site link configurable
* feat: add tests if news are not available
Sometimes the web has no news, and even if the tv show searcher is
working it throws an error. This way it will check news, and, if not
available, will check some series to check aliveness.
* fix: remove apostrophes from search
closes#3315
* fix: initialize search term if it's null
use artist instead of keyword if artist is supplied to make it somewhat compatible with lidarr(by default supplies artist and album with empty keyword)
This tracker always respect the format
SXXEYY so I cleaned up the code, I only updated the code adding a simple regex, just in case a rel with XXxYY came up!
* feat: start mejortorrent indexer, create basic configuration
* feat: add basic tv show scraper for series search
* fix: add guid so more than one episode is returned
* feat: add date to episodes
* feat: add support for multi-episodes
* feat: add proper filtering
* fix: change filter when there is no season or no episode
* feat: implement tv show rss scraper with no links by the moment
* feat: finish tv-shows rss
* fix: prevent sdtv to be marked as hdtv
* docs: add mejortorrent indexer to readme
* add url encode
* fix encoding
Content seems to be UTF8
* add missing include
* fix my fixes
* fix encoding
* Additional fix for #1450
Sonarr is search for a tilte if the result title is different it reject it.
So it is not enough that Jackett give the result it must give with the same language.
Workaround create a new title from the original one and from the title.
It also make some fine tunning:
if title not contains the language we add it from category
* Make decision safer
Add Spanish Private HD tracker https://www.hd-spain.com/
Based on Albvadi's code from HD-Spain forum all credit to him, I only added some changes for better search, ISO correct and spain flag detection
Some workoround to "Ncore - not forward all search results to Sonarr, Radarr"
In case of TV shows if nothing is founded, retry the search without SxxExx after the show name.
This will list all torrent also if their title or description are changed.
Than add the result only if it contains the skipped SxxExx
* Add option for Elite Tracker (FR) for download torrent using https for tracker URL.
* change return type.
clean code.
* use the SiteLink variable instead of hard coding
Sometimes when parsing, the size of the rel was not enough to have Gb instead Mb or Kb to Mb or whatever
So the size in row is for example 1.015.22 Mb (less than 1024)
So in this case the parser return error
I searched a way to replace this, I found a solution, hope that works in a log way
* Improved anime search and speed-share resolution detection
* - Code Refactored to new standards
- Removed publish date from search mode, since the tracker does not provide that information, it was based on the serie year (but it does provide it on last 24h page, that's still prssent)
- Code clean
- Added season to all animes but One Piece (every anime that i searched in this tracker have the correct season and episode numbering, except One Piece that have an incorrect season set and episode is in absolute format, its added automatically on every new release, so must be the source from where they get that info that is wrong, since its an popular show, added it as an workaround and explained on code as comment)
xbytesv2 adds two years in title, when the show has season episodes released in two different years. For example, supergirl season 3, has episodes in 2017 and 2018. In this case xbytesv2 format the title like this: "Supergirl (2017 18/S03/E13/AMZ WEB DL 1080p/AC3 5 1 /DUAL/SUB) Grupo V2"
This new filter, deletes both years.
Please don't remove this replace:
- name: re_replace
args: ["S(\\d{1,2}) E(\\d{1,2})", "S$1E$2"]
* Fix for #3010
This will fix the problem with torrentday.it being down and https:///torrentday.com will redirect you to https://www.torrentday.com. And since we don't allow redirects, this will not work without the www.
* Added the feedback from #3014
This adds the following categories:
- 102: Movie / 4K Disk
- 103: Movie / 4K Remux
- 38: Movie / WEB-DL
- 106: Internal / BHDStudio 1080p
- 105: Internal / BHDStudio 720p
- 104: TV Show / 4K
- 99: TV Show / Sports
- 100: TV Show / Sports / WEB-DL
Additionally 94: `Movie / 4K` was renamed to `Movie / 4K Other` to
match the updated category name on the tracker.
* (Create) racing4everyone.yml
- I have yet to test this. If anyone is willing to please do. Currently is open reg for 3 more days.
* (Update) Add R4E to README
- added racing4everyone (R4E)
Change TV Shows search format for Spanish style, change encoding in HDCity to ISO-8859-1, now accented characters works perfects and add [spanish] for detected Spanish language in Sonarr/Radarr
Really hope I don't break anything with this
Went to have a go at .NET core and it just became too confusing for me with 'Jackett' namespace referring to both Jackett.Common and Jackett
* Update README.md
Adding Puntotorrent forgotten from [this PR](https://github.com/Jackett/Jackett/pull/2433)
* Add definition for HDCity
Add definition for spanish tracker HDCity
* Adding HDCity to the index
* New definition for HacheDe
Add definition for new spanish tracker: HacheDe
* Update README.md
Adding HacheDe
* Update hachede.yml
Remove strdump for debug purposes
modified the ProcessPage Method to select the last table with the browsetable class attribute so that if the Top 20 table is visible it will be ignored and the master list is the only one that will display. Works with Top 20 on and off.
* Fixed anime search on BJShare, removing the season from search and changing the output from "Anime SXXEXX" to "Anime EXX".
Season had to be removed because the season numbering on anime is all wrong in this tracker.
* - Changed to change title based on search for category of every row in bj-share, instead of category of search
- Fixed title parse on B2S-Share and Speed-Share to animes (series not changed) from "Anime SXXEXX" to "Anime EXX"
* - Added anime title change on empty search as well - BJ-Share
* B2S-Share: Removed episode from search and added andmatch (episode search do not work with translated series name), changed title to return 'original name SXXEXX' instead of 'translated name SXXEXX (original name)', because Sonarr was not recognizing the serie (it will only apply to series and movies, animes does not have translated name)
* added few comments to the code
* Fixed year being added after season/episode, it will be added now between series name and season/episode (animes not included), eg: Serie 2017 S05E06
* Small bugfixes in regex
Removed episode from search and added andmatch (episode search do not work with translated series name), changed title to return 'original name SXXEXX' instead of 'translated name SXXEXX (original name)', because Sonarr was not recognizing the serie (it will only apply to series and movies, animes does not have translated name)
The only drawback is that it will not search for very older episodes (not on first page), but that can be softened increasing the results per page in user profile, but i consider it way better than before, many series was not returning anything, since they had an translated name on the tracker, and an search with episode would work only searching for translated name and episode.
add additional active categories
support multi-category search
downloads can be missing, prevent error
remove hardcoded full path to gifs, ensures domain independency
* Fixed anime search on BJShare, removing the season from search and changing the output from "Anime SXXEXX" to "Anime EXX".
Season had to be removed because the season numbering on anime is all wrong in this tracker.
* - Changed to change title based on search for category of every row in bj-share, instead of category of search
- Fixed title parse on B2S-Share and Speed-Share to animes (series not changed) from "Anime SXXEXX" to "Anime EXX"
* - Added anime title change on empty search as well - BJ-Share
correct date parse
and add english date handling (for users that set english in profile)
add freeleech gold
add category in results for Sonarr
add banner
amend descritpion tag
* Remove static configuration class that required prior knowledge of when it was initialised to dependency injected method that ensures all configuration has already occured.
* Specify a different log name for the updater, require a path when running the Jackett updater
* Update to all .NET Standard packages
* Explicitly specify the restore project style
* Move automapper out of the DI framework and put crude detection to prevent it from initializing more than once.
* The module will need to be registered first thing in order to support commands such as --Help.
* Ignore mac directory attribute files
* Fix command line parameters not being correctly passed to the console
the default search for ettv is to return 'any words' matched, which when
paired with 'sortby added' meant the top resutls were not useful.
now we prefix the keyworks with '+' and urlencodes them, ensuring that
'all words' matched is returned.
* Move service config service back into shared .NET Framework Library
* Move Content files into shared folder. Make autoface load different assembilies depending on what framework is using it.
* Change my mind on what the shared module should be called. Common Module is too bland.
* DotNet4.SocksProxy is not yet publically .NET Standard. Revert to previous SocksWebProxy package.
* Check in unstaged change to test dependency injection setup.
* Use platform detection that works on mono 4.6+
* Move to use package reference for restoring nuget packages.
* DateTimeRoutines does not have Nuget packages that support .NET Standard (and therefore .NET Core). We will have to include them for now until we can get rid of this dependency.
* Start spliting some interfaces into their own files - this will help by allowing us to split them out in the future into a seperate project so the actual implementations can stay within their respective architectures when required
* Move out common libraries
* Few more tidy up tasks to get things working with .NET Standard
* Restructure the solution layout
* Encoding work to reduce rework later on platforms without Windows codepages (or require compliance with RFC1345)
* Move folder structure around to have more natural layout of the solutions
* DI server configuration to get rid of "temporary" hack and dependency circle for serverservice
* Make all encoding consistent to match the expected encoding casing for earlier versions of mono.
drop sort by seeds as site's page is broken
add category to results
add category filter in settings because site does not support multi-cats
add date now to prevent ugly' 2017y ago'
* LostFilm.tv: Fix language and quality in release titles
* LostFilm.tv: Snatch Season Packs if they are available
* LostFilm.tv: Fix searching for series with special characters in title
* LostFilm.tv: Parse episode details on episode page, not on Discovery page
* LostFilm.tv: Don't snatch separate episodes if season pack was requested but not found
* LostFilm.tv: Repace logger.Info with logger.Debug to keep logs free of spam
* Move to use package reference for restoring nuget packages.
* Return a task result for this async method.
* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.
* Set the solution to target VS2017
* Update test solution csproj file to support being built through MSBuild 15
* Move to use package reference for restoring nuget packages.
* Return a task result for this async method.
* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.
* Set the solution to target VS2017
* Update test solution csproj file to support being built through MSBuild 15
* DateTimeRoutines does not have Nuget packages that support .NET Standard (and therefore .NET Core). We will have to include them for now until we can get rid of this dependency.
* Move the interfaces into their own files. This will be useful when we share them between the .NET Core and .NET Framework WebAPI
* Stage services that need to point to the new interface namespace.
* Update CurlSharp to fix memory leak issue and support better runtime compatibility with OSX and Linux
* Start spliting some interfaces into their own files - this will help by allowing us to split them out in the future into a seperate project so the actual implementations can stay within their respective architectures when required
* Move to use package reference for restoring nuget packages.
* Return a task result for this async method.
* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.
* Set the solution to target VS2017
* Update test solution csproj file to support being built through MSBuild 15
* Move to use package reference for restoring nuget packages.
* Return a task result for this async method.
* Update to a supported version of the .NET Framework. This also has the side effect of allowing us to automatically generate our binding redirects on build.
* Set the solution to target VS2017
* Update test solution csproj file to support being built through MSBuild 15
Added missing categories, release date, release type.
Fixed some errors, and removed some useless strings.
Unfortunately the indexer shows non scene resolutions like "848x480; 1920 x 960" and i wan't able to translate that to "480p; 720p" because there are so many different resolutions. If someone could help me with that, i'd be glad.
Add a few missing categories
handle TEST correctly
prevent row selector false hits
add date as now instead of 2017y ago
add category selector for results
the dashboard test requires just the base path.
categories matching requires french keywords
the site does not supply a release date, so lets default to now,
otherwise we get ugly "2017y old" in dashboard results.
* DanishBits: add Passkey info to hopefully prevent #1892#1873#1850
**WARNING** this is a completely untested code change, as I don't have VS or a c# compiler.
I simply made my best guess based on similar code I found in TorrentBytes.cs
Please review carefully, and hopefully I haven't left anything out ;-)
If you don't want me to make future changes like this without the required tools, then please let me know. Thanks.
* Update DanishBits.cs
* Update DanishBits.cs
* Update DanishBits.cs
* Update DanishBits.cs
* Update DanishBits.cs
* Update DanishBits.cs
* Update ConfigurationDataUserPasskey.cs
add display item instructions
* Update DanishBits.cs
switch to ConfigurationDataUserPasskey
and drop unused using statements
* Update CouchPotatoTracker.cs
add ConfigurationDataUserPasskey ConfigData1
* Update CouchPotatoTracker.cs
fix optional configData parm override
* revert
oops no, that wipes preloaded data :(
* Update CouchPotatoTracker.cs
add configurationDataUserPasskey as parameter
the btdb site does not use categories and supplies magnets for all sorts of content.
So the btdb definition now always returns category `100001 Other` for all search results.
Added info in settings to provide instructions on setting up btdb on Sonarr and Radarr.
Tested on Jackett Dashboard, Sonarr and Radarr.
* Add 4k Movie and TV categories for RARBG
Currently it does not look like torrentapi.org indexes the 4k movie categories but I've added them anyway in case they get added in the future.
Also, torrentapi.org returns "Movies/TV-UHD-episodes" for RARBG's 4k TV category. This may be due to RARBG's top100 page.
* Update Rarbg.cs
* Add the new 4K category for TorrentLeech
TorrentLeech renamed the existing 4k category and added a new "Real 4K UltraHD HDR" category. This PR adds the new category (but leaves the old one too).
* Update TorrentLeech.cs
* Create worldwidetorrents.yml
* docs: add World Wide Torrents public tracker. Closes#1439
* worldwidetorrents: prevent errors.
the scripts were causing false hits for the row selector.
* docs: oops put wwt in correct section
* bithumen: replace deprecated use of optional
* bitspyder: replace deprecated use of optional
* chdbits: replace deprecated use of optional
* diablotorrent: replace deprecated use of optional
* eztv: replace deprecated use of optional
* funkytorrents: replace deprecated use of optional
* hon3yhd: replace deprecated use of optional
* insanetracker: replace deprecated use of optional
* kapaki: replace deprecated use of optional
* limetorrents: replace deprecated use of optional
* linkomanija: replace deprecated use of optional
* losslessclub: replace deprecated use of optional
* magico: replace deprecated use of optional
* majomparade: replace deprecated use of optional
* ourbits: replace deprecated use of optional
* polishsource: replace deprecated use of optional
* rodvd: replace deprecated use of optional
* torrentccf: replace deprecated use of optional
* torrenthr: replace deprecated use of optional
* torrentproject: replace deprecated use of optional
* torrentz2: replace deprecated use of optional
* oops
* Update bitspyder.yml
* Update insanetracker.yml
* Update kapaki.yml
* Update magico.yml
* Update polishsource.yml
* Update torrenthr.yml
* Update polishsource.yml
* Wrapped item parsing in try catch / one erranious torrent should not fuck up the entire parsing.
Changed Uri creation to use TryCreate, to harden against invalid image paths.
* Woops, can't use new C# features...
* docs: delete sceneAccess
* Delete SceneAccess.cs
* cleanup for Indexers/SceneAccess.cs
* remove SceneAccess.cs
* revert, as SceneAccess is not a yml definition but a cs indexer
* Make the script self-executing
* Update script with colors
Since it’s self-executing, at least the output is more visible
* Changes to README
* Update Jackett.Console.csproj
* Clarify README
I'm 99% sure that since they've resurrected they're fully public (no login needed, no ratio, etc.) and since even Jackett isn't asking for login info, it should be reflected here.
Non-critical fixes:
- NextTorrent and Zetorrents: error in logs when no results were
returned from search
- T411v2: improved selector to disregard VPN add in search results
* Add instructions tu run Jackett as service on macOS
* Changed restart logic
* Replace plist with install script
* Update README and add some more checks
* Fix README
* Move and rename script
* Include script inside project
* README corrections and cleanup
* Slight improvement of the script
Put `launchctl remove` earlier so it has the time to quit the service before testing if it's still running.
* Fixes episode search in Manicomio Share
The tracker uses the pattern "name - s??e??" instead of "name s??e??" so we have to manually add a "-" in the query
* Better fix
Updated to a better fix!
* Fixed the input name
* Added a workaround to solve the year issue
* Fixed the re_replace order
I cannot wrap my head around why it has started to fail now as it was
faulty from the beginning... Anyway, SupportsCategories didn't really
take sub categories into account, which is bad.
- Potentially fixes#1654 and #1656
* docs(config): add warning on wihd config to use classic view only
* refactor(wihd): refactor indexer, optimized dev mode, added freeleech and SSL
* fix(indexers): removed T411 orginal tracker
closed tracker by gov
* refactor(clean): removed old orphan config files
* docs(readme): updated for wihd
* feat(utils): added sha1 hash function and refactored md5 hash function
* fix(indexers): now use cross plateform path building for dev mode
* fix(indexers): fix output log of xthor for dev mode
* feat(release): added ToString method
* refactor(dev): optimized dev mode
* style(clean): cleanup code
* feat(indexer): added tmdb info to releases
* fix(cat): enabled categories on xthor
* Fixed the TorrentPotato requests with the indexers that does not support imdbid requests
* Fixed the "CanHandleQuery" which was not working if we make the request only with an imdbid (and a valid OMDB key)
* Fixed the "CanHandleQuery" which was not working if we make the request only with an imdbid (and a valid OMDB key)
* Removed PotatoController.cs
* Tweak BB indexer
Remove explicit tracker URL
Add tracker-specific season query
* Query for "S##" and "Season #" simultaneously on bB
* Fix tabs/spaces
* Rewrite title from "Season #" to "S##"
* Fix bug
Fix bug where searching for whole shows would rewrite Season # to S00, since no season was specified.
* Add new categories mappings
So that e.g. headphones can correctly query bB for music
* Introducing API v2
There were multiple inconsistencies in the old API and I have been
toying with the idea to replace it. This will suck for everyone who was
building on top of the Jackett API, however as it was probably too
painful to do so I'd say no one really tried.
Now API v2.0 should be much more constistent as it uses DTObjects, and
instead of manually constructing a json response it is handled by the
ASP.NET web api. It is much more RESTful than it was, proper GET
endpoints are introduced, and updating resources are now done via POST -
it might be improved by introducing other type of REST methods.
I know this sucks as completely breaks backward compatibility, however
it'll probably make it easier to maintain and build on top of in the
long run.
* Use DELETE method to unconfigure an indexer
* Remove debugging format from NLog
* Fixing an null exception
* Properly implementing IExceptionFilter interface
* Enable adding public indexers without configuration
* Fix missing manual search results
* Basic modularization of the JS API
* Introduce API versioning
* Fix redirects to the dashboard
* Cleaning up a little bit
* Revamping Torznab and Potato as well
* Move preconditions to FilterAttributes and simplify logic
* Remove legacy filtering... will move to IResultFilter
* Minor adjustment on results interface
* Use Interpolated strings in ResultsController
* DTO-ify
* Remove fallback logic from potato results
* DTO everywhere!!!
* DTO-ify everything!
* I hope this is my last piece of modification to this PR
* Remove test variables...
* Left out a couple conflicts... It's late
AnimeTosho failed to populate the Origin field of the results when
searching thereby creating an issue upon creating the proxy link. This
was mainly because an IEnumerable can contain a deferred LINQ query as
well (e.g. in the case of AnimeTosho a Select) that will re-execute
every single time. So when iterating over IEnumerables we cannot really
pose any assumption on what we are dealing with, so either explicitly
force an execution (e.g. via ToList), or use LINQ queries as well. Since
the second is probably more performant, let's stick with that.
To get a larger number of results, users should increase the number on the website, similar to how it's implemented for TorrentLeech. Since TorrentBytes can be slow at times, making one large request will not be that much slower from one small request, but will nearly half the time taken compared to two smaller requests.
You can now pass a parameter to the dashboard which will immediately pop
the search box and start searching for the results.
This should be what #1345 and #1577 wants, or at least a basic version
of it.
* Update KAT definition for real login test
* Add error handling to KAT definition's login
* Even better error handling...
Sorry for the inelegant successive commits
* Add better test behaviour for KAT
Added some logic so tests return results. Previously did a search with an empty string which would return no results. NB : it does test with "torrents.php?search=%22%22" but that's not an issue, the parameter is ignored on that page.
* New definition for indexer "B2S-Share"
I made a new definition for this indexer.
B2S-Share is a general Brazilian tracker.
This tracker does not support multiple category search, so i left it searching in all categories.
* Update README.md
Added B2S-Share to the private tracker list.
* New definition for indexer "Manicomio Share"
I made a new definition for this indexer.
Manicomio Share is a general Brazilian tracker.
A few known issues:
1 - The tracker does not show the "release date" unless i click on another button with a "onclick="expand(584941,event)"". So i left it without date.
2 - I wasn't able to configure the "login: post" method, since there's no dedicated login page. I used Cookies instead.
* Add Manicomio Share to Private Tracker list
Add Manicomio Share to Private Tracker list
* Updated manicomioshare.yml
Updated line 229 in manicomioshare.yml so it's more flexible in case the URL changes. (Thanks kaso17)
* Tracker doesn't support multiple categories search
Tracker doesn't support multiple categories search, removed the "range .Categories" line
* Line endings...
* Remove Autofac and all its shenanigans from IndexerManager
I'm starting my warpath against Autofac. For the next couple PRs I want
to focus on refactoring things rather than creating new things. This
includes introducing LINQ extensions wherever possible as well as
removing Autofac/Automapper dependencies in classes (or any other
dependency, there's a great chance that most of the classes that use
Jackett.Services wouldn't need so many of them). All this is order to
boost performance and eventually reach testability. Can't stop, won't
stop.
* Remove unnecessary extension
* Modify test project
* As per @kaso17, iterating through iterator types rather than allocating them manually
* Cleaning up a little
* Adjusting interface in tests
* Line endings...
* Encoding Encoding in a reasonable way
Sadly Encoding contains a self-reference somewhere, which makes it
really hard for the json serializer to automatically encode it...
Probably there's no value in sending it over especially since no one is
using it, however just for the sake of the argument, let's just
serialize it in a reasonable way. Maybe someday there will be someone
expecting this. Or we clearly separate DTOs and models...
- FixesJackett/Jackett#1532
- FixesJackett/Jackett#1539
* Seriously... Please port this to dotnet Core so that I can use something other than @drunkvs on my MacBook
* Fix autofac registration after merge
* "Implement" new function of interface in test project
It's quite hard to encapsulate something this large. This refactor
contains multiple attacks on the current architecture and is changing
things that were probably created quite a while back then. Luckily this
was done in increments so it mustn't be that impossible to recall what
has been done. I just need to relax my memory a little bit.
So the basic idea was quite simple. Let's distingush metas and normal
indexers a little bit more. Both of them were originating from
BaseIndexer, however very little of the functionality was actually
shared between them. Actually quite a few things made it even harder to
implement a different kind of indexer, especially for a newcomer for
both Jackett and C#.
Then in order to further reduce whatever was encapsulated in
any kind of, a couple things had to be changed. Like CardigannIndexer,
which probably had quite a mindshift change. IndexerManager and the
configuration management were also encapsulated and refactored, and now
I have a feeling that although the code could be improved, at least the
responsibilities of services and what they actually do is now clearer.
Anyhow, it would be safe to assume that I will not be able to go
step-by-step and define everything that has been changed. I'm sorry.
* Line endings...
* Improve download handling of torrents in metas
Until now, downloads were handled by metas, however they had to "guess"
which indexer the result was originating from and resolve to that
indexer. While this has been working without an issue, it really
shouldn't be considered stable.
Therefore indexers now link themselves to the results they provide. In
order to keep my sanity and automate this as much as possible, I had to
slightly modify the interface (sorry, everyone).
* Line endings...
* Integrating OMDB into Potato results
Now PotatoController will actually produce results
* VS complains it could be simplified, yet AppVeyor cannot do anything with it...
* How come only Appveyor unveils this error? @drunkvs
* Line endings...
* Refactoring how MetaIndexers handle fallbacks
Originally this modification was part of a much larger refactoring,
however for the sake of reviewability I split it into smaller chunks.
Sadly it is still quite large.
I wanted to split it even more, however after a certain point there was
really no value in creating smaller chunks. The biggest part of this
modification would be still huge.
So all in all, there're 3 aspects of this modification
- It modifies BaseIndexer so that it now implements IIndexer (will be
very useful later on)
- Resolving most of the warnings currently in Jackett (the only ones
remaining are related to Autofac, however if I could I would just burn
Autofac altogether rather than fix the warnings. Will open discussion on
this.)
- Biggest part: refactoring how MetaIndexers handle fallbacks and how
they provide the final result set
MetaIndexers now accept any kind of fallback and filtering mechanism
that implements the necessary interface, so that in the future IMDB
fallback and filtering won't be the only one. I know there are not a lot
of unit tests around Jackett at the moment, however this renders the
class much more unittestable as well.
* Integrate OMDB API for the fallback option
* Safeguarding when no API key is specified
* Autofac started complaining... I don't understand...
* How did that not make the previous commit?
* Line endings...
* Refactoring how MetaIndexers handle fallbacks
Originally this modification was part of a much larger refactoring,
however for the sake of reviewability I split it into smaller chunks.
Sadly it is still quite large.
I wanted to split it even more, however after a certain point there was
really no value in creating smaller chunks. The biggest part of this
modification would be still huge.
So all in all, there're 3 aspects of this modification
- It modifies BaseIndexer so that it now implements IIndexer (will be
very useful later on)
- Resolving most of the warnings currently in Jackett (the only ones
remaining are related to Autofac, however if I could I would just burn
Autofac altogether rather than fix the warnings. Will open discussion on
this.)
- Biggest part: refactoring how MetaIndexers handle fallbacks and how
they provide the final result set
MetaIndexers now accept any kind of fallback and filtering mechanism
that implements the necessary interface, so that in the future IMDB
fallback and filtering won't be the only one. I know there are not a lot
of unit tests around Jackett at the moment, however this renders the
class much more unittestable as well.
* Autofac started complaining... I don't understand...
* Line endings...
* Fixes an issue when the aggregate doesn't require fallback
Apparently operating on null with LINQ is not safe :)
- This fixesJackett/Jackett#1471
* Line endings...
* Add fallback query for meta indexers
In cases where multiple indexers are configured under one
metaindexer if any of them supports IMDB search the meta
will support IMDB search as well. However the actual query will
then only be performed by those supporting IMDB search, because
others refuse it (see CanHandleQuery implementation).
- This adds support of a fallback mechanism for other indexers
- Adds first implementation of result improvement (necessary for
fallback queries as they might produce irrelevant results)
- Some minor fixes encountered while debugging/coding
Known issue:
- Configuring nCore and IsoHunt together will render results
from nCore unusuable. Don't know why.
* Fix date parsing
* Use http link instead of https
* Site doesn't load properly over https because not all page resources
are serviced via https links.
* Checking capabilities before executing a query
* Introduce base class for meta indexers
* Build fix - I seriously do not know how I missed that
* Moving things to the appropriate place
* Simplifying things as much as possible and moving once again
* Build fix?
@kaso17 FYI I found out today that anidex does not always have a magnet link corresponding to returned search results. As a result it is more reliable to use the torrent link instead of the magnet link that my definition currently uses. To do this one just needs to change the download selector from `td:nth-child(6) > a` to `td:nth-child(5) > a`.
* Update README with more details OS X instructions
- Adds detailed instructions on syncing ca certs and avoiding SIP issues
outlned in https://github.com/Jackett/Jackett/issues/1179
* Move ubuntu instructions to linux section
* Removed Nyaa.se due to its closure, added Nyaa mirro Nyaa-Pantsu to replace it
* VS15 project file so that the filelist is correct
* Adding Nyoo support
* Adding Nyoo support
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* iloveclassics - the date is not within td:nth-child(2) div, but rather just td:nth-child(2), so remove the div
bigtorrent - grabs and files data are not displayed in the grid. Seeders and leechers data was off by a column
* Add ThePlace / TheVault / TheShow / TheOccult / TheGeeks (#1302)
* Change SceneFZ domain (#1306)
* Add tracker SportHD
* Improving Torznab compatibility in AggregateIndexer
The indexer was not correctly reporting the Torznab capabilities
it provided. Basically it only reported a default number of
caps instead of combining all the caps of all the configured
indexers. This lead to an issue with external components
(e.g. Radarr) which rendered the Aggregate feed unusable in
certain situations.
- Correctly reports capabilities based on configured indexers
* Fixes incorrect internal state of configured indexers
When adding/deleting configured indexers the aggregate
was never updated leaving out possible search results.
- Introduce reconfiguring of the Aggregate upon addition/deletion
of an indexer
- Fixing an internal state issue of the indexers reporting
themselves as unconfigured after addition
* Removing obsolete call (thanks @kaso17)
This patch improves the general stability of the aggregate.
- Result is generated even if some trackers failed to answer
or some other issue were encountered
- FixesJackett/Jackett#1316
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* iloveclassics - the date is not within td:nth-child(2) div, but rather just td:nth-child(2), so remove the div
bigtorrent - grabs and files data are not displayed in the grid. Seeders and leechers data was off by a column
* Add ThePlace / TheVault / TheShow / TheOccult / TheGeeks (#1302)
* Change SceneFZ domain (#1306)
* Add tracker SportsCult
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* iloveclassics - the date is not within td:nth-child(2) div, but rather just td:nth-child(2), so remove the div
bigtorrent - grabs and files data are not displayed in the grid. Seeders and leechers data was off by a column
* Add ThePlace / TheVault / TheShow / TheOccult / TheGeeks (#1302)
* Change SceneFZ domain (#1306)
* Change TransmitheNet to Nebulance
* Adding an aggregate torznab feed for all configured trackers
This adds just a basic first implementation of a special
torznab feed that will make all configured trackers available
with all the supported query params.
- This should close#1247
- This also contributes to #921
* Adding missing file
* Add missing implementation from Test project
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* iloveclassics - the date is not within td:nth-child(2) div, but rather just td:nth-child(2), so remove the div
bigtorrent - grabs and files data are not displayed in the grid. Seeders and leechers data was off by a column
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* Add tracker Tasmanit
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* Replace chinese date characters with English characters
* cinematik already has “ago” at the end of the dates. Add in div.addedtor to select the actual element the date is in.
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* Replace chinese date characters with English characters
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* KG improvements.
Fixed 1) and 2) for #1241
* Add Torrent9
* Add tracker HDChina
* Fix searching by category for TPB. This also fixes having Jackett fail when pressing the Test button for TPB.
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* KG improvements.
Fixed 1) and 2) for #1241
* Add Torrent9
* Add tracker HDChina
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* KG improvements.
Fixed 1) and 2) for #1241
* Add Torrent9
* add
* Add 3D Torrents
* Accidently commited an old version of the 3dtorrents yaml file
* Allow searching by categories for TPB
* add
* add
* Fix error when pressing the Test button for TPB. This will remove searching by category for the time being.
* Change HDPter to Ourbits
* KG improvements.
Fixed 1) and 2) for #1241
* T411 proper handling of media categories
Before only TV Series were supported, the T411 indexer should now behave much better for specific content (TV Animation Series, TV Series, Movies, eBook...)
* Corrected possible nullref
* Fixed List constructor size parameter
* Add tracker Cinematik
* Add support for Cinemageddon
* Add support for karagarga
* Add support for Classix
* Fix KG to not show the subtitles output in the name column
Fix HD-Bits.com to change the name from “HDBC” to “HDBitscom”. The current parser must not allow for punctuation so instead of “HD-Bits.com”, I had to do “HDBitscom”. Also, remove “Freeleech!” from the description of the torrent name
* Update karagarga.yml
attempt to fix date parsing
* Update hdbc.yml
**Please use the search bar** at the top of the page and make sure you are not creating an already submitted issue. Duplicating issues makes it more difficult for everyone to follow. Your issue may have already been solved in the past as well.
Provide a description of the feature request or bug, the more details the better.
If you are experiencing an issue with a tracker, a **full log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
If you are experiencing an issue with a tracker, a **full enhanced log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
This issue looks similar to #{{ chosenIssue.number }}.
To prevent issue tracker clutter, this issue will now be closed. If you feel this issue isn't a duplicate of #{{ chosenIssue.number }}, then feel free to post a comment on this issue stating why it's not a duplicate. Your comment will automatically re-open this issue.
You've created an issue, but haven't provided any details to allow the community to assist you. To prevent issue tracker clutter, this issue will now be closed. Please provide the information needed below and your comment will automatically re-open this issue.
Provide a description of the feature request or bug, the more details the better.
If you are experiencing an issue with a tracker, a **full enhanced log must be included**. Instructions for obtaining logs are here: https://github.com/Jackett/Jackett#troubleshooting
No response has been received for {{ days }} days. To prevent issue tracker clutter, this issue will now be closed. To re-open the issue, please provide the information requested and the issue will automatically re-open.
This project is a new fork and is recruiting development help. If you are able to help out please contact us.
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar](https://github.com/evilhero/mylar), etc) into tracker-site-specific http queries, parses the html response, then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
Developer note: The software implements the [Torznab](https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with [nZEDb](https://github.com/nZEDb/nZEDb/blob/dev/docs/newznab_api_specification.txt) category numbering) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
#### Supported Systems
* Windows using .NET 4.5
* Linux and OSX using Mono 4 (With v3 you'll experience crashes).
#### Supported Private Trackers
* 2 Fast 4 You
*7tor
* Abnormal
* AlphaRatio
* AlphaReign
* Andraste
*AnimeBytes
*AnimeTorrents
*AOX
*Apollo (XANAX)
*Avistaz
*BakaBT
*bB
*Best Friends
*BeyondHD
*Bit-City Reloaded
*BIT-HDTV
*BitHQ
*BitHUmen
*BitMeTV
*BitSoup
*Bitspyder
*Blu-bits
*BlueBird
*BTN
*CHDBits
*CinemaZ
*DanishBits
*DataScene
*Demonoid
*DigitalHive
*Dream Team
*EoT-Forum
*eStone
*Ethor.net (Thor's Land)
*EZTV
*FANO.IN
*FileList
*Freedom-HD
*Freshon
*FunFile
*FunkyTorrents
*Fuzer
*Ghost City
*GimmePeers
*GODS
*Gormogon
* Hardbay
* HD4Free
*HD-Space
*HD-Torrents
*HDClub
*HDSky
*Hebits
*Hon3y HD
*Hounddawgs
*House-of-Torrents
*Hyperay
*ICE Torrent
*Immortalseed
*Infinity-T
*IPTorrents
*Isohunt
*JPopsuki
*LimeTorrents
*LinkoManija
*M-Team - TP
*Magico
*Mononoké-BT
* MoreThanTV
* MyAnonamouse
*myAmity
*MySpleen
*Nachtwerk
*NCore
*NetHD
*New Real World
*NextGen
*Norbits
*nostream
*notwhat.cd
*PassTheHeadphones
*PassThePopcorn
*PirateTheNet
*Pretome
*PrivateHD
*QcTorrent
*RapideTracker
*RevolutionTT
*KickAssTorrent
*Rockhard Lossless
*RuTracker
*SceneAccess
*SceneFZ
*SceneTime
*SDBits
*Secret Cinema
*Shareisland
*ShareSpaceDB
*Shazbat
*Shellife
*Sky torrents
*SpeedCD
*Superbits
*The Horror Charnel
*The New Retro
*The Pirate Bay
*The Shinning
*TehConnection
*TenYardTracker
*Torrent Network
*Torrent Sector Crew
*Torrent411
*TorrentBD
*TorrentBytes
*TorrentDay
*TorrentHeaven
*Torrenting
*TorrentLeech
*Torrents.Md
*TorrentShack
*Torrent-Syndikat
*ToTheGlory
*TranceTraffic
*TransmitheNet
*TV Chaos UK
*TV-Vault
*u-Torrent
*UHDBits
*ULTRAHDCLUB
*World-In-HD
*WorldOfP2P
*x264
*XSpeeds
*Xthor
*Xtreme Zone
#### Installation on Windows
We recommend you install Jackett as a Windows service using the supplied installer. You may also download the zipped version if you would like to configure everything manually.
To get started with using the installer for Jackett, follow the steps below:
1. Download the latest version of the Windows installer, "Jackett.Installer.Windows.exe" from the [releases](https://github.com/Jackett/Jackett/releases/latest) page.
2. When prompted if you would like this app to make changes to your computer, select "yes".
3. If you would like to install Jackett as a Windows Service, make sure the "Install as Windows Service" checkbox is filled.
4. Once the installation has finished, check the "Launch Jackett" box to get started.
5. Navigate your web browser to: http://127.0.0.1:9117
6. You're now ready to begin adding your trackers and using Jackett.
When installed as a service the tray icon acts as a way to open/start/stop Jackett. If you opted to not install it as a service then Jackett will run its web server from the tray tool.
Jackett can also be run from the command line if you would like to see log messages (Ensure the server isn't already running from the tray/service). This can be done by using "JackettConsole.exe" (for Command Prompt), found in the Jackett data folder: "%ProgramData%\Jackett".
#### Installation on Linux/OSX
1. Install [Mono 4](http://www.mono-project.com/download/) or better
* Follow the instructions on the mono website and install the `mono-devel` package.
* On Red Hat/CentOS/openSUSE the `mono-locale-extras` package is also required
2. Install libcurl:
* Debian/Ubunutu: `apt-get install libcurl-dev`
* Redhat/Fedora: `yum install libcurl-devel`
* For other distros see the [Curl docs](http://curl.haxx.se/dlwiz/?type=devel).
3. Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases) and run Jackett using mono with the command `mono JackettConsole.exe`.
Detailed instructions for [Ubuntu 14.x](http://www.htpcguides.com/install-jackett-on-ubuntu-14-x-for-custom-torrents-in-sonarr/) and [Ubuntu 15.x](http://www.htpcguides.com/install-jackett-ubuntu-15-x-for-custom-torrents-in-sonarr/)
#### Installation using Docker
Detailed instructions are available at [LinuxServer.io Jackett Docker](https://hub.docker.com/r/linuxserver/jackett/). The Jackett Docker is highly recommended, especially if you are having Mono stability issues or having issues running Mono on your system eg. QNAP, Synology. Thanks to [LinuxServer.io](https://linuxserver.io)
#### Installation on Synology
Jackett is available as beta package from [SynoCommuniy](https://synocommunity.com/)
#### Troubleshooting
*Command line switches
You can pass various options when running via the command line, see --help for details.
*Unable to connect to certain trackers on Linux
Try running with the "--SSLFix true" if you are on Redhat/Fedora/NNS based libcurl. If the tracker is currently configured try removing it and adding it again. Alternatively try running with a different client via --UseClient (Warning: safecurl just executes curl and your details may be seen from the process list). You can also try running with the "--IgnoreSslErrors true" option which is useful if the site has an invalid SSL certificate.
* Enable logging
You can get additional logging with the switches "-t -l". Please post logs if you are unable to resolve your issue with these switches ensuring to remove your username/password/cookies.
#### Creating an issue
Please supply as much information about the problem you are experiencing as possible. Your issue has a much greater chance of being resolved if logs are supplied so that we can see what is going on. Creating an issue with '### isn't working' doesn't help anyone to fix the problem.
### Contributing
All contributions are welcome just send a pull request. Jackett's framework allows our team (and any other volunteering dev) to implement new trackers in an hour or two. If you'd like support for a new tracker but are not a developer then feel free to leave a request on the [issues page](https://github.com/Jackett/Jackett/issues). It is recommended to use Visual studio 2015 when making code changes in this project.
This project is a new fork and is recruiting development help. If you are able to help out please contact us.
Jackett works as a proxy server: it translates queries from apps ([Sonarr](https://github.com/Sonarr/Sonarr), [Radarr](https://github.com/Radarr/Radarr), [SickRage](https://sickrage.github.io/), [CouchPotato](https://couchpota.to/), [Mylar](https://github.com/evilhero/mylar), [DuckieTV](https://github.com/SchizoDuckie/DuckieTV), etc) into tracker-site-specific http queries, parses the html response, then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic - removing the burden from other apps.
Developer note: The software implements the [Torznab](https://github.com/Sonarr/Sonarr/wiki/Implementing-a-Torznab-indexer) (with [nZEDb](https://github.com/nZEDb/nZEDb/blob/dev/docs/newznab_api_specification.txt) category numbering) and [TorrentPotato](https://github.com/RuudBurger/CouchPotatoServer/wiki/Couchpotato-torrent-provider) APIs.
#### Supported Systems
* Windows using .NET 4.6.1 or above [Download here](https://www.microsoft.com/net/framework/versions/net461).
* Linux and macOS using Mono 5.8 or above. [Download here](http://www.mono-project.com/download/).
### Supported Public Trackers
*1337x
* Anidex
* Anime Tosho
* AniRena
* AudioBookBay
*btbit
*BTDB
*BT-Scene
*cpasbien
*ETTV
*ExtraTorrent.ag
*ExtraTorrentClone
*EZTV
*Frozen Layer
*GkTorrent
*Horrible Subs
*IdopeClone
*Il Corsaro Nero <!-- maintained by bonny1992 -->
*Il Corsaro Blu
*Isohunt2
*KATcrs
*KickAssTorrent
*KickAssTorrent (thekat.se clone)
*LimeTorrents
*MagnetDL
*MejorTorrent <!-- maintained by ivandelabeldad -->
Trackers marked with [![(invite needed)][inviteneeded]](#) have no active maintainer and are missing features or are broken. If you have an invite for them please send it to kaso1717 -at- gmail.com to get them fixed/improved.
### Aggregate indexers
A special "all" indexer is available at `/api/v2.0/indexers/all/results/torznab/api`.
It will query all configured indexers and return the combined results.
To get all Jackett indexers including their capabilities you can use `t=indexers` on the all indexer. To get only configured/unconfigured indexers you can also add `configured=true/false` as query parameter.
## Installation on Windows
We recommend you install Jackett as a Windows service using the supplied installer. You may also download the zipped version if you would like to configure everything manually.
To get started with using the installer for Jackett, follow the steps below:
1. Download the latest version of the Windows installer, "Jackett.Installer.Windows.exe" from the [releases](https://github.com/Jackett/Jackett/releases/latest) page.
2. When prompted if you would like this app to make changes to your computer, select "yes".
3. If you would like to install Jackett as a Windows Service, make sure the "Install as Windows Service" checkbox is filled.
4. Once the installation has finished, check the "Launch Jackett" box to get started.
5. Navigate your web browser to: http://127.0.0.1:9117
6. You're now ready to begin adding your trackers and using Jackett.
When installed as a service the tray icon acts as a way to open/start/stop Jackett. If you opted to not install it as a service then Jackett will run its web server from the tray tool.
Jackett can also be run from the command line if you would like to see log messages (Ensure the server isn't already running from the tray/service). This can be done by using "JackettConsole.exe" (for Command Prompt), found in the Jackett data folder: "%ProgramData%\Jackett".
## Installation on Linux
1. Install [Mono 5.8](http://www.mono-project.com/download/#download-lin) or better (using the latest stable release is recommended)
* Follow the instructions on the mono website and install the `mono-devel` and the `ca-certificates-mono` packages.
* On Red Hat/CentOS/openSUSE/Fedora the `mono-locale-extras` package is also required.
* For other distros see the [Curl docs](http://curl.haxx.se/dlwiz/?type=devel).
3. Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases) and run Jackett using mono with the command `mono --debug JackettConsole.exe`.
Detailed instructions for [Ubuntu 14.x](http://www.htpcguides.com/install-jackett-on-ubuntu-14-x-for-custom-torrents-in-sonarr/) and [Ubuntu 15.x](http://www.htpcguides.com/install-jackett-ubuntu-15-x-for-custom-torrents-in-sonarr/)
If you want to run it with a user without a /home directory you need to add `Environment=XDG_CONFIG_HOME=/path/to/folder` to your systemd file, this folder will be used to store your config files.
Mono must be compiled with the Roslyn compiler (default), using MCS will cause "An error has occurred." errors (See https://github.com/Jackett/Jackett/issues/2704).
### Installation on Linux via Ansible
On a RHEL/Centos 7 system: [linuxhq.jackett](https://galaxy.ansible.com/linuxhq/jackett)
On an Ubuntu 16 system: [chrisjohnson00.jackett](https://galaxy.ansible.com/chrisjohnson00/jackett)
## Installation on macOS
### Prerequisites
Install [Mono 5.8](http://www.mono-project.com/download/#download-mac) or better (using the latest pkg installer is recommended).
* Setup ssl support by running `curl -sS https://curl.haxx.se/ca/cacert.pem | cert-sync --user /dev/stdin`
### Install as service
1. Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases).
2. Open the extracted folder and double-click on `install_service_macos`.
3. If the installation was a success, you can close the Terminal window.
The service will start on each logon. You can always stop it by running `launchctl unload ~/Library/LaunchAgents/org.user.Jackett.plist` from Terminal. You can start it again it using `launchctl load ~/Library/LaunchAgents/org.user.Jackett.plist`.
Logs are stored as usual under `~/.config/Jackett/log.txt`.
### Run without installing as a service
Download and extract the latest `Jackett.Binaries.Mono.tar.gz` release from the [releases page](https://github.com/Jackett/Jackett/releases) and run Jackett using mono with the command `mono --debug JackettConsole.exe`.
## Installation using Docker
Detailed instructions are available at [LinuxServer.io Jackett Docker](https://hub.docker.com/r/linuxserver/jackett/). The Jackett Docker is highly recommended, especially if you are having Mono stability issues or having issues running Mono on your system eg. QNAP, Synology. Thanks to [LinuxServer.io](https://linuxserver.io)
## Installation on Synology
Jackett is available as beta package from [SynoCommunity](https://synocommunity.com/)
## Running Jackett behind a reverse proxy
When running jackett behind a reverse proxy make sure that the original hostname of the request is passed to Jackett. If HTTPS is used also set the X-Forwarded-Proto header to "https". Don't forget to adjust the "Base Path Override" Jackett option accordingly.
Example config for apache:
```
<Location /jackett>
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto expr=%{REQUEST_SCHEME}
You can pass various options when running via the command line, see --help for details.
* __Error "The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel."__
This is often caused by missing CA certificates.
Try reimporting the certificates in this case:
- On Linux (as user root): `wget -O - https://curl.haxx.se/ca/cacert.pem | cert-sync /dev/stdin`
- On macOS: `curl -sS https://curl.haxx.se/ca/cacert.pem | cert-sync --user /dev/stdin`
*__Enable enhanced logging__
You can get *enhanced* logging with the command line switches `-t -l` or by enabling `Enhanced logging` via the web interface (followed by clicking on the `Apply Server Settings` button).
Please post logs if you are unable to resolve your issue with these switches ensuring to remove your username/password/cookies.
The logfiles (log.txt/updater.txt) are stored in `%ProgramData%\Jackett` on Windows and `~/.config/Jackett/` on Linux/macOS.
## Configuring OMDb
This feature is used as a fallback to get the movie/series title if only the IMDB ID is provided in the request.
To use it, please just request a free API key on [OMDb](http://www.omdbapi.com/apikey.aspx) (1,000 daily requests limit) and paste the key in Jackett
## Creating an issue
Please supply as much information about the problem you are experiencing as possible. Your issue has a much greater chance of being resolved if logs are supplied so that we can see what is going on. Creating an issue with '### isn't working' doesn't help anyone to fix the problem.
## Contributing
All contributions are welcome just send a pull request. Jackett's framework allows our team (and any other volunteering dev) to implement new trackers in an hour or two. If you'd like support for a new tracker but are not a developer then feel free to leave a request on the [issues page](https://github.com/Jackett/Jackett/issues). It is recommended to use Visual Studio 2017 when making code changes in this project. You can download the community version for free [here](https://www.visualstudio.com/downloads/).
## Building from source
### Windows
* Install the .NET Core [SDK](https://www.microsoft.com/net/download/windows)
* Open the Jackett solution in Visual Studio 2017 (version 15.7 or above)
* Right click on the Jackett solution and click 'Rebuild Solution' to restore nuget packages
* Select Jackett.Server as startup project
* In the drop down menu of the run button select "Jackett.Server" instead of "IIS Express"
NOTE: if you get the error "NU1102: Unable to find package Microsoft.AspNetCore with version (>= 2.1.2)" while restoring packages, you'll need to install it manually.https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.302-macos-x64-installer then delete the entire project directory and restart from a new clone
//There is an issue with Mono 5.8 (fixed in Mono 5.12) where its expecting to use its own patched version of System.Net.Http.dll, instead of the version supplied in folder
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.