# Monitoramento de páginas

> Monitore URLs conhecidas e receba alertas sobre mudanças relevantes nas páginas

import CreateScrapeCURL from "/snippets/pt-BR/v2/monitor/create/scrape/curl.mdx";
import CreateScrapeNode from "/snippets/pt-BR/v2/monitor/create/scrape/js.mdx";
import CreateScrapePython from "/snippets/pt-BR/v2/monitor/create/scrape/python.mdx";
import TargetScrape from "/snippets/pt-BR/v2/monitor/target/scrape.mdx";

O monitoramento de páginas acompanha URLs que você já conhece. Cada verificação faz scraping de cada URL no alvo, gera um diff em relação ao último snapshot retido e informa se a página está `same`, `changed`, `new`, `removed` ou `error`. É a escolha certa para páginas de preços, changelogs, páginas de documentação, anúncios de vagas, páginas de status ou qualquer URL conhecida em que uma pequena mudança faça diferença.

Esta página aborda o alvo `scrape`. Agendamento, objetivos e judging, rastreamento de mudanças, notificações e preços são compartilhados entre todos os tipos de monitoramento. Consulte a [visão geral do monitoramento](/pt-BR/features/monitoring).

<div id="create-a-page-monitor">
  ## Criar um monitor de página
</div>

Crie um monitor com um alvo `scrape` que inclui uma ou mais URLs explícitas:

<CodeGroup>
  <CreateScrapePython />

  <CreateScrapeNode />

  <CreateScrapeCURL />
</CodeGroup>

Você também pode criar monitores usando a CLI do Firecrawl:

```bash CLI
firecrawl monitor create --name "Hacker News AI" \
  --schedule "every 30 minutes" \
  --goal "Alert when a new Hacker News story related to AI enters the top 10. Ignore changes to stories that are not about AI. Do not alert on changes outside the top 10." \
  --page https://news.ycombinator.com
```

<div id="scrape-target">
  ## Alvo `scrape`
</div>

Um alvo `scrape` exige `type` e um array `urls` com pelo menos uma URL. As opções de scraping são repassadas para os jobs de scraping correspondentes. Os scrapes acionados pelo monitor usam `maxAge` com valor padrão `0`, então cada verificação executa um novo scraping, a menos que você defina explicitamente um `maxAge` diferente.

<TargetScrape />

<div id="detecting-field-level-changes">
  ## Detectando mudanças em nível de campo
</div>

Por padrão, um monitor de página faz o diff do markdown da página. Para alertar apenas quando um **campo específico** mudar, como um preço, uma manchete, um indicador de estoque ou os itens de uma lista, adicione o formato `changeTracking` a `scrapeOptions` do alvo. Consulte [Rastreamento de mudanças](/pt-BR/features/monitoring#change-tracking) para o modo JSON e o modo misto.

<div id="shared-configuration">
  ## Configuração compartilhada
</div>

* [Agendamentos](/pt-BR/features/monitoring#schedules): cron ou intervalo em linguagem natural, com mínimo de 5 minutos.
* [Objetivos e avaliação](/pt-BR/features/monitoring#goals-and-judging): alerta apenas sobre mudanças relevantes.
* [Notificações](/pt-BR/features/monitoring#notifications): entrega por webhook e email.
* [Resultados das verificações](/pt-BR/features/monitoring#check-results): inspecione cada verificação e seus diffs por página.
* [Preços](/pt-BR/features/monitoring#pricing): 1 crédito por URL por verificação, além da avaliação opcional.
