我试过这个
elif command == 'bold':
telegram_bot.sendMessage (chat_id, str("*bold*"), reply_markup=markup)
但它正在回复 *bold*
而不是 粗体
原文由 SudoGuy 发布,翻译遵循 CC BY-SA 4.0 许可协议
我试过这个
elif command == 'bold':
telegram_bot.sendMessage (chat_id, str("*bold*"), reply_markup=markup)
但它正在回复 *bold*
而不是 粗体
原文由 SudoGuy 发布,翻译遵循 CC BY-SA 4.0 许可协议
我对 Markdown parse_mode 有同样的问题。我自己编写了 send_message,没有使用 telepot 的 sendMessage 方法。在这种情况下,更容易理解如何处理这个问题:
url = 'https://api.telegram.org/bot<token>'
def send_message(chat_id, text='empty line', parse_mode = 'Markdown'):
URL = url + 'sendMessage'
answer = {'chat_id': chat_id, 'text': text, 'parse_mode': 'Markdown'}
r = requests.post(URL, json=answer)
return r.json()
if (text == '/bold'):
send_message(chat_id, 'Here comes the'+'*'+'bold'+'*'+'text!')
另一方面,您可以使用 curl 发送粗体文本:
if (text == '/bold'):
URL = url + 'sendMessage?chat_id='+chat_id+'&text=*Here comes the bold text*&parse_mode=Markdown'
answer = {'chat_id': chat_id, 'text': text}
r = requests.post(URL, json=answer)
原文由 llvll 发布,翻译遵循 CC BY-SA 4.0 许可协议
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.4k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
2 回答2k 阅读✓ 已解决
您需要提供一个
parse_mode
参数 (parse_mode=“Markdown”)。否则你将看不到任何降价样式。
看
https://telepot.readthedocs.io/en/latest/reference.html#telepot.Bot.sendMessage