def analiasar_sentimento(): nova_fachada = Fachada() resenha = request.form['txtResenha'] documento = nova_fachada.analisar_sentimento_documento(resenha) if documento.categoria == 'pos': sentimento = 'positivo' elif documento.categoria == 'neg': sentimento = 'negativo' # sentimento = documento.categoria # Dispoẽ os elementos no template html 'resultado_analise' (gráfico, tweets) return render_template('home.html', sentimento=sentimento, resenha=resenha)
#!/usr/bin/python # -*- coding: utf-8 -*- from controle.fachada import Fachada from dominio.entidades import Documento from util.classificador_util import ClassificadorUtil from util.corpus_util import CorpusUtil import codecs import os from random import shuffle from util.arquivo_util import ArquivoUtil if __name__ == '__main__': texto = raw_input("Resenha: ") nova_fachada = Fachada() # texto = "Incrível apaixonante emocionante." # texto = u"""Imprestável Puro lixo!""" # texto = u"livro cansativo, massante." # texto = "livro apaixonante, lindo!" # texto = u"péssimo horrível desisti enfadonho" # texto = u"livro muito chato" documento = nova_fachada.analisar_sentimento_documento(texto) print "-- sentimento: %s." % documento.categoria
def analisar_sentimento_conjunto(): paths = { PERCY_JACKSON: "/home/lucas/Documents/mineracao_opiniao/resenhas_percy_jackson", JOGOS_VORAZES: "/home/lucas/Documents/mineracao_opiniao/resenhas_jogos_vorazes", CONVERGENTE: "/home/lucas/Documents/mineracao_opiniao/resenhas_convergente", CIDADES_DE_PAPEL: "/home/lucas/Documents/mineracao_opiniao/resenhas_cidades_de_papel" } diretorio_destino_grafico = "/home/lucas/Documents/mineracao_opiniao/graficos" titulo_livro = request.form['titulo_livro'] documentos_path = paths[titulo_livro] documentos = ArquivoUtil().ler_documentos(documentos_path, None) documentos_classificados = [] # Pequena correção no título do livro documento = Documento(titulo_livro, None, None, None) titulo_livro = DivideCamelCaseCommand().execute(documento).texto data_analise = time.strftime("%d/%m/%Y") horario_analise = time.strftime("%H:%M:%S") nova_fachada = Fachada() qtde_pos = 0 qtde_neg = 0 for documento in documentos: documento_classificado = nova_fachada.analisar_sentimento_documento( documento.texto) documento_classificado.texto = documento.texto # Substitui o texto processado pelo original documentos_classificados.append(documento_classificado) if documento_classificado.categoria == "pos": qtde_pos += 1 elif documento_classificado.categoria == "neg": qtde_neg += 1 # Calcula porcentagem de resenhas positivas e negativas porcentagens = CalculoUtil().calcular_porcentagem_opinioes( qtde_pos, qtde_neg) porcentagem_pos = porcentagens[CalculoUtil().PORCENTAGEM_POSITIVA] porcentagem_neg = porcentagens[CalculoUtil().PORCENTAGEM_NEGATIVA] grafico = GraficoUtil() nome_grafico = grafico.construir_grafico_pizza(porcentagem_pos, porcentagem_neg, titulo_livro, diretorio_destino_grafico) '''nome_grafico = grafico.salvar_grafico(grafico_pizza, titulo_livro, diretorio_destino_grafico)''' return render_template('resultado_analise.html', documentos=documentos_classificados, titulo_livro=titulo_livro, data_analise=data_analise, horario_analise=horario_analise, grafico_pizza=nome_grafico)