我正在使用Python-Telegram-Bot创建一个电报机器人
我知道update.message.chat_id
返回用户的聊天 ID,但我需要知道如何获取用户的用户名或名字和/或姓氏。
我在 Telegram 的文档上找到了这个,但我不知道如何使用它(我试过bot.getChat(update.message.chat_id)
但没有结果)
我正在使用Python-Telegram-Bot创建一个电报机器人
我知道update.message.chat_id
返回用户的聊天 ID,但我需要知道如何获取用户的用户名或名字和/或姓氏。
我在 Telegram 的文档上找到了这个,但我不知道如何使用它(我试过bot.getChat(update.message.chat_id)
但没有结果)
所有关于用户的信息(如用户名、id、名字/姓氏和个人资料照片)都可从电报.用户对象中获得。您可以使用telegram.Message轻松获取它
user = update.message.from_user
print('You talk with user {} and his user ID: {} '.format(user['username'], user['id']))
您可以使用 json 文件并访问用户名、ID 等信息。您可以自己打印此文件以获取有关 json 文件的信息。请参见下面的示例。
# pip install python-telegram-bot==12.0.0
from telegram.ext import Updater
from telegram.ext import CommandHandler
updater = Updater('token')
def start(bot, update):
# print('json file update : ' ,update)
# print("json file bot : ', bot)
chat_id = update.message.chat_id
first_name = update.message.chat.first_name
last_name = update.message.chat.last_name
username = update.message.chat.username
print("chat_id : {} and firstname : {} lastname : {} username {}". format(chat_id, first_name, last_name , username))
bot.sendMessage(chat_id, 'text')
start_command = CommandHandler('start',start)
updater.dispatcher.add_handler(start_command)
updater.start_polling()
updater.idle()