TraduzSentencas.py 1.45 KB
#!/usr/bin/python
# -*- coding: utf-8 -*-

#Autor: Erickson Silva 
#Email: <erickson.silva@lavid.ufpb.br> <ericksonsilva@live.com>

#LAViD - Laboratório de Aplicações de Vídeo Digital

import alexp
from AplicaSinonimos import *
from AplicaRegras import * 

aplic_sinonimos = AplicaSinonimos()
aplic_regras = AplicaRegras()


def traduz(texto):
	try:
		texto_codificado = texto.decode("utf-8")
	except:
		texto_codificado = texto.decode("iso-8859-1")
	glosa = iniciar_traducao(texto_codificado)
	if glosa: return glosa
	return "selecione um texto"
	
def iniciar_traducao(texto):
	texto_quebrado = texto.lower().split(".")
	texto_traduzido = []
	for sentenca in texto_quebrado:
		if len(sentenca) > 0 and sentenca != " ":
			analise = gerar_analise(sentenca)
			texto_traduzido.append(analise)
	try:
		return " ".join(texto_traduzido)
	except:
		return ""

def gerar_analise(sentenca):
	try:
		analise_sintatica = alexp.run(sentenca)
	except:
		analise_sintatica = None

	analise_morfologica = alexp.getAnaliseMorfologica()
	if (isinstance(analise_sintatica,type(None))):
		regras_aplicadas = aplic_regras.aplicar_regras_morfo(analise_morfologica)
	else:
		regras_aplicadas = aplic_regras.aplicar_regras_sint(analise_morfologica, analise_sintatica)
	
	aplic_regras.separar_new_tokens(regras_aplicadas)
	sinonimos_aplicados = aplic_sinonimos.aplicar_sinonimos(regras_aplicadas)
	return sinonimos_aplicados.encode('utf-8')

def help():
	#TODO: Adicionar um pequeno tuto aqui
	print "Help"