aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatarLibravatar Biswakalyan Bhuyan <biswa@surgot.in> 2022-05-08 18:01:56 +0530
committerLibravatarLibravatar Biswakalyan Bhuyan <biswa@surgot.in> 2022-05-08 18:01:56 +0530
commitbea4f19f1f36a4bf010dacadc10b16c509097e0f (patch)
tree31e95a1eed42c1922babfb19da5a464d50ce85ae
parent591385e00749ffffc72c241594e884d4338e17f4 (diff)
downloadzara-bea4f19f1f36a4bf010dacadc10b16c509097e0f.tar.gz
zara-bea4f19f1f36a4bf010dacadc10b16c509097e0f.tar.bz2
zara-bea4f19f1f36a4bf010dacadc10b16c509097e0f.zip
Artificial Intelligence
-rw-r--r--Automations.py469
-rw-r--r--Data.txt0
-rw-r--r--DataBase/ChatBot/ChatBot.py81
-rw-r--r--DataBase/ExtraPro/Alarm.py37
-rw-r--r--DataBase/ExtraPro/Test.py8
-rw-r--r--DataBase/ExtraPro/start.py29
-rw-r--r--DataBase/Gui Materials/speedTest.gifbin0 -> 95104 bytes
-rw-r--r--DataBase/Gui Programs/SpeedTestGui.py75
-rw-r--r--DataBase/Gui Programs/SpeedTestUi.py34
-rw-r--r--DataBase/HomeAuto/SmartBulb.py94
-rw-r--r--DataBase/NasaDataBase/2019-09-27.jpgbin0 -> 1035317 bytes
-rw-r--r--DataBase/NasaDataBase/2021-01-01.jpgbin0 -> 967677 bytes
-rw-r--r--DataBase/NasaDataBase/Images Used/1.pngbin0 -> 525734 bytes
-rw-r--r--DataBase/NasaDataBase/Images Used/2.jpgbin0 -> 34110 bytes
-rw-r--r--DataBase/NasaDataBase/Images Used/3.jpgbin0 -> 39427 bytes
-rw-r--r--DataBase/NasaDataBase/Images Used/4.jpgbin0 -> 93542 bytes
-rw-r--r--DataBase/NasaDataBase/Images Used/5.jpgbin0 -> 371542 bytes
-rw-r--r--DataBase/NasaDataBase/Solar Bodies/Data.txt34
-rw-r--r--DataBase/NotePad/14-30-note.txt1
-rw-r--r--DataBase/NotePad/14-33-note.txt1
-rw-r--r--DataBase/OnlineClasses/Links.py31
-rw-r--r--DataBase/Sounds/1.mp3bin0 -> 68473 bytes
-rw-r--r--DataBase/TimeTable/TimeTable.py88
-rw-r--r--DataBase/Voices/11-25-note.txt1
-rw-r--r--DataBase/webdriver/chromedriver.exebin0 -> 11310592 bytes
-rw-r--r--Features.py198
-rw-r--r--Main.py232
-rw-r--r--Nasa.py198
-rw-r--r--Password.py65
-rw-r--r--README.md4
-rw-r--r--Zara.py90
-rw-r--r--ZaraUi.py117
-rw-r--r--pywhatkit_dbs.txt1
33 files changed, 1887 insertions, 1 deletions
diff --git a/Automations.py b/Automations.py
new file mode 100644
index 0000000..7776618
--- /dev/null
+++ b/Automations.py
@@ -0,0 +1,469 @@
+from datetime import datetime
+from os import startfile
+import os
+from pyautogui import click
+from keyboard import press
+from keyboard import press_and_release
+from keyboard import write
+from time import sleep
+from notifypy import Notify
+import pyttsx3
+import speech_recognition as sr
+from geopy.distance import great_circle
+from geopy.geocoders import Nominatim
+import geocoder
+import webbrowser as web
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[0].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def TakeCommand():
+
+ r = sr.Recognizer()
+
+ with sr.Microphone() as source:
+
+ 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 ""
+
+ return query.lower()
+
+def WhatsappMsg(name,message):
+
+ startfile("C:\\Users\\bemot\\AppData\\Local\\WhatsApp\\WhatsApp.exe")
+
+ sleep(10)
+
+ click(x=195, y=115)
+
+ sleep(1)
+
+ write(name)
+
+ sleep(0.5)
+
+ click(x=188, y=249)
+
+ sleep(0.5)
+
+ click(x=571, y=690)
+
+ sleep(0.5)
+
+ write(message)
+
+ press('enter')
+
+def WhatsappCall(name):
+
+ startfile("C:\\Users\\bemot\\AppData\\Local\\WhatsApp\\WhatsApp.exe")
+
+ sleep(10)
+
+ click(x=195, y=115)
+
+ sleep(1)
+
+ write(name)
+
+ sleep(1)
+
+ click(x=188, y=249)
+
+ sleep(1)
+
+ click(x=571, y=690)
+
+ sleep(1)
+
+ click(x=1198, y=63)
+
+def WhatsappChat(name):
+
+ startfile("C:\\Users\\bemot\\AppData\\Local\\WhatsApp\\WhatsApp.exe")
+
+ sleep(10)
+
+ click(x=195, y=115)
+
+ sleep(1)
+
+ write(name)
+
+ sleep(1)
+
+ click(x=188, y=249)
+
+ sleep(1)
+
+ click(x=571, y=690)
+
+ sleep(1)
+
+def ChromeAuto(command):
+
+ query = str(command)
+
+ if 'new tab' in query:
+
+ press_and_release('ctrl + t')
+
+ elif 'close tab' in query:
+
+ press_and_release('ctrl + w')
+
+ elif 'new window' in query:
+
+ press_and_release('ctrl + n')
+
+ elif 'history' in query:
+
+ press_and_release('ctrl + h')
+
+ elif 'download' in query:
+
+ press_and_release('ctrl + j')
+
+ elif 'bookmark' in query:
+
+ press_and_release('ctrl + d')
+
+ press('enter')
+
+ elif 'incognito' in query:
+
+ press_and_release('Ctrl + Shift + n')
+
+ elif 'switch tab' in query:
+
+ tab = query.replace("switch tab ", "")
+ Tab = tab.replace("to","")
+
+ num = Tab
+
+ bb = f'ctrl + {num}'
+
+ press_and_release(bb)
+
+ elif 'open' in query:
+
+ name = query.replace("open ","")
+
+ NameA = str(name)
+
+ if 'youtube' in NameA:
+
+ web.open("https://www.youtube.com/")
+
+ elif 'instagram' in NameA:
+
+ web.open("https://www.instagram.com/")
+
+ else:
+
+ string = "https://www." + NameA + ".com"
+
+ string_2 = string.replace(" ","")
+
+ web.open(string_2)
+
+def YouTubeAuto(command):
+
+ query = str(command)
+
+ if 'pause' in query:
+
+ press('space bar')
+
+ elif 'resume' in query:
+
+ press('space bar')
+
+ elif 'full screen' in query:
+
+ press('f')
+
+ elif 'film screen' in query:
+
+ press('t')
+
+ elif 'skip' in query:
+
+ press('l')
+
+ elif 'back' in query:
+
+ press('j')
+
+ elif 'increase' in query:
+
+ press_and_release('SHIFT + .')
+
+ elif 'decrease' in query:
+
+ press_and_release('SHIFT + ,')
+
+ elif 'previous' in query:
+
+ press_and_release('SHIFT + p')
+
+ elif 'next' in query:
+
+ press_and_release('SHIFT + n')
+
+ elif 'search' in query:
+
+ click(x=667, y=146)
+
+ Speak("What To Search Sir ?")
+
+ search = TakeCommand()
+
+ write(search)
+
+ sleep(0.8)
+
+ press('enter')
+
+ elif 'mute' in query:
+
+ press('m')
+
+ elif 'unmute' in query:
+
+ press('m')
+
+ elif 'my channel' in query:
+
+ web.open("https://www.youtube.com/channel/UC7A5u12yVIZaCO_uXnNhc5g")
+
+ else:
+ Speak("No Command Found!")
+
+def WindiowsAuto(command):
+
+ query = str(command)
+
+ if 'home screen' in query:
+
+ press_and_release('windows + m')
+
+ elif 'minimize' in query:
+
+ press_and_release('windows + m')
+
+ elif 'show start' in query:
+
+ press('windows')
+
+ elif 'open setting' in query:
+
+ press_and_release('windows + i')
+
+ elif 'open search' in query:
+
+ press_and_release('windows + s')
+
+ elif 'screen shot' in query:
+
+ press_and_release('windows + SHIFT + s')
+
+ elif 'restore windows' in query:
+
+ press_and_release('Windows + Shift + M')
+
+ else:
+ Speak("Sorry , No Command Found!")
+
+def GoogleMaps(Place):
+
+ Url_Place = "https://www.google.com/maps/place/" + str(Place)
+
+ geolocator = Nominatim(user_agent="myGeocoder")
+
+ location = geolocator.geocode(Place , addressdetails= True)
+
+ target_latlon = location.latitude , location.longitude
+
+ web.open(url=Url_Place)
+
+ location = location.raw['address']
+
+ target = {'city' : location.get('city',''),
+ 'state' : location.get('state',''),
+ 'country' : location.get('country','')}
+
+ current_loca = geocoder.ip('me')
+
+ current_latlon = current_loca.latlng
+
+ distance = str(great_circle(current_latlon,target_latlon))
+ distance = str(distance.split(' ',1)[0])
+ distance = round(float(distance),2)
+
+
+ Speak(target)
+ Speak(f"Sir , {Place} iS {distance} Kilometre Away From Your Location . ")
+
+def OnlinClass(Subject):
+
+ Speak("Joining The Class Sir .")
+
+ if 'science' in Subject:
+
+ from DataBase.OnlineClasses.Links import Science
+
+ Link = Science()
+
+ web.open(Link)
+
+ sleep(10)
+
+ click(x=412, y=571)
+
+ sleep(1)
+
+ click(x=1011, y=443)
+
+ Speak("Class Joined Sir .")
+
+ elif 'mathematics' in Subject:
+
+ from DataBase.OnlineClasses.Links import Maths
+
+ Link = Maths()
+
+ web.open(Link)
+
+ sleep(10)
+
+ click(x=412, y=571)
+
+ sleep(1)
+
+ click(x=1011, y=443)
+
+ Speak("Class Joined Sir .")
+
+ elif 'social' in Subject:
+
+ from DataBase.OnlineClasses.Links import sst
+
+ Link = sst()
+
+ web.open(Link)
+
+ sleep(10)
+
+ click(x=412, y=571)
+
+ sleep(1)
+
+ click(x=1011, y=443)
+
+ Speak("Class Joined Sir .")
+
+ elif 'hindi' in Subject:
+
+ from DataBase.OnlineClasses.Links import Hindi
+
+ Link = Hindi()
+
+ web.open(Link)
+
+ sleep(10)
+
+ click(x=412, y=571)
+
+ sleep(1)
+
+ click(x=1011, y=443)
+
+ Speak("Class Joined Sir .")
+
+ elif 'english' in Subject:
+
+ from DataBase.OnlineClasses.Links import English
+
+ Link = English()
+
+ web.open(Link)
+
+ sleep(10)
+
+ click(x=412, y=571)
+
+ sleep(1)
+
+ click(x=1011, y=443)
+
+ Speak("Class Joined Sir .")
+
+def Notepad():
+
+ Speak("Tell Me The Query .")
+ Speak("I Am Ready To Write .")
+
+ writes = TakeCommand()
+
+ time = datetime.now().strftime("%H:%M")
+
+ filename = str(time).replace(":","-") + "-note.txt"
+
+ with open(filename,"w") as file:
+
+ file.write(writes)
+
+ path_1 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\" + str(filename)
+
+ path_2 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\NotePad\\" + str(filename)
+
+ os.rename(path_1,path_2)
+
+ os.startfile(path_2)
+
+def CloseNotepad():
+
+ os.system("TASKKILL /F /im Notepad.exe")
+
+def TimeTable():
+
+ Speak("Checking....")
+
+ from DataBase.TimeTable.TimeTable import Time
+
+ value = Time()
+
+ Noti = Notify()
+
+ Noti.title = "TimeTable"
+
+ Noti.message = str(value)
+
+ Noti.send()
+
+ Speak("AnyThing Else Sir ??")
+
diff --git a/Data.txt b/Data.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/Data.txt
diff --git a/DataBase/ChatBot/ChatBot.py b/DataBase/ChatBot/ChatBot.py
new file mode 100644
index 0000000..99215d9
--- /dev/null
+++ b/DataBase/ChatBot/ChatBot.py
@@ -0,0 +1,81 @@
+import random
+
+Hello = ('hello','hey','hii','hi')
+
+reply_Hello = ('Hello Sir , I Am Zara .',
+ "Hey , What's Up ?",
+ "Hey How Are You ?",
+ "Hello Sir , Nice To Meet You Again .",
+ "Of Course Sir , Hello .")
+
+Bye = ('bye','exit','sleep','go')
+
+reply_bye = ('Bye Sir.',
+ "It's Okay .",
+ "It Will Be Nice To Meet You .",
+ "Bye.",
+ "Thanks.",
+ "Okay.")
+
+How_Are_You = ('how are you','are you fine')
+
+reply_how = ('I Am Fine.',
+ "Excellent .",
+ "Moj Ho rhi Hai .",
+ "Absolutely Fine.",
+ "I'm Fine.",
+ "Thanks For Asking.")
+
+nice = ('nice','good','thanks')
+
+reply_nice = ('Thanks .',
+ "Ohh , It's Okay .",
+ "Thanks To You.")
+
+Functions = ['functions','abilities','what can you do','features']
+
+reply_Functions = ('I Can Perform Many Task Or Varieties Of Tasks , How Can I Help You ?',
+ 'I Can Call Your G.F .',
+ 'I Can Message Your Mom That You Are Not Studing..',
+ 'I Can Tell Your Class Teacher That You Had Attended All The Online Classes On Insta , Facebbook etc!',
+ 'Let Me Ask You First , How Can I Help You ?',
+ 'If You Want Me To Tell My Features , Call : Print Features !')
+
+sorry_reply = ("Sorry , That's Beyond My Abilities .",
+ "Sorry , I Can't Do That .",
+ "Sorry , That's Above Me.")
+
+def ChatterBot(Text):
+
+ Text = str(Text)
+
+ for word in Text.split():
+
+ if word in Hello:
+
+ reply = random.choice(reply_Hello)
+
+ return reply
+
+ elif word in Bye:
+
+ reply = random.choice(reply_bye)
+
+ return reply
+
+ elif word in How_Are_You:
+
+ reply_ = random.choice(reply_how)
+
+ return reply_
+
+ elif word in Functions:
+
+ reply___ = random.choice(reply_Functions)
+
+ return reply___
+
+ else:
+
+ return random.choice(sorry_reply)
+
diff --git a/DataBase/ExtraPro/Alarm.py b/DataBase/ExtraPro/Alarm.py
new file mode 100644
index 0000000..d912df5
--- /dev/null
+++ b/DataBase/ExtraPro/Alarm.py
@@ -0,0 +1,37 @@
+import os
+from playsound import playsound
+import datetime
+
+extracted_time = open('E:\\Zara\\Data.txt','rt')
+time = extracted_time.read()
+Time = str(time)
+
+delete_time = open("E:\\Zara\\Data.txt",'r+')
+delete_time.truncate(0)
+delete_time.close()
+
+def RingerNow(time):
+
+ time_to_set = str(time)
+ time_now = time_to_set.replace("zara","")
+ time_now = time_now.replace("set alarm for ","")
+ time_now = time_now.replace("set ","")
+ time_now = time_now.replace("alarm ","")
+ time_now = time_now.replace("for ","")
+ time_now = time_now.replace(" and ",":")
+
+ Alarm_Time = str(time_now)
+
+ while True:
+
+ current_time = datetime.datetime.now().strftime("%H:%M")
+
+ if current_time == Alarm_Time:
+ print("Wake Up Sir , It's Time To Work .")
+ playsound("E:\\Zara\\DataBase\\Sounds\\1.mp3")
+
+ elif current_time>Alarm_Time:
+ break
+
+RingerNow(Time)
+
diff --git a/DataBase/ExtraPro/Test.py b/DataBase/ExtraPro/Test.py
new file mode 100644
index 0000000..d46858d
--- /dev/null
+++ b/DataBase/ExtraPro/Test.py
@@ -0,0 +1,8 @@
+from time import sleep
+import pyautogui
+
+sleep(4)
+
+kk = pyautogui.position()
+
+print(kk)
diff --git a/DataBase/ExtraPro/start.py b/DataBase/ExtraPro/start.py
new file mode 100644
index 0000000..a2dff90
--- /dev/null
+++ b/DataBase/ExtraPro/start.py
@@ -0,0 +1,29 @@
+import os
+from GoogleImageScrapper.GoogleImageScrapper import GoogleImageScraper
+import pyautogui
+
+def GoogleImage():
+ oo = open('E:\\Zara\\Data.txt','rt')
+ query = str(oo.read())
+ oo.close()
+ pppp = open('E:\\Zara\\Data.txt','r+')
+ pppp.truncate(0)
+ pppp.close()
+
+ webdriver = "E:\\Zara\\DataBase\\webdriver\\chromedriver.exe"
+ photos = "E:\\Zara\\DataBase\\GooglePhotos\\"
+
+ search_keys = [f"{query}"]
+ number = 10
+ head = False
+ max = (1000,1000)
+ min = (0,0)
+
+ for search_key in search_keys:
+ image_search = GoogleImageScraper(webdriver,photos,search_keys,number,head,min,max)
+ image_url = image_search.find_image_urls()
+ image_search.save_images(image_url)
+
+ os.startfile(photos)
+
+GoogleImage()
diff --git a/DataBase/Gui Materials/speedTest.gif b/DataBase/Gui Materials/speedTest.gif
new file mode 100644
index 0000000..cf480e8
--- /dev/null
+++ b/DataBase/Gui Materials/speedTest.gif
Binary files differ
diff --git a/DataBase/Gui Programs/SpeedTestGui.py b/DataBase/Gui Programs/SpeedTestGui.py
new file mode 100644
index 0000000..0fa2e47
--- /dev/null
+++ b/DataBase/Gui Programs/SpeedTestGui.py
@@ -0,0 +1,75 @@
+from PyQt5.QtGui import *
+from PyQt5.QtWidgets import *
+from PyQt5.QtCore import *
+from PyQt5 import QtCore , QtWidgets , QtGui
+from PyQt5.QtGui import QMovie
+from PyQt5.uic import loadUiType
+import sys
+import pyttsx3
+from SpeedTestUi import Ui_SpeedTest
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[0].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def run_uit():
+
+ Speak("I Am Checking Speed Sir , Wait For A While .")
+
+ import speedtest
+
+ speed = speedtest.Speedtest()
+
+ upload = speed.upload()
+
+ correct_Up = int(int(upload)/800000)
+
+ download = speed.download()
+
+ correct_down = int(int(download)/800000)
+
+ Speak(f"Downloading Speed Is {correct_down} M B Per Second .")
+ Speak(f"Uploading Speed Is {correct_Up} M B Per Second .")
+
+ exit()
+
+class MainThread(QThread):
+
+ def __init__(self):
+
+ super(MainThread,self).__init__()
+
+ def run(self):
+ run_uit()
+
+StartExe = MainThread()
+
+class StartExecution(QMainWindow):
+
+ def __init__(self):
+
+ super().__init__()
+
+ self.ui = Ui_SpeedTest()
+
+ self.ui.setupUi(self)
+
+ self.ui.label = QMovie("E:\\Zara\\DataBase\\Gui Materials\\speedTest.gif")
+
+ self.ui.gif.setMovie(self.ui.label)
+
+ self.ui.label.start()
+
+ StartExe.start()
+
+App = QApplication(sys.argv)
+speedtest = StartExecution()
+speedtest.show()
+exit(App.exec_())
diff --git a/DataBase/Gui Programs/SpeedTestUi.py b/DataBase/Gui Programs/SpeedTestUi.py
new file mode 100644
index 0000000..cf7d4a7
--- /dev/null
+++ b/DataBase/Gui Programs/SpeedTestUi.py
@@ -0,0 +1,34 @@
+from PyQt5 import QtCore, QtGui, QtWidgets
+
+class Ui_SpeedTest(object):
+
+ def setupUi(self, SpeedTest):
+
+ SpeedTest.setObjectName("SpeedTest")
+ SpeedTest.resize(582, 335)
+ self.centralwidget = QtWidgets.QWidget(SpeedTest)
+ self.centralwidget.setObjectName("centralwidget")
+ self.gif = QtWidgets.QLabel(self.centralwidget)
+ self.gif.setGeometry(QtCore.QRect(-10, 0, 601, 341))
+ self.gif.setText("")
+ self.gif.setPixmap(QtGui.QPixmap("E:\\Zara\\DataBase\\Gui Materials\\speedTest.gif"))
+ self.gif.setScaledContents(True)
+ self.gif.setObjectName("gif")
+ SpeedTest.setCentralWidget(self.centralwidget)
+
+ self.retranslateUi(SpeedTest)
+ QtCore.QMetaObject.connectSlotsByName(SpeedTest)
+
+ def retranslateUi(self, SpeedTest):
+ _translate = QtCore.QCoreApplication.translate
+ SpeedTest.setWindowTitle(_translate("SpeedTest", "MainWindow"))
+
+if __name__ == "__main__":
+ import sys
+ app = QtWidgets.QApplication(sys.argv)
+ SpeedTest = QtWidgets.QMainWindow()
+ ui = Ui_SpeedTest()
+ ui.setupUi(SpeedTest)
+ SpeedTest.show()
+ sys.exit(app.exec_())
+
diff --git a/DataBase/HomeAuto/SmartBulb.py b/DataBase/HomeAuto/SmartBulb.py
new file mode 100644
index 0000000..8fad54c
--- /dev/null
+++ b/DataBase/HomeAuto/SmartBulb.py
@@ -0,0 +1,94 @@
+from re import S
+import pyttsx3
+import speech_recognition as sr
+import pyautogui
+import os
+import keyboard
+from time import sleep
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[1].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def TakeCommand():
+
+ r = sr.Recognizer()
+
+ with sr.Microphone() as source:
+
+ 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 ""
+
+ return query.lower()
+
+def Activate():
+
+ try:
+
+ os.system('TASKKILL /F /im HD-Player.exe')
+
+ except Exception as e:
+ print(e)
+
+ Speak("Activating The Home Automation Setup.")
+
+ keyboard.press_and_release('windows + s')
+
+ sleep(1)
+
+ keyboard.write('blue')
+
+ sleep(1)
+
+ keyboard.press('enter')
+
+ sleep(20)
+
+ pyautogui.click(x=1157, y=81)
+
+ sleep(5)
+
+ pyautogui.click(x=553, y=148)
+
+ sleep(3)
+
+ Speak("Activated The Home Setup .")
+
+def StartLight():
+
+ Speak("Activating The Smart Bulb .")
+
+ pyautogui.click(x=820, y=187)
+
+ Speak("Activated.")
+
+def CloseLight():
+
+ Speak("Closing The Smart Bulb .")
+
+ pyautogui.click(x=820, y=187)
+
+ Speak("Closed.")
+
diff --git a/DataBase/NasaDataBase/2019-09-27.jpg b/DataBase/NasaDataBase/2019-09-27.jpg
new file mode 100644
index 0000000..5eadd00
--- /dev/null
+++ b/DataBase/NasaDataBase/2019-09-27.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/2021-01-01.jpg b/DataBase/NasaDataBase/2021-01-01.jpg
new file mode 100644
index 0000000..e6409ab
--- /dev/null
+++ b/DataBase/NasaDataBase/2021-01-01.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/Images Used/1.png b/DataBase/NasaDataBase/Images Used/1.png
new file mode 100644
index 0000000..c473e91
--- /dev/null
+++ b/DataBase/NasaDataBase/Images Used/1.png
Binary files differ
diff --git a/DataBase/NasaDataBase/Images Used/2.jpg b/DataBase/NasaDataBase/Images Used/2.jpg
new file mode 100644
index 0000000..2167a05
--- /dev/null
+++ b/DataBase/NasaDataBase/Images Used/2.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/Images Used/3.jpg b/DataBase/NasaDataBase/Images Used/3.jpg
new file mode 100644
index 0000000..6089174
--- /dev/null
+++ b/DataBase/NasaDataBase/Images Used/3.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/Images Used/4.jpg b/DataBase/NasaDataBase/Images Used/4.jpg
new file mode 100644
index 0000000..de5d5e5
--- /dev/null
+++ b/DataBase/NasaDataBase/Images Used/4.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/Images Used/5.jpg b/DataBase/NasaDataBase/Images Used/5.jpg
new file mode 100644
index 0000000..b60b2c9
--- /dev/null
+++ b/DataBase/NasaDataBase/Images Used/5.jpg
Binary files differ
diff --git a/DataBase/NasaDataBase/Solar Bodies/Data.txt b/DataBase/NasaDataBase/Solar Bodies/Data.txt
new file mode 100644
index 0000000..d6a1fa8
--- /dev/null
+++ b/DataBase/NasaDataBase/Solar Bodies/Data.txt
@@ -0,0 +1,34 @@
+lune,phobos,deimos,io,europe,ganymede,callisto,amalthee,himalia,
+elara,pasiphae,sinope,lysithea,carme,ananke,leda,thebe,
+adrastee,metis,callirrhoe,themisto,megaclite,taygete,
+chaldene,harpalyke,kalyke,iocaste,erinome,isonoe,praxidike,
+autonoe,thyone,hermippe,aitne,eurydome,euanthe,euporie,
+orthosie,sponde,cale,pasithee,hegemone,mneme,aoede,thelxinoe,
+arche,callichore,helice,carpo,eukelade,cyllene,core,herse,
+s2003j2,eupheme,s2003j4,eirene,s2003j9,s2003j10,s2003j12,
+philophrosyne,s2003j16,s2003j18,s2003j19,s2003j23,mimas,
+encelade,tethys,dione,rhea,titan,hyperion,japet,phoebe,janus,
+epimethee,helene,telesto,calypso,atlas,promethee,pandore,
+pan,ymir,paaliaq,tarvos,ijiraq,suttungr,kiviuq,mundilfari,
+albiorix,skathi,erriapo,siarnaq,thrymr,narvi,methone,pallene,
+pollux,daphnis,aegir,bebhionn,bergelmir,bestla,farbauti,
+fenrir,fornjot,hati,hyrrokkin,kari,loge,skoll,surtur,anthe,
+jarnsaxa,greip,tarqeq,egeon,s2004s7,s2004s12,s2004s13,
+s2004s17,s2006s1,s2006s3,s2007s2,s2007s3,s2009s1,ariel,
+umbriel,titania,oberon,miranda,cordelia,ophelia,bianca,
+cressida,desdemona,juliet,portia,rosalind,belinda,puck,
+caliban,sycorax,prospero,setebos,stephano,trinculo,
+francisco,margaret,ferdinand,perdita,mab,cupid,triton,
+nereide,naiade,thalassa,despina,galatee,larissa,protee,halimede,psamathee,
+sao,laomedie,neso,charon,nix,hydra,namaka,hiiaka,dysnomie,
+dia,s2004s3,s2004s4,s2004s6,s2010j1,s2010j2,ceres,hebe,lempo,
+prince,pulcova,toutatis,quaoar,steins,eris,astree,pholus,castalia,remus,
+hector,kleopatra,cruithne,junon,hygie,lutetia,mathilde,uranus,iris,eros,vanth,
+sedna,chariklo,sylvia,dactyl,orcus,pluton,damocles,romulus,alexhelios,cleoselene,
+flore,chiron,eureka,achille,weywot,ixion,neptune,sl9,9metis,haumea,nessus,itokawa,
+hylonome,eugenia,2006SQ372,pallas,asbolus,varuna,vesta,ida,hyakutake,gaspra,albion,
+makemake,halley,jupiter,mars,mercure,saturne,soleil,terre,venus,kerberos
+,s2011j1,s2011j2,styx,hippocampe,mk2,s2017j1,s2016j1,valetudo,s2017j2,s2017j3,
+pandia,s2017j5,s2017j6,s2017j7,s2017j8,s2017j9,ersa,arrokoth,benou,s2004s22,s2004s21,
+s2004s20,s2004s23,s2004s24,s2004s25,s2004s26,s2004s27,s2004s28,s2004s29,s2004s30,
+s2004s31,s2004s32,s2004s33,s2004s34,s2004s35,s2004s36,s2004s37,s2004s38,s2004s39,c2020f3-neowise \ No newline at end of file
diff --git a/DataBase/NotePad/14-30-note.txt b/DataBase/NotePad/14-30-note.txt
new file mode 100644
index 0000000..2334bcc
--- /dev/null
+++ b/DataBase/NotePad/14-30-note.txt
@@ -0,0 +1 @@
+how are you Zara i am fine \ No newline at end of file
diff --git a/DataBase/NotePad/14-33-note.txt b/DataBase/NotePad/14-33-note.txt
new file mode 100644
index 0000000..5c5d2ee
--- /dev/null
+++ b/DataBase/NotePad/14-33-note.txt
@@ -0,0 +1 @@
+hello Zara how are you Zara main nata \ No newline at end of file
diff --git a/DataBase/OnlineClasses/Links.py b/DataBase/OnlineClasses/Links.py
new file mode 100644
index 0000000..707a73a
--- /dev/null
+++ b/DataBase/OnlineClasses/Links.py
@@ -0,0 +1,31 @@
+
+def Science():
+
+ Link = "https://meet.google.com/ify-fhhk-zrs"
+
+ return Link
+
+def Maths():
+
+ Link = "https://meet.google.com/ify-fhhk-zrs"
+
+ return Link
+
+def Hindi():
+
+ Link = "https://meet.google.com/ify-fhhk-zrs"
+
+ return Link
+
+def English():
+
+ Link = "https://meet.google.com/ify-fhhk-zrs"
+
+ return Link
+
+def sst():
+
+ Link = "https://meet.google.com/ify-fhhk-zrs"
+
+ return Link
+
diff --git a/DataBase/Sounds/1.mp3 b/DataBase/Sounds/1.mp3
new file mode 100644
index 0000000..61fd9ce
--- /dev/null
+++ b/DataBase/Sounds/1.mp3
Binary files differ
diff --git a/DataBase/TimeTable/TimeTable.py b/DataBase/TimeTable/TimeTable.py
new file mode 100644
index 0000000..ee1e805
--- /dev/null
+++ b/DataBase/TimeTable/TimeTable.py
@@ -0,0 +1,88 @@
+from datetime import datetime
+import pyttsx3
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[2].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+FiveTo6 = '''
+In This Time ,
+You Have To Get Up & Listen Somethintg Positive .
+5:00 Am To 6:00 Am
+Thanks.
+'''
+
+SixTo9 = '''
+In This Time ,
+You Have To Study .
+6:00 Am To 9:00 Am .
+Thanks .
+'''
+
+NineTo12 = '''
+In This Time ,
+You Have A Make A Video & Have To Upload It On YouTube .
+9:00 Am To 12:00 Pm .
+Thanks .
+'''
+
+TwelveTo15 = '''
+In This Time ,
+You Have To Gain Some Knowledge From The Internet OR From Your Books .
+12:00 Pm To 3:00 Pm .
+Thanks .
+'''
+
+FifteenTo21 = '''
+In This Time ,
+You Have To Code .
+3:00 Pm To 9:00 Pm .
+Thanks .
+'''
+
+TwentyOneTo22 = '''
+In This Time ,
+You Have To Sleep .
+9:00 Pm To 10:00 Pm .
+Thanks .
+'''
+
+def Time():
+
+ hour = int(datetime.now().strftime("%H"))
+
+ if hour>=5 and hour<6:
+ Speak(FiveTo6)
+ return FiveTo6
+
+ elif hour>=6 and hour<9:
+ Speak(SixTo9)
+ return SixTo9
+
+ elif hour>=9 and hour<12:
+ Speak(NineTo12)
+ return NineTo12
+
+ elif hour>=12 and hour<15:
+ Speak(TwelveTo15)
+ return TwelveTo15
+
+ elif hour>=15 and hour<21:
+ Speak(FifteenTo21)
+ return FifteenTo21
+
+ elif hour>=21 and hour<22:
+ Speak(TwentyOneTo22)
+ return TwentyOneTo22
+
+ else:
+ Speak("In This Time , You Have To Sleep ")
+
+ return '''In This Time , You Have To Sleep .'''
diff --git a/DataBase/Voices/11-25-note.txt b/DataBase/Voices/11-25-note.txt
new file mode 100644
index 0000000..b6fc4c6
--- /dev/null
+++ b/DataBase/Voices/11-25-note.txt
@@ -0,0 +1 @@
+hello \ No newline at end of file
diff --git a/DataBase/webdriver/chromedriver.exe b/DataBase/webdriver/chromedriver.exe
new file mode 100644
index 0000000..10036f1
--- /dev/null
+++ b/DataBase/webdriver/chromedriver.exe
Binary files differ
diff --git a/Features.py b/Features.py
new file mode 100644
index 0000000..9e4000c
--- /dev/null
+++ b/Features.py
@@ -0,0 +1,198 @@
+
+import pywhatkit
+import wikipedia
+from pywikihow import RandomHowTo, search_wikihow
+import os
+import speech_recognition as sr
+import webbrowser as web
+import bs4
+import pyttsx3
+from time import sleep
+import requests
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[0].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def TakeCommand():
+
+ r = sr.Recognizer()
+
+ with sr.Microphone() as source:
+
+ 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 ""
+
+ return query.lower()
+
+def GoogleSearch(term):
+ query = term.replace("zara","")
+ query = query.replace("what is","")
+ query = query.replace("how to","")
+ query = query.replace("what is","")
+ query = query.replace(" ","")
+ query = query.replace("what do you mean by","")
+
+ writeab = str(query)
+
+ oooooo = open('E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\Data.txt','a')
+ oooooo.write(writeab)
+ oooooo.close()
+
+ Query = str(term)
+
+ pywhatkit.search(Query)
+
+ os.startfile('E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\ExtraPro\\start.py')
+
+ if 'how to' in Query:
+
+ max_result = 1
+
+ how_to_func = search_wikihow(query=Query,max_results=max_result)
+
+ assert len(how_to_func) == 1
+
+ how_to_func[0].print()
+
+ Speak(how_to_func[0].summary)
+
+ else:
+
+ search = wikipedia.summary(Query,2)
+
+ Speak(f": According To Your Search : {search}")
+
+def YouTubeSearch(term):
+ result = "https://www.youtube.com/results?search_query=" + term
+ web.open(result)
+ Speak("This Is What I Found For Your Search .")
+ pywhatkit.playonyt(term)
+ Speak("This May Also Help You Sir .")
+
+def Alarm(query):
+
+ TimeHere= open('E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\Data.txt','a')
+ TimeHere.write(query)
+ TimeHere.close()
+ os.startfile("E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\ExtraPro\\Alarm.py")
+
+def DownloadYouTube():
+ from pytube import YouTube
+ from pyautogui import click
+ from pyautogui import hotkey
+ import pyperclip
+ from time import sleep
+
+ sleep(2)
+ click(x=942,y=59)
+ hotkey('ctrl','c')
+ value = pyperclip.paste()
+ Link = str(value) # Important
+
+ def Download(link):
+
+
+ url = YouTube(link)
+
+
+ video = url.streams.first()
+
+
+ video.download('E:\\YouTube Channel\\YouTube - Zara \\How To Make Zara In Python\\DataBase\\YouTube\\')
+
+
+ Download(Link)
+
+
+ Speak("Done Sir , I Have Downloaded The Video .")
+
+ Speak("You Can Go And Check It Out.")
+
+
+ os.startfile('E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\YouTube\\')
+
+def SpeedTest():
+
+ os.startfile("E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\Gui Programs\\SpeedTestGui.py")
+
+def DateConverter(Query):
+
+ Date = Query.replace(" and ","-")
+ Date = Date.replace(" and ","-")
+ Date = Date.replace("and","-")
+ Date = Date.replace("and","-")
+ Date = Date.replace(" ","")
+
+ return str(Date)
+
+def My_Location():
+
+ op = "https://www.google.com/maps/place/Delhi/@28.6472799,76.8130619,83757m/data=!3m2!1e3!4b1!4m5!3m4!1s0x390cfd5b347eb62d:0x37205b715389640!8m2!3d28.7040592!4d77.1024902"
+
+ Speak("Checking....")
+
+ web.open(op)
+
+ ip_add = requests.get('https://api.ipify.org').text
+
+ url = 'https://get.geojs.io/v1/ip/geo/' + ip_add + '.json'
+
+ geo_q = requests.get(url)
+
+ geo_d = geo_q.json()
+
+ state = geo_d['city']
+
+ country = geo_d['country']
+
+ Speak(f"Sir , You Are Now In {state , country} .")
+
+def CoronaVirus(Country):
+
+ countries = str(Country).replace(" ","")
+
+ url = f"https://www.worldometers.info/coronavirus/country/{countries}/"
+
+ result = requests.get(url)
+
+ soups = bs4.BeautifulSoup(result.text,'lxml')
+
+ corona = soups.find_all('div',class_ = 'maincounter-number')
+
+ Data = []
+
+ for case in corona:
+
+ span = case.find('span')
+
+ Data.append(span.string)
+
+ cases , Death , recovored = Data
+
+ Speak(f"Cases : {cases}")
+ Speak(f"Deaths : {Death}")
+ Speak(f"Recovered : {recovored}")
+
diff --git a/Main.py b/Main.py
new file mode 100644
index 0000000..7837880
--- /dev/null
+++ b/Main.py
@@ -0,0 +1,232 @@
+from types import coroutine
+import pyttsx3
+import speech_recognition as sr
+from Features import GoogleSearch
+from win10toast import ToastNotifier
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[1].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def TakeCommand():
+
+ r = sr.Recognizer()
+
+ with sr.Microphone() as source:
+
+ 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 ""
+
+ return query.lower()
+
+def TaskExe():
+
+ while True:
+
+ query = TakeCommand()
+
+ if 'google search' in query:
+ GoogleSearch(query)
+
+ elif 'youtube search' in query:
+ Query = query.replace("Zara","")
+ query = Query.replace("youtube search","")
+ from Features import YouTubeSearch
+ YouTubeSearch(query)
+
+ elif 'set alarm' in query:
+ from Features import Alarm
+ Alarm(query)
+
+ elif 'download' in query:
+ from Features import DownloadYouTube
+ DownloadYouTube()
+
+ elif 'speed test' in query:
+ from Features import SpeedTest
+ SpeedTest()
+
+ elif 'whatsapp message' in query:
+
+ name = query.replace("whatsapp message","")
+ name = name.replace("send ","")
+ name = name.replace("to ","")
+ Name = str(name)
+ Speak(f"Whats The Message For {Name}")
+ MSG = TakeCommand()
+ from Automations import WhatsappMsg
+ WhatsappMsg(Name,MSG)
+
+ elif 'call' in query:
+ from Automations import WhatsappCall
+ name = query.replace("call ","")
+ name = name.replace("Zara ","")
+ Name = str(name)
+ WhatsappCall(Name)
+
+ elif 'show chat' in query:
+ Speak("With Whom ?")
+ name = TakeCommand()
+ from Automations import WhatsappChat
+ WhatsappChat(name)
+
+ elif 'space news' in query:
+
+
+ Speak("Tell Me The Date For News Extracting Process .")
+
+ Date = TakeCommand()
+
+ from Features import DateConverter
+
+ Value = DateConverter(Date)
+
+ from Nasa import NasaNews
+
+ NasaNews(Value)
+
+ elif 'about' in query:
+ from Nasa import Summary
+ query = query.replace("Zara ","")
+ query = query.replace("about ","")
+ Summary(query)
+
+ elif 'mars images' in query:
+
+ from Nasa import MarsImage
+
+ MarsImage()
+
+ elif 'track iss' in query:
+
+ from Nasa import IssTracker
+
+ IssTracker()
+
+ elif 'near earth' in query:
+ from Nasa import Astro
+ from Features import DateConverter
+ Speak("Tell Me The Starting Date .")
+ start = TakeCommand()
+ start_date = DateConverter(TakeCommand)
+ Speak("And Tell Me The End Date .")
+ end = TakeCommand()
+ end_date = DateConverter(end)
+ Astro(start_date,end_date=end_date)
+
+ elif 'my location' in query:
+
+ from Features import My_Location
+
+ My_Location()
+
+ elif 'where is' in query:
+
+ from Automations import GoogleMaps
+ Place = query.replace("where is ","")
+ Place = Place.replace("Zara" , "")
+ GoogleMaps(Place)
+
+ elif 'online' in query:
+
+ from Automations import OnlinClass
+
+ Speak("Tell Me The Name Of The Class .")
+
+ Class = TakeCommand()
+
+ OnlinClass(Class)
+
+ elif 'write a note' in query:
+
+ from Automations import Notepad
+
+ Notepad()
+
+ elif 'dismiss' in query:
+
+ from Automations import CloseNotepad
+
+ CloseNotepad()
+
+ elif 'time table' in query:
+
+ from Automations import TimeTable
+
+ TimeTable()
+
+ elif 'activate the bulb' in query:
+
+ from DataBase.HomeAuto.SmartBulb import Activate
+
+ Activate()
+
+ Speak("Should I Start Or Close The Bulb ?")
+
+ step = TakeCommand()
+
+ if 'close' in step:
+
+ from DataBase.HomeAuto.SmartBulb import CloseLight
+
+ CloseLight()
+
+ elif 'start' in step:
+
+ from DataBase.HomeAuto.SmartBulb import StartLight
+
+ StartLight()
+
+ elif 'corona cases' in query:
+
+ from Features import CoronaVirus
+
+ Speak("Which Country's Information ?")
+
+ cccc = TakeCommand()
+
+ CoronaVirus(cccc)
+
+ else:
+
+ from DataBase.ChatBot.ChatBot import ChatterBot
+
+ reply = ChatterBot(query)
+
+ Speak(reply)
+
+ if 'bye' in query:
+
+ break
+
+ elif 'exit' in query:
+
+ break
+
+ elif 'go' in query:
+
+ break
+
+TaskExe()
diff --git a/Nasa.py b/Nasa.py
new file mode 100644
index 0000000..96ea4b6
--- /dev/null
+++ b/Nasa.py
@@ -0,0 +1,198 @@
+import requests
+import cartopy.crs as ccrs
+import matplotlib.pyplot as plt
+import os
+from PIL import Image
+import random
+import pyttsx3
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[2].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+Api_Key = "KrsOGOZLgYGcxYVBLZld2U65PevfTyOfbdqy7ggK"
+
+def NasaNews(Date):
+
+ Speak("Extracting Data From Nasa . ")
+
+ Url = "https://api.nasa.gov/planetary/apod?api_key=" + str(Api_Key)
+
+ Params = {'date':str(Date)}
+
+ r = requests.get(Url,params = Params)
+
+ Data = r.json()
+
+ Info = Data['explanation']
+
+ Title = Data['title']
+
+ Image_Url = Data['url']
+
+ Image_r = requests.get(Image_Url)
+
+ FileName = str(Date) + '.jpg'
+
+ with open(FileName,'wb') as f:
+
+ f.write(Image_r.content)
+
+ Path_1 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\" + str(FileName)
+
+ Path_2 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\NasaDataBase\\" + str(FileName)
+
+ os.rename(Path_1, Path_2)
+
+ img = Image.open(Path_2)
+
+ img.show()
+
+ Speak(f"Title : {Title}")
+ Speak(f"According To Nasa : {Info}")
+
+def Summary(Boby):
+
+ list__ = ('2','3','4','5')
+
+ value = random.choice(list__)
+
+ path = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\NasaDataBase\\Images Used\\" + str(value) + ".jpg"
+
+ os.startfile(path)
+
+ name = str(Boby)
+
+ url = "https://hubblesite.org/api/v3/glossary/" + str(name)
+
+ r = requests.get(url)
+
+ Data = r.json()
+
+ if len(Data) != 0:
+
+ retur = Data['definition']
+
+ Speak(f"According To The Nasa : {retur}")
+
+ else:
+
+ Speak("No Data Available , Try Again Later!")
+
+def MarsImage():
+
+ name = 'curiosity'
+
+ date = '2020-12-3'
+
+ Api_ = str(Api_Key)
+
+ url = f"https://api.nasa.gov/mars-photos/api/v1/rovers/{name}/photos?earth_date={date}&api_key={Api_}"
+
+ r = requests.get(url)
+
+ Data = r.json()
+
+ Photos = Data['photos'][:20]
+
+ try:
+
+ for index , photo in enumerate(Photos):
+
+ camera = photo['camera']
+
+ rover = photo['rover']
+
+ rover_name = rover['name']
+
+ camera_name = camera['name']
+
+ full_camera_name = camera['full_name']
+
+ date_of_photo = photo['earth_date']
+
+ img_url = photo['img_src']
+
+ p = requests.get(img_url)
+
+ img = f'{index}.jpg'
+
+ with open(img,'wb') as file:
+ file.write(p.content)
+
+ Path_1 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\" + str(img)
+
+ Path_2 = "E:\\Y O U T U B E\\J A R V I S S E R I E S\\H O W T O M A K E J A R V I S\\DataBase\\NasaDataBase\\MarsImage\\" + str(img)
+
+ os.rename(Path_1,Path_2)
+
+ os.startfile(Path_2)
+
+ Speak(f"This Image Was Captured With : {full_camera_name}")
+
+ Speak(f"This Image Was Captured On : {date_of_photo}")
+
+ except:
+ Speak("There IS An Error!")
+
+def IssTracker():
+
+ url = "http://api.open-notify.org/iss-now.json"
+
+ r = requests.get(url)
+
+ Data = r.json()
+
+ dt = Data['timestamp']
+
+ lat = Data['iss_position']['latitude']
+
+ lon = Data['iss_position']['longitude']
+
+ print(f"Time And Date : {dt}")
+ print(f"Latitude : {lat}")
+ print(f"Longitude : {lon}")
+
+ plt.figure(figsize=(10,8))
+
+ ax = plt.axes(projection = ccrs.PlateCarree())
+
+ ax.stock_img()
+
+ plt.scatter(float(lon),float(lat),color = 'blue' , marker= 'o')
+
+ plt.show()
+
+def Astro(start_date,end_date):
+
+ url = f"https://api.nasa.gov/neo/rest/v1/feed?start_date={start_date}&end_date={end_date}&api_key={Api_Key}"
+
+ r = requests.get(url)
+
+ Data = r.json()
+
+ Total_Astro = Data['element_count']
+
+ neo = Data['near_earth_objects']
+
+ Speak(f"Total Astroid Between {start_date} and {end_date} Is : {Total_Astro}")
+
+ Speak("Extact Data For Those Astroids Are Listed Below .")
+
+ for body in neo[start_date]:
+
+ id = body['id']
+
+ name = body['name']
+
+ absolute = body['absolute_magnitude_h']
+
+ print(id,name,absolute)
+
diff --git a/Password.py b/Password.py
new file mode 100644
index 0000000..f19f569
--- /dev/null
+++ b/Password.py
@@ -0,0 +1,65 @@
+import speech_recognition as sr
+import pyttsx3
+
+engine = pyttsx3.init('sapi5')
+voices = engine.getProperty('voices')
+engine.setProperty('voices',voices[1].id)
+
+def Speak(audio):
+ print(" ")
+ print(f": {audio}")
+ engine.say(audio)
+ engine.runAndWait()
+ print(" ")
+
+def TakeCommand():
+
+ r = sr.Recognizer()
+
+ with sr.Microphone() as source:
+
+ 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 ""
+
+ return query.lower()
+
+def Pass(pass_inp):
+
+ password = "shresth"
+
+ passss = str(password)
+
+ if passss==str(pass_inp):
+
+ Speak("Access Granted .")
+
+ import Main
+
+ else:
+ Speak("Access Not Granted .")
+
+if __name__ == "__main__" :
+
+ Speak("This Particular File Is Password Protected .")
+
+ Speak("Kindly Provide The Password To Access .")
+
+ passssssss = TakeCommand()
+
+ Pass(passssssss)
+
diff --git a/README.md b/README.md
index 318f7ab..077332a 100644
--- a/README.md
+++ b/README.md
@@ -1 +1,3 @@
-# Zara \ No newline at end of file
+# Zara
+
+Zara is the powerfull A.I. Assistent it can do many things just by listening your voice commands
diff --git a/Zara.py b/Zara.py
new file mode 100644
index 0000000..df4ad0e
--- /dev/null
+++ b/Zara.py
@@ -0,0 +1,90 @@
+from PyQt5 import QtCore , QtWidgets , QtGui
+from PyQt5.QtGui import QMovie
+from PyQt5.QtGui import *
+from PyQt5.QtWidgets import *
+from PyQt5.QtCore import *
+from PyQt5.QtCore import Qt , QTimer , QTime , QDate
+from ZaraUi import Ui_MainWindow
+import sys
+import Main
+
+class MainThread(QThread):
+
+ def __init__(self):
+
+ super(MainThread,self).__init__()
+
+ def run(self):
+ self.Task_Gui()
+
+ def Task_Gui(self):
+ Main.TaskExe()
+
+startFunctions = MainThread()
+
+class Gui_Start(QMainWindow):
+
+ def __init__(self):
+
+ super().__init__()
+
+ self.zara_ui = Ui_MainWindow()
+
+ self.zara_ui.setupUi(self)
+
+ self.zara_ui.pushButton.clicked.connect(self.startFunc)
+
+ self.zara_ui.pushButton_2.clicked.connect(self.close)
+
+ def startFunc(self):
+
+ self.zara_ui.movies = QtGui.QMovie("../../../../2 - Python/3 - Materials/G.U.I Material/B.G/1.gif")
+
+ self.zara_ui.Gif.setMovie(self.zara_ui.movies)
+
+ self.zara_ui.movies.start()
+
+
+
+ self.zara_ui.movies_2 = QtGui.QMovie("../../../../2 - Python/3 - Materials/G.U.I Material/VoiceReg/gui (4).gif")
+
+ self.zara_ui.Gif_2.setMovie(self.zara_ui.movies_2)
+
+ self.zara_ui.movies_2.start()
+
+
+
+
+ self.zara_ui.movies_3 = QtGui.QMovie("../../../../2 - Python/3 - Materials/G.U.I Material/ExtraGui/initial.gif")
+
+ self.zara_ui.Gif_3.setMovie(self.zara_ui.movies_3)
+
+ self.zara_ui.movies_3.start()
+
+
+
+ timer = QTimer(self)
+
+ timer.timeout.connect(self.showtime)
+
+ timer.start(1000)
+
+ startFunctions.start()
+
+ def showtime(self):
+
+ current_time = QTime.currentTime()
+
+ label_time = current_time.toString("hh:mm:ss")
+
+ labbel = " Time : " + label_time
+
+ self.zara_ui.textBrowser.setText(labbel)
+
+Gui_App = QApplication(sys.argv)
+
+Gui_Zara = Gui_Start()
+
+Gui_Zara.show()
+
+exit(Gui_App.exec_())
diff --git a/ZaraUi.py b/ZaraUi.py
new file mode 100644
index 0000000..8ad6221
--- /dev/null
+++ b/ZaraUi.py
@@ -0,0 +1,117 @@
+# -*- coding: utf-8 -*-
+
+# Form implementation generated from reading ui file 'ZaraUi.ui'
+#
+# Created by: PyQt5 UI code generator 5.15.4
+#
+# WARNING: Any manual changes made to this file will be lost when pyuic5 is
+# run again. Do not edit this file unless you know what you are doing.
+
+
+from PyQt5 import QtCore, QtGui, QtWidgets
+
+
+class Ui_MainWindow(object):
+ def setupUi(self, MainWindow):
+ MainWindow.setObjectName("MainWindow")
+ MainWindow.resize(1051, 561)
+ self.centralwidget = QtWidgets.QWidget(MainWindow)
+ self.centralwidget.setObjectName("centralwidget")
+ self.Bg = QtWidgets.QLabel(self.centralwidget)
+ self.Bg.setGeometry(QtCore.QRect(-30, -20, 1131, 601))
+ self.Bg.setStyleSheet("background-color: rgb(0, 0, 0);")
+ self.Bg.setText("")
+ self.Bg.setScaledContents(False)
+ self.Bg.setObjectName("Bg")
+ self.bg_border = QtWidgets.QLabel(self.centralwidget)
+ self.bg_border.setGeometry(QtCore.QRect(0, 0, 1051, 561))
+ self.bg_border.setStyleSheet("color: rgb(0, 0, 0);\n"
+"background-color: rgb(0, 0, 0);\n"
+"border : 2px Solid White;\n"
+"")
+ self.bg_border.setText("")
+ self.bg_border.setObjectName("bg_border")
+ self.pushButton = QtWidgets.QPushButton(self.centralwidget)
+ self.pushButton.setGeometry(QtCore.QRect(780, 510, 131, 41))
+ self.pushButton.setStyleSheet("background-color: rgb(0, 0, 0);\n"
+"font: 16pt \"MS Shell Dlg 2\";\n"
+"color: rgb(255, 255, 255);\n"
+"border : 1px solid white;\n"
+"")
+ self.pushButton.setObjectName("pushButton")
+ self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
+ self.pushButton_2.setGeometry(QtCore.QRect(910, 510, 131, 41))
+ self.pushButton_2.setStyleSheet("background-color: rgb(0, 0, 0);\n"
+"font: 16pt \"MS Shell Dlg 2\";\n"
+"color: rgb(255, 255, 255);\n"
+"border : 1px solid white;\n"
+"")
+ self.pushButton_2.setObjectName("pushButton_2")
+ self.Gif = QtWidgets.QLabel(self.centralwidget)
+ self.Gif.setGeometry(QtCore.QRect(10, 10, 601, 381))
+ self.Gif.setStyleSheet("border : 1px solid white;\n"
+"\n"
+"")
+ self.Gif.setText("")
+ self.Gif.setPixmap(QtGui.QPixmap("../../../../2 - Python/3 - Materials/G.U.I Material/B.G/1.gif"))
+ self.Gif.setScaledContents(True)
+ self.Gif.setObjectName("Gif")
+ self.Gif_2 = QtWidgets.QLabel(self.centralwidget)
+ self.Gif_2.setGeometry(QtCore.QRect(620, 10, 421, 201))
+ self.Gif_2.setStyleSheet("background-color: rgb(0, 0, 0);\n"
+"border-color: rgb(255, 255, 255);\n"
+"border : 1px solid white;\n"
+"")
+ self.Gif_2.setText("")
+ self.Gif_2.setPixmap(QtGui.QPixmap("../../../../2 - Python/3 - Materials/G.U.I Material/VoiceReg/gui (4).gif"))
+ self.Gif_2.setScaledContents(True)
+ self.Gif_2.setObjectName("Gif_2")
+ self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
+ self.textBrowser.setGeometry(QtCore.QRect(780, 450, 256, 51))
+ self.textBrowser.setStyleSheet("background-color: rgb(0, 0, 0);\n"
+"border : 2px solid white;\n"
+"color: rgb(255, 255, 255);\n"
+"font: 20pt \"MS Shell Dlg 2\";")
+ self.textBrowser.setObjectName("textBrowser")
+ self.Terminal = QtWidgets.QLabel(self.centralwidget)
+ self.Terminal.setGeometry(QtCore.QRect(10, 400, 761, 151))
+ self.Terminal.setStyleSheet("border-color: rgb(255, 255, 255);\n"
+"border : 1px solid white;\n"
+"")
+ self.Terminal.setText("")
+ self.Terminal.setObjectName("Terminal")
+ self.Gif_3 = QtWidgets.QLabel(self.centralwidget)
+ self.Gif_3.setGeometry(QtCore.QRect(620, 220, 421, 171))
+ self.Gif_3.setStyleSheet("background-color: rgb(0, 0, 0);\n"
+"border-color: rgb(255, 255, 255);\n"
+"border : 1px solid white;\n"
+"")
+ self.Gif_3.setText("")
+ self.Gif_3.setPixmap(QtGui.QPixmap("../../../../2 - Python/3 - Materials/G.U.I Material/ExtraGui/initial.gif"))
+ self.Gif_3.setScaledContents(True)
+ self.Gif_3.setObjectName("Gif_3")
+ MainWindow.setCentralWidget(self.centralwidget)
+
+ self.retranslateUi(MainWindow)
+ QtCore.QMetaObject.connectSlotsByName(MainWindow)
+
+ def retranslateUi(self, MainWindow):
+ _translate = QtCore.QCoreApplication.translate
+ MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
+ self.pushButton.setText(_translate("MainWindow", "START"))
+ self.pushButton_2.setText(_translate("MainWindow", "CLOSE"))
+ self.textBrowser.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
+"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
+"p, li { white-space: pre-wrap; }\n"
+"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:24pt; font-weight:400; font-style:normal;\">\n"
+"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>"))
+
+
+if __name__ == "__main__":
+ import sys
+ app = QtWidgets.QApplication(sys.argv)
+ MainWindow = QtWidgets.QMainWindow()
+ ui = Ui_MainWindow()
+ ui.setupUi(MainWindow)
+ MainWindow.show()
+ sys.exit(app.exec_())
diff --git a/pywhatkit_dbs.txt b/pywhatkit_dbs.txt
new file mode 100644
index 0000000..16b194e
--- /dev/null
+++ b/pywhatkit_dbs.txt
@@ -0,0 +1 @@
+--------------------