This is a fork of qBittorrent's Nova search engine.
It has been patched to use modern requests library, add a setuptools installer for standalone usage and support both Python2 and Python3 out of the box (though this should not be relied upon).
Please note that even though this works on Python2, development will only focus on Python3.
- Install it
$ pip install nova6
-
Get some engines from qBittorrent: https://github.com/qbittorrent/search-plugins
-
Run it
$ nova6 -d search-plugins all all query
Nova6 tries to maintain command-line compatibility with nova from qBittorrent. However, in order to make it distributable and still maintain compatibility with existing plugins, I had to make some changes.
Notably, nova6
accepts one extra command line argument that nova2
does not: --engines-dir
, -d
.
This argument can be specified multiple times with a list of directories to be scanned for plugins. If none is specified, it checks for an engines
in the same directory of nova6.py
, just like qBittorrent's.
-
engines
Select the engines to be used for search, comma-separated, or "all". Use
--capabilities
to list available plugins. -
category
Select the category to be used for search, or "all". Available categories are
movies
,tv
,music
,games
,anime
,software
,pictures
andbooks
. -
keywords
Search keywords
-
--capabilities
Outputs an XML showing search engine plugins capabilities and exits immediately.
-
--engines-dir, -d
See above. Specify custom directory for engine plugins. Can be specified multiple times.
Search results are meant to be machine readable. The format is the following:
link|name|size|seeds|leech|engine_url
- link → a string corresponding the the download link (points to the .torrent file)
- name → a unicode string corresponding to the torrent's name (i.e: "Ubuntu Linux 17.04")
- size → an integer corresponding to the expected torrent size in bytes
- seeds → the number of seeds for this torrent
- leech → the number of leechers for this torrent
- engine_url → the search engine url (i.e: http://www.mininova.org)
- desc_link (optional) → if the search plugin provides it, a human-readable page describing the torrent
Outputs an XML listing all the engines found in search directories and their capabilities. For example:
<capabilities>
<myengine>
<name>My Super Torrent Engine</name>
<url>https://www.mytorrentengine.com</url>
<categories>movies anime books software games tv music</categories>
</myengine>
...
</capabilities>
Please see qBittorrent's guide.
All this code has been taken from qBittorrent. It's been adjusted by Davide Depau to make it standalone and reusable.
The license is the same as qBittorrent, GPLv2.