[fisl17] liberando dados com um comando, por Álvaro justen
TRANSCRIPT
Liberando Dados Com UmComando
Turicas aka Álvaro Justen17° Fórum Internacional de Software Livre
(meu 10º FISL! \o/)15 de julho de 2016 - Porto Alegre/RS
bit.ly/turicas-�sl17
Turicas, prazer! =)Sigam-me os bons:
{ , , , , }
/turicas
twittergithub
youtubeslideshareinstagram
Nômade Digital
cursodearduino.com.br
pythonic.cafe
generonumero.media
escoladedados.org
Software Livre
Python
Arduino
E vocês?Quem trabalha com conversão de dados, scraping, data science,...?Quem conhece/usa Python?
A Jornada
Dados Presos
Dado aberto, porém nãoacessível
O Que Eu Já Fiz
O Que Eu Quero
O Que Tenho Que Fazer
Obtendo...
Veri�cando...
Limpando...
E Se Fosse CSV?
JSON
XLS, XLSX
rows to the rescue!pip install rows # Python Package Index
apt-get install rows # Debian
dnf install rows # Fedora
github.com/turicas/rows
rowsBiblioteca PythonCommand-Line InterfacePlugins:
CSVJSONHTML (+ XPath)TXTXLSXLSXSQLiteODSParquet(+ outros em desenvolvimento)
csv com Python + rowsimport rows table1 = rows.import_from_csv('tesouro-direto.csv') for row in table1: print row
Row(timestamp=datetime.datetime(2015, 11, 6, 17, 43), titulo=u'Tesouro IPCA+ com Juros Semestrais 2017 (NTNB)', vencimento=datetime.date(2017, 5, 15), taxa_compra=Decimal('0.0702'), taxa_venda=Decimal('0.063'), preco_compra=0.0, preco_venda=2792.97) # namedtuple #FTW \o/
xls com Python + rowsimport rows table2 = rows.import_from_xls('tesouro-direto.xls') for row in table2: print row
html com Python + rowsimport rows table3 = rows.import_from_html('tesouro-direto.html') for row in table3: print row
import rows
rows: FuncionalidadesInterface única (não importa o formato)Escrever é tão fácil quanto ler (pythonic way)Vários pluginsCLIConversão automática de dadosEu já �z os testesTest-driven developmentSemantic versioning
Command-Line Interfaceprint: mostra a tabela em formato textoconvert: converte entre os formatos suportadossum: agrega tabelasjoin: cruza dadosquery: SQL!
Live coding (CLI)
Alguns Casos de UsoCLI:
Download, conversão e limpezaAnálises preliminares
Biblioteca:Conversão e limpeza (exemplo: Interlegis)Conversão e análise (exemplos: sci�, �sl_talks)
Qual o pior melhor formato?
specs (beta)row
Colaboradores
github.com/turicas/rows
#�kdik
Curso de Python Online eGratuito!
pythonic.cafe
Curso de Arduino em PoA!
cursodearduino.com.br/porto-alegre19 a 22 de julho de 2016,
CUPOM DE DESCONTO: FISL17TransLAB
?
Obrigado! (:Turicas aka Álvaro Justen
{ , , , , }
/turicas
twittergithub
youtubeslideshareinstagram
bit.ly/turicas-�sl17