You are currently browsing the category archive for the 'Python' category.
Para usar SQLite com Python é preciso instalar um biblioteca chamada pysqlite2 então vamos lá
No Ubuntu, GNU/Debian e derivados
#sudo apt-get install python-pysqlite2
No Windows você precisa baixar e instalar tudo manualmente, segue o link para o download
Para a verão 2.5 do python PySqlite2
Agora vamos ao que realmente interessa.
importa as bibliotecas para trabalhar com sqlite
from pysqlite2 import dbapi2 as sqlite
Conecta o sqlite e abre o arquivo de banco de dados databade.db caso o arquivo não exista ele ira cria-lo
sqlConnect = sqlite.connect('database.db')
sqlCursor = sqlConnect.cursor()
Exemplo de como fazer um INSERT
codigo = 1 nome = 'Carlos Henrique Marques da Cunha Filho' idade = '23' sql = "INSERT INTO tabela (codigo, nome, idade) VALUES (%s, '%s', '%s')" % (codigo, nome, idade) sqlCursor.execute(sql) sqlConnect.commit()
Exemplo de como fazer um SELECT
codigo = 1 sql = "SELECT * FROM tabela WHERE codigo = %s" % (codigo) sqlCursor.execute(sql) resultado = sqlCursor.fetchall()
Exemplo de como fazer um UPDATE
codigo = 1 nome = 'Carlos H. M. Cunha Filho' idade = '25' sql = "UPDATE tabela SET (nome = '%s', idade = '%') WHERE codigo = %s" % (codigo, nome, idade) sqlCursor.execute(sql) sqlConnect.commit()
Exemplo de como fazer um DELETE
codigo = 1 sql = "DELETE FROM tabela WHERE codigo = %s" % (codigo) sqlCursor.execute(sql) sqlCconnect.commit()
A metodologia para usar outros banco de dados é a mesma, em breve darei exemplos de como usar com MySQL também.
Hoje adicionei mais um software na minha pagina de projetos pessoais, é um software pequeno escrito em PyGTK, com banco de dados SQLite.
Para fins de administração de “games house”, ainda está em faze inicial, mas já é funcional, até onde foi escrito.
O próximo passo é colocar alguma documentação, e melhorar um um pouco os recursos, acho que logo terei uma versão final.
aos interessados fiquem de olho na pagina do projeto no Google Code
http://code.google.com/p/pygamehouseadmin/
Quando comecei a aprender PyGTK eu pensei em criar um programa simples para salvar os dados de Login e Senha dos vários servidores de Lineage 2 que eu jogava, como eram vários servidores e varias contas de usuário por servidor era fácil de esquecer.
Então comecei um projeto chamado PyL2Catalogo, criei uma interface no Glade e comecei a escrever o código, isso ja faz algum tempo e o programa esta perdido dentro de um pendrive, mas agora vou disponibilizar eles para que quem quiser aprender a usar PyGTK com Glade possa aproveitar.
Como não é possivel upar um arquivo compactado para o wordpress, vou colocar o arquivo no grupo PyGTK-Brasil e vou deixar só o link aqui para quem quiser pegar.
E um screenshot para quem quiser conferir antes de baixar
Hoje eu resolvi escrever um script para gerar senhas aleatórias, e depois que o script ficou pronto eu decidi que ele precisava de uma interface grafica.
Então comecei a criar uma interface em GTK
e o resultado é o que vocês vão ver agora
#!/usr/bin/env python
# -*- coding: utf-8 -*
"""
# Script para gerar senhas aleatórias
# Por: Carlos Henrique Marques da Cunha Filho
# E-mail: rickadt@gmail.com
# Site: http://codigobr.wordpress.com/
# Versão 0.1
"""
import pygtk
pygtk.require("2.0" )
import gtk
from random import choice
##########
##########
class senhaForte:
##########
### Função construtora da classe
def __init__(self):
" Definindo as propriedades da janela "
self.janela = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.janela.set_position(gtk.WIN_POS_CENTER)
self.janela.set_title('Senha Forte' )
self.janela.set_size_request(300, 300)
self.janela.set_resizable(False)
" Adicionando os wigets a janela "
self.fixed = gtk.Fixed()
self.janela.add(self.fixed)
self.fixed.put(gtk.Label('Tamanho da senha: '), 50, 40)
self.txtTamanho = gtk.Entry()
self.txtTamanho.set_size_request(200, 30)
self.fixed.put(self.txtTamanho, 50, 60)
self.btGerar = gtk.Button('Gerar senha' )
self.btGerar.set_size_request(200, 50)
self.btGerar.connect('clicked', self.gerarSenha)
self.fixed.put(self.btGerar, 50, 120)
self.fixed.put(gtk.Label('Senha: ' ), 50, 200)
self.txtSenha = gtk.Entry()
self.txtSenha.set_size_request(200, 30)
self.fixed.put(self.txtSenha, 50, 220)
#conectando a janela aos destrutores para finalizar o programas
self.janela.connect('delete_event', self.deleteEvento)
self.janela.connect('destroy', self.sair)
#Montra tudo na tala
self.janela.show_all()
##########
##########
### Função que gera a senha aleatoriamente
def gerarSenha(self, widget):
tamanho = self.txtTamanho.props.text
try:
tamanho = int(tamanho)
except:
texto = 'Digite um numero inteiro no campo "Tamanho da senha" '
msg = gtk.MessageDialog(None, 0, gtk.MESSAGE_ERROR, gtk.BUTTONS_OK, texto)
msg.set_position(gtk.WIN_POS_CENTER)
msg.run()
msg.destroy()
else:
chars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
senha = ""
for char in xrange(tamanho):
senha += choice(chars)
self.txtSenha.props.text = senha
##########
##########
def main(self):
gtk.main()
def deleteEvento(self, widget, event):
return False
def sair(self, widget):
gtk.main_quit()
##########
if __name__ == "__main__":
senhaForte = senhaForte()
senhaForte.main()
Para executar este script é muito simples.
no Linux basta salvar em um arquivo .py e executar no terminal com o comanto
$ python arquivo.py
No Windows salve o arquivo como .pyw e execute com um duplo click, mas é nescessário ter o Python o GTK e o PyGTK instalados na maquina
A pedido do Rodrigo Araujo coloquei uma screenshot


