Skip to content

Commit

Permalink
#10 Encapsulando métodos em classe
Browse files Browse the repository at this point in the history
  • Loading branch information
Jefersonalves committed Jun 14, 2018
1 parent 14f5418 commit 24b4a6b
Showing 1 changed file with 49 additions and 48 deletions.
97 changes: 49 additions & 48 deletions radar_parlamentar/importadores/camara_genero/nomes_deputadas_csv.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,58 +17,59 @@
'feminino': 'F'
}

def main():
arquivos = listdir(DIRETORIO)
saida = open(ARQUIVO_SAIDA, "w")
numero_deputadas = 0
class NomesDeputadas:
def __init__(self):
self.numero_deputadas = 0

for arquivo in arquivos:
ponteiro = open(DIRETORIO+"/"+ arquivo)
data = ponteiro.read()
dom = parseString(data)
records = dom.getElementsByTagName(TAGS['data'])
copiar_dados_deputados(records)
def main(self):
arquivos = listdir(DIRETORIO)
saida = open(ARQUIVO_SAIDA, "w")
for arquivo in arquivos:
ponteiro = open(DIRETORIO+"/"+ arquivo)
data = ponteiro.read()
dom = parseString(data)
records = dom.getElementsByTagName(TAGS['data'])
self.copiar_dados_deputados(records)
print(self.numero_deputadas)

def copiar_dados_deputados():
for record in records:
informacoes = obter_informacoes_deputado(record)
#conta número de deputadas
if informacoes['genero'] == GENERO['feminino']:
numero_deputadas += 1
escrever_saida(informacoes['nome'], informacoes['genero'], informacoes['legis'])
print(numero_deputadas)
def copiar_dados_deputados(self):
for record in records:
informacoes = self.obter_informacoes_deputado(record)
self.escrever_saida(informacoes['nome'], informacoes['genero'], informacoes['legis'])

def obter_informacoes_deputado(records):
deputado = record.getElementsByTagName(TAGS['mandato'])[0].firstChild.data
genero = obter_genero(deputado)
nome = record.getElementsByTagName(TAGS['nome_txt'])[0].firstChild.data
legis = record.getElementsByTagName(TAGS['mandato'])[0].firstChild.data
legis = legis.split(";")
def obter_informacoes_deputado(self, records):
deputado = record.getElementsByTagName(TAGS['mandato'])[0].firstChild.data
genero = self.obter_genero(deputado)
nome = record.getElementsByTagName(TAGS['nome_txt'])[0].firstChild.data
legis = record.getElementsByTagName(TAGS['mandato'])[0].firstChild.data
legis = legis.split(";")

informacoes = {'nome': nome, 'genero': genero, 'legis': legis}
return informacoes
informacoes = {'nome': nome, 'genero': genero, 'legis': legis}
return informacoes

def escrever_saida(nome, genero, legis):
for leg in legis:
saida_legis = ""
dados = leg.split(",")
ano = dados[1]
saida_legis += "%s/" % ano
try:
estado = dados[2]
saida_legis += "%s/" % estado
partido = dados[3].partition(".")[0]
saida_legis += "%s/" % partido
saida_legis += " , "
except:
print(dados)
saida_legis += " , "
saida.write('%s|%s|%s\n' % (nome, genero, saida_legis))
def escrever_saida(nome, genero, legis):
for leg in legis:
saida_legis = ""
dados = leg.split(",")
ano = dados[1]
saida_legis += "%s/" % ano
try:
estado = dados[2]
saida_legis += "%s/" % estado
partido = dados[3].partition(".")[0]
saida_legis += "%s/" % partido
saida_legis += " , "
except:
print(dados)
saida_legis += " , "
saida.write('%s|%s|%s\n' % (nome, genero, saida_legis))

def obter_genero(deputado):
if deputado.find("Deputada") != -1:
genero = GENERO['feminino']
else:
genero = GENERO['masculino']
def obter_genero(deputado):
if deputado.find("Deputada") != -1:
genero = GENERO['feminino']
self.numero_deputadas += 1
else:
genero = GENERO['masculino']

main()
nome_deputadas = NomesDeputadas()
nome_deputadas.main()

0 comments on commit 24b4a6b

Please sign in to comment.