An XDCC File Downloader based on the irclib framework
Project description
XDCC Downloader
master | develop |
---|---|
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea1f27f9f0d57232600eea55cdc9ab44e98ef16b7e5d5c7f535ef1520680a1d4 |
|
MD5 | 37a63b5e1a490349a4b18b2cbb94d34b |
|
BLAKE2b-256 | 3c4a38db7d921c8b6c3aa69ccd63dc6c239019c3c04e7cfc86d9dcceb69b645f |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf0a074dd503b853e65a8f4b23828601d97f5bf4770db7af4d4109ea7745a7b2 |
|
MD5 | 6ffc85cb0a9dad7969e9a4cfaddbd565 |
|
BLAKE2b-256 | 0017d0587c3a7a684b2ea3745247cf8ac772101e07c839b2e87ca1258dee777c |