Monitoramento de site no arDesenvolvimento e personalização

Um script em Python que verifica se o seu site responde e envia um e-mail da sua própria caixa quando ele cai

Normalmente fica pronto em 15 minutosAjustes incluídosControle de qualidade
Pacotes
Pagamento protegidoDetalhes
  • Os ajustes previstos no pacote são gratuitos.
  • Se você não responder em 3 dias após a entrega, o trabalho é aprovado automaticamente.

O dinheiro fica reservado no pagamento e só é liberado quando você aprova o trabalho.

Um script em Python que verifica se o seu site responde e envia um e-mail da sua própria caixa quando ele cai

Exemplo de resultado

Exemplo do pacote Padrão

Juntando os arquivos mensais de vendas de 9 lojas em um só relatório do Excel

Como ele é executado

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Pasta: sales/2026-10, 9 arquivos encontrados
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 linhas
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 linhas
2026-11-02 09:14:04 WARN  shop-07.csv: 3 linhas sem preço ignoradas (linhas 88, 412, 913)
2026-11-02 09:14:05 INFO  Pronto: 10.412 linhas -> report-2026-10.xlsx (abas "Vendas" e "Totais")

Configurações, não código

Os nomes das colunas de cada loja ficam no settings.ini, então uma loja nova ou uma coluna renomeada é só uma linha ali:

[columns]
date = Data, Data da venda, Dia
product = Produto, Item, Descrição
quantity = Qtd, Quantidade, Unid
price = Preço, Preço unitário

Um trecho do código

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Lê o arquivo de uma loja e dá a ele os nomes de colunas do relatório."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: nenhuma coluna para '{name}' (procuradas: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

Arquivos: um arquivo ZIP com merge_sales.py (310 linhas), settings.ini, requirements.txt e um README que explica como instalar o Python, como rodar o script e o que significa cada mensagem do registro. O cliente roda o script no próprio computador.

Cliente: uma pequena rede de 9 papelarias; cada loja envia as vendas do mês em um arquivo CSV ou Excel, com nomes de colunas um pouco diferentes. Tarefa: um script que lê todos os arquivos de uma pasta, deixa as colunas em um só formato e grava um único relatório do Excel com todas as vendas e uma aba de totais por loja.

O cliente e todos os dados são fictícios.

Sobre este serviço

Se a sua loja ou o seu site de reservas cair de madrugada, você pode só ficar sabendo por um cliente pela manhã. Este script em Python abre as páginas que você listar a cada poucos minutos e envia um e-mail quando uma delas para de responder, retorna um erro ou, a partir do Padrão, carrega sem uma palavra que deveria estar lá, como o botão Adicionar ao carrinho. Ele tenta de novo antes de dar o alarme, para uma única resposta lenta não acordar você, e escreve de novo quando o site volta. Os e-mails saem da sua própria conta de e-mail; você mesmo coloca a senha de envio nas configurações. Rode em um computador ou servidor que fique ligado e que não seja o mesmo onde o seu site está, senão ele cai junto com o site. Ele avisa sobre um problema; não o resolve.

O que está incluído

  • O que você recebeUm arquivo ZIP com o script em Python, um README com instruções passo a passo e, a partir do Padrão, um arquivo de configurações com endereços e dados de e-mail; o código também aparece na página do pedido.
  • Caiu e voltouUm e-mail quando cai, outro quando volta
  • Sem alarmes falsosTenta de novo antes de escrever para você
  • Verificação do conteúdo da páginaA partir do Padrão, uma palavra que precisa estar na página
  • Da sua caixa de e-mailA sua própria conta de e-mail, com a senha fora do código
  • Código legívelCom comentários, fácil de incluir uma página depois

Como funciona

  1. 1
    TarefaVocê lista as páginas a monitorar e para onde vão os alertas
  2. 2
    CódigoEscrevemos o script e o guia para rodá-lo
  3. 3
    TesteVocê roda com uma página que não existe para ver um alerta chegar
  4. 4
    AjustesVocê pede ajustes dentro do seu pacote e envia qualquer mensagem de erro

O que precisamos de você

Os endereços a monitorar (página inicial, carrinho, página de reservas), com que frequência verificar e, a partir do Padrão, uma palavra ou frase que cada página precisa mostrar. Para onde os alertas devem ir e qual conta de e-mail os envia (o nome do seu provedor basta para descrevermos as configurações de envio; a senha você mesmo coloca). Onde o script vai rodar: um computador que fica ligado ou um servidor, com o sistema (Windows, macOS ou Linux).

Vamos perguntar:

  • Quais páginas ele deve monitorar?
  • Com que frequência, e o que conta como fora do ar?
  • Para onde os alertas devem ir?
  • Onde ele vai rodar?

Compare os pacotes

PacotesBásicoUm site, um alertaR$ 89PadrãoVerificações com configuraçõesR$ 184PremiumFerramenta de monitoramentoR$ 373
Prazo1 dia2 dias3 dias
Ajustes123
Códigoaté 150 linhasaté 400 linhasaté 1.000 linhas
Arquivos de código1até 3até 8
Arquivo de configuraçõesNãoSimSim
Mensagens de erro claras e um logNãoSimSim
Opções de execução e guia para rodar de forma agendadaNãoNãoSim
Guia de instalação e execução (README)SimSimSim
LinguagemPythonPythonPython
Fazer pedido BásicoFazer pedido PadrãoFazer pedido Premium

Pagamento protegido

Você paga ao fazer o pedido, mas o dinheiro só é liberado pelo trabalho aprovado.

  • Preço fixoO preço do pacote não muda depois que você paga.
  • O dinheiro fica reservadoAo pagar, o valor fica apenas reservado. Ele só é repassado quando você aprova o trabalho.
  • Verificado antes da entregaCada resultado passa por um controle de qualidade antes de chegar até você, e você o vê na página do pedido antes de aprovar.
  • Ajustes gratuitosPeça ajustes dentro do seu briefing quantas vezes o pacote permitir.
  • Aprovação após 3 diasSe em 3 dias após a entrega você não aprovar o trabalho nem pedir ajustes, ele é aprovado automaticamente. Se você escrever no chat do pedido após a entrega, o pedido fica em espera; depois que respondermos, podemos reiniciar a contagem de 3 dias e avisaremos no chat.
  • Refazer ou reembolso totalSe o resultado não corresponder ao seu briefing e os ajustes não resolverem, ou se o trabalho levar mais que o dobro do prazo, escreva no chat do pedido: refazemos o trabalho ou reembolsamos o pagamento integralmente.
Como funciona →

Perguntas e respostas

Onde devo rodar o script?

Em uma máquina sempre ligada e separada do seu site, como um computador do escritório, um mini servidor em casa ou um pequeno servidor alugado. Se ele rodar no mesmo servidor do site, cai junto e não consegue avisar você.

Ele pode mandar um SMS em vez de um e-mail?

Esta oferta envia e-mails. Muitos celulares mostram um e-mail como alerta; uma mensagem para um serviço com API pública pode ser incluída dentro do seu pacote, com a sua própria chave nas configurações.

Ele vai verificar a velocidade ou a segurança do meu site?

Ele mede quanto tempo cada página leva para responder e, no Premium, avisa quando passa do seu limite. Não testa segurança, não procura vírus nem entra em páginas de administração.

Quantos e-mails ele pode enviar?

Ele só escreve quando algo muda: uma vez quando uma página falha e outra quando ela volta, então fica bem dentro dos limites de envio do seu serviço de e-mail.

Não encontrou a resposta?

Pacotes