[fisl17] liberando dados com um comando, por Álvaro justen
TRANSCRIPT
![Page 1: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/1.jpg)
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
![Page 3: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/3.jpg)
Turicas, prazer! =)Sigam-me os bons:
{ , , , , }
/turicas
twittergithub
youtubeslideshareinstagram
![Page 4: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/4.jpg)
Nômade Digital
![Page 9: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/9.jpg)
![Page 15: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/15.jpg)
E vocês?Quem trabalha com conversão de dados, scraping, data science,...?Quem conhece/usa Python?
![Page 16: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/16.jpg)
![Page 17: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/17.jpg)
A Jornada
![Page 18: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/18.jpg)
![Page 19: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/19.jpg)
Dados Presos
![Page 20: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/20.jpg)
Dado aberto, porém nãoacessível
![Page 21: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/21.jpg)
O Que Eu Já Fiz
![Page 22: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/22.jpg)
O Que Eu Quero
![Page 23: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/23.jpg)
O Que Tenho Que Fazer
![Page 24: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/24.jpg)
Obtendo...
![Page 25: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/25.jpg)
Veri�cando...
![Page 26: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/26.jpg)
Limpando...
![Page 27: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/27.jpg)
E Se Fosse CSV?
![Page 28: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/28.jpg)
JSON
![Page 29: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/29.jpg)
XLS, XLSX
![Page 30: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/30.jpg)
rows to the rescue!pip install rows # Python Package Index
apt-get install rows # Debian
dnf install rows # Fedora
github.com/turicas/rows
![Page 31: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/31.jpg)
![Page 32: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/32.jpg)
![Page 33: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/33.jpg)
rowsBiblioteca PythonCommand-Line InterfacePlugins:
CSVJSONHTML (+ XPath)TXTXLSXLSXSQLiteODSParquet(+ outros em desenvolvimento)
![Page 34: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/34.jpg)
csv com Python + rowsimport rows table1 = rows.import_from_csv('tesouro-direto.csv') for row in table1: print row
![Page 35: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/35.jpg)
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/
![Page 36: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/36.jpg)
xls com Python + rowsimport rows table2 = rows.import_from_xls('tesouro-direto.xls') for row in table2: print row
![Page 37: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/37.jpg)
html com Python + rowsimport rows table3 = rows.import_from_html('tesouro-direto.html') for row in table3: print row
![Page 38: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/38.jpg)
import rows
![Page 39: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/39.jpg)
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
![Page 40: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/40.jpg)
Command-Line Interfaceprint: mostra a tabela em formato textoconvert: converte entre os formatos suportadossum: agrega tabelasjoin: cruza dadosquery: SQL!
![Page 41: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/41.jpg)
Live coding (CLI)
![Page 42: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/42.jpg)
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)
![Page 43: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/43.jpg)
Qual o pior melhor formato?
![Page 44: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/44.jpg)
![Page 46: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/46.jpg)
Colaboradores
![Page 48: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/48.jpg)
#�kdik
![Page 52: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/52.jpg)
Curso de Python Online eGratuito!
pythonic.cafe
![Page 53: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/53.jpg)
Curso de Arduino em PoA!
cursodearduino.com.br/porto-alegre19 a 22 de julho de 2016,
CUPOM DE DESCONTO: FISL17TransLAB
![Page 54: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/54.jpg)
?
![Page 55: [FISL17] Liberando dados com um comando, por Álvaro Justen](https://reader031.vdocuments.mx/reader031/viewer/2022021919/587255101a28ab852f8b8137/html5/thumbnails/55.jpg)
Obrigado! (:Turicas aka Álvaro Justen
{ , , , , }
/turicas
twittergithub
youtubeslideshareinstagram
bit.ly/turicas-�sl17