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.0.1.tar.gz (7.6 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.0.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for telecats-1.0.1.tar.gz
Algorithm Hash digest
SHA256 023c24ace9178662d9ef99f9913a571abaa7fe4f0f4efef5710ed339aaadac94
MD5 273dfbd172cc40f08f02d14b985c91ea
BLAKE2b-256 b767e007b24e0b030a6395660c6a3f41b740f279f0c052ed94a94d48c4649ea2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: telecats-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.5 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.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d923edf3f8eb31ae847c2c45393e5a21ae9ba209a186dada166e579db8733207
MD5 2e2847b900d6e9ba14f0bd0186ed6433
BLAKE2b-256 9d943fa356efb046fa91fb7c2e628c4f634b5402dae3c7b614c0f67e3c8b0570

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