Sürekli site tarayıcısı

Web'i bir değişiklik akışına çevirir.

İzlediğiniz sitelerde yeni bir sayfa yayımlandığı ya da bir metin değiştiği anda başlığı, Markdown içeriği ve içerik hash'i API'nizde olur. RSS, sitemap ve link keşfi; robots'a saygılı, kendini tanıtan bot.

İzlenen sayfa
Site
Son 24 saat yeni
Son 1 saat değişen
canlı akış
Nasıl çalışır

Keşfet, çek, akıt.

Her site kendi ritmine göre yoklanır: yeni içerik çıkan site sıklaşır, sessiz site seyrekleşir. Değişmeyen sayfa yeniden indirilmez.

01 · KEŞİF

Feed ve sitemap

robots.txt, RSS/Atom ve sitemap'ler okunur; ikisi de yoksa iç linkler izlenir. Her URL kaynağı ve son güncelleme ipucuyla kuyruğa girer.

feed her kontrolde sitemap günde bir aralık 2 dk → 60 dk, adaptif
02 · ÇEKİM

Koşullu, nazik istek

If-None-Match ve If-Modified-Since ile yalnızca değişen sayfa indirilir. Site başına 2 eşzamanlı istek, Crawl-delay'e uyum, 429'da geri çekilme.

UA ScrappasBot/0.2 gap ≥ 1 sn / site 304 sayfa aynı, geç
03 · AKIŞ

md5 değişince olay

Ana metin çıkarılır, Markdown'a çevrilir, boşluk-normalize md5'i alınır. Hash değişirse changed, ilk görülüyorsa new olayı yayınlanır.

GET /v1/events?after_id= SSE /v1/events/stream GET /v1/page?url=
Özellikler

Az parça, doğru parça.

Tek süreç, tek veritabanı, tek API. Binlerce siteyi paralel izler; kuyruk PostgreSQL'de yaşar, yeniden başlatmada hiçbir iş kaybolmaz.

Kendini tanıtan bot

Arama motoru botu gibi davranır: açık User-Agent, iletişim adresi, robots.txt ve Crawl-delay'e tam uyum. Gizlenme yok.

İçerik hash'i ile değişim

md5 ana metinden hesaplanır; menü, reklam ve düzen değişiklikleri yanlış alarm üretmez. Kopya içerik aynı hash ile görünür.

Anlık olay akışı

Yoklama için after_id, açık bağlantı için Server-Sent Events. Kopan bağlantı kaldığı id'den devam eder.

Sitemap ve RSS keşfi

Sitemap index'leri, gzip sitemap'ler, bildirilen ve tahmin edilen feed yolları. Feed'de çıkan URL en yüksek önceliği alır.

PostgreSQL üzerinde kuyruk

SKIP LOCKED ile birden fazla tarayıcı süreci aynı kuyruğu paylaşır. Ek IP'ler ve sunucular yatay eklenir.

Markdown ve metadata

Başlık, açıklama, yazar, tarih, dil, kelime sayısı ve temiz Markdown. NDJSON dışa aktarım milyonlarca satırda akışla çalışır.

Entegrasyon

Üç istek, tam döngü.

Site ekle, olayları dinle, içeriği al. Anahtar X-API-Key başlığında gider; tüm uçlar /docs altında etkileşimli olarak belgelenmiştir.

# 1. site ekle
curl -X POST https://scrappas.asveas.com/v1/sites \
  -H "X-API-Key: $KEY" -H "content-type: application/json" \
  -d '{"urls": ["blog.cloudflare.com", "www.python.org"]}'

# 2. olayları dinle (SSE)
curl -N -H "X-API-Key: $KEY" https://scrappas.asveas.com/v1/events/stream
event: new
data: {"id": 734, "domain": "python.org", "url": "…", "title": "…", "md5": "7fbf…"}

# 3. içeriği al
curl -H "X-API-Key: $KEY" "https://scrappas.asveas.com/v1/page?url=…"
{"title": "…", "md5": "7fbf…", "word_count": 2700, "content_md": "# …"}

İzlemek istediğiniz siteleri verin, gerisini akış getirsin.

Dokümantasyonda her uç, parametre ve nesne şeması var. Bot davranışı ve engelleme yöntemi bot sayfasında.