Поиск
1 г.

Отправка ссылок и упоминаний в сообщениях через Telethon в Telegram боте

Для отправки сообщений, содержащих ссылки и упоминания пользователей в Telegram с использованием Telethon, можно воспользоваться форматированием текста в Markdown или HTML.

Все материалы категории
Все материалы

Telethon поддерживает оба эти формата, что позволяет легко добавлять в сообщения гиперссылки, упоминания, жирный текст и другие стили

Использование Markdown и HTML для отправки ссылок и упоминаний

Шаг 1: Установка Telethon

Если Telethon ещё не установлен, установите его с помощью pip:

pip install telethon

Шаг 2: Отправка ссылок в сообщении

Для отправки сообщения с гиперссылкой вы можете использовать форматирование в Markdown или HTML. Ниже приведены примеры обоих методов.

— Markdown:

from telethon.sync import TelegramClient

api_id = 'ВАШ_API_ID'
api_hash = 'ВАШ_API_HASH'
client = TelegramClient('anon', api_id, api_hash)

async def send_markdown():
    await client.send_message('username', 'Посетите [мой сайт](https://example.com)', parse_mode='md')

with client:
    client.loop.run_until_complete(send_markdown())

— HTML:

async def send_html():
    await client.send_message('username', 'Посетите <a href="https://example.com">мой сайт</a>', parse_mode='html')

with client:
    client.loop.run_until_complete(send_html())

Шаг 3: Отправка упоминаний пользователей

Для упоминания пользователя в сообщении используйте его user_id с HTML тегом или синтаксисом Markdown для ссылки. Вот как это делается на HTML и Markdown соответственно:

— HTML:

async def mention_user_html(user_id):
    await client.send_message('username', f'Привет, <a href="tg://user?id={user_id}">друг</a>!', parse_mode='html')

with client:
    client.loop.run_until_complete(mention_user_html(123456789))

— Markdown:

async def mention_user_md(user_id):
    await client.send_message('username', f'Привет, [друг](tg://user?id={user_id})!', parse_mode='md')

with client:
    client.loop.run_until_complete(mention_user_md(123456789))

Дополнительные советы

— Замените ‘username’ на имя пользователя или ID целевого чата, куда вы хотите отправить сообщение.
— Для использования HTML или Markdown форматирования, важно установить параметр parse_mode в send_message функции соответственно.
— При использовании HTML убедитесь, что ваши строки правильно экранированы.
— Для упоминания пользователя необходимо знать его user_id, который является числом. Упоминание по имени пользователя (username) возможно только в виде текстовой ссылки, не создавая кликабельного упоминания.

Используя эти методы, вы можете эффективно включать в свои сообщения через Telegram бота, написанного на Telethon, как ссылки, так и упоминания пользователей, делая общение более интерактивным и функциональным.

Поиск по сайту

Поиск

Вход в аккаунт