Catalog PyPI
PACKAGE EXPLORERView in registry

a2rpc

PyPI

A CLI tool to interact with aria2c's RPC interface

aria2clidownloadmagnetrpctorrent
Versions collected1
Direct dependencies9From release 0.0.3
Last observed20 Oct, 16:34 UTC

README

Version 0.0.3 documentation

Aria2 RPC CLI (a2rpc)

Python Version Tests Status PyPI version fury.io

A lightweight Python CLI tool to interact with aria2c's JSON-RPC interface, designed for scripting and automation.


Features ✨

  • 📥 Download Management
    Add, pause, resume, or remove downloads via HTTP, Magnet, or torrent links.
  • 🖥️ Server Control
    Start/shutdown aria2c RPC server with custom ports and directories.
  • 📋 Batch Processing
    Queue multiple downloads from input files with per-URL options.
  • 📊 Real-Time Monitoring
    List active/waiting/stopped downloads with debug-friendly output.
  • 🔒 Secure
    Supports RPC secret tokens for authenticated access.

☕ Support

If you find this project helpful, consider supporting me:

ko-fi

Installation

Prerequisites

Via pip

pip install a2rpc

Manual

git clone https://github.com/jet-logic/a2rpc
cd a2rpc
pip install .

Usage

Basic Commands

CommandDescriptionExample
a2rpc startStart RPC servera2rpc start --port 6800
a2rpc add <URI>Add a downloada2rpc add "magnet:?xt=..." -d ~/dl
a2rpc listList downloadsa2rpc list --debug
a2rpc pause <GID>Pause a downloada2rpc pause abc123
a2rpc shutdownShutdown servera2rpc shutdown --force

Advanced: Batch Downloads

  1. Create an input file (downloads.txt):
    https://example.com/file1.iso
        dir=/mnt/downloads
    https://example.com/file2.zip
        out=backup.zip
    
  2. Run:
    a2rpc input downloads.txt
    

Configuration

Global Flags

FlagDescriptionDefault
--rpc-urlRPC server URLhttp://localhost:6800/jsonrpc
--rpc-secretAuthentication tokenNone

Example:

a2rpc --rpc-secret mytoken add "https://example.com/large-file.mp4"

Examples

1. Download with Custom Options

a2rpc add "https://ubuntu.com/24.04.iso" \
  --dir ~/Downloads \
  --out ubuntu-latest.iso \
  -s "max-connection-per-server=16"

2. Debug Active Downloads

a2rpc list --debug  # Shows detailed YAML output

3. Automate with Scripts

import subprocess
subprocess.run(["a2rpc", "add", "magnet:?xt=..."])

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.0.318 Jun 20259

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

ACCESSIBLE
jet-logic/a2rpc

Shared repository data · GitHub

License detected in repository
GPL-3.0
License branch / ref
main
Last push
18 Jun 2025
Archived
No
Contributor identities
— · partial collection

Public sponsor counts have not been collected. These signals belong to the repository owner.

Downloads & popularity

0count
Gauge · observed snapshots21 Oct 2026
10.50
2026-10-21: 0 · observed 2026-10-21T12:49:21.1620540Z
21 Oct21 Oct

github · 1 observations shown. Missing days are unknown.

View observed values
Date / source periodValueObserved at
2026-10-2102026-10-21T12:49:21.1620540Z

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 16:34 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:b8fae900b4fc46e03ab479bdf0959a5320c7a52d813adb475c267d53233e3078