Created
May 25, 2021 05:42
-
-
Save KaushikShresth07/b7b27a2400de435e0c83b23951b48844 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import pyttsx3 | |
import speech_recognition as sr | |
import webbrowser | |
import pywhatkit | |
import wikipedia | |
import os | |
import datetime | |
from playsound import playsound | |
import keyboard | |
from tkinter import StringVar | |
from tkinter import Entry | |
from tkinter import Button | |
from tkinter import Label | |
from tkinter import Tk | |
from pytube import YouTube | |
import pyjokes | |
from googletrans import Translator | |
engine = pyttsx3.init('sapi5') | |
voices = engine.getProperty('voices') | |
engine.setProperty('voice', voices[7].id) | |
engine.setProperty('rate',170) | |
def Speak(Audio): | |
print(" ") | |
print(f": {Audio}") | |
engine.say(Audio) | |
print(" ") | |
engine.runAndWait() | |
def takecommand(): | |
r = sr.Recognizer() | |
with sr.Microphone() as source: | |
print(" ") | |
print("Listening...") | |
r.pause_threshold = 1 | |
audio = r.listen(source) | |
try: | |
print("Recognizing...") | |
query = r.recognize_google(audio, language='en-in') | |
print(f"Your Command : {query}\n") | |
except: | |
return "None" | |
return query.lower() | |
def TaskExe(): | |
def TakeHindi(): | |
command = sr.Recognizer() | |
with sr.Microphone() as source: | |
print("Listening......") | |
command.pause_threshold = 1 | |
audio = command.listen(source) | |
try: | |
print("Recognizing.....") | |
query = command.recognize_google(audio,language='hi') | |
print(f"You Said : {query}") | |
except: | |
return "none" | |
return query.lower() | |
def Tran(): | |
Speak("Tell Me The Line!") | |
line = TakeHindi() | |
traslate = Translator() | |
result = traslate.translate(line) | |
Text = result.text | |
Speak(Text) | |
def Music(): | |
Speak("Tell Me The NamE oF The Song!") | |
musicName = takecommand() | |
if 'akeli' in musicName: | |
os.startfile('E:\\Songs\\akeli.mp3') | |
elif 'blanko' in musicName: | |
os.startfile('E:\\Songs\\blanko.mp3') | |
else: | |
pywhatkit.playonyt(musicName) | |
Speak("Your Song Has Been Started! , Enjoy Sir!") | |
def OpenApps(): | |
Speak("Ok Sir , Wait A Second!") | |
if 'code' in query: | |
os.startfile("E:\\Applications\\Microsoft VS Code\\Microsoft VS Code\\Code.exe") | |
elif 'telegram' in query: | |
os.startfile("E:\\Applications\\Telegram Desktop\\Telegram Desktop\\Telegram.exe") | |
elif 'chrome' in query: | |
os.startfile("C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe") | |
elif 'facebook' in query: | |
webbrowser.open('https://www.facebook.com/') | |
elif 'instagram' in query: | |
webbrowser.open('https://www.instagram.com/') | |
elif 'maps' in query: | |
webbrowser.open('https://www.google.com/maps/@28.7091225,77.2749958,15z') | |
elif 'youtube' in query: | |
webbrowser.open('https://www.youtube.com') | |
Speak("Your Command Has Been Completed Sir!") | |
def CloseAPPS(): | |
Speak("Ok Sir , Wait A second!") | |
if 'youtube' in query: | |
os.system("TASKKILL /F /im Chrome.exe") | |
elif 'chrome' in query: | |
os.system("TASKKILL /f /im Chrome.exe") | |
elif 'telegram' in query: | |
os.system("TASKKILL /F /im Telegram.exe") | |
elif 'code' in query: | |
os.system("TASKKILL /F /im code.exe") | |
elif 'instagram' in query: | |
os.system("TASKKILL /F /im chrome.exe") | |
Speak("Your Command Has Been Succesfully Completed!") | |
def YoutubeAuto(): | |
Speak("Whats Your Command ?") | |
comm = takecommand() | |
if 'pause' in comm: | |
keyboard.press('space bar') | |
elif 'restart' in comm: | |
keyboard.press('0') | |
elif 'mute' in comm: | |
keyboard.press('m') | |
elif 'skip' in comm: | |
keyboard.press('l') | |
elif 'back' in comm: | |
keyboard.press('j') | |
elif 'full screen' in comm: | |
keyboard.press('f') | |
elif 'film mode' in comm: | |
keyboard.press('t') | |
Speak("Done Sir") | |
def ChromeAuto(): | |
Speak("Chrome Automation started!") | |
command = takecommand() | |
if 'close this tab' in command: | |
keyboard.press_and_release('ctrl + w') | |
elif 'open new tab' in command: | |
keyboard.press_and_release('ctrl + t') | |
elif 'open new window' in command: | |
keyboard.press_and_release('ctrl + n') | |
elif 'history' in command: | |
keyboard.press_and_release('ctrl +h') | |
while True: | |
query = takecommand() | |
if 'hello' in query: | |
Speak("Hello Sir , I Am Jarvis .") | |
Speak("Your Personal AI Assistant!") | |
Speak("How May I Help You?") | |
elif 'how are you' in query: | |
Speak("I Am Fine Sir!") | |
Speak("Whats About YOU?") | |
elif 'you need a break' in query: | |
Speak("Ok Sir , You Can Call Me Anytime !") | |
Speak("Just Say Wake Up Jarvis!") | |
break | |
elif 'youtube search' in query: | |
Speak("OK sIR , This Is What I found For Your Search!") | |
query = query.replace("jarvis","") | |
query = query.replace("youtube search","") | |
web = 'https://www.youtube.com/results?search_query=' + query | |
webbrowser.open(web) | |
Speak("Done Sir!") | |
elif 'website' in query: | |
Speak("Ok Sir , Launching.....") | |
query = query.replace("jarvis","") | |
query = query.replace("website","") | |
query = query.replace(" ","") | |
web1 = query.replace("open","") | |
web2 = 'https://www.' + web1 + '.com' | |
webbrowser.open(web2) | |
Speak("Launched!") | |
elif 'launch' in query: | |
Speak("Tell Me The Name Of The Website!") | |
name = takecommand() | |
web = 'https://www.' + name + '.com' | |
webbrowser.open(web) | |
Speak("Done Sir!") | |
elif 'wikipedia' in query: | |
Speak("Searching Wikipedia.....") | |
query = query.replace("jarvis","") | |
query = query.replace("wikipedia","") | |
wiki = wikipedia.summary(query,2) | |
Speak(f"According To Wikipedia : {wiki}") | |
elif 'open facebook' in query: | |
OpenApps() | |
elif 'open instagram' in query: | |
OpenApps() | |
elif 'open maps' in query: | |
OpenApps() | |
elif 'open code' in query: | |
OpenApps() | |
elif 'open youtube' in query: | |
OpenApps() | |
elif 'open telegram' in query: | |
OpenApps() | |
elif 'open chrome' in query: | |
OpenApps() | |
elif 'close chrome' in query: | |
CloseAPPS() | |
elif 'music' in query: | |
Music() | |
elif 'close telegram' in query: | |
CloseAPPS() | |
elif 'close instagram' in query: | |
CloseAPPS() | |
elif 'close facebook' in query: | |
CloseAPPS() | |
elif 'pause' in query: | |
keyboard.press('space bar') | |
elif 'restart' in query: | |
keyboard.press('0') | |
elif 'mute' in query: | |
keyboard.press('m') | |
elif 'skip' in query: | |
keyboard.press('l') | |
elif 'back' in query: | |
keyboard.press('j') | |
elif 'full screen' in query: | |
keyboard.press('f') | |
elif 'film mode' in query: | |
keyboard.press('t') | |
elif 'youtube tool' in query: | |
YoutubeAuto() | |
elif 'close the tab' in query: | |
keyboard.press_and_release('ctrl + w') | |
elif 'open new tab' in query: | |
keyboard.press_and_release('ctrl + t') | |
elif 'open new window' in query: | |
keyboard.press_and_release('ctrl + n') | |
elif 'history' in query: | |
keyboard.press_and_release('ctrl +h') | |
elif 'chrome automation' in query: | |
ChromeAuto() | |
elif 'joke' in query: | |
get = pyjokes.get_joke() | |
Speak(get) | |
elif 'repeat my word' in query: | |
Speak("Speak Sir!") | |
jj = takecommand() | |
Speak(f"You Said : {jj}") | |
elif 'my location' in query: | |
Speak("Ok Sir , Wait A Second!") | |
webbrowser.open('https://www.google.com/maps/@28.7091225,77.2749958,15z') | |
elif 'alarm' in query: | |
Speak("Enter The Time !") | |
time = input(": Enter The Time :") | |
while True: | |
Time_Ac = datetime.datetime.now() | |
now = Time_Ac.strftime("%H:%M:%S") | |
if now == time: | |
Speak("Time To Wake Up Sir!") | |
playsound('iron.mp3') | |
Speak("Alarm Closed!") | |
elif now>time: | |
break | |
elif 'video downloader' in query: | |
root = Tk() | |
root.geometry('500x300') | |
root.resizable(0,0) | |
root.title("Youtube Video Downloader") | |
Speak("Enter Video Url Here !") | |
Label(root,text = "Youtube Video Downloader",font = 'arial 15 bold').pack() | |
link = StringVar() | |
Label(root,text = "Paste Yt Video URL Here",font = 'arial 15 bold').place(x=160,y=60) | |
Entry(root,width = 70,textvariable = link).place(x=32,y=90) | |
def VideoDownloader(): | |
url = YouTube(str(link.get())) | |
video = url.streams.first() | |
video.download() | |
Label(root,text = "Downloaded",font = 'arial 15').place(x= 180,y=210) | |
Button(root,text = "Download",font = 'arial 15 bold',bg = 'pale violet red',padx = 2 , command = VideoDownloader).place(x=180,y=150) | |
root.mainloop() | |
Speak("Video Downloaded") | |
elif 'translator' in query: | |
Tran() | |
elif 'remember that' in query: | |
remeberMsg = query.replace("remember that","") | |
remeberMsg = remeberMsg.replace("jarvis","") | |
Speak("You Tell Me To Remind You That :"+remeberMsg) | |
remeber = open('data.txt','w') | |
remeber.write(remeberMsg) | |
remeber.close() | |
elif 'what do you remember' in query: | |
remeber = open('data.txt','r') | |
Speak("You Tell Me That" + remeber.read()) | |
TaskExe() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment