@Alwex0920

Почему при запуске голосового ассистента он завершает свою работу?

Вот мой код:
import speech_recognition as sr
import webbrowser
import os

name = open("name.txt", "w+")

with open("registr.txt", "w+") as f:
    if f.read() == "1":
        main()
    if f.read() == "0":
        comp = input("Введите имя пользователя: ")
        name.write(comp)
        f.write("1")
        main()
# Основной цикл бота
def main():
    def recognize_speech():
        recognizer = sr.Recognizer()
        with sr.Microphone() as source:
            audio = recognizer.listen(source)
            print("Можете говорить!")
            try:
                text = recognizer.recognize_google(audio, language="ru-RU")
                return text
            except sr.UnknownValueError:
                return "Извините, не могу распознать речь"
            except sr.RequestError:
                return "Не могу получить доступ к сервису распознавания речи"

    while True:
        input_text = recognize_speech()
        print(input_text)
        if "Найди" in input_text:
            chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
            webbrowser.get(chrome_path).open(f"https://yandex.ru/search/?text={input_text}&lr=63&clid=2271258&win=569")
        elif "Открой ютуб" in input_text:
            chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
            webbrowser.get(chrome_path).open("https://youtube.com")
        elif "Открой ВК" in input_text:
            chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
            webbrowser.get(chrome_path).open("https://vk.com")
        elif "Выключи компьютер" in input_text:
            os.system('shutdown /s /t 1')
        elif "Скачай" in input_text:
            chrome_path = 'C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s'
            webbrowser.get(chrome_path).open(f"https://yandex.ru/search/?text={input_text}&lr=63&clid=2271258&win=569")
        elif "Закрой браузер" in input_text:
            os.system('taskkill chrome.exe')
        else:
            pass
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Ты вызываешь main() до того, как ты её объявил.
Освой основы языка сначала.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы