TraduzSentencas.py
1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/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"