pythonvkchatbot设计用于使用JSON、请求和gtt发送音频消息,它不支持

2024-04-25 20:25:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我决定制作一个VK聊天机器人,它可以向人们发送一条包含他们信息文本的音频信息。我将只介绍一个函数,但只有一部分不起作用。可能,vkapi有错误,但可能我的代码中有错误。你知道吗

      if body.lower()[:6:] == "/голос":
          counter += 1
          vk.method("messages.send", {"peer_id": id, "message": "Сейчас запишу голосовое сообщение!", "random_id": random.randint(1, 2147483647)})
          tts = gTTS(text=body[7::], lang="ru", lang_check=True)
          name = "voice.ogg"
          tts.save(name)
          a = vk.method("docs.getMessagesUploadServer", {"type": "audio_message", "peer_id": id})
          b = requests.post(a['upload_url'], files={'file': open("/home/mlgshestopalov/voice.ogg", 'rb')}).json()
          vk.method("messages.send", {"peer_id": id, "message": "Сохраняю файл...", "random_id": random.randint(1, 2147483647)})
          c = vk.method("docs.save", {"file": b["file"]})[0]
          vk.method("messages.send", {"peer_id": id, "message": "Файл сохранён!", "random_id": random.randint(1, 2147483647)})
          d = 'doc{}_{}'.format(c['owner_id'], c['id'])
          vk.method("messages.send", {"peer_id": id, "message": "Отправляю сообщение...", "random_id": random.randint(1, 2147483647)})
          vk.method('messages.send', {'peer_id': id, 'attachment': d})

我希望机器人发送这个:

Сохраняю файл...

Файл сохранён!

Отправляю сообщение...

还有音频信息

但是机器人只发送

Сохраняю файл...

Файл сохранён!

gtts做的很好,它的工作,而且,文件保存没有任何错误。你知道吗


Tags: send信息idmessage错误机器人bodyrandom