Este blog é um complemento do nosso canal no YouTube. Clique em @CanalQb para seguir e acompanhar nossos vídeos!

Sugestões de pesquisas

Como Atualizar Google Sheets Usando Python e SQLite

#python; #googlesheets; #automatizacao

Como Atualizar Google Sheets Usando Python e SQLite

Se você costuma transferir dados manualmente de um banco de dados local para uma planilha do Google, sabe como esse processo pode ser repetitivo e sujeito a erros. Automatizar essa tarefa com Python e SQLite é uma solução prática, eficiente e segura. Neste artigo, você aprenderá a conectar um banco SQLite à API do Google Sheets e atualizar automaticamente os dados na planilha, sem duplicações.

Por que Automatizar a Atualização de Planilhas?

A automação evita desperdício de tempo, garante precisão e ajuda a manter a consistência dos dados. Quando aplicada corretamente, ela reduz falhas humanas e acelera a tomada de decisões baseada em dados atualizados em tempo real.

Pré-Requisitos

  • Uma conta Google com acesso ao Google Cloud Console.
  • Python instalado (preferencialmente versão 3.8 ou superior).
  • Bibliotecas google-api-python-client e google-auth instaladas.
  • Um banco de dados local SQLite com uma tabela de dados.

Passo 1: Gerar Credenciais de Acesso

Para usar a API do Google Sheets, você precisa de credenciais de uma conta de serviço:

  1. Acesse o Google Cloud Console e crie um novo projeto.
  2. Vá até “APIs e serviços” > “Biblioteca”, busque por Google Sheets API e ative-a.
  3. Crie uma conta de serviço em “Credenciais” e baixe o arquivo JSON com as chaves.
  4. Compartilhe a planilha desejada com o e-mail gerado da conta de serviço (ex: minha-conta@projeto.iam.gserviceaccount.com).

Passo 2: Preparar o Banco de Dados SQLite

Crie uma tabela em seu banco chamada MEDIA, com uma coluna chamada enviado (valores 0 ou 1) para indicar o status de envio.

Passo 3: Script Python para Atualizar Google Sheets

A seguir, um exemplo básico de como conectar ao Google Sheets e enviar dados do SQLite:

import sqlite3
from google.oauth2 import service_account
from googleapiclient.discovery import build

# Autenticação e configuração
credenciais = service_account.Credentials.from_service_account_file('sheet.json')
servico_planilhas = build('sheets', 'v4', credentials=credenciais)

spreadsheet_id = 'SEU_ID_DA_PLANILHA'
range_ = 'aliexpress!A1'
value_input_option = 'RAW'

# Conexão com o banco SQLite
conn = sqlite3.connect('produtos.db')
cursor = conn.cursor()

# Selecionar registros ainda não enviados
cursor.execute('SELECT * FROM MEDIA WHERE enviado = 0')
dados = cursor.fetchall()

# Preparar dados para envio
novos_dados = []
valores_enviados = []

for dado in dados:
    if dado[1] not in valores_enviados:
        novos_dados.append([str(campo) for campo in dado])
        valores_enviados.append(dado[1])
        cursor.execute('UPDATE MEDIA SET enviado = 1 WHERE id = ?', (dado[0],))

# Enviar dados à planilha
if novos_dados:
    corpo = {'values': novos_dados}
    servico_planilhas.spreadsheets().values().append(
        spreadsheetId=spreadsheet_id,
        range=range_,
        valueInputOption=value_input_option,
        body=corpo
    ).execute()

conn.commit()
conn.close()

Benefícios de Usar Python com Google Sheets

  • Eficiência: Automatiza tarefas manuais.
  • Precisão: Evita duplicações e erros de digitação.
  • Controle: Garante que apenas registros novos sejam adicionados.
  • Escalabilidade: Pode ser integrado a outras fontes de dados facilmente.

Melhores Práticas

  • Use um log de execução para monitorar erros ou falhas no script.
  • Verifique se a planilha possui colunas compatíveis com os dados do SQLite.
  • Crie backups periódicos da planilha e do banco de dados.

Documentação Oficial

Para mais detalhes técnicos sobre a integração com o Google Sheets, acesse a documentação oficial.

Esse tipo de automação pode ser especialmente útil para e-commerces, analistas de dados ou pequenos empreendedores que precisam manter relatórios atualizados com dados confiáveis.

Ficou com dúvidas? Deixe seu comentário abaixo!

@CanalQb no YouTube

Postar um comentário

Comente só assim vamos crescer juntos!
CanalQb mais próximo Quer falar com o CanalQb?
Em que posso te ajudar?
Fale comigo