Poller for the Chaturbate events API.
Project description
Chaturbate Poller
Chaturbate Poller is a Python application designed to periodically fetch and process events from the Chaturbate API. It utilizes asynchronous HTTP requests and parses the received events for further processing or storage.
Features
- Asynchronous event fetching from the Chaturbate API.
- Error handling and retry logic for network requests.
- Logging of fetched events and error conditions for audit and debugging.
- Environment variable-based configuration for API credentials.
Requirements
- Python 3.8+
- httpx
- Pydantic
- asyncio
- dotenv
Setup
To set up the Chaturbate Poller, follow these steps:
- Ensure Python 3.8 or higher is installed on your system.
- Install the Python package:
$ pip install chaturbate-poller
- Set up your environment variables by creating a
.env
file in the root directory with the following content:
CB_USERNAME=your_chaturbate_username
CB_TOKEN=your_api_token
Replace your_chaturbate_username
and your_api_token
with your actual Chaturbate username and API token.
Usage Examples
import asyncio
import logging
import os
from chaturbate_poller import ChaturbateClient
from dotenv import load_dotenv
load_dotenv()
username = os.getenv("CB_USERNAME", "")
token = os.getenv("CB_TOKEN", "")
async def main() -> None:
async with ChaturbateClient(username, token, 20) as client:
response = await client.fetch_events()
for event in response.events:
logging.info(event.dict()) # Log the event as a dictionary
if __name__ == "__main__":
asyncio.run(main())
The application will start and begin fetching and printing events from the Chaturbate API using the credentials provided in the .env
file.
See examples/
for more detailed usage instructions, including usage regarding the included Pydantic models.
Development
For development purposes, especially to run tests or develop additional features, consider setting up a virtual environment and installing the development dependencies:
$ python -m venv .venv
$ source .venv/bin/activate # On Windows, use `.venv\Scripts\Activate`
$ pip install -r requirements-dev.txt
To run tests:
$ pytest
Contributing
Contributions to the Chaturbate Poller are welcome! Please follow the standard fork-and-pull request workflow on GitHub to submit your changes.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Credits
chaturbate_poller
was created with cookiecutter
and the py-pkgs-cookiecutter
template.
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
Hashes for chaturbate_poller-0.3.15-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 801da4a15af650bbad6384271cc55c92e7a84a970a4e9f19933d758a157755b1 |
|
MD5 | 2a8d2d253887e44c0130f41ba7ad8d08 |
|
BLAKE2b-256 | 87b26f3b57615c45ba7529820a9edebc326c4b3e1534f5dfa42ff613788644b5 |