使用 Python 发送电报键盘
Send Telegram keyboard with Python
我正在尝试将带有机器人的 Telegram 键盘发送到我的帐户。我已遵循 TelegramAPI 文档,但我做不到。我正在使用 Python 2.7.
到目前为止,这是我尝试过的:
import requests
bot_token = 'xxxxxxxxxxxxxxxxxxxxxxxx'
chat_id = 'xxxxxxxxxxxx'
text = "Choose:"
reply_markup={"keyboard":[["Yes","No"],["Maybe"],["1","2","3"]],"one_time_keyboard":True}
data = {'chat_id': chat_id, 'text': text, 'reply_markup': reply_markup}
url ="https://api.telegram.org/bot" + bot_token + "/sendMessage"
r = requests.get(url, data = data)
results = r.json()
print (results)
Python 没有崩溃,但我从 Telegram API 收到失败响应,我不知道为什么:
{u'error_code': 400, u'ok': False, u'description': u"Bad Request:
can't parse reply keyboard markup JSON object"}
非常感谢任何想法或建议。
谢谢,安德。
利用 json 库可以转储键盘对象:
import requests, json
bot_token = 'xxxxxxxxxxxxxxxxxxxxxxxx'
chat_id = 'xxxxxxxxxxxx'
text = "Choose:"
reply_markup={"keyboard":[["Yes","No"],["Maybe"],["1","2","3"]],"one_time_keyboard":True}
data = {'chat_id': chat_id, 'text': text, 'reply_markup': json.dumps(reply_markup)}
url ="https://api.telegram.org/bot" + bot_token + "/sendMessage"
r = requests.get(url, data = data)
results = r.json()
print (results)
我正在尝试将带有机器人的 Telegram 键盘发送到我的帐户。我已遵循 TelegramAPI 文档,但我做不到。我正在使用 Python 2.7.
到目前为止,这是我尝试过的:
import requests
bot_token = 'xxxxxxxxxxxxxxxxxxxxxxxx'
chat_id = 'xxxxxxxxxxxx'
text = "Choose:"
reply_markup={"keyboard":[["Yes","No"],["Maybe"],["1","2","3"]],"one_time_keyboard":True}
data = {'chat_id': chat_id, 'text': text, 'reply_markup': reply_markup}
url ="https://api.telegram.org/bot" + bot_token + "/sendMessage"
r = requests.get(url, data = data)
results = r.json()
print (results)
Python 没有崩溃,但我从 Telegram API 收到失败响应,我不知道为什么:
{u'error_code': 400, u'ok': False, u'description': u"Bad Request: can't parse reply keyboard markup JSON object"}
非常感谢任何想法或建议。
谢谢,安德。
利用 json 库可以转储键盘对象:
import requests, json
bot_token = 'xxxxxxxxxxxxxxxxxxxxxxxx'
chat_id = 'xxxxxxxxxxxx'
text = "Choose:"
reply_markup={"keyboard":[["Yes","No"],["Maybe"],["1","2","3"]],"one_time_keyboard":True}
data = {'chat_id': chat_id, 'text': text, 'reply_markup': json.dumps(reply_markup)}
url ="https://api.telegram.org/bot" + bot_token + "/sendMessage"
r = requests.get(url, data = data)
results = r.json()
print (results)