Python wrapper для API мессенджера Max
⚠️ Дисклеймер
- Это неофициальная библиотека для работы с внутренним API Max.
- Использование может нарушать условия предоставления услуг сервиса.
- Вы используете её исключительно на свой страх и риск.
- Разработчики и контрибьюторы не несут никакой ответственности за любые последствия использования этого пакета, включая, но не ограничиваясь: блокировку аккаунтов, утерю данных, юридические риски и любые другие проблемы.
- API может быть изменен в любой момент без предупреждения.
pymax — асинхронная Python библиотека для работы с API мессенджера Max. Предоставляет интерфейс для отправки сообщений, управления чатами, каналами и диалогами через WebSocket соединение.
- Вход по номеру телефона
- Отправка, редактирование и удаление сообщений
- Работа с чатами и каналами
- История сообщений
Important
Для работы библиотеки требуется Python 3.10 или выше
pip install -U maxapi-pythonuv add -U maxapi-pythonimport asyncio
from pymax import MaxClient, Message
from pymax.filters import Filter
client = MaxClient(
phone="+1234567890",
work_dir="cache", # директория для сессий
)
# Обработка входящих сообщений
@client.on_message(filter=Filter(text=["!hello"]))
async def on_message(msg: Message) -> None:
print(f"[{msg.sender}] {msg.text}")
await client.send_message(
chat_id=msg.chat_id,
text="Привет, я бот на PyMax!",
)
await client.add_reaction(
chat_id=msg.chat_id,
message_id=str(msg.id),
reaction="👍",
)
@client.on_start
async def on_start() -> None:
print(f"Клиент запущен. Ваш ID: {client.me.id}")
# Получение истории
history = await client.fetch_history(chat_id=0)
print("Последние сообщения из чата 0:")
for m in history:
print(f"- {m.text}")
async def main():
await client.start() # подключение и авторизация
if __name__ == "__main__":
asyncio.run(main())Этот проект распространяется под лицензией MIT. См. файл LICENSE для получения информации.
Спасибо всем за помощь в разработке!