Skip to main content

A wrapper for the Brazilian House of Representatives public data API

Project description

camaraPy

O pacote camaraPy é um wrapper, ainda em estágio inicial de desenvolvimento, para as APIs da Câmara dos Deputados.

Agora, em vez de montar a requisição manualmente usando pacotes como urrlib ou requests, você pode simplesmente instalar o camaraPy e fazer tudo em poucas linhas de código:

from camaraPy.api_original import proposicoes

# Define parâmetros para a consulta
params = {
    "Tipo"   : "PEC",
    "Numero" : "666",
    "Ano"    : "2019"
}

# Acessa as votações da proposta
dados = proposicoes.ObterVotacaoProposicao(params)

Por enquanto, o módulo funciona apenas com a API original, que é mais estável e inclui o resultado das votações em plenário, dado que ainda não está disponível no novo serviço.

Como usar?

Todas as requsições descritas na documentação da Câmara foram implementadas, exatamente com a mesma grafia. O nome dos webservices, porém, é grafado seguindo um padrão lowercase_com_underlines.

Assim, para acessar o método ListarDiscursosPlenario do Webservice SessoesReunioes, o usuário precisa executar o seguinte código, no qual a variável params é um dicionário com os parâmetros que deseja passar para a requisição.

from camaraPy.api_original import sessoes_reunioes

params = { "DataIni" : "10/10/2018", "DataFim" : "13/10/2018" }
dados = sessoes_reunioes.ListarDiscursosPlenario(params)

De maneira semelhante, para acessar o método ObterDeputados do Webservice Deputados, o código seria o seguinte:

from camaraPy.api_original import deputados

dados = deputados.ObterDeputados()

Os dados já vêm parseados em um dicionário no estilo JSON, embora a API retorne os valores em formato XML. Isso é possível porque o camaraPy usa o fenomenal pacote xmltodictpara fazer a conversão. :heart:

O camaraPy funciona só para o Python 3.6 ou superior.

Como instalar?

pip install camaraPy

Coisas técnicas:

O código consiste, basicamente, em um script genérico que faz solicitações variadas para a API. Ele está disponível no diretório core. A partir desse programa, foram criadas funções encapsuladoras em deputados.py, orgaos.py, sessoes_reunioes.py e votacoes.py. Elas apenas chamam as funções definidas em core.py com os parâmetros corretos.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

camaraPy-0.0.5.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

camaraPy-0.0.5-py3-none-any.whl (21.1 kB view details)

Uploaded Python 3

File details

Details for the file camaraPy-0.0.5.tar.gz.

File metadata

  • Download URL: camaraPy-0.0.5.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.7

File hashes

Hashes for camaraPy-0.0.5.tar.gz
Algorithm Hash digest
SHA256 97e6402859645887d67f9a00fb9aae05bd7175d20105255115cd559938db3401
MD5 b7fab42df1b924188e4ed32381a200e2
BLAKE2b-256 73e9107e78b2820d1326c32928b001bbe579f8964da805f257f7f053b1ad7584

See more details on using hashes here.

File details

Details for the file camaraPy-0.0.5-py3-none-any.whl.

File metadata

  • Download URL: camaraPy-0.0.5-py3-none-any.whl
  • Upload date:
  • Size: 21.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.1.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.7

File hashes

Hashes for camaraPy-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2b198f114a7504d6a32cb1881897978e786fc3a8f1367982b265c3778519259c
MD5 5b0617bb131e64787ca08dac21cd4ea8
BLAKE2b-256 561bcd53d3bb18658f64fb502985cc8f0c30fa0662ba924b5628368a12a431cf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page