Oii Liliane, espero que esteja tudo bem com você.
Obrigada por compartilhar seu código por aqui. Verifiquei que a biblioteca TextBlob
sofreu algumas mudanças internas recentes que fizeram com que o recurso de tradução não funcione da mesma forma apresentada no vídeo. Inclusive, há uma discussão no github oficial da biblioteca sobre isso, que se encontra em aberto na data atual.
Como solução alternativa, utilize a biblioteca googletrans para efetuar a tradução e após isso, passe o texto traduzido para a biblioteca TextBlob para a análise de sentimento. Abaixo o passo a passo para fazer isso:
1 - Instale a biblioteca googletrans:
pip install googletrans==3.1.0a0
2 - Adicione a importação desta biblioteca no cabeçalho do arquivo:
from googletrans import Translator
3 - Crie um objeto Translator
logo abaixo da criação da variável app
:
translator = Translator()
4 - Já no endpoint /'sentimento/<frase>'
, a primeira coisa que faremos será efetuar a tradução da frase através do método translate e logo após isso, passamos a frase traduzida para a TextBlob:
frase_en = translator.translate(frase, dest='en')
tb_en = TextBlob(frase_en.text)
O código completo modificado ficará da seguinte forma:
from flask import Flask
from textblob import TextBlob
from googletrans import Translator
app = Flask(__name__)
translator = Translator()
@app.route('/')
def home():
return "Minha primeira API."
@app.route('/sentimento/<frase>')
def sentimento(frase):
frase_en = translator.translate(frase, dest='en')
tb_en = TextBlob(frase_en.text)
polaridade = tb_en.sentiment.polarity
return "polaridade: {}".format(polaridade)
app.run(debug=True)
Após essas modificações tente executar o código novamente.
Fico à disposição em caso de dúvidas ou eventuais erros no processo.
Grande abraço e bons estudos!