Heim  >  Artikel  >  Backend-Entwicklung  >  Ich kann in meinem Spracherkennungscode keine Google-/YouTube-Rechercheergebnisse generieren

Ich kann in meinem Spracherkennungscode keine Google-/YouTube-Rechercheergebnisse generieren

PHPz
PHPznach vorne
2024-02-06 08:10:07651Durchsuche

我无法在我的语音识别代码中生成 google/youtube 的研究结果

Frageninhalt

Ich versuche, einen Chatbot zu erstellen, der mit Menschen interagieren und ihnen helfen kann, sich schnell zu aktualisieren. Unten ist der Code, den ich verwende, um Suchergebnisse von YouTube/Google zu erhalten. Bitte sagen Sie mir, wo das Problem liegt?

maya_google_search.py​​Code:

import speech_recognition
import pyttsx3
import pywhatkit
from wikipedia import wikipedia
import wikipedia as googlescrap
import webbrowser

engine = pyttsx3.init("sapi5")
voices = engine.getproperty("voices")
engine.setproperty("voice", voices[1].id)
engine.setproperty("rate", 150)

def speak(audio):
    engine.say(audio)
    engine.runandwait()

def takecommand():
    r = speech_recognition.recognizer()
    with speech_recognition.microphone() as source:
        print("listening.............")
        r.pause_threshold = 1
        r.energy_threshold = 300
        audio = r.listen(source,0,4)

    try:
        print("understanding............")
        query = r.recognize_google(audio, language='en-in')
        print(f"you said: {query}\n")

    except exception as e:
        print("say that again")
        speak("say that again")
        return "none"
    
    return query

query = takecommand().lower()

def googlesearch(query):
    
    if "google" in query:
        query = query.replace("maya", "")
        query = query.replace("google search", "")
        query = query.replace("google", "")

        speak("this is what i found on google.....")
        
        try:
            pywhatkit.search(query)
            result = googlescrap.summary(query,sentences=2)
            speak("according to google..........")
            speak(result)
        
        except:
            speak("no speakable output available")

def youtubesearch(query):
    if "youtube" in query:
        query = query.replace("maya", "")
        query = query.replace("youtube search", "")
        query = query.replace("youtube", "")
        speak("this is what i found for your search!") 

        web = "https://www.youtube.com/results?search_query=" + query

        webbrowser.open(web)
        pywhatkit.playonyt(query)
        
        speak("done, sir")

maya_ai.pyCode:

import pyttsx3
import speech_recognition

engine = pyttsx3.init("sapi5")
voices = engine.getProperty("voices")
engine.setProperty("voice", voices[1].id)
engine.setProperty("rate", 150)

def speak(audio):
    engine.say(audio)
    engine.runAndWait()
    

def takeCommand():
    r = speech_recognition.Recognizer()
    with speech_recognition.Microphone() as source:
        print("listening.............")
        r.pause_threshold = 1
        r.energy_threshold = 300
        audio = r.listen(source,0,4)

    try:
        print("Understanding............")
        query = r.recognize_google(audio, language='en-in')
        print(f"You said: {query}\n")
        # speak(query)

    except Exception as e:
        print("Say that again")
        return "None"
    
    return query

if __name__ == "__main__":
    
    while True:
        query = takeCommand().lower()
        if "wake up" in query:
            from maya_greeting import greetMe
            greetMe()

            while True:
                query = takeCommand().lower()
                if "go to sleep" in query:
                    speak("Ok sir, You can call me anytime...")
                    break
                
                elif "hello" in query:
                    speak("Hello Sir, how are you?")

                elif "i am fine" in query:
                    speak("That's really great to know sir....")

                elif "how are you":
                    speak("i am perfectly alright sir.")

                elif "thank you" in query:
                    speak("you're welcome sir")

                elif "google" in query:
                    from maya_google_search import Googlesearch
                    Googlesearch(query)

                elif "youtube" in query:
                    from maya_google_search import Youtubesearch
                    Youtubesearch(query)
                
                elif "wikipedia" in query:
                    from maya_google_search import Wikisearch
                    Wikisearch(query)

Wenn ich „Google Sundar Pichai“ sage, wird nur gedruckt, was ich gesagt habe, und es wird entweder „Mir geht es gut, Sir“ oder „Nichts“ angezeigt.

Bitte helfen Sie mir, dieses Problem zu lösen.


Richtige Antwort


Änderung

elif "how are you":

für

elif "how are you" in query:

Dann müssen Sie die letzte else-Anweisung hinzufügen, falls keine der vorherigen Bedingungen ausgelöst wird

Das obige ist der detaillierte Inhalt vonIch kann in meinem Spracherkennungscode keine Google-/YouTube-Rechercheergebnisse generieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen