Асинхронная библиотека для MiningRigRentals API v2
Project description
aio-mrr
Асинхронная библиотека для MiningRigRentals API v2
📖 Описание
aio-mrr — это асинхронный Python-клиент для MiningRigRentals API v2, построенный на основе aiohttp и pydantic. Библиотека предоставляет типизированный интерфейс ко всем методам API с автоматической обработкой ошибок, retry-логикой и HMAC-SHA1 аутентификацией.
✨ Особенности
- async/await — полностью асинхронный API
- Pydantic модели — автоматическая валидация и типизация ответов
- Retry-логика — автоматические повторные попытки при ошибках сети
- HMAC-SHA1 аутентификация — безопасная работа с API
- Connection pooling — эффективное управление соединениями
- Маскирование секретов — защита API-ключей при логировании
📦 Установка
pip install aio-mrr
Для разработки:
pip install -e ".[dev]"
🚀 Быстрый старт
import asyncio
from aio_mrr import MRRClient
async def main():
api_key = "your_api_key"
api_secret = "your_api_secret"
async with MRRClient(api_key, api_secret) as client:
# Проверка аутентификации
response = await client.whoami()
if response.success:
print(f"Logged in as: {response.data['username']}")
# Получение баланса
balance = await client.account.get_balance()
if balance.success:
print(f"Balance: {balance.data}")
asyncio.run(main())
📚 Документация
Полная документация доступна на GitHub Pages:
💡 Примеры
Примеры использования доступны в папке examples/:
01_quickstart.py— базовая инициализация и простой запрос02_account_balance.py— работа с аккаунтом03_manage_rigs.py— управление ригами04_create_rental.py— создание аренд05_rig_groups.py— управление группами ригов06_info_and_pricing.py— информация и цены07_error_handling_demo.py— обработка ошибок08_advanced_search.py— продвинутый поиск09_pool_management.py— управление пулами10_profile_management.py— управление профилями
🔧 Требования
- Python 3.12+
- aiohttp >= 3.13.0
- pydantic >= 2.12.0
- tenacity >= 9.1.0
- loguru >= 0.7.0
📝 API Coverage
Библиотека покрывает все 55 публичных методов MiningRigRentals API v2:
| Subclient | Методы | Описание |
|---|---|---|
| Client | 1 | Проверка аутентификации |
| AccountClient | 16 | Аккаунт, баланс, пулы, профили |
| InfoClient | 4 | Серверы, алгоритмы, валюты |
| PricingClient | 1 | Курсы конвертации и цены |
| RigClient | 15 | Управление ригами |
| RentalClient | 12 | Управление арендами |
| RigGroupClient | 7 | Группы ригов |
🤝 Вклад
Приветствуются pull requests! Пожалуйста, создавайте issue для обсуждения изменений перед тем как делать PR.
📄 Лицензия
aio-mrr is MIT licensed code.
Designed & built in Novosibirsk, Russia by SibNeuroTech
Contact: @GRinvest
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aio_mrr-0.1.1.tar.gz.
File metadata
- Download URL: aio_mrr-0.1.1.tar.gz
- Upload date:
- Size: 115.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc42dd9efbab9bd2f148d3b15fc53b7d6e01e161e36a9a212f8dea63246db2bf
|
|
| MD5 |
b14ac2de984ef4af462cdf8a0fad4921
|
|
| BLAKE2b-256 |
f6fafcd0acb16ad826079323b050a9fa78ca1b1dba7c0b747a8cfd7cd5d904e2
|
File details
Details for the file aio_mrr-0.1.1-py3-none-any.whl.
File metadata
- Download URL: aio_mrr-0.1.1-py3-none-any.whl
- Upload date:
- Size: 69.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4483dada225368f3d76c787aa6e483988421804caa894a9ab43273cf45e7e965
|
|
| MD5 |
7dad3bc5159fef3dcee3ed12751109d4
|
|
| BLAKE2b-256 |
d5ddebe8d7ec659b6b4a8de3cfc278d62dd4068004f8e27b5d8654a5c15f2410
|