An asyncio-based IRC bot library.
Project description
pyrcb2 is an asyncio-based library for writing IRC bots. It is designed to be easy to use, customizable, and high-level.
pyrcb2 includes features such as account tracking, user prefix tracking (voice, op, etc.), messaging delaying to prevent throttling, and long message splitting.
pyrcb2 also makes use of asyncio and coroutines in Python. This allows you to write asynchronous code in a linear fashion—you can handle responses to commands right after you send them.
# Wait until the bot has joined #channel.
await bot.join("#channel")
print("There are", len(bot.users["#channel"]), "users in #channel.")
# Get user1's account.
result = await bot.get_account("user1")
if result.success:
account = result.value or "(no account)"
print("user1 is logged in as", account)
Installation
Install with pip:
$ pip3 install pyrcb2
Or download the source code and install with setup.py:
$ ./setup.py install
Alternatively, you can download the source code and install with pip:
$ pip3 install .
You will need to run the commands above as root if you’re installing globally. You can use the --user option to install to your home directory instead.
Documentation
Documentation for pyrcb2 is available at https://taylor.fish/pyrcb2/. If you’re new to pyrcb2, start with this guide and take a look at the examples.
Tests
To run pyrcb2’s tests, run python3 -m tests. If you have coverage installed, you can run coverage run -m tests.__main__ to get information on test coverage.
License
pyrcb2 is licensed under the GNU Lesser General Public License, version 3 or later. Some parts are released under other licenses; see the full license notice and individual files for details.
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 pyrcb2-0.6.2.tar.gz
.
File metadata
- Download URL: pyrcb2-0.6.2.tar.gz
- Upload date:
- Size: 174.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1+
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c19320e2250c35e54e4c7e848ba474dff21ba87a6be9f61a255e6668fb3ca45 |
|
MD5 | bc84c90bd4462d222aea31a7eaeec99a |
|
BLAKE2b-256 | 1a29496b5a87463cf926fe2491e4efd8fbe2165b220b9ccd587d2353c26442e9 |
File details
Details for the file pyrcb2-0.6.2-py3-none-any.whl
.
File metadata
- Download URL: pyrcb2-0.6.2-py3-none-any.whl
- Upload date:
- Size: 98.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1+
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4fc1af459261d4c7da1522b4792442303b05f895710c265cad7b94a5de294edf |
|
MD5 | 5bd761355cf6d8752919016ef54d7e81 |
|
BLAKE2b-256 | f592a0e00aa08aa76356d63de0a4eccfe7df1f63ecbccb8a531713c587328a91 |