Commit ffb4524553e717a7647a9dd8a7bd447bd909e16a
1 parent
e4d907d0
Exists in
master
and in
1 other branch
Corrige paths para funcionar no Windows
Showing
3 changed files
with
25 additions
and
13 deletions
Show diff stats
src/new/AplicaRegras.py
@@ -22,7 +22,8 @@ class AplicaRegras(object): | @@ -22,7 +22,8 @@ class AplicaRegras(object): | ||
22 | it.load(texto) | 22 | it.load(texto) |
23 | self.__ts = [] | 23 | self.__ts = [] |
24 | self.__verb = False | 24 | self.__verb = False |
25 | - self.__adv = False; | 25 | + self.__adv = False |
26 | + self.__plural = False | ||
26 | self.__countVerb = 0 | 27 | self.__countVerb = 0 |
27 | self.__countAdv = 0 | 28 | self.__countAdv = 0 |
28 | while(it.hasNext()): | 29 | while(it.hasNext()): |
@@ -32,6 +33,9 @@ class AplicaRegras(object): | @@ -32,6 +33,9 @@ class AplicaRegras(object): | ||
32 | 33 | ||
33 | if self.__dicionarios.hasPalavraIgnorada(tag) == False: # verifica se nao eh artigo/preposicao | 34 | if self.__dicionarios.hasPalavraIgnorada(tag) == False: # verifica se nao eh artigo/preposicao |
34 | 35 | ||
36 | + if tag[-2:] == "-P": | ||
37 | + self.__plural = True | ||
38 | + | ||
35 | #VERIFICA SE É ADVERBIO E CONTA A QUANTIDADE | 39 | #VERIFICA SE É ADVERBIO E CONTA A QUANTIDADE |
36 | if tag[:3] == "ADV": | 40 | if tag[:3] == "ADV": |
37 | if (self.__dicionarios.hasTempoVerbal(token)): | 41 | if (self.__dicionarios.hasTempoVerbal(token)): |
@@ -71,7 +75,9 @@ class AplicaRegras(object): | @@ -71,7 +75,9 @@ class AplicaRegras(object): | ||
71 | self.__ts = self.verbalAnalysis(self.__ts) | 75 | self.__ts = self.verbalAnalysis(self.__ts) |
72 | 76 | ||
73 | #VERIFICA SE É PLURAL | 77 | #VERIFICA SE É PLURAL |
74 | - return self.hasPlural(self.__ts) | 78 | + if self.__plural: return self.hasPlural(self.__ts) |
79 | + | ||
80 | + return self.__ts | ||
75 | 81 | ||
76 | 82 | ||
77 | # converte romano para numero | 83 | # converte romano para numero |
src/new/LeitorDicionarios.py
@@ -7,7 +7,7 @@ | @@ -7,7 +7,7 @@ | ||
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 | from os.path import expanduser | 9 | from os.path import expanduser |
10 | -import csv | 10 | +import csv, platform |
11 | 11 | ||
12 | class LeitorDicionarios(object): | 12 | class LeitorDicionarios(object): |
13 | #_iInstance = None | 13 | #_iInstance = None |
@@ -30,7 +30,13 @@ class LeitorDicionarios(object): | @@ -30,7 +30,13 @@ class LeitorDicionarios(object): | ||
30 | 30 | ||
31 | # Define e inicializa os atributos | 31 | # Define e inicializa os atributos |
32 | def __init__(self): | 32 | def __init__(self): |
33 | - self.__path = expanduser("~") + "/vlibras-translate/data/" | 33 | + |
34 | + so = platform.system() | ||
35 | + if so == 'Windows': | ||
36 | + self.__path = expanduser("~") + "\\vlibras-translate\data\\" | ||
37 | + else: | ||
38 | + self.__path = expanduser("~") + "/vlibras-translate/data/" | ||
39 | + | ||
34 | self.__dicInf = {} | 40 | self.__dicInf = {} |
35 | self.__dicSin = {} | 41 | self.__dicSin = {} |
36 | self.__dicWords = {} | 42 | self.__dicWords = {} |
src/new/alexp.py
@@ -27,16 +27,14 @@ | @@ -27,16 +27,14 @@ | ||
27 | 27 | ||
28 | """Este módulo contém funções que permitem utilizar o Aelius para etiquetar uma sentença, construindo entradas lexicais com base nas etiquetas atribuídas às palavras da sentença. Essas entradas lexicais são integradas em uma gramática CFG dada, que é transformada em um parser, utilizado para gerar uma árvore de estrutura sintagmática da sentença. | 28 | """Este módulo contém funções que permitem utilizar o Aelius para etiquetar uma sentença, construindo entradas lexicais com base nas etiquetas atribuídas às palavras da sentença. Essas entradas lexicais são integradas em uma gramática CFG dada, que é transformada em um parser, utilizado para gerar uma árvore de estrutura sintagmática da sentença. |
29 | """ | 29 | """ |
30 | -import re, string,nltk,os | 30 | +import re, string,nltk,platform |
31 | +from os.path import expanduser | ||
31 | from Aelius.Extras import carrega | 32 | from Aelius.Extras import carrega |
32 | from Aelius import AnotaCorpus | 33 | from Aelius import AnotaCorpus |
33 | 34 | ||
34 | # definição de algumas variáveis globais para | 35 | # definição de algumas variáveis globais para |
35 | # facilitar utilização das diferentes funções do módulo | 36 | # facilitar utilização das diferentes funções do módulo |
36 | 37 | ||
37 | -# sintaxe default em subpasta de nltk_data | ||
38 | -DIR="/vlibras-translate/data/cfg.syn.nltk" | ||
39 | - | ||
40 | # eventualmente será preciso incluir aqui outros sinais | 38 | # eventualmente será preciso incluir aqui outros sinais |
41 | # de pontuação, como o travessão | 39 | # de pontuação, como o travessão |
42 | PUNCT=string.punctuation | 40 | PUNCT=string.punctuation |
@@ -86,11 +84,13 @@ def corrigeAnotacao(lista): | @@ -86,11 +84,13 @@ def corrigeAnotacao(lista): | ||
86 | def encontraArquivo(caminho=DIR): | 84 | def encontraArquivo(caminho=DIR): |
87 | """Encontra arquivo na pasta vlibras-translate. | 85 | """Encontra arquivo na pasta vlibras-translate. |
88 | """ | 86 | """ |
89 | - home = os.path.expanduser("~") | ||
90 | - path = os.path.realpath(home+caminho) | ||
91 | - return path | 87 | + so = platform.system() |
88 | + if so == 'Windows': | ||
89 | + return expanduser("~") + "\\vlibras-translate\data\cfg.syn.nltk" | ||
90 | + else: | ||
91 | + return expanduser("~") + "/vlibras-translate/data/cfg.syn.nltk" | ||
92 | 92 | ||
93 | -def extraiSintaxe(caminho=DIR): | 93 | +def extraiSintaxe(): |
94 | """Extrai gramática armazenada em arquivo cujo caminho é definido relativamente ao diretório nltk_data. | 94 | """Extrai gramática armazenada em arquivo cujo caminho é definido relativamente ao diretório nltk_data. |
95 | """ | 95 | """ |
96 | arquivo=encontraArquivo(caminho) | 96 | arquivo=encontraArquivo(caminho) |
@@ -119,7 +119,7 @@ def constroiAnalisador(s): | @@ -119,7 +119,7 @@ def constroiAnalisador(s): | ||
119 | corrigeAnotacao(SENTENCA_ANOTADA) | 119 | corrigeAnotacao(SENTENCA_ANOTADA) |
120 | entradas=geraEntradasLexicais(SENTENCA_ANOTADA) | 120 | entradas=geraEntradasLexicais(SENTENCA_ANOTADA) |
121 | lexico="\n".join(entradas) | 121 | lexico="\n".join(entradas) |
122 | - gramatica="%s\n%s" % (extraiSintaxe(DIR).strip(),lexico) | 122 | + gramatica="%s\n%s" % (extraiSintaxe().strip(),lexico) |
123 | cfg=nltk.CFG.fromstring(gramatica) | 123 | cfg=nltk.CFG.fromstring(gramatica) |
124 | return nltk.ChartParser(cfg) | 124 | return nltk.ChartParser(cfg) |
125 | 125 |