Skip to main content

An XDCC File Downloader based on the irclib framework

Project description

XDCC Downloader

master develop
build status build status

Logo

An XDCC File downloader based on the irclib framework.

Installation

Either install the program using pip install xdcc-dl or python setup.py install

Please not that python 2 is no longer supported, the project requires python 3 to run.

Usage

Message-based CLI

XDCC Packlists usually list xdcc commands in the following form:

/msg <BOTNAME> xdcc send #<PACKNUMBER>

By supplying this message as a positional parameter, the pack can be downloaded.

Examples:

# This is the xdcc message:  '/msg the_bot xdcc send #1'

# This command downloads pack 1 from the_bot
$ xdcc-dl "/msg the_bot xdcc send #1"

# It's possible to download a range of packs (1-10 in this case):
$ xdcc-dl "/msg the_bot xdcc send #1-10"

# Range stepping is also possible:
$ xdcc-dl "/msg the_bot xdcc send #1-10;2"
# (This will download packs 1,3,5,7,9)

# Explicitly specifying the packs to download as a comma-separated list:
$ xdcc-dl "/msg the_bot xdcc send #1,2,5,8"
# (This will download packs 1,2,5,8)

# you can also specify the destination file or directory:
$ xdcc-dl "/msg the_bot xdcc send #1" -o /home/user/Downloads/test.txt

# if the bot is on a different server than irc.rizon.net, a server
# has to be specified:
$ xdcc-dl "/msg the_bot xdcc send #1" --server irc.freenode.org

# To specify different levels of verbosity, pass the `--verbose` or
# `--quiet` flag
$ xdcc-dl -v ...
$ xdcc-dl -q ...

As a library:

xdcc-dl is built to be used as a library for use in other projects. To make use of the XDCC downloader in your application, you will first need to create a list of XDCCPack objects.

This can be done manually using the constructor, the XDCCPack.from_xdcc_message class method or by using an XDCC Search Engine

Once this list of XDCCPacks is created, use the download_packs function in the xdcc module.

An example on how to use the library is listed below:

from xdcc_dl.xdcc import download_packs
from xdcc_dl.pack_search import SearchEngines
from xdcc_dl.entities import XDCCPack, IrcServer

# Generate packs
manual = XDCCPack(IrcServer("irc.rizon.net"), "bot", 1)
from_message = XDCCPack.from_xdcc_message("/msg bot xdcc send #2-10")
search_results = SearchEngines.SUBSPLEASE.value.search("Test")
combined = [manual] + from_message + search_results

# Start download
download_packs(combined)

Projects using xdcc-dl

Further Information

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xdcc-dl-5.2.1.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

xdcc_dl-5.2.1-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file xdcc-dl-5.2.1.tar.gz.

File metadata

  • Download URL: xdcc-dl-5.2.1.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10

File hashes

Hashes for xdcc-dl-5.2.1.tar.gz
Algorithm Hash digest
SHA256 ea1f27f9f0d57232600eea55cdc9ab44e98ef16b7e5d5c7f535ef1520680a1d4
MD5 37a63b5e1a490349a4b18b2cbb94d34b
BLAKE2b-256 3c4a38db7d921c8b6c3aa69ccd63dc6c239019c3c04e7cfc86d9dcceb69b645f

See more details on using hashes here.

File details

Details for the file xdcc_dl-5.2.1-py3-none-any.whl.

File metadata

  • Download URL: xdcc_dl-5.2.1-py3-none-any.whl
  • Upload date:
  • Size: 44.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10

File hashes

Hashes for xdcc_dl-5.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cf0a074dd503b853e65a8f4b23828601d97f5bf4770db7af4d4109ea7745a7b2
MD5 6ffc85cb0a9dad7969e9a4cfaddbd565
BLAKE2b-256 0017d0587c3a7a684b2ea3745247cf8ac772101e07c839b2e87ca1258dee777c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page