![]() |
Python - Gerando Variáveis com SQLite para Controle de Envios |
|
@CanalQb |
Este artigo apresenta uma lógica simples para controle de envios diários usando Python com SQLite, útil para quem deseja registrar operações dentro do blog, como envios via email ou outras interações.
1. Criando a Tabela no Banco de Dados
Primeiro, crie sua base de dados normalmente e adicione a tabela que armazenará os dados. No exemplo abaixo, criamos a tabela PORDIABLOG
para armazenar a data e o total de envios feitos naquele dia:
cursor.execute("CREATE TABLE IF NOT EXISTS PORDIABLOG (DATA TEXT, TENVIO TEXT)")
Essa tabela vai registrar a quantidade de envios feitos por dia, facilitando o monitoramento.
2. Lógica para Controle Diário de Envios
A seguir, mostramos como consultar se já houve envio no dia atual. Se não houver, o sistema inicia o contador com zero; caso contrário, recupera o valor salvo para continuar o controle.
from datetime import datetime
import sqlite3
now = datetime.now()
dt_string = now.strftime("%d/%m/%Y")
connection = sqlite3.connect(banco)
cursor = connection.cursor()
cursor.execute("SELECT TENVIO FROM PORDIABLOG WHERE DATA = ?", (dt_string,))
records = cursor.fetchone()
try:
tenvio = int(records[0])
except (TypeError, IndexError):
tenvio = 0
cursor.execute("INSERT INTO PORDIABLOG (DATA, TENVIO) VALUES (?, ?)", (dt_string, tenvio))
connection.commit()
Note que utilizamos parâmetros na consulta para evitar riscos de SQL Injection, garantindo maior segurança no código.
3. Exemplo de Controle com Limite de Envios
Para limitar o número máximo de envios diários, utilize um loop com condição. Se o limite for atingido, o processo para, evitando excessos:
limiteenvio = 10 # Defina o limite máximo de envios
contador = 0
contadorfinal = contador
while contador < contadorfinal + retorna: # 'retorna' define quantas vezes deseja consultar ou enviar
if tenvio >= limiteenvio:
print("\n\tEnvio máximo para o Blogspot atingido")
break
# ... código para realizar o envio ou consulta ...
tenvio += 1 # Atualiza o contador após envio bem-sucedido
contador += 1
4. Atualizando o Banco de Dados
Ao final de cada ciclo, atualize a tabela para registrar o novo total de envios realizados no dia:
cursor.execute("UPDATE PORDIABLOG SET TENVIO = ? WHERE DATA = ?", (tenvio, dt_string))
connection.commit()
connection.close()
Considerações Finais
Este exemplo demonstra uma forma básica de armazenar e controlar variáveis em banco SQLite usando Python, útil para aplicações que precisam monitorar quantidades de ações diárias. A implementação pode ser adaptada conforme a necessidade do seu projeto, seja no back-end ou front-end, dependendo do contexto da aplicação.
Para mais exemplos e conteúdos sobre programação em Python, acompanhe o canal oficial no YouTube: @CanalQb.