Skip to main content



COVID19-ES-Py

API em Python para consulta de casos de COVID-19 no estado do Espírito Santo.

PyPI pyversions PyPI GitHub code size in bytes Travis (.org) Read the Docs Codecov Codacy grade

License: GPL v3

Recursos | Instalação | Como usar | Exemplos | Documentação | Considerações finais

Recursos

  • Extrai dados sobre:
    • Casos confirmados no estado
    • Critérios de avaliação de casos
    • Status e evolução de casos
    • Faixa etária, sexo, etnia e grau de escolaridade de pacientes
    • Sintomas e comorbidades de pacientes
    • Viagens de pacientes
  • Filtro de casos por data
  • Estruturação e busca de casos por município

Instalação

Atualmente, o COVID19-ES-Py possui suporte para Python 3.6+. Uma mesma release é feita ao PyPI e ao GitHub ao mesmo tempo, portanto você pode usar a fonte que achar mais conveniente.

Pelo repositório PyPI

Utilize seu gerenciador de pacotes preferido para instalar o pacote. Com pip:

pip install COVID19-ES-Py

Pelo código fonte

Através do pip

É possível usar o pip, dentre outros gerenciadores de pacotes, para instalar o pacote através do repositório. Usando a release mais recente:

pip install https://github.com/AtilioA/COVID19-ES-Py/releases/latest

Buildando com setup.py

  1. Baixe a última release e extraia a pasta;
  2. Entre no diretório raiz do pacote pelo terminal e rode o comando python setup.py install

Como usar

A API possui duas classes principais: LeitorRelatorio e Relatorio. A primeira é capaz de filtrar relatórios por data, etc, usando objetos Relatorio para fazer a interface para o programador. A segunda pode ser utilizada para extrair informações de um relatório específico. Confira os exemplos a seguir:

Exemplos

Inicializando o leitor e obtendo dados do último relatório:

import COVID19_ES_Py

# Inicializando o leitor
leitor = COVID19_ES_Py.LeitorRelatorio()

# Carregando objeto Relatorio com dados do último arquivo csv emitido
relatorio = leitor.carrega_ultimo_relatorio()  # Relatório do dia 17/04/2020
relatorio.casos
>>> {'AFONSO CLAUDIO': {'casosConfirmados': 2, 'obitos': 0},
...
    'VITORIA': {'casosConfirmados': 209, 'obitos': 8}}

Total de casos do relatório:

relatorio.totalGeral
>>> {'casosConfirmados': 952, 'obitos': 28}

Pesquisando casos por município:

Retorna objeto Municipio com casos do município no relatório:

relatorio.busca_casos_municipio("Vitória")
>>> "Município VITORIA:
209 casos confirmados.
8 óbitos."

# A busca ignora espaços extras e capitalização
relatorio.busca_casos_municipio("  santa teresa ")
>>> "Município SANTA TERESA:
4 casos confirmados.
0 óbitos."

# Também ignora caracteres especiais
relatorio.busca_casos_municipio("AFONSO CLAUDIO")
>>> "Município AFONSO CLAUDIO:
2 casos confirmados.
0 óbitos."

relatorio.busca_casos_municipio("arapiraca")
>>> exceptions.RelatorioError: O município "arapiraca" não foi encontrado no relatório. Pode ter ocorrido um erro de digitação ou o município não registrou casos de COVID-19.

Atributos da classe Município:

  • nome (str): O nome do município.

  • casos (list): (Caso): Uma lista de objetos do tipo Caso.

  • casosConfirmados (int): O número de casos confirmados no município.

  • obitos (int): O número de óbitos confirmados em decorrência de COVID-19 no município.

Pesquisando relatorio por data:

Retorna objetos Relatorio:

Filtrando até um dado dia:

relatorio16_04 = leitor.filtra_casos_ate_dia("16/04/2020")
>>> "Relatório do arquivo https://bi.static.es.gov.br/covid19/MICRODADOS.csv:
Total geral: {'casosConfirmados': 935, 'obitos': 28}
35 municípios infectados."

Filtrando apenas um dado dia:

relatorio16_04 = leitor.filtra_casos_no_dia("16/04/2020")
>>> "Relatório do arquivo https://bi.static.es.gov.br/covid19/MICRODADOS.csv:
Total geral: {'casosConfirmados': 11, 'obitos': 0}
5 municípios infectados."

A data de entrada pode ser formatada de várias formas.

Documentação

Você pode aprender mais sobre a API lendo a documentação oficial.

Considerações finais

Os dados são disponibilizados pelo Governo do Estado do Espírito Santo com a Superintendência Estadual de Comunicação Social do Espírito Santo (SECOM) e podem ser encontrados aqui.

Devido à natureza dos dados, há uma chance considerável de o scraping parar de funcionar a qualquer momento. Para minimizar essa possibilidade, muitos testes automatizados foram escritos; em caso de discrepância, tentarei atualizar o pacote o mais rápido possível.

Encontrou algum erro? Tem alguma sugestão para melhorar o COVID19-ES-Py? Crie uma issue! Contribuições são muito bem-vindas.

Metadata

Release files for COVID19-ES-Py 3.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for COVID19-ES-Py 3.1.0
File Size Uploaded
COVID19-ES-Py-3.1.0.tar.gz 9.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for COVID19-ES-Py 3.1.0
File Interpreter ABI Platform
COVID19_ES_Py-3.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.1 kB

Release files / COVID19-ES-Py-3.1.0.tar.gz

Download URL COVID19-ES-Py-3.1.0.tar.gz
Size 9.5 kB
Tags Source
SHA-256 checksum
How to use checksums
6c6ffe861ecac4db3c959719aea4e0cd96540f78ad3e2e7fe6524927188f835b
BLAKE2b-256 checksum
How to use checksums
9de5b0726b8d7d40c9adf110052c3ba02bbfccd0153c7a0ddbae95074e92a949
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.41.1 CPython/3.7.2

Release files / COVID19_ES_Py-3.1.0-py3-none-any.whl

Download URL COVID19_ES_Py-3.1.0-py3-none-any.whl
Size 22.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a480b825e9a2bb05b1ae83d806af0f1c3dc6cad4d064558aad8c4b94507d8402
BLAKE2b-256 checksum
How to use checksums
51059c86967b2eecd07e532441159c6a8000feb9b347db42c5a8ab219cff8150
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.41.1 CPython/3.7.2

Release history Release notifications | RSS feed

This release

3.1.0 This release

2 release files

3.0.0

2 release files

2.0.0

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

1 release file

1.0.4

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page