【问题标题】:How to send emoji in Telegram bot with python?如何使用 python 在 Telegram bot 中发送表情符号?
【发布时间】:2020-10-20 19:36:00
【问题描述】:

我正在处理一个小项目,我决定添加表情符号以使视觉效果更好一点,但我无法发送。我尝试过像 "\U000203C" 这样的 Unicode,甚至尝试复制表情符号并通过它,但仍然无法做到。有什么方法可以发送表情符号吗?

Unicode

exchange_msg = "TRY TO USD: "+ USDTORTY, "PERCANTAGE: " +  USDTORTYPERCENTAGE + u'\U000203C'
update.message.reply_text(exchange_msg)

复制粘贴

exchange_msg = "TRY TO USD: "+ USDTORTY, "PERCANTAGE: " +  USDTORTYPERCENTAGE + u'????'
update.message.reply_text(exchange_msg)

我尝试的代码的输出如下。

["TRY TO USD: 7.8645", "PERCANTAGE: -0.0151 (-0.19%)\ud83d\udea8"]

【问题讨论】:

    标签: python-3.x telegram-bot python-telegram-bot


    【解决方案1】:

    我有一个正在运行的机器人,我使用了很多表情符号。我使用https://www.iemoji.com/ 找到我想要使用的表情符号的 Python Src,然后我编码。

    这是我的做法:

    def emojis (update, context):
        msg = '\U0001F916 This is a Robot face!\n'
        msg += '\uE404 This is a smiling face!'
        context.bot.send_message(message_id = update.message.message_id,
                                 chat_id = update.message.chat_id,
                                 text = msg)
    

    【讨论】:

    【解决方案2】:

    回复消息是一个元组

    exchange_msg = "TRY TO USD: "+ USDTORTY, "PERCANTAGE: " +  USDTORTYPERCENTAGE + u'?'
    
    # print type: <class 'tuple'>
    print(type(exchange_msg))
    # print second value: PERCANTAGE: USDTORTYPERCENTAGE ?
    print(exchange_msg[1])
    # print second value type: <class 'str'>
    print(type(exchange_msg[1]))
    

    您可以轻松地在短信中使用表情符号,只要它们是字符串的一部分。
    您可以更改代码以使用单个字符串作为响应(这是映射回复的好方法)或直接访问元组值

    # replacing comma with a space
    exchange_msg = "TRY TO USD: " + 'USDTORTY' + " " + "PERCANTAGE: " + 'USDTORTYPERCENTAGE ' + '?'
    

    【讨论】:

      猜你喜欢
      • 2015-10-04
      • 2016-03-29
      • 1970-01-01
      • 2020-10-09
      • 1970-01-01
      • 2018-08-25
      • 2015-11-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多