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): |