Skip to content

Instantly share code, notes, and snippets.

@mathiasfls
Forked from bplmp/script.sh
Created July 12, 2021 17:35
Show Gist options
  • Select an option

  • Save mathiasfls/5573e7aa2926371c9fecace41cb87ef3 to your computer and use it in GitHub Desktop.

Select an option

Save mathiasfls/5573e7aa2926371c9fecace41cb87ef3 to your computer and use it in GitHub Desktop.
Extrair autos de infração do IBAMA de HTML para CSV
# baixe os dados
curl http://dadosabertos.ibama.gov.br/dados/SIFISC/auto_infracao/auto_infracao/auto_infracao.html > autos.html
# gere csv
# (primeiro passo é quebrar as linhas, acelera o processamento)
cat autos.html \
| sed -e 's|<\/tr>|\n|g' \
| sed -e 's/.*<thead\sbgcolor\=\"\#808080\">//' \
-e 's|\salign\=\"center\"||g' \
-e 's|<\/th>|\|\|\||g' \
-e 's|</thead><tbody>|\n|g' \
-e 's|<th>||g' \
-e 's|<\/td>|\|\|\||g' \
-e 's|<td>||g' \
-e 's|<tr>||g' \
-e 's|<\/tr>|\n|g' \
-e 's|</tbody></table></body></html>||g' \
> autos.csv
# obs: os separadores são três pipes, ou |||
# é um separador esquisito mas precisava de uma sequência que não ocorria no arquivo
# leia no python
# (no openoffice ele se atrapalha com esse separador)
import pandas as pd
df = pd.read_csv('autos.csv', sep='\|\|\|')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment