Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Ewpratten/drbot
A Python3 library for easily building devRant bots
https://github.com/Ewpratten/drbot
devrant-bots
Last synced: 3 months ago
JSON representation
A Python3 library for easily building devRant bots
- Host: GitHub
- URL: https://github.com/Ewpratten/drbot
- Owner: ewpratten
- License: mit
- Created: 2019-07-13T15:34:39.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-08-30T17:31:17.000Z (about 5 years ago)
- Last Synced: 2024-06-23T12:40:26.085Z (5 months ago)
- Topics: devrant-bots
- Language: Python
- Size: 10.7 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-devrant - drBot - A python library and framework for building notification-based devRant bots (Uncategorized / Uncategorized)
README
# drbot
A Python3 library for easily building devRant bots## Using
To make a bot, all you need to do is extend the `BotBuilder` class and define an `onNotif()` method```python
from drbot.botbuilder import BotBuilder, NotifType# Testing setup
class MyBot(BotBuilder):
onNotif(self, type, content):
# Handle notifs here
pass# Create a bot
my_bot = MyBot("username", "password")# Set how long the bot should wait between notif queries (in seconds)
interval = 10# Start the bot
my_bot.start(interval)
```That's it!
## Using the API
Every `BotBuilder` class has a built in API wrapper. This can be accessed through `self.api`, and contains the following methods:
```python
getUserInfo(username: str) -> dictgetUsername(user_id: int) -> str
postRant(body: str, tags: str) -> None
postComment(rant_id: int, content: str) -> None
getComment(comment_id: int) -> dict
```The `BotBuilder` automatically handles login, sessions, notif management, and some data parsing. If you are looking to override these, you may be interested in the following API methods:
```python
login(username: str, password: str) -> NonehasAuthExpired() -> bool
getNotifs() -> list
clearNotifs() -> None
getUserId(username: str) -> int
```## Installing
This library is avalible on PYPI.With `python3.7` and `python3-pip` installed, run:
```
pip3 install drbot
```to install `drbot`