Python dilinde Google açma kapama nasıl yapılır?

HHSstudio

Femtopat
Katılım
5 Aralık 2024
Mesajlar
11
Daha fazla  
Sistem Özellikleri
rtx 4060
i5 12. nesil
16gb ddr4 ram
1tb m2 ssd
500 gb hhd
240 hz monitör
Cinsiyet
Erkek
Python:
 elif "youtube" in user_input.lower():
 webbrowser.open("https://www.youtube.com") # YouTube açma.
 print("YouTube açıldı.")

Python'da bukodu yazdım çalışıyor fakat kapamak için bir kod yazamadım, Google kapa dediğimde kapasın.
Kodun tamamı:
Kod:
İmport requests.
İmport JSON.
İmport speech_recognition as sr.
From gtts import gtts.
İmport playsound.
İmport OS.
İmport time.
From datetime import datetime, timedelta.
İmport re.
İmport webbrowser.
# Openweathermap API URL ve anahtar.
Weather_api_key = "apıkey" # openweathermap API anahtarınızı buraya ekleyin.
Weather_api_url = "apıkey"
# API URL ve anahtar.
Api_url = "apıkey" # openrouter API URL'si.
Api_key = "apıkey" # llama API anahtarınızı buraya ekleyin.
# Gün adlarının İngilizce'den Türkçeye çevrilmesi için sözlük.
Day_translation = {
 "Monday": "pazartesi",
 "Tuesday": "salı",
 "Wednesday": "çarşamba",
 "Thursday": "perşembe",
 "Friday": "cuma",
 "Saturday": "cumartesi",
 "Sunday": "pazar"
}
# Kullanıcıdan gelen sesli komutu metne çevirme.
Def listen_to_user():
 Recognizer = sr.Recognizer()
 With sr.Microphone() as source:
 Recognizer. Adjust_for_ambient_noise(Source) # ortam gürültüsüne ayarlama.
 Audio = recognizer. Listen(Source)
 Try:
 User_input = recognizer. Recognize_google(Audio, language="TR-TR") # Türkçe dil desteği.
 Print(F"siz: {user_input}")
 Return user_input.
 Except sr. Unknownvalueerror:
 Print("sesi anlayamadım.  tekrar edin.")
 Return ""
 Except sr. Requesterror as e:
 Print(F"Google speech API servisi kullanılamıyor; {e}")
 Return ""
# API'ye istek gönderme ve llama yanıtını alma.
Def get_llama_response(user_input):
 Headers = {
 "Authorization": F"bearer {api_key}",
 "Content-type": "application/json"
 }
 Data = {
 "Model": "meta-llama/llama-3.1-70b-instruct:free", # llama modelini seçiyoruz.
 "Messages": [{"role": "user", "content": user_input}]
 }
 Try:
 # API'ye post isteği gönder.
 Response = requests. Post(api_url, headers = headers, data = JSON. Dumps(data))
 response.raise_for_status() # API isteği hata verirse exception fırlatır.
 Response_data = response.json()
 # Yanıtı kontrol et.
 İf 'choices'in response_data and len(response_data['choices']) > 0:
 Return response_data['choices'][0]['message']['content']
 Elif "error" in response_data:
 Return F"API hatası: {response_data['error']['message']}"
 Else:
 Return "yanıt alınamadı veya beklenen formatta değil."

 Except requests. Exceptions. Requestexception as e:
 # API limit aşımı hatası (429) durumunda bekleyebiliriz.
 İf '429'in str(e):
 Print("API limitine ulaşıldı. Bir süre bekleyin ve tekrar deneyin.")
 Time. Sleep(10) # 10 saniye bekleme süresi.
 Return "API limit aşımı. tekrar deneyin."
 Return F"bir hata oluştu: {e}"
# Hava durumu sorgulama fonksiyonu.
Def get_weather(City):
 Params = {
 'Q': City, # şehir adı.
 'Appid': Weather_api_key, # API anahtarınız.
 'Lang': 'TR', # Türkçe yanıt.
 'Units': 'metric' # celsius (santigrat) cinsinden sıcaklık.
 }
 Try:
 Response = requests. Get(weather_api_url, params = params)
 Data = response.json()
 İf response. Status_code == 200:
 Temp = data['main']['temp']
 Description = data['weather'][0]['description']
 Return F"şu anda İstanbul'da hava {description} ve sıcaklık {temp}°c."
 Else:
 Return "hava durumu bilgisi alınamadı."
 Except exception as e:
 Return F"bir hata oluştu: {e}"
# Metni sese çevirme ve sesi oynatma.
Def text_to_speech(text):
 Try:
 Time. Sleep(0.01) # yanıt verilmeden önce 50 milisaniye bekle.
 TTS = gtts(text = text, lang='TR', Slow = false) # Türkçe dilinde hızlı sesli yanıt.
 TTS. Save("response. MP3")
 Playsound. Playsound("response. MP3")
 OS. Remove("response. MP3") # ses dosyasını sildikten sonra temizle.
 Except exception as e:
 Print(F"sesli yanıt oluşturulurken bir hata oluştu: {e}")
# Saat bilgisini alma.
Def get_current_time():
 Now = datetime.now()
 Return now. Strftime("%h:%m") # saat ve dakikayı döndürür.
# Alarm kurma.
Def set_alarm(minutes):
 Print(F"{minutes} dakika sonra alarm kuruldu.")
 Time. Sleep(minutes * 60) # dakika cinsinden bekle.
 Playsound. Playsound("alarm. MP3") # alarm sesi çal.
# Gün ve tarih sorgulama.
Def get_day_of_week(date_str):
 Try:
 Date = datetime. Strptime(date_str, "%y-%m-%d")
 Return date. Strftime("%a") # örneğin: Monday, tuesday vb.
 except valueerror:
 Return "geçersiz tarih formatı.  yyyy-AA-gg formatında girin."
# Yarının hangi gün olduğunu soran fonksiyon.
Def get_tomorrow_day():
 Tomorrow = datetime.now() + timedelta(days = 1) # yarınki tarih.
 Day_in_english = tomorrow. Strftime("%a") # İngilizce gün adı.
 Return day_translation. Get(day_in_english, day_in_english) # Türkçeye çevir ve döndür.
# Bugünün hangi gün olduğunu soran fonksiyon.
Def get_today_day():
 Today = datetime.now() # bugünkü tarih.
 Day_in_english = today. Strftime("%a") # İngilizce gün adı.
 Return day_translation. Get(day_in_english, day_in_english) # Türkçeye çevir ve döndür.
# Günün sabah mı akşam mı olduğunu kontrol etme.
Def check_time_of_day():
 Current_hour = datetime.now().hour
 İf current_hour >= 8 and current_hour < 12:
 Return "sabah"
 Elif current_hour >= 12 and current_hour < 18:
 Return "öğleden sonra"
 Else:
 Return "akşam"
# Saat 8'de alarm çalması.
Def check_for_alarm():
 Current_hour = datetime.now().hour
 İf current_hour == 8:
 Playsound. Playsound("kalk. MP3") # kalkma alarmını çalar.
# Yapılacaklar listesi için liste.
Todo_list = []
# Yapılacaklar listesine görev ekleme.
def add_task_to_list(task):
 todo_list.append(task)
 text_to_speech(f"{task} görevini listeye ekledim.")
# Yapılacaklar listesini okuma.
def read_todo_list():
 if todo_list:
 tasks = "\n".join(todo_list)
 text_to_speech(f"Yapılacaklar listeniz şu şekilde: {tasks}")
 else:
 text_to_speech("Yapılacaklar listeniz boş.")
# Ana fonksiyon.
def main():
 playsound.playsound("ding.mp3") # Ding sesini çalar.

 print("Yapay zeka ile konuşmaya başlamak için bir şeyler söyleyin! ('çıkış' diyerek çıkabilirsiniz.)")
 print("Sizi dinliyorum...")

 exit_keywords = ["hoşçakal", "görüşürüz", "kendine iyi bak"]
 While true:
 User_input = listen_to_user() # Kullanıcıdan sesli giriş al.

 check_for_alarm() # Saat 8 alarmı kontrol et.

 İf "ramiz" in user_input.lower():
 Playsound. Playsound("kalk. MP3")
 Print("kalkma alarmı çaldı!") # alarm çaldığında ekrana mesaj yazdır.

 Elif any(keyword in user_input.lower() for keyword in exit_keywords):
 Print("hoşça kal! Kendine iyi bak!")
 Break.

 Elif "Google" in user_input.lower():
 webbrowser.open("https://www.google.com") # Google açma.
 Print("Google açıldı.")
 Elif "Google" in user_input.lower():
 webbrowser.close("https://www.google.com") # Google açma.
 Print("Google açıldı.")

 Elif "YouTube" in user_input.lower():
 webbrowser.open("YouTube") # YouTube açma.
 Print("YouTube açıldı.")

 Elif "hava durumu" in user_input.lower():
 Weather_response = get_weather("İstanbul") # hava durumu sorgulama.
 Text_to_speech(weather_response)

 Elif "saat" in user_input.lower():
 Current_time = get_current_time()
 Text_to_speech(F"şu an saat {current_time}.")

 Elif "yarın" in user_input.lower():
 Tomorrow_day = get_tomorrow_day()
 Text_to_speech(F"yarın {tomorrow_day}.")

 Elif "bugün" in user_input.lower():
 Today_day = get_today_day()
 Text_to_speech(F"bugün {today_day}.")

 Elif "alarm kur" in user_input.lower():
 Minutes = int(re. Search(r"\d+", user_input).group()) # Dakika sayısını al.
 Set_alarm(minutes) # alarm kurma.

 Elif "görev ekle" in user_input.lower():
 Task = user_input.lower().replace("görev ekle", "").strip()
 Add_task_to_list(task)

 Elif "görevleri oku" in user_input.lower():
 read_todo_list()
 Else:
 Llama_response = get_llama_response(user_input) # llama API yanıtı alma.
 Text_to_speech(llama_response) # yanıtı sesli yanıt olarak çal.
İf name == "main":
 main()
Kodun tamamı çalışıyor fakat dediğimi ekleyemedim (API'leri girdim kodda gözükmemesi için sildim).
 
Son düzenleyen: Moderatör:

Technopat Haberler

Geri
Yukarı