Задать вопрос
  • Как правильно посчитать длину текста с эмодзи в Python?

    yummy1gay
    @yummy1gay
    Проблема тут в API Telegram, я тоже наткнулся на неё, и с радостью поделюсь с вами её решением (хоть и поздновато).

    Нам понадобится библиотека emoji из pip, чтобы посчитать количество эмодзи в тексте, нужно вызвать функцию emoji.emoji_count.

    Вот пример кода с фиксом этой проблемы:

    import emoji
    from telethon.tl.types import MessageEntityBold
    
    message_text = "Hi!"
    emojis = emoji.emoji_count(message_text)
    
    text_with_emoji = len(message_text) + emojis
    
    entities = [MessageEntityBold(offset=0, length=text_with_emoji)]


    Так же хочу отметить что лучше использовать опцию parse_mode=HTML, но в некоторых функциях API Telegram ее попросту нет, например в той что нужна была мне, а именно EditInlineBotMessage
    Ответ написан
    5 комментариев