pyload

The free and open-source Download Manager written in pure Python.

Status

The new pyLoad package pyload-ng is automatically deployed from the master branch of the pyLoad sources.

The old pyLoad package, compatible with Python 2 only, is still available on the stable branch.

Installation

PyPI Status
PyPI Version
PyPI Python Versions
PyPI License

To install pyLoad, type the command:

pip install pyload-ng

This will install the latest stable release of pyLoad in your system.

Note:
No stable release is available yet! :smiling_imp:

Available modules

  • pyload.webui: Web Interface.
  • pyload.plugins: collection of pyLoad plugins (officially supported).
  • pyload.core: just pyLoad.

Extra Dependencies

You can install all the recommended packages for pyLoad at once.

Append the tag extra to the installation command:

pip install pyload-ng[extra]

Available tags

  • extra: recommended extra packages.
  • build: packages required to build locales.
  • test: packages required to run tests.
  • all: all of them.

You can also use more tags together, like:

pip install pyload-ng[extra][build]

Development Releases

You can force the installation of the latest development release of pyLoad.

Append the option --pre to the installation command:

pip install --pre pyload-ng

Development release usage is not recommended. Unexpected crashes may occur.

Build Translations

Note:
You do not need to build the locale files if you have installed pyLoad through pip,
because are already included.

Use the command build_locale to retrieve and build the latest locale files (translations)
for your installation:

python setup.py build_locale

Ideally you would use it before launching any other build or installation command
(eg. bdist_wheel).

Usage

usage: pyload [-h] [--version] [-d] [--userdir USERDIR] [--cachedir CACHEDIR]
              [--daemon] [--restore]

The free and open-source Download Manager written in pure Python

optional arguments:
  -h, --help               show this help message and exit
  --version                show program's version number and exit
  -d, --debug              enable debug mode
  --userdir USERDIR        use this location to store user data files
  --cachedir CACHEDIR      use this location to store temporary files
  --storagedir STORAGEDIR  use this location to save downloads
  --daemon                 run as daemon
  --restore                reset default username/password

To start pyLoad, type the command:

pyload

This will create the following directories (if they do not already exist):

  • ~/Downloads/pyLoad: where downloads will be saved.
  • ~/pyLoad: where user data files (configurations) are stored.
  • <TMPDIR>/pyLoad: where temporary files (cache) are stored.

On Windows systems data files are saved in the directory ~\AppData\Roaming\pyLoad.

The location of <TMPDIR> is platform-specific.

Command Options

To show an overview of the available options, type:

pyload --help

Web Interface

Open your web browser and visit the url http://localhost:8001 to have access to
the pyLoad's web interface.

  • Default username: pyload.
  • Default password: pyload.

It's highly recommended to change the default access credentials after the first start.

Docker Support [experimental]

Docker Build Status
MicroBadger Layers
MicroBadger Layers
MicroBadger Size
MicroBadger Size

Available images

  • pyload/pyload:latest-ubuntu: default docker image of pyLoad.
  • pyload/pyload:latest-alpine: alternative docker image of pyLoad (smaller, maybe slower).
  • pyload/pyload: alias of pyload/pyload:latest-ubuntu.

Create Container

docker create --name=pyload -v <USERDIR>:/config -v <STORAGEDIR>:/downloads --restart unless-stopped pyload/pyload

Replace <STORAGEDIR> with the location on the host machine where you want that downloads will be saved.

Replace <USERDIR> with where you want that user data files (configurations) are stored.

Start Container

docker start pyload

Stop Container

docker stop pyload

Show Logs

docker logs -f pyload

Compose

Compatible with docker-compose v2 schemas:

---
version: 2
services:
  pyload:
    image: pyload/pyload
    container_name: pyload
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
    volumes:
      - <USERDIR>:/config
      - <STORAGEDIR>:/downloads
    ports:
      - 8001:8001
    restart: unless-stopped

Replace <STORAGEDIR> with the location on the host machine where you want that downloads will be saved.

Replace <USERDIR> with where you want that user data files (configurations) are stored.

Troubleshooting

Installation

If the installation fails due any of the listed errors,
retry applying the given solution:

pip not found

Retry replacing the command pip with pip3, like:

pip3 install pyload-ng

If still fails you may not have already installed on your system the Python interpreter
or the pip package manager.
Or maybe something else got corrupted somehow...

The easiest way to fix this error is to (re)install Python.

Visit https://www.python.org/downloads
to get the proper Python 3 release for your system.

pyload-ng not found

Check the version of the Python interpreters installed on your system.

To show the version of your default Python interpreter, type the command:

python --version

If the version is too old, try to upgrage Python, then you can retry to install pyLoad.

Python releases below version 3.6 are not supported!

Setuptools is too old

To upgrade the setuptools package, type the command:

pip install --upgrade setuptools

Permission denied

Under Unix-based systems, try to install pyLoad with root privileges.

Prefix the installation command with sudo, like:

sudo pip install pyload-ng

Under Windows systems, open a Command Prompt as administrator to install pyLoad
with root privileges.

You can also try to install the pyload-ng package without root privileges.

Append the option --user to the installation command, like:

pip install --user pyload-ng

Uninstallation

To uninstall pyLoad, type the command:

pip uninstall --yes pyload-ng

Note:
This will not remove any installed dependencies.

Permission denied

Under Unix-based systems, try to uninstall pyLoad with root privileges.

Prefix the installation command with sudo:

sudo pip uninstall --yes pyload-ng

Under Windows systems, open a Command Prompt as administrator to uninstall pyLoad
with root privileges.

GitHub