Esempio n. 1
0
def main():

    capture = Capture(schema='camara_v1')

    # capture data with this
    capture.capture_data(
        url=
        'http://www.camara.leg.br/SitCamaraWS/Deputados.asmx/ObterPartidosCD')
    data_list = capture.data['partidos']['partido']
    data_list = capture.to_default_dict(data_list)
    data_list = from_api_to_db_deputados(data_list, capture.url)
    capture.insert_data(data_list,
                        table_name='partidos',
                        if_exists='pass',
                        key='id_partido')
Esempio n. 2
0
def main():

    capture = Capture(schema='camara_v2')

    # capture data with this
    base_url = 'https://dadosabertos.camara.leg.br/api/v2/proposicoes/{}/tramitacoes'
    urls = urls_generator(capture, base_url)

    for url, id_proposicao in urls:
        print(url)
        capture.capture_data(url, content_type='json')

        data_list = capture.data['dados']
        data_list = capture.to_default_dict(data_list)
        data_list = from_api_to_db(data_list, url, id_proposicao)
        capture.insert_data(data_list, table_name='tramitacao')
Esempio n. 3
0
def main():

    capture = Capture(schema='camara_v1', )

    base_url = 'http://www.camara.leg.br/SitCamaraWS/Proposicoes.asmx/ObterVotacaoProposicao?tipo={tipo}&numero={numero}&ano={ano}'

    url_and_ids, numero_captura = urls_generator(capture, base_url)

    for url, id_proposicao in url_and_ids:
        print('----')
        print(url)

        # capture data with this
        try:
            capture.capture_data(url)

            data_proposicao = capture.data['proposicao']

            data_generic = data_proposicao['Votacoes']['Votacao']

            for data_votacao in force_list(data_generic):

                # orientacao
                try:
                    print()
                    print('orientacao')
                    data_list = data_votacao['orientacaoBancada']['bancada']
                    data_list = capture.to_default_dict(data_list)
                    data_list = from_api_to_db_votacao_orientacao(
                        data_list, url, data_proposicao, data_votacao,
                        id_proposicao, numero_captura)
                    capture.insert_data(
                        data_list, table_name='votacao_proposicao_orientacao')
                except KeyError:
                    pass

                # deputados
                print()
                print('deputados')
                data_list = data_votacao['votos']['Deputado']
                data_list = capture.to_default_dict(data_list)
                data_list = from_api_to_db_votacao_deputado(
                    data_list, url, data_proposicao, data_votacao,
                    id_proposicao)
                capture.insert_data(data_list, table_name='votacao_proposicao')
        except:
            continue
Esempio n. 4
0
def main():

    capture = Capture(schema='camara_v1', )

    capture_number = get_capture_number(capture)
    print('Numero Captura', capture_number)

    capture.capture_data(
        url='http://www.camara.leg.br/SitCamaraWS/Deputados.asmx/ObterDeputados'
    )
    data_list = capture.data['deputados']['deputado']
    data_list = capture.to_default_dict(data_list)
    data_list = from_api_to_db_deputados(data_list, capture.url,
                                         capture_number)
    capture.insert_data(data_list,
                        table_name='deputados',
                        if_exists='pass',
                        key='ide_cadastro')
Esempio n. 5
0
def main():

    capture = Capture(schema='camara_v1', )

    # capture data with this
    capture.capture_data(
        url='http://www.camara.leg.br/SitCamaraWS/Deputados.asmx/ObterDeputados'
    )

    # get the list of dict for this table
    data_list = capture.data['deputados']['deputado']

    #
    data_list = capture.to_default_dict(data_list)

    # make it rigth
    data_list = from_api_to_db_deputados(data_list, capture.url)

    # insert it!
    capture.insert_data(data_list, table='deputados')
Esempio n. 6
0
def main():

    capture = Capture(schema='camara_v1')

    # capture data with this
    base_url = 'http://www.camara.leg.br/SitCamaraWS/Proposicoes.asmx/ObterProposicaoPorID?IdProp={}'
    urls = urls_generator(capture, base_url)

    for url in urls:
        print(url)
        capture.capture_data(url)

        data_list = capture.data['proposicao']
        data_list = capture.to_default_dict(data_list)
        data_list = from_api_to_db(data_list, url)
        # capture.insert_data(data_list, table_name='proposicoes')
        capture.insert_data(data_list,
                            table_name='proposicoes',
                            if_exists='replace',
                            key='id_proposicao')
Esempio n. 7
0
def main():

    capture = Capture(schema='camara_v1')

    # capture data with this
    base_url = 'http://www.camara.leg.br/SitCamaraWS/Proposicoes.asmx/ListarProposicoesVotadasEmPlenario?ano={}&tipo='
    url, numero_captura = urls_generator(capture, base_url)
    print(url, numero_captura)
    try:
        capture.capture_data(url)
    except TypeError:
        print('Not Enough Data')
        return

    # get the list of dict for this table
    data_list = capture.data['proposicoes']['proposicao']
    data_list = capture.to_default_dict(data_list)
    data_list = from_api_to_db(data_list, url, numero_captura)
    capture.insert_data(data_list,
                        table_name='proposicoes_votadas_plenario',
                        if_exists='pass',
                        key='id_proposicao')
Esempio n. 8
0
def main():

    capture = Capture(schema='camara_v1')

    # capture data with this
    base_url = 'http://www.camara.leg.br/SitCamaraWS/Proposicoes.asmx/ListarProposicoesTramitadasNoPeriodo?dtInicio={dtInicio}&dtFim={dtFim}'
    url, numero_captura = urls_generator(capture, base_url)
    print(url, numero_captura)
    try:
        capture.capture_data(url)
    except TypeError:
        print('Not Enough Data')
        return

    # get the list of dict for this table
    data_list = capture.data['proposicoes']['proposicao']

    data_list = capture.to_default_dict(data_list) 

    # make it rigth
    data_list = from_api_to_db(data_list, url, numero_captura) 

    # insert it!
    capture.insert_data(data_list, table_name='proposicoes_tramitadas_periodo')
Esempio n. 9
0
def main():

    capture = Capture(schema='camara_v1',)

    base_url = 'http://www.camara.leg.br/SitCamaraWS/Deputados.asmx/ObterDetalhesDeputado?ideCadastro={}&numLegislatura='

    for i, url in enumerate(urls_generator(capture, base_url)):
        print('----')
        print(url)
        
        # capture data with this
        capture.capture_data(url)
        
        data_generic = capture.data['Deputados']['Deputado']
            
        for data_legislatura in force_list(data_generic):
            
            # deputados detalhes
            print()
            print('deputados detalhes')
            data_list = data_legislatura
            data_list = capture.to_default_dict(data_list) 
            data_list = from_api_to_db_deputados_detalhes(data_list, url)
            capture.insert_data(data_list, table_name='detalhes_deputado')

            data_generic = capture.data['Deputados']['Deputado']

            # detalhes comissoes
            print()
            print('detalhes comissoes')
            if data_legislatura['comissoes'] is not None:
                data_list = data_legislatura['comissoes']['comissao']
                data_list = capture.to_default_dict(data_list) 
                data_list = from_api_to_db_deputados_detalhes_comissoes(data_list, url, data_legislatura)
                capture.insert_data(data_list, table_name='detalhes_deputado_comissoes')

            # cargo comissoes
            print()
            print('cargo comissoes')
            if data_legislatura['cargosComissoes'] is not None:
                data_list = data_legislatura['cargosComissoes']['cargoComissoes']
                data_list = capture.to_default_dict(data_list) 
                data_list = data_list = from_api_to_db_deputados_detalhes_comissoes(data_list, url, data_legislatura)
                capture.insert_data(data_list, table_name='detalhes_deputado_comissoes_cargos')

            # periodo exercicio
            print()
            print('periodo exercicio')
            if data_legislatura['periodosExercicio'] is not None:
                data_list = data_legislatura['periodosExercicio']['periodoExercicio']
                data_list = capture.to_default_dict(data_list) 
                data_list = from_api_to_db_deputados_detalhes_periodo_exercicio(data_list, url, data_legislatura)
                capture.insert_data(data_list, table_name='detalhes_deputado_periodos_exercicio')

            # filiacao partidaria
            print()
            print('filiacao partidaria')
            if data_legislatura['filiacoesPartidarias'] is not None:
                data_list = data_legislatura['filiacoesPartidarias']['filiacaoPartidaria']
                data_list = capture.to_default_dict(data_list) 
                data_list = from_api_to_db_deputados_detalhes_filiacao_partidaria(data_list, url, data_legislatura)
                capture.insert_data(data_list, table_name='detalhes_deputado_filiacoes_partidarias')


            # historico lider
            print()
            print('historico lider')
            if data_legislatura['historicoLider'] is not None:
                data_list = data_legislatura['historicoLider']['itemHistoricoLider']
                data_list = capture.to_default_dict(data_list) 
                data_list = from_api_to_db_deputados_detalhes_historico_lider(data_list, url, data_legislatura)
                capture.insert_data(data_list, table_name='detalhes_deputado_hitorico_lider')