Commit 82a7f1e6a2cec486252bb248a19a024fafac072f

Authored by Erickson Silva
1 parent 4e2fc3df
Exists in devel

Implementa tradução em nova thread

Showing 1 changed file with 7 additions and 23 deletions   Show diff stats
src/PortGlosa.py
... ... @@ -8,22 +8,15 @@
8 8  
9 9 import sys
10 10 from ThreadTradutor import *
11   -from TraduzSentencas import *
12 11 from LerDicionarios import *
13 12  
14   -tradutor = TraduzSentencas()
15 13 taxas = []
16 14  
17   -def traduzir(texto, log=None, threads=False, taxa_qualidade=False):
18   - #tradutor.set_level(log) if log != None else tradutor.desativar_logging()
  15 +def traduzir(texto, threads=False, taxa_qualidade=False):
19 16 if texto.isspace() or texto == "":
20   - #or not checar_idioma(texto):
21 17 return "ESCOLHER TEXTO CERTO"
22   -
23   - #elif threads:
24   - # return iniciar_com_threads(texto, taxa_qualidade)
25   -
26   - #else:
  18 + elif threads:
  19 + return iniciar_com_threads(texto, taxa_qualidade)
27 20 return iniciar_sem_threads(texto, taxa_qualidade)
28 21  
29 22 def iniciar_com_threads(texto, taxa_qualidade):
... ... @@ -52,8 +45,10 @@ def iniciar_sem_threads(texto, taxa_qualidade):
52 45 texto_quebrado = quebrar_texto(texto)
53 46 saidas = []
54 47 for texto in texto_quebrado:
55   - saida = tradutor.iniciar_traducao(texto, taxa_qualidade)
56   - saidas.append(saida)
  48 + thread_tradutor = ThreadTradutor(texto,taxa_qualidade)
  49 + thread_tradutor.start()
  50 + thread_tradutor.join()
  51 + saidas.append(thread_tradutor.obter_glosa())
57 52 if taxa_qualidade:
58 53 return gerar_taxa_qualidade(saidas)
59 54 return " ".join(saidas)
... ... @@ -101,17 +96,6 @@ def gerar_taxa_qualidade(lista_saidas):
101 96 taxa_sentenca = (float(soma_taxas)/len(lista_saidas)) * 0.80
102 97 return {'glosa':" ".join(glosas), 'taxa_qualidade': float("%.2f" % (taxa_sintatica+taxa_sentenca))}
103 98  
104   -def checar_idioma(texto):
105   - try:
106   - texto.decode('cp1252')
107   - except:
108   - return False
109   - return True
110   -
111   -def ajuda():
112   - #TODO: Adicionar um pequeno tuto aqui
113   - print "Help"
114   -
115 99 if __name__ == '__main__':
116 100 texto = sys.argv[1]
117 101 glosa = traduzir(texto)
... ...