Dadosabertosbrasil

Latest version: v1.2.0

Safety actively analyzes 688803 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 6

0.3.2

Este release expande e padroniza as funções do módulo `senado`.

A principal novidade, além de novas funções, é a possibilidade de retornar os dados por default no formato `pandas.DataFrame`, facilitando a visualização e navegação.

DadosAbertosBrasil.senado.Senador

Todos os métodos agora possuem um parâmetros `formato` que pode receber dois possíveis valores:
- `'dataframe'` para retornar uma tabela formatada de dados;
- `'json'` para retornar os dados brutos no formato JSON convertido para `dict`.

Caso `formato='dataframe'`, é possível ativar o novo argumento `index` para definir a coluna `'codigo'` como index do DataFrame.

python
>>> s = senado.Senador(5012)
>>> s.filiacoes(formato='dataframe', index=True)
sigla nome data_filiacao data_desfiliacao
codigo
565 REDE Rede Sustentabilidade 2015-09-29 NaT
458 PSOL Partido Socialismo e Liberdade 2011-01-28 2015-09-28


Algumas gambiarras internas foram reescritas e agora temos um novo atributo `telefones` para os senadores.

python
>>> s.telefones
['33036777', '33036568']


E, por último, a classe `Senador` agora possui dois novos métodos: `cursos` e `profissoes`.

python
>>> s.cursos()
nome grau_instrucao \
0 licenciatura e bacharelado em Historia Superior
1 DIREITO Superior
2 MBA Executivo em Gestão e Políticas Públicas Especialização
3 Direito Público Especialização
4 Mestrado Profissional em Políticas Públicas e ... Mestrado


DadosAbertosBrasil.senado.lista_senadores

Esse é a função que eu mais reescrevi ao longo do desenvolvimento do módulo, mas agora finalmente cheguei em uma versão definitiva.

Ela unifica as funções `lista_atual` e `lista_afastados`, retorna um DataFrame e possui diversos novos parâmetros. Veja os exemplos.

Lista todos os senadores ativos, colocando o código como index da tabela.

python
>>> senado.lista_senadores(index=True)
nome_parlamentar nome_completo \
codigo
4981 Acir Gurgacz Acir Marcos Gurgacz
5982 Alessandro Vieira Alessandro Vieira
945 Alvaro Dias Alvaro Fernandes Dias
... ... ...


Lista senadores do partido PL do Rio de Janeiro.

python
>>> senado.lista_senadores(partido='PL', uf='RJ')
codigo nome_parlamentar nome_completo sexo \
0 5936 Carlos Portinho Carlos Francisco Portinho Masculino
1 5322 Romário Romario de Souza Faria Masculino


Lista senadores contendo 'Gomes' no nome, exceto os que contém 'Cid'.

python
>>> senado.lista_senadores(contendo='Gomes', excluindo='Cid')
codigo nome_parlamentar nome_completo sexo \
0 3777 Eduardo Gomes Carlos Eduardo Torres Gomes Masculino
1 5979 Leila Barros Leila Gomes de Barros Rêgo Feminino
2 5557 Mailza Gomes Mailza Assis da Silva Feminino


Lista senadoras afastadas do sexo feminino.

python
>>> senado.lista_senadores(tipo='afastados', sexo='F')
codigo nome_parlamentar nome_completo sexo \
0 3713 Fátima Bezerra Maria de Fátima Bezerra Feminino
1 5929 Juíza Selma Selma Rosane Santos Arruda Feminino
2 5997 Nailde Panta Nailde Fernandes Panta da Silva Feminino
.. ... ... ... ...


Os mesmos argumentos também estão disponíveis para a função `senado.lista_legislatura`.

DadosAbertosBrasil.senado: Novas funções

- `senado.lista_blocos`
- `senado.lista_partidos` (função refatorada)
- `senado.lista_uso_palavra`
- `senado.orcamento`

DadosAbertosBrasil._utils.errors

As Exceptions deste módulo agora são importadas no `DadosAbertosBrasil.__init__`.

Isso significa que elas estão mais acessíveis para captura de erros. Veja um exemplo de antes-e-depois.

python
import DadosAbertosBrasil as dab

moeda = 'Moeda inválida'

Antes
try:
dab.bacen.cambio(moedas=moeda)
except dab._utils.errors.DAB_MoedaError:
print('Moeda inválida')

Depois
try:
dab.bacen.cambio(moedas=moeda)
except dab.DAB_MoedaError:
print('Moeda inválida')


DadosAbertosBrasil.UF

Os atributos `deputados` e `senadores` da classe `DadosAbertosBrasil.UF` foram ajustados, contendo todos os argumentos das funções originais e o novo formato do `senado.lista_senadores`.

0.3.1

Este release trás um pouco de história para o **DadosAbertosBrasil**.

O módulo `ibge` for expandido com novas funções e classes para coleta de textos e fotos históricos de todas as localidades do Brasil. Convenientemente, a função `ibge.localidade` foi atualizada para facilitar a busca pelos códigos das localidades.

DadosAbertosBrasil.ibge.Historia

Captura textos da história e fundação da localidade desejada. Veja o exemplo onde o histórico de Belo Horizonte é instanciado na variável `bh` contendo atributos como fonte, autor, ano, etc.

python
>>> from DadosAbertosBrasil import ibge
>>> bh = ibge.Historia(localidade=310620)
>>> bh.historico
'Foi à procura de ouro que, no distante 1701, o bandeirante João Leite...'

>>> bh.historico_fonte
'Belo Horizonte (MG). Prefeitura. 2014. Disponível em: ...'


Confira todos os parâmetros e atributos na documentação.

python
help(ibge.Historia)


---

DadosAbertosBrasil.ibge.Galeria

Cria uma galeria de fotografia da localidade desejada.
A galeria é uma lista de objetos `Fotografia`, onde cada uma contém seus metadados, incluindo a URL para visualizá-la na web.
Veja o exemplo em que pegamos a URL da primeira foto da galeria de fotos de Fortaleza.

python
>>> galeria = ibge.Galeria(2304400)
>>> foto = galeria.fotografias[0]


A variável `galeria` é um objeto do tipo `Galeria`, cujo atributo `fotografias` é uma lista de objetos `Fotografia`.

python
>>> print(foto)
<DadosAbertosBrasil.ibge: Fotografia 35389>


Chamamos o método `url` do objeto `Fotografia` para obter um link para acessá-lo:
python
>>> foto.url(altura=500)
'https://servicodados.ibge.gov.br/api/v1/resize/image?maxwidth=500&max...'


DadosAbertosBrasil.ibge.localidade

A função `localidades` foi expandida para facilitar e melhorar a performance da busca por localidades.
Agora é possível definir o nível geográficos das localidades buscadas, filtrar e ordenar dados e definir as subdivisões.

Captura todos os estados do Brasil
python
>>> ibge.localidades(nivel='estados')
id sigla nome regiao_id regiao_sigla regiao_nome
0 11 RO Rondônia 1 N Norte
1 12 AC Acre 1 N Norte
2 13 AM Amazonas 1 N Norte
3 14 RR Roraima 1 N Norte
4 15 PA Pará 1 N Norte
.. ... ... ... ... ... ...


Captura todos os distritos do Brasil, colocando o ID como index.
python
>>> ibge.localidades(index=True)
nome municipio_id ... regiao_sigla regiao_nome
id ...
520005005 Abadia de Goiás 5200050 ... CO Centro-Oeste
310010405 Abadia dos Dourados 3100104 ... SE Sudeste
520010005 Abadiânia 5200100 ... CO Centro-Oeste
520010010 Posse d'Abadia 5200100 ... CO Centro-Oeste
310020305 Abaeté 3100203 ... SE Sudeste
... ... ... ... ... ...


Captura todos os municípios do estado do Rio de Janeiro (localidade=33)
python
>>> ibge.localidades(nivel='estados', divisoes='municipios', localidade=33)
id nome microrregiao_id microrregiao_nome \
0 3300100 Angra dos Reis 33013 Baía da Ilha Grande
1 3300159 Aperibé 33002 Santo Antônio de Pádua
2 3300209 Araruama 33010 Lagos
3 3300225 Areal 33005 Três Rios
4 3300233 Armação dos Búzios 33010 Lagos
.. ... ... ... ...


DadosAbertosBrasil.ibge.malha

A função `malha` foi atualizada com a nova versão da API do IBGE, permitindo uma parametrização de subdivisões semelhantes à da função `ibge.localidades`. Além disso, há agora a opção de gerar uma URL para a malha em formato SVG ou gerar um arquivo JSON nos formatos TopoJSON ou GeoJSON.

Captura a malha do Distrito Federal (localidade=53) em formato GeoJSON.

python
>>> ibge.malha(localidade=53, formato='geojson')
{'type': 'FeatureCollection',
'features': [{'type': 'Feature',
'geometry': {'type': 'Polygon',
'coordinates': [[[-47.31, -16.0363], ...


Captura a malha de Joinville em formato SVG com qualidade mínima.

python
>>> ibge.malha(
... nivel = 'municipios',
... localidade = 4209102,
... formato = 'svg',
... qualidade = 'minima'
... )
'https://servicodados.ibge.gov.br/api/v3/malhas/municipios/4209102?...'


Captura a malha do Brasil subdividido por UF em formato TopoJSON.

python
>>> ibge.malha(
... nivel = 'paises',
... localidade = 'BR',
... divisoes = 'uf',
... formato = 'json'
... )
{'type': 'Topology',
'arcs': [[[32967, 111009], [-821, 372]],
[[32146, 111381],
[133, 124],
[15, 106], ...


Remoção da dependência do `openpyxl`

Anteriormente, a função `ibge.coordenadas` dependia do pacote `openpyxl` (ou qualquer engine de Excel) para executar o `pd.read_excel` no arquivo contendo as coordenadas. Esse arquivo foi substituído por um `.csv` e a função foi substituída por `pd.read_csv` sem a necessidade de uma engine para leitura.

Reestruturação interna no módulo `ibge`

O módulo `ibge` foi quebrado em quatro submódulos para facilitar a expansão do módulo e categorizar os diversos serviços do IBGE. Os módulos são:

- `_ibge.cidades`;
- `_ibge.sidra`;
- `_ibge.nomes`;
- `_ibge.misc`.

Na prática, não fará diferença, pois eles são importados automaticamente com o módulo `ibge`.

python
>>> from DadosAbertosBrasil import ibge


DadosAbertosBrasil.UF

Foram adicionados os métodos `historia` e `galeria` ao objeto `UF`.

python
>>> from DadosAbertosBrasil import UF
>>> ac = UF('acre')
>>> historia = ac.historia()
>>> galeria = ac.galeria()

0.3.0

Atualização final da versão **0.3** do **[DadosAbertosBrasil](https://www.gustavofurtado.com/dab.html)**.

Adições

- Conclusão do módulo `bacen` com a nova função `expectativas`, para coleta de expectativas de mercado de diversos indicadores:
python
>>> bacen.expectativa(expectativa='mensal', indicador='IGP-M')

Indicador Data DataReferencia Media Mediana DesvioPadrao \
0 IGP-M 2021-06-25 07/2022 0.31 0.30 0.21 \
1 IGP-M 2021-06-25 07/2021 0.64 0.61 0.42 \
2 IGP-M 2021-06-25 06/2021 1.25 1.10 0.58 \
3 IGP-M 2021-06-25 11/2022 0.47 0.47 0.16 \
4 IGP-M 2021-06-25 11/2021 0.50 0.50 0.24 \
... ... ... ... ... ... ... \

python
>>> bacen.expectativa(
... expectativa = 'trimestral',
... indicador = 'PIB Total',
... top = 3,
... ordenar_por = 'Media',
... asc = True
... )

Indicador Data DataReferencia Media Mediana DesvioPadrao \
0 PIB Total 2020-06-02 2/2020 -14.00 -14.0 3.92 \
1 PIB Total 2020-06-09 2/2020 -14.00 -13.4 3.55 \
2 PIB Total 2020-06-01 2/2020 -13.99 -14.0 3.91 \


- Função `favoritos.brasao` que gera a URL para a imagem do brasão da UF desejada, construída nos moldes da função `favoritos.bandeiras`:
python
>>> favoritos.brasao(uf='SC', tamanho=200)

'https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/' ...


- Protótipo da classe `UF` que consolidará informações e indicadores da Unidade Federativa desejada. Será expandido e modificado nas próximas versões do **DadosAbertosBrasil**:
python
>>> from DadosAbertosBrasil import UF
>>> sp = UF('SP')

>>> sp.nome
'São Paulo'

>>> sp.governador
'João Dória'

>>> sp.populacao()
46653239



Os métodos e atributos disponíveis no momento para a classe `UF` são:
- sigla
- cod
- nome
- area
- capital
- extinto
- gentilico
- lema
- regiao
- governador
- vice-governador
- bandeira( )
- brasao( )
- densidade( )
- deputados( )
- geojson( )
- malha( )
- municipios( )
- populacao( )
- senadores( )


Documentação
- Adição de exemplos ao docstring de todas as funções e classes;
- Melhoria e correções no formato dos docstrings;
- Atualização da [página oficial da documentação](https://www.gustavofurtado.com/DadosAbertosBrasil/index.html).

---

Desde o início do desenvolvimento da versão 0.3, o pacote DadosAbertosBrasil recebeu as seguintes atualizações:

- Subpacote auxiliar `_utils`, contendo os módulos:
- `parse` para padronização de argumentos das funções;
- `errors` contendo `Exceptions` customizadas;
- `get_data` contendo a função de coleta de dados.
- Módulo `bacen` para coleta de dados das APIs do Banco Central:
- `cambio` para cotações de várias moedas;
- `moedas` para listar as moedas;
- `serie` que busca qualquer série temporal do SGS;
- `expectativas` para buscar as expectativas de mercado de diversos indicadores econômicos.
- O módulo `favoritos` agora é iniciado pelo `__init__` e possui novas funções:
- `ipca`
- `selic`
- `taxa_referencial`
- `rentabilidade_poupanca`
- `reservas_internacionais`
- `risco_brasil`
- `salario_minimo`
- Expansão da documentação e adição de exemplos em todas as funções e classes.
- Correções de bugs e typos.

0.2.3

Esta nova versão (**0.2.3**) expande significativamente os módulo `bacen` e `favoritos`, além de melhorias estruturais do pacote.

Changelog

DadosAbertosBrasil.bacen

- Nova função `bacen.serie` para capturar dados do Sistema Gerenciador de Séries Temporais do Banco Central:
python
>>> bacen.serie(cod=432, inicio='2010-01-01', fim='2021-01-01')
... data valor

0.2.2

Esta é uma atualização (0.2.2) mais humilde do pacote [DadosAbertosBrasil](https://www.gustavofurtado.com/dab.html).

Changelog

- Nova função `ipea.serie`, que busca ser uma alternativa mais simples para a classe `ipea.Serie`;
- Adição de exemplos e comentários do docstring do módulo `ipea`;
- A função `ibge.sidra` agora aceita None no argumento `classificacoes`. Antes era necessário passar alguma classificação;
- Simplificação da função de coleta de dados via `requests`.

0.2.1

Esta versão (0.2.1) do pacote **[DadosAbertosBrasil](https://www.gustavofurtado.com/dab.html)** cria a primeira versão três novos módulos: `bacen`, `errors` e `parse`.

Changelog

DadosAbertosBrasil.bacen

- Novo módulo que agrupará todas as funções de consulta dos dados do **Banco Central do Brasil**. Esse módulo foi criado pensando nas futuras expansões de coletas;
- Esse módulo herda as funções `moedas`, `cambio` e `ipca` do módulo `favoritos`.

DadosAbertosBrasil.favoritos

- O módulo `favoritos` doou todas suas funções do **Banco Central do Brasil** para o módulo `bacen`;
- Nova função `favoritos.bandeira` que retorna um link da WikiMedia das bandeiras das Unidades da Federação no tamanho desejado.

DadosAbertosBrasil._utils

- O antigo módulo `_utils` foi removido para abrir espaço para o pacote auxiliar `_utils`, que contará com os módulos `errors` e `parse`;
- O módulo `_utils.errors` apresenta `Exceptions` exclusivas para as funções do `DadosAbertosBrasil`;
- O módulo `_utils.parse` busca padronizar e facilitar os inputs das funções do `DadosAbertosBrasil`.

Page 5 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.