aria2r

In the spirit of aria2c and aria2p, aria2r is a command line utility to add downloads to a (r)emote, or (r)unning instance of aria2.

While aria2 is a great download manager, one of its biggest drawbacks is the inability to easily add additional downloads when run as a daemon. While it is possible to add downloads through one of the several available GUIs, you are limited to adding one download at a time, and scrolling through seemingly endless options to find the ones you want to change.

The goal of aria2r is to provide a familiar interface for quickly and easily adding a single or multiple downloads to aria2 without having to restart the service. Aria2r strives to match the interface, design, and verbiage used by aria2c as much as possible.

Full documentation.

Installation

aria2r is written in Python and can be installed through pip.

pip install aria2r --user

Examples

Basic example of adding a single download to aria2 running on the same machine

aria2r "http://host/file.zip"

Download a file from 2 mirrors

aria2r "http://host/file.zip" "http://mirror/file.zip"

Add downloads to a remote server listening on a non-default port

aria2r --host 10.0.0.1 --port 8660 "http://host/file.zip"

Add multiple downloads through an aria2 input file

aria2r -i /path/to/input-file.txt

Command Line Options

usage: aria2r [-h] [-C CONFIG] [-i INPUT_FILE] [--dry-run] [--host HOST] [--port PORT] [--rpc-secret RPC_SECRET] [-v] [-q] [urls ...]

positional arguments:
  urls                  One or more urls to a file. All given urls must be mirrors to the same
                        file and be http/https protocol. Torrent, Magnet, and Metalink files are not supported.

options:
  -h, --help            show this help message and exit
  -C, --config CONFIG   config file path
  -i, --input_file INPUT_FILE
                        Path to an aria2c formatted input file
  --dry-run             Read the input file or urls and build the request, but don't send it to the
                        aria2 instance. (This takes precedence over the aria2c --dry-run option, which as been renamed to --dry-run-aria2c)
  --host HOST           The ip or fully qualified domain name where aria2 is located.
                        (Default: localhost)
  --port PORT           The port that aria2 listens on. (Default: 8600)
  --rpc-secret RPC_SECRET
                        Secret authorization token set for the aria2 rpc interface.
  -v, --verbose         Increase level of output.
  -q, --quiet           Decrease level of output.