Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用PyAPI获取照片?_Python_Telegram Bot_Py Telegram Bot Api - Fatal编程技术网

Python 如何使用PyAPI获取照片?

Python 如何使用PyAPI获取照片?,python,telegram-bot,py-telegram-bot-api,Python,Telegram Bot,Py Telegram Bot Api,我正试图通过电报机器人实现此逻辑(我使用客户端的桌面版本): 机器人请求发送一张照片 用户发送照片(包括分组和不分组) bot接收用户发送的所有照片 只有在收到所有照片后,bot才会发送一条关于成功操作的消息,并将控制权转移到下一个功能 我的代码是: import telebot bot_token = '1279****77:AAHJDPFJ************KJfLbiI' bot = telebot.TeleBot(bot_token, parse_mode='html') pho

我正试图通过电报机器人实现此逻辑(我使用客户端的桌面版本):

  • 机器人请求发送一张照片
  • 用户发送照片(包括分组和不分组)
  • bot接收用户发送的所有照片
  • 只有在收到所有照片后,bot才会发送一条关于成功操作的消息,并将控制权转移到下一个功能
  • 我的代码是:

    import telebot
    
    bot_token = '1279****77:AAHJDPFJ************KJfLbiI'
    bot = telebot.TeleBot(bot_token, parse_mode='html')
    photo_list = []
    
    @bot.message_handler(commands=['start'])
    def send_welcome(message):
        send = bot.send_message(message.from_user.id, 'Send your pics...')
        bot.register_next_step_handler(send, get_user_pics)
        return
    
    @bot.message_handler(content_types=['photo'])
    def get_user_pics(message):
        if message.photo[-1].file_id not in photo_list:
            photo_list.append(message.photo[-1].file_id)
            if len(photo_list) == 1:
                send = bot.send_message(message.from_user.id, "Photos received...")
                bot.register_next_step_handler(send, process_messages())
                return
    
    def process_messages():
        print(photo_list)
        return
    
    bot.polling()
    
    现在,只有当用户通过分组发送照片时,逻辑才起作用。 如果发送时没有分组(~10张照片),那么在第4张照片之后,机器人会写下它成功拍摄了照片,其他什么都没有。。。 那么,无论照片是否分组,我如何实现所需的逻辑?