bom dia ontem eu consegui endireitar o meu código tipo instalar todas os pacotes aí eu fui dar o run a apareceu isso o que eu faço
bom dia ontem eu consegui endireitar o meu código tipo instalar todas os pacotes aí eu fui dar o run a apareceu isso o que eu faço
Pode postar o seu código aqui pra gente da uma olhada?
pode deixar eu vou fazer isso
tela do run
line 73, in <module> main()
line 71, in main monitora_audio()
line 15, in monitora_audio microfone = sr.Recognizer
^^
nameError: name 'sr' is not defined. did you mean: 'str'?
ele nao esta encontrando a variavel sr, essa variavel foi definida no codigo? ou importada?
importada eu a
copia todo o codigo e cola ele aqui, mas usa a formatação... aqui quando escreve uma mensagem, tem umas opcoes, um dos botoes é assim: </>, clica nele e cola o seu codigo completo
ai meu amigo
from gtts import gTTS
from playsound import playsound
from bs4 import BeautifulSoup
import webbrowser as browser
##### comfiguraçoes #####
hotword = 'zoey'
with open('zoey python assistente-console do google cloud.json') as credenciais_google:
credenciais_google = credenciais_google
##### funçoes principais #####
def monitora_audio():
microfone = sr.Recognizer()
with sr.microphone() as source:
while True:
print("aguardando o comando: ")
audio = microfone.listem(source)
try:
trigger = microfone.recognize_google_cloud(audio, credentials_json=credenciais_google,
language='pt-br')
trigger = trigger.lower()
if hotword in trigger:
print('COMANDO:', trigger)
responde('feedback')
executa_comandos(trigger)
break
except sr.UnknowValueError:
print("google not understand audio")
except sr.RequestError as e:
print("cold not request results from google cloud speech service; {0}".format(e))
return trigger
def responde(arquivo):
playsound('audios/' + arquivo + '.mp3')
def cria_audio(mensagem):
tts = gTTS(mensagem, lang='pt-br')
tts.save('audios/mensagem.mp3')
print('zoey:',mensagem)
def executa_comandos(trigger):
if 'noticias' in trigger:
ultimas_noticias()
elif 'toca' in trigger and 'fusion' in trigger:
playlist('fusion')
elif 'toca' in trigger and 'festa' in trigger:
playlist('festa')
else:
mensagem = trigger.strip(hotword)
cria_audio(mensagem)
print('C. INVALIDO',mensagem)
responde('comando_invalido')
##### funçoes comandos #####
def ultimas_noticias():
site = get('https://news.google.com/rss?need=pt_br&gl=BR&pt=pt-BR&ceid=BR:pt-419&hl=pt-BR')
noticias = BeautifulSoup(site.text, 'html.parser')
for item in noticias.findAll('item')[:2]:
mensagem = item.title.text
cria_audio(mensagem)
def playlist(album):
if album == 'fusion':
browser.open('https://open.spotify.com/playlist/0yYwcSjUxRctrnfbIQXHWD?si=b1dd8ea47cce4eee')
elif album == 'festa':
browser.open('https://open.spotify.com/playlist/37i9dQZF1DWUSHGSJhLype?si=44e1870932324122')
def main():
while True:
monitora_audio()
main()
line 73, in <module> main()
line 71, in main monitora_audio()
line 15, in monitora_audio microfone = sr.Recognizer
nameError: name 'sr' is not defined. did you mean: 'str'? ^^
minha tela de erro
Olha, realmente a variavel 'sr' nao esta declarada nem importada neste componente. Deve ter pulado algum passo do curso onde foi configurada essa variavel, tenta voltar umas aulas pra ver de onde o professor puxou esta variavel.
e em quanto a
<module > main()
monitora_audio microfone = sr.Recognizer
Entao, vc criou uma variavel do tipo monitora_audio, chamada microfone, e o valor dela é sr.Recognizer, ou seja, Recognizer é um atributo/método do objeto SR. Mas vc precisa informar pro código de onde esta vindo este SR, antes de fazer solicitações a ele.
ou seja tenho que desinstalar o pacote sr