Гайд Озвучивалка сообщений ВК

krista11ov

Модератор форума
Суть: по лонгпулу от ВК получаются все новые сообщения и озвучиваются на динамик

При желании можно добавить озвучку времени и имени написавшего. Так же можно поменять голос (есть гайды в интернете)

Для Python 3.9 и старше:

vk_api, pyttsx3, pypiwin32 (последнее только если у вас винда)
На 9 строчке нужно добавить свой токен
Python:
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType
import pyttsx3

engine = pyttsx3.init()

def main():
    vk_session = vk_api.VkApi(
        token="")

    try:
        vk = vk_session.get_api()
    except vk_api.AuthError as error_msg:
        print(error_msg)
        return

    longpoll = VkLongPoll(vk_session)

    for event in longpoll.listen():
        if event.type == VkEventType.MESSAGE_NEW:
            engine.setProperty('rate', 200)
            engine.setProperty('volume', 1)
            engine.say(event.text)
            engine.runAndWait()

if __name__ == '__main__':
    main()

Для Python 3.7.6 и до 3.8
vk_api, playsound, gTTS
На 9 строчке нужно добавить свой токен
Python:
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType
from gtts import gTTS
from playsound import playsound
import os


def main():
    vk_session = vk_api.VkApi(token="")

    try:
        vk_session.get_api()
    except vk_api.AuthError as error_msg:
        print(error_msg)
        return

    longpoll = VkLongPoll(vk_session)

    for event in longpoll.listen():
        if event.type == VkEventType.MESSAGE_NEW:
            print(event.text)
            tts = gTTS(text=event.text, lang='ru')
            tts.save("good.mp3")

            playsound('good.mp3')
            try: os.remove("good.mp3")
            except:pass


if __name__ == '__main__':
    main()
 
Сверху