我知道如果您将命令发送给机器人,则可以在电报中创建/newbot
机器人@BotFather
。但要做到这一点,你需要拿起你的设备,打开 Telegram,与他聊天@BotFather
并向他发送命令/newbot
。以上所有内容都可以通过编程方式完成吗?
PS:这不是偷懒,而是尝试优化解决方案。
我知道如果您将命令发送给机器人,则可以在电报中创建/newbot
机器人@BotFather
。但要做到这一点,你需要拿起你的设备,打开 Telegram,与他聊天@BotFather
并向他发送命令/newbot
。以上所有内容都可以通过编程方式完成吗?
PS:这不是偷懒,而是尝试优化解决方案。
是的,可以与mtproto库(pyrogram、telethon、madelineproto等)创建这样的交互。
这是一个使用 Telethon 的 PoC 脚本(python3 -m pip install -U telethon
首先安装依赖项):
from telethon import TelegramClient, events
api_id = ...
api_hash = "..."
client = TelegramClient('session', api_id, api_hash)
BOT_NAME="..."
BOT_USER_NAME="..." # must end with -bot
@client.on(events.NewMessage)
async def message_handler(event):
if 'Please choose a name for your bot' in event.raw_text:
await event.reply(BOT_NAME)
elif 'choose a username for your bot' in event.raw_text:
await event.reply(BOT_USER_NAME)
elif 'Done! Congratulations on your new bot' in event.raw_text:
print("Bot created!")
await client.disconnect()
async def main():
await client.send_message('botfather', '/newbot')
with client:
client.loop.run_until_complete(main())
client.run_until_disconnected()
您从https://my.telegram.org/app_id
获取和app_hash
值
,这里是 telethon 的文档。