diff --git a/README.md b/README.md index cf807e8c6..b2047d564 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ 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. +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. @@ -25,6 +25,7 @@ Developer note: The software implements the [Torznab](https://github.com/Sonarr/ * Anidex * Anime Tosho * AniRena + * btbit * BTDB * cpasbien * EZTV diff --git a/src/Jackett/Definitions/btbit.yml b/src/Jackett/Definitions/btbit.yml new file mode 100644 index 000000000..bbc1eb788 --- /dev/null +++ b/src/Jackett/Definitions/btbit.yml @@ -0,0 +1,58 @@ +--- + site: btbit + name: btbit + description: "btbit is a public magnet search engine for MOVIES / GENERAL. This definition is for the English site." + language: en-us + type: public + encoding: UTF-8 + links: + - http://en.btbit.org/ + + caps: + categories: + "Movie": Movies + "Package": PC/0day + "Other": Other + "Software": PC + "Mirror": PC/ISO + "Music": Audio + "Picture": Other/Misc + "Document": Books + + modes: + search: [q] + tv-search: [q, season, ep] + movie-search: [q] + + settings: [] + + search: + path: "list/{{if .Keywords}}{{.Keywords}}{{else}}movie{{end}}.html" + rows: + selector: .rs + fields: + title: + selector: .title + category: + selector: .sbar span[class^="cpill"] + details: + selector: .title h3 a + attribute: href + download: + selector: .sbar a[href^="magnet:?xt"] + attribute: href + date: + selector: .sbar span:nth-of-type(3) b + filters: + - name: dateparse + args: "2006-01-02" + size: + selector: .sbar span:nth-of-type(4) b + files: + selector: .sbar span:nth-of-type(5) b + grabs: + selector: .sbar span:nth-of-type(6) b + downloadvolumefactor: + text: "0" + uploadvolumefactor: + text: "1" diff --git a/src/Jackett/Definitions/cpabien.yml b/src/Jackett/Definitions/cpabien.yml index ca87216df..1e9d9c16e 100644 --- a/src/Jackett/Definitions/cpabien.yml +++ b/src/Jackett/Definitions/cpabien.yml @@ -6,7 +6,10 @@ type: public encoding: UTF-8 links: + - http://cpabien.org/ + legacylinks: - http://cpabien.cc/ + - http://cpabien.co/ caps: categorymappings: diff --git a/src/Jackett/Definitions/gktorrent.yml b/src/Jackett/Definitions/gktorrent.yml index 12e3d60ca..30c2b1efd 100644 --- a/src/Jackett/Definitions/gktorrent.yml +++ b/src/Jackett/Definitions/gktorrent.yml @@ -28,7 +28,7 @@ selector: a[href^="/get_torrent/"] search: - path: "/search/{{ .Query.Keywords }}" + path: "{{if .Keywords}}/recherche/{{.Keywords}}{{else}}{{end}}" rows: selector: div.listing-torrent > table > tbody > tr:has(a) fields: @@ -70,9 +70,11 @@ category: selector: td:nth-child(1) > i case: - .Movies: "movies" - .TV: "tvshows" - .Softwares: "softwares" - .Music: "music" - .Games: "games" - .Books: "books" + .Films: "movies" + .Séries: "tvshows" + .Logiciels: "softwares" + .Musiques: "music" + .Jeux: "games" + .Ebooks: "books" + date: + text: "now" diff --git a/src/Jackett/Definitions/nexttorrent.yml b/src/Jackett/Definitions/nexttorrent.yml index 42c68e785..77cab0af7 100755 --- a/src/Jackett/Definitions/nexttorrent.yml +++ b/src/Jackett/Definitions/nexttorrent.yml @@ -6,6 +6,8 @@ type: public encoding: UTF-8 links: + - https://www.nextorrent.cc/ + legacylinks: - https://www.nextorrent.org/ caps: diff --git a/src/Jackett/Definitions/t411v2.yml b/src/Jackett/Definitions/t411v2.yml index 3fa44e364..ead4115b5 100755 --- a/src/Jackett/Definitions/t411v2.yml +++ b/src/Jackett/Definitions/t411v2.yml @@ -47,6 +47,8 @@ title: selector: td.m-name > a filters: + - name: replace # Fix Grey's Anatomy results + args: ["Greys Anatomy", "Grey's Anatomy"] # now we put the date at the right place according scene # naming rules using .Result.site_date - name: replace diff --git a/src/Jackett/Definitions/torrent9.yml b/src/Jackett/Definitions/torrent9.yml index e8c952bf9..3071b2f8e 100644 --- a/src/Jackett/Definitions/torrent9.yml +++ b/src/Jackett/Definitions/torrent9.yml @@ -6,9 +6,10 @@ type: public encoding: UTF-8 links: - - http://www.torrent9.pe/ + - http://www.torrents9.pe/ legacylinks: - http://www.torrent9.cc/ + - http://www.torrent9.pe/ caps: categorymappings: diff --git a/src/Jackett/Services/IndexerManagerService.cs b/src/Jackett/Services/IndexerManagerService.cs index 8112c4141..9c502ad9c 100644 --- a/src/Jackett/Services/IndexerManagerService.cs +++ b/src/Jackett/Services/IndexerManagerService.cs @@ -204,7 +204,13 @@ namespace Jackett.Services public IWebIndexer GetWebIndexer(string name) { if (indexers.ContainsKey(name)) + { return indexers[name] as IWebIndexer; + } + else if (name == "all") + { + return aggregateIndexer as IWebIndexer; + } logger.Error("Request for unknown indexer: " + name); throw new Exception("Unknown indexer: " + name);