import speech_recognition as sr
from datetime import datetime
import webbrowser
import time
from gtts import gTTS
from playsound import playsound
import random
import os
import smtplib
r = sr.Recognizer()
def record(ask = False):
with sr.Microphone() as source:
if ask:
print(ask)
audio = r.listen(source)
voice = ""
try:
voice = r.recognize_google(audio,language="tr-TR")
except sr.UnknownValueError:
speak("anlayamadım")
except sr.UnknownValueError:
speak("sistem çalışmadı")
return voice
def mailgönder(voice):
if "e-posta gönder" in voice:
mesaj = record("mesaj nedir")
mail = smtplib.SMTP("smtp.gmail.com",587)
mail.ehlo()
mail.starttls()
speak("kullanıcı adını ve şifreni gir")
a = str(input("kullanıcı adınız :"))
b = str(input("şifreniz"))
mail.login(a,b)
c = input("gönderilecek adres :")
mail.sendmail(a,c,mesaj)
speak("gönderiliyorr")
def response(voice):
if "nasılsın" in voice:
speak("iyiyim sen nasılsın")
if "arama yap" in voice:
search = record("ne aramak istiyorsun")
url = "https://google.com/search?q="+search
webbrowser.get().open(url)
speak(search+"için bulduklarım")
if "ne haber" in voice:
speak("iyiyim senden naber")
if "tamamdır" in voice:
speak("görüşürüz")
exit()
if "saat kaç" in voice:
print(datetime.now().strftime("%H:%M:&S"))
def speak(string):
tts = gTTS(string,lang="tr")
rand = random.randint(1,10000)
file = "audio-"+str(rand)+".mp3"
tts.save(file)
playsound(file)
os.remove(file)
speak("nasıl yardımcı olabilirim")
time.sleep(1)
while 1:
voice = record()
print(voice)
response(voice)
mailgönder(voice)
Sesli asistan örneğine burdan ulaşabilirsiniz
1 Beğeni
aklınıza değişik fikirler geldiyse bana söylemekten çekinmeyin
Kodlarınızı github üzerinde requirements ile beraber paylaşırsanız daha erişilebilir olacaktır.
1 Beğeni
Tavsiyeniz için teşekkür ederim
bu kodda kullandığınız e-posta özelliğindeki kullanıcı adı ve şifre yerine ne yazıyoruz
1 Beğeni
Kendi gmail adresinizi yazıyorsunuz
yada program için oluşturduğunuz gmail hesabınızın adresini.
1 Beğeni
kendi gmail’imi yazdım ama hata verdi ve program için e posta nasıl oluyor
Hata mesajını atarmısınız.
Traceback (most recent call last):
File “C:/Users/fatih/PycharmProjects/mark/main.py”, line 82, in
mailgönder(voice)
File “C:/Users/fatih/PycharmProjects/mark/main.py”, line 38, in mailgönder
mail.login(a, b)
File “C:\Users\fatih\AppData\Local\Programs\Python\Python36\lib\smtplib.py”, line 730, in login
raise last_exception
File “C:\Users\fatih\AppData\Local\Programs\Python\Python36\lib\smtplib.py”, line 721, in login
initial_response_ok=initial_response_ok)
File “C:\Users\fatih\AppData\Local\Programs\Python\Python36\lib\smtplib.py”, line 642, in auth
raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (535, b’5.7.8 Username and Password not accepted. Learn more at\n5.7.8 https://support.google.com/mail/?p=BadCredentials k20sm2444064eja.10 - gsmtp’)
Harun_Enes_Celik:
e posta nasıl oluyor
herhangi bir oyunda smurf hesap gibi düşünebilirsin. ben kendi e postamı değil de önceden oluşturduğum başka bir e-postayla giriş yapmak istiyorum diyelim
google dan daha az güvenilir uygulamalara izin ver gibi bir seçenek vardı onu açtınız mı
Ouzzii
Mayıs 15, 2021, 12:08ös
12
Ayarlar Sekmesi>Tüm Ayarları Görüntüleyin>Yönlendirme ve POP/IMAP kısmından IMAP’i etkinleştirmeniz lazım bildiğim kadarıyla
PyAudio bulunamadı diyor. Daha önce pip aracılığıyla bu modülü indirmiş miydiniz?
Yanıtınız hayır ise bir komut istemcisi (cmd) çalıştırın.
Ardından,
pip install pyaudio
yazıp enter tuşuna basın.
Eğer bu noktada hata verirse
pip install winpip
ardından
winpip install pyaudio
deneyin.
Muhtemelen dosya açmada bir sıkıntı çıkmıştır.
Ben o kodu yazarkende çıkıyordu hata sonra da düzeltmedim.
1 Beğeni
Grata
Kasım 28, 2021, 11:27öö
18
Düzelttim hocam, teşekkürler.
1 Beğeni
Böyle bir hata laıyorum nedeni nedir
@Ensar_Hakan audio.mp3
dosyasını kapatmadan tekrar açmayı denemişsiniz.
Bu kodu uzun zaman önce yazmıştım(ki benim kodum bile değil)
Bu kaynaktan almıştım: