Build a Virtual Assistant Using Python (original) (raw)

import pyttsx3

import speech_recognition as sr

import webbrowser

import datetime

import wikipedia

def takeCommand():

`` r = sr.Recognizer()

`` with sr.Microphone() as source:

`` print ( 'Listening' )

`` r.pause_threshold = 0.7

`` audio = r.listen(source)

`` try :

`` print ( "Recognizing" )

`` Query = r.recognize_google(audio, language = 'en-in' )

`` print ( "the command is printed=" , Query)

`` except Exception as e:

`` print (e)

`` print ( "Say that again sir" )

`` return "None"

`` return Query

def speak(audio):

`` engine = pyttsx3.init()

`` voices = engine.getProperty( 'voices' )

`` engine.setProperty( 'voice' , voices[ 0 ]. id )

`` engine.say(audio)

`` engine.runAndWait()

def tellDay():

`` day = datetime.datetime.today().weekday() + 1

`` Day_dict = { 1 : 'Monday' , 2 : 'Tuesday' ,

`` 3 : 'Wednesday' , 4 : 'Thursday' ,

`` 5 : 'Friday' , 6 : 'Saturday' ,

`` 7 : 'Sunday' }

`` if day in Day_dict.keys():

`` day_of_the_week = Day_dict[day]

`` print (day_of_the_week)

`` speak( "The day is " + day_of_the_week)

def tellTime():

`` time = str (datetime.datetime.now())

`` print (time)

`` hour = time[ 11 : 13 ]

`` min = time[ 14 : 16 ]

`` speak( self , "The time is sir" + hour + "Hours and" + min + "Minutes" )

def Hello():

`` speak("hello sir I am your desktop assistant. /

`` Tell me how may I help you")

def Take_query():

`` Hello()

`` while ( True ):

`` query = takeCommand().lower()

`` if "open geeksforgeeks" in query:

`` speak( "Opening GeeksforGeeks " )

`` webbrowser. open ( "www.geeksforgeeks.com" )

`` continue

`` elif "open google" in query:

`` speak( "Opening Google " )

`` webbrowser. open ( "www.google.com" )

`` continue

`` elif "which day it is" in query:

`` tellDay()

`` continue

`` elif "tell me the time" in query:

`` tellTime()

`` continue

`` elif "bye" in query:

`` speak( "Bye. Check Out GFG for more exciting things" )

`` exit()

`` elif "from wikipedia" in query:

`` speak( "Checking the wikipedia " )

`` query = query.replace( "wikipedia" , "")

`` result = wikipedia.summary(query, sentences = 4 )

`` speak( "According to wikipedia" )

`` speak(result)

`` elif "tell me your name" in query:

`` speak( "I am Jarvis. Your desktop Assistant" )

if __name__ = = '__main__' :

`` Take_query()