turicas/covid19-br

Estudo de Dados: Rondônia

berinhard opened this issue · 0 comments

A secretaria de saúde de Rondônia disponibiliza os dados em: http://covid19.sesau.ro.gov.br/Home/Sintomas (sim, sem HTTPS).

Dados de casos/óbitos

Já podemos automatizar a importação de dados de casos confirmados e óbitos porque os dados estão todos neste código JS sendo assinalados a uma variável.

Como prova de conceito, segue o script em Python que usando o requests para recuperar os dados:

In [29]: import requests                                                              

In [30]: content = requests.get('http://covid19.sesau.ro.gov.br/mylibs/estadoRO-V2.js'
    ...: ).content.decode()                                                           

In [31]: content = content.replace('var cidades = ', '').strip()                      

In [32]: import json                                                                  

In [33]: data = json.loads(content)                                                   

In [34]: dados_porto_velho = data['features'][0]['properties']                        

In [35]: dados_porto_velho['NOME'], dados_porto_velho['confirmados'], dados_porto_velh
    ...: o['obitos']                                                                  
Out[35]: ('Porto Velho', 829, 27)

Microdados

O caso de rondônia é interessante em relação aos microdados. Eles disponibilizam dados em formato JSON, mas somente com valores consolidados e separados por indicador. Tem endpoints específicos por indicador como, por exemplo, http://covid19.sesau.ro.gov.br/Indicadores/ChartFaixaEtaria

Esses endpoints estão todos explicitados nos respectivos códigos JS das páginas. Este é o exemplo do JS para a apresentação dos dados de leitos: http://covid19.sesau.ro.gov.br/mylibs/leitos.js

Mas, apesar de apresentarem os dados consolidados, eles não disponibilizam as entradas invidualizadas dos microdados. O máximo que existe nesse sentido é um relatório CSV do E-SUS que aparentemente está mal formatado. A partir da linha 10, a primeira coluna só é preenchida com 1 e o dado que deveria estar ali vai pra segunda coluna. Assim o CSV tem um shift de mover todas as colunas uma para a frente.