Jarvis 2.0 [Part 2]
Video Link :-
Source Code : -
1. IPL SCORE FUNCTION :-
elif "ipl score" in query:
from plyer import notification #pip install plyer
import requests #pip install requests
from bs4 import BeautifulSoup #pip install bs4
url = "https://www.cricbuzz.com/"
page = requests.get(url)
soup = BeautifulSoup(page.text,"html.parser")
team1 = soup.find_all(class_ = "cb-ovr-flo cb-hmscg-tm-nm")[0].get_text()
team2 = soup.find_all(class_ = "cb-ovr-flo cb-hmscg-tm-nm")[1].get_text()
team1_score = soup.find_all(class_ = "cb-ovr-flo")[8].get_text()
team2_score = soup.find_all(class_ = "cb-ovr-flo")[10].get_text()
a = print(f"{team1} : {team1_score}")
b = print(f"{team2} : {team2_score}")
notification.notify(
title = "IPL SCORE :- ",
message = f"{team1} : {team1_score}\n {team2} : {team2_score}",
timeout = 15
)
2. GUI OF JARVIS :-
from INTRO import play_gif
play_gif
#paste this just below the password function
Open a New File and Name it as INTRO.py and paste the following code: -
from tkinter import * #pip install tkinter
from PIL import Image,ImageTk,ImageSequence #pip install Pillow
import time
import pygame #pip install pygame
from pygame import mixer
mixer.init()
root = Tk()
root.geometry("1000x500")
def play_gif():
root.lift()
root.attributes("-topmost",True)
global img
img = Image.open(#enter the gif address)
lbl = Label(root)
lbl.place(x=0,y=0)
i=0
mixer.music.load(#enter the music file address)
mixer.music.play()
for img in ImageSequence.Iterator(img):
img = img.resize((1000,500))
img = ImageTk.PhotoImage(img)
lbl.config(image=img)
root.update()
time.sleep(0.05)
root.destroy()
play_gif()
root.mainloop()
3. ROCK PAPER SCISSOR WITH JARVIS :-
elif "play a game" in query:
from game import game_play
game_play()
Open a New File and Name it as game.py and paste the following code: -
import pyttsx3
import speech_recognition as sr
import random
engine = pyttsx3.init('sapi5')
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[0].id)
engine.setProperty("rate", 170)
def speak(audio):
engine.say(audio)
engine.runAndWait()
def takeCommand():
r = sr.Recognizer()
with sr.Microphone() as source:
print("Listening.....")
r.pause_threshold = 1
r.energy_threshold = 300
audio = r.listen(source,0,4)
try:
print("Recognizing..")
query = r.recognize_google(audio , language= 'en-in')
print(f"You Said : {query}\n")
except Exception as e:
print("Say that again")
return "None"
return query
def game_play():
speak("Lets Play ROCK PAPER SCISSORS !!")
print("LETS PLAYYYYYYYYYYYYYY")
i = 0
Me_score = 0
Com_score = 0
while(i<5):
choose = ("rock","paper","scissors") #Tuple
com_choose = random.choice(choose)
query = takeCommand().lower()
if (query == "rock"):
if (com_choose == "rock"):
speak("ROCK")
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
elif (com_choose == "paper"):
speak("paper")
Com_score += 1
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
else:
speak("Scissors")
Me_score += 1
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
elif (query == "paper" ):
if (com_choose == "rock"):
speak("ROCK")
Me_score += 1
print(f"Score:- ME :- {Me_score+1} : COM :- {Com_score}")
elif (com_choose == "paper"):
speak("paper")
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
else:
speak("Scissors")
Com_score += 1
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
elif (query == "scissors" or query == "scissor"):
if (com_choose == "rock"):
speak("ROCK")
Com_score += 1
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
elif (com_choose == "paper"):
speak("paper")
Me_score += 1
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
else:
speak("Scissors")
print(f"Score:- ME :- {Me_score} : COM :- {Com_score}")
i += 1
print(f"FINAL SCORE :- ME :- {Me_score} : COM :- {Com_score}")
4. SCREENSHOT FUNCTION :-
elif "screenshot" in query:
import pyautogui #pip install pyautogui
im = pyautogui.screenshot()
im.save("ss.jpg")
5. CAMERA FUNCTION :-
elif "click my photo" in query:
pyautogui.press("super")
pyautogui.typewrite("camera")
pyautogui.press("enter")
pyautogui.sleep(2)
speak("SMILE")
pyautogui.press("enter")
#HOPE YOU LIKED IT
No comments:
Post a Comment