Português
Começar

← Todos os templates · Analytics e monitoramento

Faça deploy de changedetection.io em um clique

Monitora páginas web e avisa quando elas mudam: preços, reposição de estoque, notícias

Uma alternativa auto-hospedada para Visualping e Distill.io.

O que é changedetection.io?

O changedetection.io monitora páginas web e avisa quando elas mudam. As pessoas o usam no lugar do Visualping ou do Distill.io para quedas de preço e produtos de volta ao estoque, vagas de emprego, avisos do governo, notas de versão e documentos que mudam sem aviso. Cada monitoramento verifica sua página num horário definido, a cada três horas se você não escolher outro intervalo, e mostra o que mudou palavra por palavra, linha por linha ou caractere por caractere.

Ele pode monitorar só a parte da página que importa, escolhida por um seletor CSS, XPath ou, para JSON, JSONPath ou jq, e disparar com um texto, ignorar outro ou acompanhar o preço e o estoque de um produto. Também lê arquivos PDF. Os alertas vão para mais de 85 serviços pelo Apprise, como e-mail, Telegram, Discord, Slack e ntfy, e cada mudança também aparece num feed RSS.

Este template roda o changedetection.io com o método de busca simples e rápido dele, os dados num volume e a senha que você informa desde a primeira inicialização, então a página dele nunca fica aberta para qualquer um. Ele busca as páginas como elas são enviadas: o Seletor de Filtro Visual, os Passos do Navegador e as páginas cujo texto é desenhado por JavaScript precisam de um navegador Chrome para buscar as páginas, que o template deixa de fora para continuar leve.

Hospedagem de changedetection.io no Pethost

  1. Você entra no Pethost com uma passkey, GitHub ou Google. Ainda não tem máquina? Você escolhe um plano, e o link espera até ela ficar pronta.
  2. Novo projeto abre em changedetection.io. Você preenche o que ele pede e clica em Criar projeto: Senha.
  3. Em um ou dois minutos changedetection.io está no ar no próprio endereço com HTTPS. Os segredos são gerados ao acaso, e os dados vão para o backup noturno.
  4. É um projeto como qualquer outro: você ou seu agente podem alterá-lo, fazer rollback ou restaurá-lo.

Perguntas sobre changedetection.io

O changedetection.io é gratuito?

Sim. O changedetection.io é de código aberto sob a licença Apache 2.0, e rodá-lo você mesmo custa só a máquina. Os criadores também vendem uma versão hospedada por US$ 8,99 por mês, com Chrome e proxies incluídos.

Como recebo alertas no Telegram, no Discord ou por e-mail?

Adicione uma URL de notificação em Settings → Notificações: o changedetection.io envia pelo Apprise, que conhece mais de 85 serviços, escritos como URLs do tipo tgram://, discord:// ou mailto://. Um monitoramento também pode ter as próprias URLs, na aba Notificações dele.

O changedetection.io acompanha preços e reposição de estoque?

Sim. Escolha “Detecção de Estoque e Preço” ao adicionar a página de um produto: o changedetection.io lê o preço e o estoque nos dados da página e avisa quando o preço fica abaixo ou acima de um limite, muda numa porcentagem que você define ou o produto volta ao estoque.

Por que uma página chega vazia ou sem o conteúdo?

Algumas páginas desenham o texto com JavaScript depois de carregar, e este template busca as páginas como o servidor as envia. Em vez disso, monitore o feed RSS do site, a API JSON dele ou uma página que contenha o texto, ou adicione ao arquivo compose um navegador Chrome para buscar as páginas, como o sockpuppetbrowser, e aponte PLAYWRIGHT_DRIVER_URL para ele.

Como monitorar só uma parte de uma página?

Na página Editar do monitoramento, em Filtros e Gatilhos, informe um seletor CSS ou um XPath para a parte que interessa, e linhas de texto a ignorar. Só contam as mudanças dentro dela, então um relógio ou um anúncio em outro lugar da página não dispara nada.

De quanta memória e disco changedetection.io precisa?

changedetection.io é leve: cerca de 60 MB de memória, e cada monitoramento guarda uma cópia compactada da página a cada mudança, então os dados crescem alguns kilobytes a cada verificação que encontra uma mudança. No Pethost, o plano Starter basta, com espaço para outros apps ao lado.

Arquivo Docker Compose de changedetection.io

O template é este compose.yaml e as variáveis gravadas no .env do projeto quando ele é criado. O Pethost roda o arquivo exatamente como está escrito.

Containers: changedetection (dgtlmoon/changedetection.io:0.60).

Volumes, no backup noturno: datastore.

services:
  changedetection:
    image: dgtlmoon/changedetection.io:0.60
    restart: unless-stopped
    environment:
      BASE_URL: ${URL}
      ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      # The sites watched do not see this address as the referrer of each check.
      HIDE_REFERER: "true"
    # changedetection.io has one password and none at first, so its page would be open to anyone
    # until it is set. SALTED_PASS gives it the password from the first start, salted and hashed as
    # changedetection.io stores one; its settings cannot remove it.
    command:
      - sh
      - -c
      - |
        SALTED_PASS=$$(python3 -c '
        import base64, hashlib, os
        salt = os.urandom(32)
        key = hashlib.pbkdf2_hmac("sha256", os.environ["ADMIN_PASSWORD"].encode(), salt, 100000)
        print(base64.b64encode(salt + key).decode())
        ') || exit 1
        export SALTED_PASS
        unset ADMIN_PASSWORD
        exec python ./changedetection.py -d /datastore
    volumes:
      - datastore:/datastore

volumes:
  datastore:

Mais em Analytics e monitoramento