-1

我知道如果您将命令发送给机器人,则可以在电报中创建/newbot机器人@BotFather。但要做到这一点,你需要拿起你的设备,打开 Telegram,与他聊天@BotFather并向他发送命令/newbot。以上所有内容都可以通过编程方式完成吗?

PS:这不是偷懒,而是尝试优化解决方案。

4

1 回答 1

3

是的,可以与mtproto库(pyrogramtelethonmadelineproto等)创建这样的交互。

这是一个使用 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 的文档

于 2020-04-27T18:48:10.613 回答