Zum Hauptinhalt springen

Documentation Index

Fetch the complete documentation index at: https://docs.olostep.com/llms.txt

Use this file to discover all available pages before exploring further.

Über den Olostep /v1/crawls Endpunkt kannst du eine Website crawlen und den Inhalt aller Seiten abrufen.
  • Crawle eine Website und erhalte den Inhalt aller Unterseiten (oder begrenze die Tiefe des Crawls)
  • Verwende spezielle Muster, um bestimmte Seiten zu crawlen (z.B. /blog/**)
  • Übergebe eine webhook_url, um benachrichtigt zu werden, wenn der Crawl abgeschlossen ist
  • Suchanfrage, um nur bestimmte Seiten zu finden und nach Relevanz zu sortieren
Für API-Details siehe die Crawl Endpoint API Referenz.

Installation

pip install olostep

Starte einen Crawl

Gib die Start-URL an, schließe URL-Globs ein/aus und max_pages. Optional: max_depth, include_external, include_subdomain, search_query, top_n, webhook_url, timeout.
from olostep import Olostep

client = Olostep(api_key="YOUR_REAL_KEY")

crawl = client.crawls.create(
    start_url="https://olostep.com",
    max_pages=100,
    include_urls=["/**"],
    exclude_urls=["/collections/**"],
    include_external=False,
)

print(crawl.id, crawl.status)
Da in Olostep alles ein Objekt ist, erhältst du als Antwort ein crawl Objekt. Das crawl Objekt hat einige Eigenschaften wie id und status, die du zur Verfolgung des Crawls verwenden kannst.

Überprüfe den Crawl-Status

Frage den Crawl ab, um den Fortschritt zu verfolgen, bis status auf completed steht.
# Verwende das Crawl-Objekt aus dem vorherigen Schritt
info = crawl.info()
print(info.status, info.pages_count)

# Oder warte, bis es abgeschlossen ist
crawl.wait_till_done(check_every_n_secs=5)
Alternativ kannst du beim Start des Crawls eine webhook_url übergeben, um benachrichtigt zu werden, wenn der Crawl abgeschlossen ist.

Seiten auflisten (paginieren/streamen mit Cursor)

Rufe Seiten ab und iteriere mit cursor und limit. Funktioniert, während der Crawl in_progress oder completed ist.
# Iteriere über alle Seiten (wartet automatisch auf Crawl-Abschluss, behandelt Paginierung)
for page in crawl.pages():
    print(page.url, page.retrieve_id)

Suchanfrage (auf die Top N relevanten begrenzen)

Verwende search_query beim Start und filtere optional die Auflistung mit search_query. Begrenze die Erkundung pro Seite mit top_n.
from olostep import Olostep

client = Olostep(api_key="YOUR_REAL_KEY")

crawl = client.crawls.create(
    start_url="https://olostep.com",
    max_pages=100,
    include_urls=["/**"],
    search_query="contact us",
    top_n=5,
)

for page in crawl.pages(search_query="contact us"):
    print(page.url)

Inhalt abrufen

Verwende die retrieve_id jeder Seite mit /v1/retrieve, um html_content und/oder markdown_content abzurufen.
# Inhalt für jede gecrawlte Seite abrufen
for page in crawl.pages():
    content = page.retrieve(["markdown"])
    print(content.markdown_content)

Hinweise

  • Die Paginierung erfolgt auf Cursor-Basis; wiederhole Anfragen, bis cursor nicht mehr vorhanden ist.
  • Inhaltsfelder auf /v1/crawls/{crawl_id}/pages sind veraltet; bevorzuge /v1/retrieve.
  • Webhooks: Setze webhook_url, um eine POST-Benachrichtigung zu erhalten, wenn der Crawl abgeschlossen ist.

Preisgestaltung

Ein Crawl kostet 1 Kredit pro gecrawlter Seite.