# Website change monitoring: diff publieke pagina's als schone Markdown

> Monitor webpagina's op wijzigingen: lees prijspagina's en changelogs als Markdown, diff de tekst en stuur een alert. Vanaf US$ 0,07/1K pagina's.

- URL: https://webreaderapi.com/nl/use-cases/monitoring/
- Laatst bijgewerkt: 2026-10-22
- Uitgever: WebReaderAPI (https://webreaderapi.com)

Ruwe HTML vergelijken geeft een alert telkens wanneer een advertentie of een token verandert. De hoofdinhoud als Markdown vergelijken markeert alleen wat een lezer zou opmerken: een nieuwe prijs, een herformuleerde clausule, een nieuwe changelog-regel.

**Kort antwoord — Hoe kan ik webpagina's monitoren op inhoudswijzigingen?**

Lees elke pagina volgens een schema als Markdown van de hoofdinhoud, sla de tekst op en vergelijk hem met de vorige versie; stuur alleen een alert wanneer de tekst verandert. **WebReaderAPI** leest tot 100 URL's per batch-job, verwijdert advertenties en menu's zodat die geen valse alarmen kunnen veroorzaken, en rekent één credit per pagina vanaf US$ 0,07/1K pagina's per oktober 2026. Zonder KYC; betalen met crypto.

## Monitoren met WebReaderAPI

| Kenmerk | Waarde |
| --- | --- |
| Endpoint | `POST https://webreaderapi.com/api/v1/batch`, dan `GET https://webreaderapi.com/api/v1/jobs/{job_id}` |
| Batchgrootte | Tot 100 URL's per batch-job |
| Wat wordt vergeleken | Markdown van de hoofdinhoud, zonder advertenties, menu's of banners |
| Facturering | 1 credit = 1 pagina lezen zonder browser; 2 credits wanneer de pagina een browser nodig heeft om JavaScript te renderen. Een verzoek dat mislukt, of dat de robots.txt van een site weigert, wordt niet in rekening gebracht |
| Voorbeeldvolume | 200 pagina's per dag gecontroleerd = ongeveer 6.000 pagina's per maand |
| Prijs | US$ 3,75 voor 10.000 pagina's; credits verlopen nooit |

## Wat is het waard om te monitoren?

Pagina's waarvan de formulering belangrijk is voor je bedrijf en die zonder aankondiging veranderen:

- **Prijspagina's** van leveranciers en concurrenten, om nieuwe plannen en prijswijzigingen te zien.
- **Voorwaarden-, privacy- en terugbetalingsbeleid** waar je van afhankelijk bent, om clausules op te vangen die veranderen.
- **Changelogs en release notes** van tools waarop je bouwt, om te reageren op breaking changes.
- **Documentatiepagina's** waarnaar je product linkt, om foutieve uitleg snel te herstellen.
- **Openbare bekendmakingen** van toezichthouders of standaardisatieorganisaties in je vakgebied.

Houd de lijst bij openbare pagina's. Persoonlijke profielen en pagina's achter een login vallen buiten bereik.

## Waarom Markdown diffen in plaats van HTML?

Omdat HTML voortdurend verandert zonder dat de inhoud verandert. Wisselende advertenties, sessietokens, tijdstempels in footers en A/B-test-markup zorgen ervoor dat twee loads van dezelfde pagina verschillen. Een diff op HTML maakt van die ruis meldingen, en mensen stoppen met ze te lezen.

Markdown van de hoofdinhoud haalt het meeste van die ruis weg voordat je vergelijkt. Wat overblijft is de tekst die iemand leest: koppen, paragrafen, lijsten en tabellen. Een diff op die tekst is kort, leesbaar en een melding waard.

*Python: controleer een lijst pagina's en print wat er is veranderd*

```python
import difflib
import json
import os
import pathlib
import time

import requests

API = "https://webreaderapi.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
STORE = pathlib.Path("snapshots.json")
URLS = [
    "https://example.com/pricing",
    "https://example.com/legal/terms",
    "https://example.com/changelog",
]

old = json.loads(STORE.read_text(encoding="utf-8")) if STORE.exists() else {}
job = requests.post(API + "/batch", headers=HEADERS, json={"urls": URLS}, timeout=60).json()
results, cursor, delay = [], None, 5
while True:
    params = {"cursor": cursor} if cursor else {}
    page = requests.get(API + "/jobs/" + job["job_id"], headers=HEADERS, params=params, timeout=60).json()
    results += page.get("results", [])
    cursor = page.get("next_cursor")
    if page["status"] == "done" and not cursor:
        break
    if not cursor:
        time.sleep(delay)
        delay = min(delay * 2, 60)

new = dict(old)
for item in results:
    if "markdown" not in item:
        print("not read:", item["url"], item.get("error", {}).get("code"))
        continue
    before = old.get(item["url"], "")
    if before and before != item["markdown"]:
        diff = difflib.unified_diff(before.splitlines(), item["markdown"].splitlines(), lineterm="", n=0)
        print("CHANGED:", item["url"])
        print("\n".join(list(diff)[:40]))
    new[item["url"]] = item["markdown"]
STORE.write_text(json.dumps(new, ensure_ascii=False), encoding="utf-8")

```

## Hoe vaak moet ik controleren, en hoe beleefd?

Controleer zo vaak als de pagina realistisch gezien verandert, en niet vaker. Dagelijks past bij prijspagina's en changelogs; wekelijks bij beleid en documentatie. Een pagina die elk uur wordt gelezen, vertelt je zelden meer dan één keer per dag, en kost 24 keer zoveel.

WebReaderAPI volgt robots.txt voor elke pagina en respecteert de `Crawl-delay` van een site bij crawl jobs. Pagina's die de site niet toestaat worden overgeslagen en niet in rekening gebracht, dus een strikte site valt gewoon uit je rapport. Vraag de eigenaar als je toegang nodig hebt tot een pagina die robots weigert.

## Wat kost monitoring?

Eén credit per pagina per controle. Enkele voorbeelden bij de prijzen van oktober 2026:

- **50 pagina's, dagelijks:** ongeveer 1.500 pagina's per maand. 10.000 pagina's (US$ 3,75) gaan meer dan zes maanden mee.
- **200 pagina's, dagelijks:** ongeveer 6.000 pagina's per maand. 50.000 pagina's (US$ 14,25) gaan ongeveer acht maanden mee.
- **1.000 pagina's, wekelijks:** ongeveer 4.300 pagina's per maand, dicht bij het vorige geval.

Pagina's die een browser nodig hebben gebruiken twee credits; stel `render=false` in voor pagina's waarvan je weet dat ze platte HTML zijn om het op één te houden.

## Welke pack past bij monitoring?

Vermenigvuldig pagina's met controles per maand en kies dan een pack dat een paar maanden meegaat. Credits verlopen nooit.

| Plan | Hoeveelheid | Prijs | Prijs per eenheid |
| --- | --- | --- | --- |
| Test | 10.000 pagina's | US$ 3,75 | US$ 0,38/1K pagina's |
| Starter | 50.000 pagina's | US$ 14,25 | US$ 0,28/1K pagina's |
| Build | 100.000 pagina's | US$ 21,75 | US$ 0,22/1K pagina's |

In elk plan: Hoofdinhoud extraheren · JavaScript rendering wanneer nodig · Mislukte en geweigerde pagina's niet in rekening gebracht · Credits verlopen nooit

**Voordat je betaalt**

- Minimale opwaardering US$ 25. Stort één keer op met crypto en koop daarna elk plan vanuit je saldo.
- Je saldo heeft geen einddatum en kan op elk moment pagina-credits kopen. Als een pack minder kost dan de minimale opwaardering, kan het bedrag dat je alleen hebt toegevoegd om dat minimum te bereiken op verzoek worden teruggestuurd binnen 30 dagen na de betaling, in USDT of USDC, zolang je het niet hebt uitgegeven. Elk ander saldo wordt niet terugbetaald, tenzij de wet anders bepaalt.
- Bijgeschreven zodra je betaling op de blockchain is gecontroleerd. Gebruikelijke bevestigingstijd van het netwerk: BTC ≈ 20 min · USDT TRC-20 ≈ 1 min · USDT ERC-20 ≈ 5 min · USDC ERC-20 ≈ 5 min · ETH ≈ 5 min · SOL ≈ 1 min · LTC ≈ 15 min

## Wijzigingsmonitoring: veelgestelde vragen

### Stuurt WebReaderAPI meldingen?

Nee. Het leest pagina's en retourneert Markdown; je script vergelijkt versies en verstuurt de melding per e-mail, chat of ticket. De code hierboven print de gewijzigde regels als startpunt.

### Hoe voorkom ik valse meldingen door datums en tellers?

Vergelijk Markdown van de hoofdinhoud, niet HTML, en verwijder regels waarvan je weet dat ze bij elke load veranderen, zoals "5 minuten geleden bijgewerkt", voordat je difft. De meeste wisselende elementen zijn al verwijderd door de extractie van de hoofdinhoud.

### Kan ik pagina's monitoren die JavaScript nodig hebben?

Ja. Met `render=auto` worden pagina's die leeg zijn zonder JavaScript in een browser gerenderd voor twee credits. Pagina's die zonder werken blijven op één.

### Kan ik een hele site monitoren in plaats van een lijst pagina's?

Ja: voer een crawl job uit in plaats van een batch en vergelijk dan pagina voor pagina. Vergelijk bij grote sites eerst de `lastmod`-datums van de sitemap en lees alleen de pagina's opnieuw die zijn gewijzigd.

---

WebReaderAPI: WebReaderAPI is een web reader-API voor AI-agents die elke openbare webpagina omzet in schone Markdown, betaald met crypto zonder ID te uploaden. Prepaid credits vanaf US$ 0,07/1K pagina's verlopen nooit, en robots.txt wordt gerespecteerd. Zonder KYC — geen ID, geen selfie, geen documenten. Betalen met crypto.
