Was macht firecrawl-build-interact?
Integrieren Sie Firecrawls /interact-Funktion in Ihren Produktcode für dynamische Seiten und Browser-Aktionen nach dem Scraping. Verwenden Sie es, wenn eine Funktion Klicks, Formularausfüllungen, Paginierung, authentifizierungsbewusste Abläufe oder andere mehrstufige Interaktionen erfordert, die ein einfaches /scrape nicht bewältigen kann.
Übersicht
Das /interact-Endpunkt von Firecrawl ermöglicht es Ihnen, nach dem Scraping einer Seite Browser-Aktionen wie Klicken, Tippen, Scrollen und Warten durchzuführen. Dies ist nützlich für Seiten, die eine Benutzerinteraktion erfordern, um dynamische Inhalte zu laden, oder für mehrstufige Workflows wie das Ausfüllen von Formularen und die Navigation durch paginierte Ergebnisse. Das Skill unterstützt die Integration dieser Aktionen direkt in Ihren Code, sodass Sie komplexe Aufgaben automatisieren können, die über das einfache Abrufen von HTML-Inhalten hinausgehen.
Anwendungsfälle
- Dynamische Seiten: Seiten, die nach dem Laden weitere Inhalte durch Klicks oder Scrollen laden (z.B. unendliches Scrollen, „Mehr laden“-Buttons).
- Formularinteraktionen: Automatisieren des Ausfüllens von Formularen und des Absendens, z.B. für Login- oder Suchfunktionen.
- Paginierung: Navigation durch mehrere Seiten von Suchergebnissen oder Listen, um alle Elemente zu scrapen.
- Authentifizierung: Durchführen von Login-Vorgängen vor dem Scrapen geschützter Inhalte, mit Cookie-/Session-Handling.
- Multi-Step-Workflows: Kombination von Scraping und Interaktion in einer einzigen Aufgabe, z.B. Produktsuche und Detailansicht.
Funktionsweise
- Sie starten mit einem initialen
/scrape-Aufruf, um den HTML-Inhalt der Startseite zu erhalten. - Anschließend senden Sie einen
/interact-Aufruf mit den gewünschten Aktionen (z.B.click,type,scroll,wait). - Nach jeder Interaktion können Sie optional einen weiteren
/scrape-Aufruf durchführen, um den aktualisierten Seiteninhalt zu erfassen. - Das Skill ermöglicht es, diese Schritte in einer Schleife oder Sequenz zu kapseln, um komplexe Abläufe zu automatisieren.
Plattformunterstützung
- Firecrawl API: Das Skill nutzt die offizielle Firecrawl-API und ist mit allen unterstützten Programmiersprachen kompatibel (z.B. Python, JavaScript/Node.js).
- Keine Abhängigkeiten: Es werden keine zusätzlichen Browser-Treiber oder Headless-Browser benötigt – Firecrawl verwaltet die Browser-Instanz im Hintergrund.
- Empfohlen für: Entwickler, die dynamische oder interaktive Seiten scrapen müssen, ohne eigene Browser-Automation aufsetzen zu wollen.
Codebeispiel
import requests
# Initiales Scraping
scrape_url = "https://api.firecrawl.dev/v1/scrape"
interact_url = "https://api.firecrawl.dev/v1/interact"
api_key = "YOUR_API_KEY"
start_url = "https://example.com/search"
headers = {
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
}
# Schritt 1: Seite scrapen
response = requests.post(scrape_url, json={"url": start_url}, headers=headers)
data = response.json()
print("Erste Seite:", data)
# Schritt 2: Auf "Weiter"-Button klicken
interact_payload = {
"url": start_url,
"actions": [
{"type": "click", "selector": "a.next-page"}
]
}
response = requests.post(interact_url, json=interact_payload, headers=headers)
interact_result = response.json()
print("Nach Klick:", interact_result)
# Schritt 3: Erneut scrapen
response = requests.post(scrape_url, json={"url": start_url}, headers=headers)
print("Neue Seite:", response.json())
Hinweise
- Selektoren: Verwenden Sie gültige CSS-Selektoren, um die Elemente für die Interaktion zu identifizieren. Moderne Seiten mit dynamischen IDs oder Klassen erfordern möglicherweise generischere Selektoren (z.B.
button[aria-label="Weiter"]). - Wartezeiten: Nach Aktionen wie Klicks oder Scrollen kann es sinnvoll sein, ein
wait-Aktion einzufügen, um sicherzustellen, dass die Seite vollständig geladen ist. - Authentifizierung: Wenn Sie Seiten scrapen, die eine Anmeldung erfordern, führen Sie zuerst die Login-Interaktionen durch (z.B.
typein Benutzername/Passwort-Felder undclickden Login-Button). Firecrawl speichert Sitzungscookies für die Dauer der Sitzung. - Ratenbegrenzung: Beachten Sie die API-Ratenlimits von Firecrawl. Planen Sie Pausen zwischen den Aufrufen ein, wenn Sie viele Seiten oder Interaktionen durchführen.