we-get: command-line tool for searching torrents.
Contents
1 Installation
run from the root folder
$ # pip3 user install under $HOME/.local/bin
$ # install the build PEP517
$ pip3 install --user build
$ # build from sources
$ python3 -m build .
$ pip3 install --user dist/we-get.tar.gz
$ # run
$ we-get
or with pip
# using a pip version > 10 that supports installation from pyproject.toml
$ pip3 install --user pip
$ pip3 install https://github.com/rachmadaniHaryono/we-get/archive/refs/tags/1.1.5.tar.gz
$ # or use --user flag to install in your home directory
$ pip3 install --user https://github.com/rachmadaniHaryono/we-get/archive/refs/tags/1.1.5.tar.gz
$ # or install from master branch directly
$ pip3 install --user https://github.com/rachmadaniHaryono/we-get/archive/refs/heads/master.zip
$ # or alternative installation method
$ pip3 install --user git+https://github.com/rachmadaniHaryono/we-get.git
2 Dependencies
and Python 3.6.2 or above
3 Basic Usage
$ we-get --search "royal pains" --target the_pirate_bay,1337x --filter "S01"
3.1 General options
-h --help | Help message. |
-v --version | Show version. |
3.2 Options
-s --search=<text> | Search for a torrent. |
-l --list | List top torrents from modules. |
-t --target=<target> | Select module to use or 'all' [default: all]. |
-L --links | Output results as links. |
-J --json | Output results in JSON format. |
-G --get-list | List targets (supported web-sites). |
-f --filter=<str> | Match text or regular expression in the torrent name. |
-n --results=<n> | Number of results to retrieve. |
-S --sort-type=<type> | Sort torrents by name/seeds [default: seeds]. |
-c --config=<file> | Load config file. |
-w --sfw | Restrict results to safe for work content (the_pirate_bay only) |
3.3 Video options
-q --quality=<q> | Try to match quality for the torrent (720p,1080p, ...). |
-g --genre=<g> | Try to select video genre for the torrent (action, comedy, etc..). |
See also we-get --help
.
3.4 Python Module
>>> from we_get.core.we_get import WG
>>> we_get = WG()
>>> we_get.parse_arguments(['--search', 'ubuntu', '--target', 'all'])
>>> res = we_get.start(api_mode=True)
OrderedDict([
(
'Ubuntu.MATE.16.04.2.[MATE][armhf][img.xz][Uzerus]', {
'seeds': '260',
'leeches': '2',
'link':
'magnet:?xt=urn:btih:D0F23C109D8662A3FE9338F75839AF8D57E5D4A9'
'&dn=Ubuntu+MATE+16.04.2+%5BMATE%5D%5Barmhf%5D%5Bimg.xz%5D%5BUzerus%5D'
'&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80%2Fannounce'
'&tr=udp%3A%2F%2Ftracker.zer0day.to%3A1337%2Fannounce'
'&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969%2Fannounce'
'&tr=udp%3A%2F%2Fcoppersurfer.tk%3A6969%2Fannounce',
'target': '1337x'}
),
...
])
Older version can use sys.argv to input the arguments
>>> import sys
>>> from we_get.core.we_get import WG
>>> we_get = WG()
>>> sys.argv[1:] = ['--search', 'ubuntu', '--target', 'all']
>>> we_get.parse_arguments()
>>> we_get.start(api_mode=True)
...
3.5 Supported websites
- 1337x
- thepiratebay
- eztv
- yts
- limetorrents
- il corsaro nero
and the list will grow.
3.6 Contributing
Any collaboration is welcome!
If you want to write a module please see we_get/modules/
3.7 Licence
MIT: LICENSE.
4 Testing
4.1 Dependencies
- pytest
- pytest-flake8
Run tests with python -m pytest --flake8
.