Skip to main content
Scrapez des pages individuelles, lancez un crawl sur des sites entiers et cartographiez les URL depuis votre application Node.js. Le SDK gère la pagination, les nouvelles tentatives et l’interrogation asynchrone des tâches pour que vous puissiez vous concentrer sur l’exploitation des données retournées.

Installation

Installez le SDK avec npm :
Node

Utilisation

  1. Récupérez une clé d’API sur firecrawl.dev
  2. Définissez la clé d’API comme variable d’environnement nommée FIRECRAWL_API_KEY, ou transmettez-la en paramètre à la classe FirecrawlApp.
Voici un exemple d’utilisation du SDK avec gestion des erreurs :
Node

Scraper une URL

Récupérez les données structurées d’une page à partir d’une URL avec la méthode scrape.
Node.js

Analyse des fichiers importés

Utilisez parse lorsque vous souhaitez importer un fichier local (html, pdf, docx, xlsx, etc.) au lieu d’effectuer du scraping à partir d’une URL. parse ne prend pas en charge changeTracking ni les options propres au navigateur comme screenshot, branding, actions, waitFor, location et mobile.
Node

Crawl d’un site web

Crawlez l’ensemble d’un site web à partir d’une seule URL avec la méthode crawl. Vous pouvez définir une limite de pages, restreindre le crawl à des domaines spécifiques et choisir les formats de sortie. Consultez Pagination pour la pagination automatique et manuelle.
Node.js

Crawl uniquement via le sitemap

Utilisez 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 désactivée).
Node

Démarrer un crawl

Lancez un crawl sans attendre qu’il se termine avec startCrawl. La méthode renvoie un ID de tâche que vous pourrez interroger plus tard. Utilisez plutôt crawl lorsque vous voulez bloquer jusqu’à la fin. Voir Pagination pour le comportement de pagination et les limites.
Node

Vérifier l’état du crawl

Vérifiez si un crawl est toujours en cours, terminé ou a échoué avec la méthode checkCrawlStatus. Passez l’ID de tâche renvoyé par startCrawl.
Node

Annuler un crawl

Annulez un crawl en cours avec la méthode cancelCrawl. Passez l’ID de tâche renvoyé par startCrawl.
Node

Cartographier un site web

Découvrez toutes les URL d’un site web avec la méthode map. Fournissez une URL de départ et obtenez en retour la liste des pages découvertes.
Node.js

Crawler un site web avec WebSockets

Recevez les résultats du crawl en temps réel avec la méthode crawlUrlAndWatch. Vous recevez chaque page dès qu’elle est explorée, au lieu d’attendre la fin de la tâche complète.
Node
Les points de terminaison Firecrawl pour crawl et batch renvoient une URL next lorsqu’il reste des données. Le SDK Node effectue, par défaut, une pagination automatique et agrège tous les documents ; dans ce cas, next vaut null. Vous pouvez désactiver la pagination automatique ou définir des limites.

Crawl

Utilisez la méthode d’attente crawl pour la solution la plus simple, ou démarrez un job et paginez manuellement.
Exploration simple (pagination automatique, par défaut)
Crawl manuel avec contrôle de la pagination (page unique)
  • Lancez un job, puis récupérez les pages une par une avec autoPaginate: false.
Node
Exploration manuelle avec limites (pagination automatique + arrêt anticipé)
  • Conservez la pagination automatique activée, mais arrêtez plus tôt avec maxPages, maxResults ou maxWaitTime.
Node

Scrape par lots

Utilisez la méthode du waiter batchScrape, ou lancez un job et paginez manuellement.
Collecte par lots simple (pagination automatique, par défaut)
Scraping par lots manuel avec contrôle de la pagination (page unique)
  • Lancez un job, puis récupérez les pages une par une avec autoPaginate: false.
Node
Scrape manuel par lots avec limites (pagination automatique + arrêt anticipé)
  • Laissez la pagination automatique activée, mais arrêtez plus tôt avec maxPages, maxResults ou maxWaitTime.
Node
Démarrez des sessions de navigateur dans le cloud et exécutez du code à distance.

Créer une session

Node

Exécuter du code

Node
Exécutez du JavaScript plutôt que du Python :
Node
Exécuter Bash avec agent-browser :
Node

Profils

Enregistrez et réutilisez l’état du navigateur (cookies, localStorage, etc.) d’une session à l’autre :
Node

Connexion via le CDP

Pour bénéficier d’un contrôle complet via Playwright, connectez-vous directement à l’aide de l’URL CDP :
Node

Lister et fermer les sessions

Node

Session interactive liée au scrape

Utilisez un ID de tâche de scrape pour continuer à interagir avec le contexte de page restauré à partir de ce scrape :
  • interact(jobId, {...}) exécute du code dans la session de navigateur liée au scrape.
  • Le premier appel à interact initialise automatiquement la session à partir du contexte de scrape.
  • Les appels suivants à interact sur le même ID de tâche réutilisent cet état actif du navigateur.
  • stopInteraction(jobId) arrête la session interactive lorsque vous avez terminé.
Node

Gestion des erreurs

Le SDK déclenche des exceptions explicites pour toute erreur renvoyée par l’API Firecrawl. Encapsulez les appels dans des blocs try/catch, comme indiqué dans les exemples ci-dessus.
Êtes-vous un agent d’IA qui a besoin d’une clé d’API Firecrawl ? Consultez firecrawl.dev/agent-onboarding/SKILL.md pour obtenir des instructions d’intégration automatisée.