Commit d90270314761ab85b9a083a7dbdfb717f83272d0
1 parent
4358758a
Exists in
master
and in
1 other branch
Adiciona main ao PortGlosa e retira acentuacao da glosa
Showing
3 changed files
with
34 additions
and
33 deletions
Show diff stats
data/regras.xml
@@ -896,10 +896,11 @@ | @@ -896,10 +896,11 @@ | ||
896 | </class> | 896 | </class> |
897 | </rule> | 897 | </rule> |
898 | <rule name = "VP(VB_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de verbo --> | 898 | <rule name = "VP(VB_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de verbo --> |
899 | - <active>false</active> | 899 | + <active>true</active> |
900 | <count>2</count> | 900 | <count>2</count> |
901 | <class> | 901 | <class> |
902 | - <title>VB</title> | 902 | + <title>VB</title> |
903 | + <action>remove</action> | ||
903 | </class> | 904 | </class> |
904 | <class> | 905 | <class> |
905 | <title>ADV-R</title> | 906 | <title>ADV-R</title> |
@@ -948,7 +949,7 @@ | @@ -948,7 +949,7 @@ | ||
948 | </class> | 949 | </class> |
949 | </rule> | 950 | </rule> |
950 | <rule name = "AP(ADV-R_ADJ)"><!-- tratamento do adverbio de intensidade modificador de adjetivo --> | 951 | <rule name = "AP(ADV-R_ADJ)"><!-- tratamento do adverbio de intensidade modificador de adjetivo --> |
951 | - <active>false</active> | 952 | + <active>true</active> |
952 | <count>2</count> | 953 | <count>2</count> |
953 | <class> | 954 | <class> |
954 | <title>ADV-R</title> | 955 | <title>ADV-R</title> |
@@ -962,10 +963,11 @@ | @@ -962,10 +963,11 @@ | ||
962 | </class> | 963 | </class> |
963 | </rule> | 964 | </rule> |
964 | <rule name = "AP(ADJ_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo --> | 965 | <rule name = "AP(ADJ_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo --> |
965 | - <active>false</active> | 966 | + <active>true</active> |
966 | <count>2</count> | 967 | <count>2</count> |
967 | <class> | 968 | <class> |
968 | <title>ADJ</title> | 969 | <title>ADJ</title> |
970 | + <action>remove</action> | ||
969 | </class> | 971 | </class> |
970 | <class> | 972 | <class> |
971 | <title>ADV-R</title> | 973 | <title>ADV-R</title> |
@@ -1000,7 +1002,7 @@ | @@ -1000,7 +1002,7 @@ | ||
1000 | </class> | 1002 | </class> |
1001 | </rule> | 1003 | </rule> |
1002 | <rule name = "AP(ADV-R_ADJ-F)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino --> | 1004 | <rule name = "AP(ADV-R_ADJ-F)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino --> |
1003 | - <active>false</active> | 1005 | + <active>true</active> |
1004 | <count>2</count> | 1006 | <count>2</count> |
1005 | <class> | 1007 | <class> |
1006 | <title>ADV-R</title> | 1008 | <title>ADV-R</title> |
@@ -1014,10 +1016,11 @@ | @@ -1014,10 +1016,11 @@ | ||
1014 | </class> | 1016 | </class> |
1015 | </rule> | 1017 | </rule> |
1016 | <rule name = "AP(ADJ-F_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino --> | 1018 | <rule name = "AP(ADJ-F_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino --> |
1017 | - <active>false</active> | 1019 | + <active>true</active> |
1018 | <count>2</count> | 1020 | <count>2</count> |
1019 | <class> | 1021 | <class> |
1020 | <title>ADJ-F</title> | 1022 | <title>ADJ-F</title> |
1023 | + <action>remove</action> | ||
1021 | </class> | 1024 | </class> |
1022 | <class> | 1025 | <class> |
1023 | <title>ADV-R</title> | 1026 | <title>ADV-R</title> |
@@ -1052,7 +1055,7 @@ | @@ -1052,7 +1055,7 @@ | ||
1052 | </class> | 1055 | </class> |
1053 | </rule> | 1056 | </rule> |
1054 | <rule name = "AP(ADV-R_ADJ-G)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral --> | 1057 | <rule name = "AP(ADV-R_ADJ-G)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral --> |
1055 | - <active>false</active> | 1058 | + <active>true</active> |
1056 | <count>2</count> | 1059 | <count>2</count> |
1057 | <class> | 1060 | <class> |
1058 | <title>ADV-R</title> | 1061 | <title>ADV-R</title> |
@@ -1066,10 +1069,11 @@ | @@ -1066,10 +1069,11 @@ | ||
1066 | </class> | 1069 | </class> |
1067 | </rule> | 1070 | </rule> |
1068 | <rule name = "AP(ADJ-G_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral --> | 1071 | <rule name = "AP(ADJ-G_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral --> |
1069 | - <active>false</active> | 1072 | + <active>true</active> |
1070 | <count>2</count> | 1073 | <count>2</count> |
1071 | <class> | 1074 | <class> |
1072 | <title>ADJ-G</title> | 1075 | <title>ADJ-G</title> |
1076 | + <action>remove</action> | ||
1073 | </class> | 1077 | </class> |
1074 | <class> | 1078 | <class> |
1075 | <title>ADV-R</title> | 1079 | <title>ADV-R</title> |
@@ -1104,7 +1108,7 @@ | @@ -1104,7 +1108,7 @@ | ||
1104 | </class> | 1108 | </class> |
1105 | </rule> | 1109 | </rule> |
1106 | <rule name = "AP(ADV-R_ADJ-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo masculino plural --> | 1110 | <rule name = "AP(ADV-R_ADJ-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo masculino plural --> |
1107 | - <active>false</active> | 1111 | + <active>true</active> |
1108 | <count>2</count> | 1112 | <count>2</count> |
1109 | <class> | 1113 | <class> |
1110 | <title>ADV-R</title> | 1114 | <title>ADV-R</title> |
@@ -1118,10 +1122,11 @@ | @@ -1118,10 +1122,11 @@ | ||
1118 | </class> | 1122 | </class> |
1119 | </rule> | 1123 | </rule> |
1120 | <rule name = "AP(ADJ-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo masculino plural --> | 1124 | <rule name = "AP(ADJ-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo masculino plural --> |
1121 | - <active>false</active> | 1125 | + <active>true</active> |
1122 | <count>2</count> | 1126 | <count>2</count> |
1123 | <class> | 1127 | <class> |
1124 | <title>ADJ-P</title> | 1128 | <title>ADJ-P</title> |
1129 | + <action>remove</action> | ||
1125 | </class> | 1130 | </class> |
1126 | <class> | 1131 | <class> |
1127 | <title>ADV-R</title> | 1132 | <title>ADV-R</title> |
@@ -1156,7 +1161,7 @@ | @@ -1156,7 +1161,7 @@ | ||
1156 | </class> | 1161 | </class> |
1157 | </rule> | 1162 | </rule> |
1158 | <rule name = "AP(ADV-R_ADJ-F-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino plural --> | 1163 | <rule name = "AP(ADV-R_ADJ-F-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino plural --> |
1159 | - <active>false</active> | 1164 | + <active>true</active> |
1160 | <count>2</count> | 1165 | <count>2</count> |
1161 | <class> | 1166 | <class> |
1162 | <title>ADV-R</title> | 1167 | <title>ADV-R</title> |
@@ -1170,10 +1175,11 @@ | @@ -1170,10 +1175,11 @@ | ||
1170 | </class> | 1175 | </class> |
1171 | </rule> | 1176 | </rule> |
1172 | <rule name = "AP(ADJ-F-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino plural --> | 1177 | <rule name = "AP(ADJ-F-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo feminino plural --> |
1173 | - <active>false</active> | 1178 | + <active>true</active> |
1174 | <count>2</count> | 1179 | <count>2</count> |
1175 | <class> | 1180 | <class> |
1176 | <title>ADJ-F-P</title> | 1181 | <title>ADJ-F-P</title> |
1182 | + <action>remove</action> | ||
1177 | </class> | 1183 | </class> |
1178 | <class> | 1184 | <class> |
1179 | <title>ADV-R</title> | 1185 | <title>ADV-R</title> |
@@ -1208,7 +1214,7 @@ | @@ -1208,7 +1214,7 @@ | ||
1208 | </class> | 1214 | </class> |
1209 | </rule> | 1215 | </rule> |
1210 | <rule name = "AP(ADV-R_ADJ-G-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral plural--> | 1216 | <rule name = "AP(ADV-R_ADJ-G-P)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral plural--> |
1211 | - <active>false</active> | 1217 | + <active>true</active> |
1212 | <count>2</count> | 1218 | <count>2</count> |
1213 | <class> | 1219 | <class> |
1214 | <title>ADV-R</title> | 1220 | <title>ADV-R</title> |
@@ -1222,10 +1228,11 @@ | @@ -1222,10 +1228,11 @@ | ||
1222 | </class> | 1228 | </class> |
1223 | </rule> | 1229 | </rule> |
1224 | <rule name = "AP(ADJ-G-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral plural --> | 1230 | <rule name = "AP(ADJ-G-P_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adjetivo geral plural --> |
1225 | - <active>false</active> | 1231 | + <active>true</active> |
1226 | <count>2</count> | 1232 | <count>2</count> |
1227 | <class> | 1233 | <class> |
1228 | <title>ADJ-G-P</title> | 1234 | <title>ADJ-G-P</title> |
1235 | + <action>remove</action> | ||
1229 | </class> | 1236 | </class> |
1230 | <class> | 1237 | <class> |
1231 | <title>ADV-R</title> | 1238 | <title>ADV-R</title> |
@@ -1416,7 +1423,7 @@ | @@ -1416,7 +1423,7 @@ | ||
1416 | </class> | 1423 | </class> |
1417 | </rule> | 1424 | </rule> |
1418 | <rule name = "AdvP(ADV-R_ADV)"><!-- tratamento do adverbio de intensidade modificador de advervio--> | 1425 | <rule name = "AdvP(ADV-R_ADV)"><!-- tratamento do adverbio de intensidade modificador de advervio--> |
1419 | - <active>false</active> | 1426 | + <active>true</active> |
1420 | <count>2</count> | 1427 | <count>2</count> |
1421 | <class> | 1428 | <class> |
1422 | <title>ADV-R</title> | 1429 | <title>ADV-R</title> |
@@ -1430,10 +1437,11 @@ | @@ -1430,10 +1437,11 @@ | ||
1430 | </class> | 1437 | </class> |
1431 | </rule> | 1438 | </rule> |
1432 | <rule name = "AdvP(ADV_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adverbio (inverso) --> | 1439 | <rule name = "AdvP(ADV_ADV-R)"><!-- tratamento do adverbio de intensidade modificador de adverbio (inverso) --> |
1433 | - <active>false</active> | 1440 | + <active>true</active> |
1434 | <count>2</count> | 1441 | <count>2</count> |
1435 | <class> | 1442 | <class> |
1436 | <title>ADV</title> | 1443 | <title>ADV</title> |
1444 | + <action>remove</action> | ||
1437 | </class> | 1445 | </class> |
1438 | <class> | 1446 | <class> |
1439 | <title>ADV-R</title> | 1447 | <title>ADV-R</title> |
src/PortGlosa.py
@@ -6,6 +6,7 @@ | @@ -6,6 +6,7 @@ | ||
6 | 6 | ||
7 | #LAViD - Laboratório de Aplicações de Vídeo Digital | 7 | #LAViD - Laboratório de Aplicações de Vídeo Digital |
8 | 8 | ||
9 | +import sys | ||
9 | from ThreadTradutor import * | 10 | from ThreadTradutor import * |
10 | from TraduzSentencas import * | 11 | from TraduzSentencas import * |
11 | from LerDicionarios import * | 12 | from LerDicionarios import * |
@@ -51,20 +52,6 @@ def iniciar_sem_threads(texto): | @@ -51,20 +52,6 @@ def iniciar_sem_threads(texto): | ||
51 | texto_traduzido.append(glosa) | 52 | texto_traduzido.append(glosa) |
52 | return " ".join(texto_traduzido) | 53 | return " ".join(texto_traduzido) |
53 | 54 | ||
54 | -''' | ||
55 | -def quebrar_texto(texto): | ||
56 | - quantidade_pontos = texto.count('. ') | ||
57 | - sentencas = [] | ||
58 | - if quantidade_pontos == 0: | ||
59 | - return [texto] | ||
60 | - for i in range(quantidade_pontos): | ||
61 | - posicao_ponto = texto.find('.') | ||
62 | - if texto[posicao_ponto+2].isupper(): | ||
63 | - sentencas.append(texto[:posicao_ponto]) | ||
64 | - texto = texto[posicao_ponto+2:] | ||
65 | - return sentencas | ||
66 | -''' | ||
67 | - | ||
68 | def quebrar_texto(texto): | 55 | def quebrar_texto(texto): |
69 | if '.' not in texto: | 56 | if '.' not in texto: |
70 | return [texto] | 57 | return [texto] |
@@ -87,4 +74,9 @@ def quebrar_texto(texto): | @@ -87,4 +74,9 @@ def quebrar_texto(texto): | ||
87 | 74 | ||
88 | def ajuda(): | 75 | def ajuda(): |
89 | #TODO: Adicionar um pequeno tuto aqui | 76 | #TODO: Adicionar um pequeno tuto aqui |
90 | - print "Help" | ||
91 | \ No newline at end of file | 77 | \ No newline at end of file |
78 | + print "Help" | ||
79 | + | ||
80 | +if __name__ == '__main__': | ||
81 | + texto = sys.argv[1] | ||
82 | + glosa = traduzir(texto) | ||
83 | + sys.exit(glosa) | ||
92 | \ No newline at end of file | 84 | \ No newline at end of file |
src/TraduzSentencas.py
@@ -45,9 +45,10 @@ class TraduzSentencas(object): | @@ -45,9 +45,10 @@ class TraduzSentencas(object): | ||
45 | regras_aplicadas = self.aplic_regras.aplicar_regras_morfo(analise_morfologica) | 45 | regras_aplicadas = self.aplic_regras.aplicar_regras_morfo(analise_morfologica) |
46 | 46 | ||
47 | sentenca_corrigida = self.aplic_regras.simplificar_sentenca(regras_aplicadas) | 47 | sentenca_corrigida = self.aplic_regras.simplificar_sentenca(regras_aplicadas) |
48 | + sentenca_sem_acentos = self.aplic_regras.remover_acento(sentenca_corrigida) | ||
48 | 49 | ||
49 | - if sentenca_corrigida: | ||
50 | - return sentenca_corrigida.upper().encode('utf-8') | 50 | + if sentenca_sem_acentos: |
51 | + return sentenca_sem_acentos.upper().encode('utf-8') | ||
51 | return "TEXTO ERRADO ESCOLHER OUTRO" | 52 | return "TEXTO ERRADO ESCOLHER OUTRO" |
52 | 53 | ||
53 | def salvar_log(self, erro): | 54 | def salvar_log(self, erro): |