python e suas aplicações
TRANSCRIPT
Python e suas aplicaçõesO que podemos fazer com Python?
Paulo Roberto e Izabela [email protected]
Sobre nós- Paulo Roberto.
- Programador. - 10 anos de experiência.- Pesquisa e desenvolvimento em robótica.
- Izabela Guerreiro- Programadora web.- 4 anos de experiência.- Desenvolvimento CMS, Site e Gestão da empresa.
Porque este tema?- Perguntas frequentes sobre Python.- Desconhecimento sobre a plataforma.- Ideal para quem quer empreender.
Porque Python?- Simplicidade.- Propósito geral.- Multiplataforma.- “Bala na agulha”.- Melhor comunidade. :)
Público Alvo- Administrador de Redes/Sistemas.- Hackers/Pentesters.- Cientistas.- Testers.- Programadores. :)
Implementações - Software- CPython.- Jython.- Pypy.- IronPython.
Implementações - HardwareUm hardware com coração Pythonico!
- MicroPython - Placa com Interpretador Python embutido.- Bluetooth.- Wifi.- Espetar USB -> main.py -> codificar!- import pyb; pyb.LED(4).on()
Implementações - Hardware- MicroPython.
Implementações - HardwareVideos de demonstração do MicroPython...
Onde não usar Python?Apenas detalhes...
- Acesso a baixo nível.
Eu posso compilar?Sim, você pode pequeno padawan...
- Bytecode.- Cython. - .NET.- Java classes.
OperaçõesAutomatize todos processos de sistemas e redes...
- Superior aos shells de sistemas operacionais.- Adoção crescente.- Muito material e bibliotecas.
Comparativo Python/ShellscriptPythonmax = 10for i in range(max): print i
Shellscriptmax=10for i in `seq 1 $max`; do echo "$i"; done
OperaçõesAlgumas bibliotecas para auxiliar...
- os, Paramiko e telnetlib.- Boto - Python Interface Amazon Webservice.- XenAPI - API para XenServer e Xen Cloud.
Paramiko e telnetlibExemplo de utilização do paramiko...
OperaçõesFerramentas bastante utilizadas...
- Fabric - Automação de sistemas e implantação.- Trigger - Conjunto de ferramentas para automação em redes.
FabricExemplo de utilização do Fabric...
Hacking/SegurançaBastante utilizado em...
- Shellcodes.- Scanners.- Frameworks para Pentest.- Engenharia reversa.
Hacking/SegurançaAlgumas bibliotecas interessantes...
- Scrapy - Web crawler.- Scapy - Manipulação de pacotes de redes.- Requests - Requisições HTTP.- Impacket - Conjunto de classes para trabalhar com protocolos de rede.- PyDasm, PeFile - Engenharia reversa.
Hacking/SegurançaFerramentas escritas em Python...
- Scanner de vulnerabilidades - W3af, SqlMap, Wapiti..- Frameworks para Pentest - Golismero, Inguma.- Dshell - US Army Research Laboratory- Immunity Inc
http://blog.corujadeti.com.br/lista-de-ferramentas-de-seguranca-feitas-em-python/
RobóticaCaminhos para o artificial...
- Propagação de hardwares abertos.- Utilização com Raspberry Pi.- Arduino.
RobóticaExemplo prático...
- Maxlider Robóticos.- Core das aplicações são escritas em Python.
RobóticaVideo de exemplo...
Desenvolvimento Web Alguns frameworks...
- Django- Flask- Tornado
Web - DjangoAlgumas caracteristicas...
- Framework web de Python mais conhecido.- Fullstack.- Desenvolvimento ágil.- Reusabilidade e plugabilidade.- MTV.- Excelente ORM - Mapeamento objeto relacional.
Web - Flask- Minimalista.- Leve.- WSGI(Web Server Gateway Interface) e Template Engine.
Web - Tornado- Biblioteca de rede assíncrona.- Websockets.- Conexão de longa duração.
Web - Exemplos- Globo.com - Django.- Brasil.gov.br - Plone.- Câmara de Pindamonhangaba - Plone
- Magazine Luiza - Django, Flask e Tornado.- VivaReal - Django
GISGeorreferenciamento de forma bem legal...
- GeoDjango - Integração com o framework Django.- Módulo Django GEO.- Foco em criação simples de sistemas geográficos.- Extensões no ORM.- Admin.- Postgis, MySQL, Oracle e Spatialite.
GISUm exemplo interessante de nossa região...
- ZNC Sistemas.- Sigef - Sistema de Gestão Fundiária.
Recepção, validação, organização, regularização e
disponibilização das informações georreferenciadas de limites de imóveis rurais.
- 2 Prêmios nacionais.- 2 Papers internacionais.
ERPsAlguns ERPs...
- OpenERP- ERPNext- Stoq
ERPsAlgumas empresas que utilizam OpenERP...
- WWF- Danone- Hyundai
OpenERP
ERPNext
Stoq
Desenvolvimento DesktopAlgumas bibliotecas para criação de interface gráfica...
- wxWidgets (wxWindows)- wxPython- PyQT- PyGTK- Kivy
Desenvolvimento DesktopAlgumas aplicações...
- OpenERP - PyGTK- Stoq - PyGTK- Dropbox - wxPython- Google drive - wxPython
Desenvolvimento Desktop
Desenvolvimento Desktop
Desenvolvimento MobileAlgumas bibliotecas...
- Kivy- SL4A- PyS60
Desenvolvimento MobileAlgumas aplicações...
- 2048.- QPython.- Bargenius.
Teste de SoftwareBibliotecas para automatização de testes...
- Splinter- Selenium Python- Unittest- Doctests
Teste de Softwarefrom splinter import Browserwith Browser() as browser: url = "http://www.google.com" browser.visit(url) browser.fill('q', 'splinter - python acceptance testing for web applications') button = browser.find_by_name('btnG') button.click() if browser.is_text_present('splinter.readthedocs.org'): print("Yes, the official website was found!") else: print("No, it wasn't found... We need to improve our SEO techniques")
Outras utilizações- Área científica: SciPy, NumPy, BioPython, AstroPy.
- Inteligência artificial: Scikit, SimpleAl.
- Machine learning: PyBrain, PyML.
- Linguagem natural e processamento de texto: NLTK, QuePy.
- Redes neurais: Neurolab, PyANN.
- Mineração e análise de dados: Pandas.
- Tratamento de imagens: PIL, NumPy, SciPy.
Outras utilizações- Big Data: Hadoopy
- Desenvolvimento de Jogos: PyGame, PyOpenGL
- Animações em 3D: Blender
- Reconhecimento Facial: OpenCV, SimpleCV
- Geração de Relatórios: Reportlab, Geraldo Reports
- Geração de documentação: PyDoc, Sphynx, Django-extensions
Empresas internacionais
Empresas nacionais
Curiosidades- Projeto SETI
- Ganhar prêmios na Internet.- http://blog.todosdeti.com.br/2015/08/12/programador-ganha-mil-sorteios-no-twitter-usando-robot/
- Auxiliar nas pesquisas sobre galáxias- http://hypescience.com/garoto-publica-artigo-sobre-galaxias-em-uma-das-mais-respeitadas-revistas-
cientificas-do-mundo/
Sugestões de Leitura
Sugestões de Leitura
Sugestões de Leitura
Sugestões de Leitura
Conclusão