Skip to main content

An async wrapper around Telethon to extend its functionality with a convenient and powerful templating engine for formatting text in Telegram messages.

Project description

telecats 😼

PyPI version License: MIT

telecats — это асинхронная Python-библиотека, построенная на базе Telethon, которая расширяет его возможности, предоставляя удобный и мощный шаблонизатор для форматирования текста в сообщениях Telegram.

Ключевые особенности

  • Полностью асинхронная: Основана на asyncio и Telethon.
  • Расширенное форматирование: Используйте простые и интуитивно понятные теги прямо в тексте сообщения для создания спойлеров, цитат, ссылок, упоминаний и добавления кастомных эмодзи.
  • Чистый синтаксис: Библиотека автоматически парсит ваши теги и преобразует их в нативные MessageEntity объекты Telegram.
  • Простота в использовании: Наследует TelegramClient от Telethon, поэтому вы можете использовать все его возможности, к которым привыкли.

Установка

pip install telecats

Быстрый старт

import asyncio
from telecats import TelegramClient

async def main():
    # Замените на ваши учетные данные API
    API_ID = 12345
    API_HASH = "your_api_hash"
    SESSION_NAME = "my_session"

    client = TelegramClient(SESSION_NAME, API_ID, API_HASH)

    await client.start()
    print("Клиент успешно запущен!")

    # Пример использования кастомных тегов
    message_with_tags = """
    Привет, это **telecats**!

    <spoiler>Это скрытый текст (спойлер)</spoiler>.

    <blockquote>
    Это красивая цитата.
    Она может быть многострочной.
    </blockquote>

    <blockquote hide>
    А эта цитата по умолчанию скрыта.
    Она состоит из пяти строк.
    Третья строка.
    Четвертая.
    И последняя, пятая.
    </blockquote>

    Посетите наш сайт: <link:https://github.com/ripcats/telecats>telecats on GitHub</link>.

    Упомянем пользователя: <mention:8251648172>Красавчик</mention>.

    И добавим кастомный эмодзи: <emoji-id:5472412290772903754>😼</emoji-id>
    """

    # Отправляем сообщение себе (в "Избранное")
    await client.send_message("me", message_with_tags)
    print("Сообщение с форматированием отправлено!")

    await client.disconnect()

if __name__ == "__main__":
    asyncio.run(main())

Синтаксис тегов

telecats парсит как полные, так и сокращенные (алиасы) теги для вашего удобства.

Функция Полный тег Короткий алиас Описание
Спойлер <spoiler>текст</spoiler> <sp>текст</sp> Скрывает текст под спойлером.
Цитата <blockquote>текст</blockquote> <bq>текст</bq> Форматирует текст как цитату.
Скрытая цитата <blockquote hide>текст</blockquote> <bq hide>текст</bq> Форматирует текст как свернутую цитату.
Ссылка <link:URL>текст</link> <url:URL>текст</url> Создает гиперссылку.
Упоминание <mention:ID>текст</mention> <mo:ID>текст</mo> Упоминает пользователя по его ID.
Кастомный Эмодзи <emoji-id:ID>текст</emoji-id> <em:ID>текст</em> Вставляет кастомный эмодзи.

Лицензия

Этот проект распространяется под лицензией MIT.

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

telecats-1.1.0.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

telecats-1.1.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file telecats-1.1.0.tar.gz.

File metadata

  • Download URL: telecats-1.1.0.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for telecats-1.1.0.tar.gz
Algorithm Hash digest
SHA256 866a8c7090998e477098320d6ba4ab877c2f846b74753c93de7575ae3863e9c0
MD5 ac982dedaaa5770a593918e042b6d999
BLAKE2b-256 086d1d964cff93ee21ae71c372bc41114e4b25941613daacec7dd4c4ccbde61d

See more details on using hashes here.

File details

Details for the file telecats-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: telecats-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for telecats-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ccdfca248d3efdce903cff4108eba66623e6745098d0052087ca31b2a41b5c12
MD5 29f96b623c8dc51f71961453f39c001f
BLAKE2b-256 dd93799487e311ae537716c2f4152cb4c28699974c1239702187b588effff0da

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page