Installation
Python
Utilisation
FIRECRAWL_API_KEY ou passez-la directement à la classe Firecrawl.
Pas de clé API ? Vous pouvez instancier
Firecrawl sans clé et utiliser scrape, search et interact dans l’offre Free sans clé (avec une limite de débit par IP — voir Limites de débit). Toutes les autres méthodes nécessitent une clé.Python
Extraction d’une URL
scrape. Elle renvoie le contenu de la page sous forme de donnée structurée, y compris le markdown, les métadonnées et tous les autres formats demandés.
Python
Le SDK Python convertit tous les noms de champs de la réponse de camelCase en snake_case. Par exemple, les champs de métadonnées tels que
ogImage, ogTitle et sourceURL de l’API deviennent og_image, og_title et source_url dans la réponse du SDK.Analyse des fichiers envoyés
parse pour envoyer des fichiers locaux (html, pdf, docx, xlsx, etc.) directement à /v2/parse.
parse ne prend pas en charge changeTracking ni les options réservées au navigateur, comme actions, wait_for, location, mobile, screenshot et branding.
Python
Explorer un site web
crawl. Elle prend en arguments l’URL de départ et des options facultatives. Ces options permettent de définir des paramètres supplémentaires pour la tâche d’exploration, comme le nombre maximal de pages à parcourir, les domaines autorisés et le format de sortie. Consultez Pagination pour la pagination automatique/manuelle et les limites.
Python
Exploration du sitemap uniquement
sitemap="only" pour explorer uniquement les URL du sitemap (l’URL de départ est toujours incluse et la découverte de liens HTML est ignorée).
Python
Démarrer un crawl
start_crawl. Elle renvoie un ID de tâche que vous pouvez utiliser pour vérifier l’état. Utilisez crawl lorsque vous voulez un attenteur qui bloque jusqu’à la fin. Voir Pagination pour le comportement et les limites de pagination.
Python
Vérifier l’état d’un crawl
get_crawl_status. Indiquez l’ID de tâche pour obtenir l’état actuel ainsi que les résultats déjà collectés.
Python
Annuler un crawl
cancel_crawl. Passez l’ID de tâche renvoyé par start_crawl pour obtenir l’état de l’annulation.
Python
Cartographier un site web
map pour générer une liste d’URL à partir d’un site web. Les options permettent d’adapter le processus de cartographie, par exemple en excluant les sous-domaines ou en s’appuyant sur le sitemap.
Python
Exploration d’un site web avec WebSockets
start_crawl et abonnez-vous à l’aide du helper watcher. Créez un watcher avec l’ID de la tâche et attachez des gestionnaires (par exemple pour page, completed, failed) avant d’appeler start().
Python
Pagination
next lorsqu’il reste des données. Le SDK Python effectue par défaut une pagination automatique et agrège tous les documents ; dans ce cas, next vaut None. Vous pouvez désactiver l’auto‑pagination ou définir des limites pour contrôler le comportement de la pagination.
PaginationConfig
PaginationConfig pour contrôler le comportement de la pagination lorsque vous appelez get_crawl_status ou get_batch_scrape_status :
Python
| Option | Type | Par défaut | Description |
|---|---|---|---|
auto_paginate | bool | True | Lorsque True, récupère automatiquement toutes les pages et agrège les résultats. Définissez sur False pour récupérer les pages une par une. |
max_pages | int | None | S’arrête après avoir récupéré ce nombre de pages (s’applique uniquement lorsque auto_paginate=True). |
max_results | int | None | S’arrête après avoir collecté ce nombre de documents (s’applique uniquement lorsque auto_paginate=True). |
max_wait_time | int | None | S’arrête après ce nombre de secondes (s’applique uniquement lorsque auto_paginate=True). |
Aides à la pagination manuelle
auto_paginate=False, la réponse inclut une URL next si davantage de données sont disponibles. Utilisez ces méthodes utilitaires pour récupérer les pages suivantes :
get_crawl_status_page(next_url)- Récupère la page suivante des résultats de crawl en utilisant l’URL opaquenextprovenant d’une réponse précédente.get_batch_scrape_status_page(next_url)- Récupère la page suivante des résultats de scraping par lot en utilisant l’URL opaquenextprovenant d’une réponse précédente.
next s’il reste d’autres pages.
Crawl
crawl pour l’approche la plus simple, ou démarrez un job et paginez manuellement.
Crawl simple (pagination automatique, par défaut)
- Voir le flux par défaut dans Explorer un site web.
Crawl manuel avec contrôle de la pagination
auto_paginate=False. Utilisez get_crawl_status_page pour récupérer les pages suivantes :
Python
Exploration manuelle avec limites (pagination automatique + arrêt anticipé)
max_pages, max_results ou max_wait_time :
Python
Scrape par lots
batch_scrape, ou lancez un job et paginez manuellement.
Extraction par lot simple (pagination automatique, par défaut)
- Voir le parcours par défaut dans Batch Scrape.
Scraping par lot manuel avec contrôle de la pagination
auto_paginate=False. Utilisez get_batch_scrape_status_page pour récupérer les pages suivantes :
Python
Extraction par lots manuelle avec limites (pagination automatique + arrêt anticipé)
max_pages, max_results ou max_wait_time :
Python
Gestion des erreurs
try/except pour intercepter ces exceptions et gérer les erreurs dans votre application.
Classe asynchrone
AsyncFirecrawl. Ses méthodes reprennent celles de Firecrawl, mais elles ne bloquent pas le thread principal.
Python
Python
Navigateur
Créer une session
Python
Exécuter du code
Python
Python
Profils
Python
Connexion via le CDP
Python
Lister & fermer des sessions
Python
Session interactive liée au scrape
interact(job_id, ...)exécute du code dans la session de navigateur liée au scrape.- Le premier appel à
interactinitialise automatiquement la session à partir du contexte du scrape. - Les appels suivants à
interactsur le même ID de tâche réutilisent cet état actif du navigateur. stop_interaction(job_id)arrête la session interactive une fois que vous avez terminé.
Python
Êtes-vous un agent IA qui a besoin d’une clé API Firecrawl ? Consultez firecrawl.dev/agent-onboarding/SKILL.md pour obtenir les instructions d’intégration automatisée.

