Passer au contenu principal
Important : N’utilisez le scraping authentifié que sur des systèmes pour lesquels vous avez une autorisation explicite des deux parties (vous-même et le propriétaire de la plateforme), tels que des outils internes auto‑hébergés ou des ressources que vous contrôlez entièrement. N’activez l’authentification sur des plateformes que si vous êtes certain qu’elle respecte les conditions d’utilisation du site, et obtenez une autorisation écrite en cas de doute. Une utilisation inappropriée des cookies de session peut enfreindre des conditions d’utilisation ou des lois ; vérifiez toujours que vous êtes autorisé à accéder au contenu protégé de cette manière.

Vue d’ensemble

L’approche recommandée pour un scraping authentifié est l’authentification par cookie, qui consiste à :
  1. Vous connecter manuellement à votre application
  2. Extraire le cookie de session depuis les DevTools
  3. Utiliser ce cookie avec Firecrawl pour accéder aux pages protégées
Durées d’expiration des cookies :
  • Outils internes : souvent 7 à 30 jours, voire plus
  • Autres outils : souvent quelques heures ou minutes
Les outils internes ont généralement des cookies avec une durée de vie plus longue, ce qui rend cette méthode idéale pour des tâches de scraping récurrentes.

Configuration

1

Obtenir votre clé API

Récupérez votre clé API Firecrawl sur firecrawl.dev/app
2

Installer les dépendances

npm
npm install @mendable/firecrawl-js
Node.js < v20 : Si vous utilisez Node.js 19 ou une version antérieure, vous devrez également installer dotenv :
npm install dotenv
puis l’importer au début de votre fichier avec import 'dotenv/config'.
3

Configurer l’environnement

Créez un fichier .env :
.env
FIRECRAWL_API_KEY=your_firecrawl_api_key

Étape 1 : Extraire les cookies depuis DevTools

Application de démonstration : vous pouvez vous entraîner avec notre application de démonstration sur https://firecrawl-auth.vercel.app
  • E-mail : test@example.com
  • Mot de passe : password123
1

Se connecter à votre application

Rendez-vous sur https://firecrawl-auth.vercel.app et connectez-vous avec les identifiants ci-dessus
2

Ouvrir DevTools

Appuyez sur F12 ou faites un clic droit → « Inspecter »
3

Accéder à l’onglet Application

Cliquez sur l’onglet Application (Chrome) ou Storage (Firefox)
4

Trouver et copier le cookie

  1. Développez Cookies dans la barre latérale
  2. Cliquez sur votre domaine
  3. Recherchez le cookie auth-token
  4. Double-cliquez sur la valeur et copiez-la
Vue des cookies dans DevTools
Pour l’application de démonstration, le cookie ressemble à :
auth-token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJleGFtcGxlLXVzZXItaWQiLCJlbWFpbCI6InRlc3RAZXhhbXBsZS5jb20ifQ.example-signature-hash
Important : Les cookies sont des informations d’authentification sensibles. Ne les partagez jamais publiquement et ne les enregistrez pas dans le système de contrôle de version. Traitez-les comme des mots de passe.

Étape 2 : Utiliser des cookies avec Firecrawl

import FirecrawlApp from "@mendable/firecrawl-js";

const app = new FirecrawlApp({
  apiKey: process.env.FIRECRAWL_API_KEY
});

const result = await app.scrape("https://firecrawl-auth.vercel.app/dashboard", {
  formats: ["markdown", "screenshot"],
  headers: {
    Cookie: 'auth-token=COOKIE_GOES_HERE'
  },
  waitFor: 3000 // Attendre 3 secondes le chargement de la page
});

console.log("=== Markdown ===\n" + result.markdown + "\n\n=== URL de la capture d'écran ===\n" + result.screenshot);

Bonnes pratiques

Sécurité des cookies

  • Stockez les cookies dans des variables d’environnement
  • Ne commitez jamais de cookies dans Git
  • Faites tourner/renouvelez les cookies régulièrement
  • Utilisez .gitignore pour les fichiers .env

Expiration des cookies

  • Vérifiez les dates d’expiration dans DevTools
  • Configurez des alertes avant l’expiration
  • Ré-extrayez les cookies à leur expiration
  • Envisagez l’authentification par formulaire pour les cookies de courte durée

Limitation de débit

  • Respectez les limites de taux de l’application
  • Ajoutez des délais entre les requêtes
  • Surveillez les erreurs 429 (Too Many Requests)
  • Utilisez un backoff exponentiel pour les nouvelles tentatives

Gestion des erreurs

  • Vérifiez les erreurs 401/403 (cookies expirés)
  • Validez le contenu de la réponse
  • Consignez les échecs d’authentification
  • Prévoyez des méthodes d’authentification de secours

Dépannage

Causes possibles :
  • Le cookie a expiré
  • Le cookie a été copié de manière incorrecte
  • L’application nécessite des en-têtes supplémentaires
  • La session a été invalidée sur le serveur
Solutions :
  • Réextraites les cookies depuis DevTools après une nouvelle connexion
  • Vérifiez si plusieurs cookies sont nécessaires (session + jeton CSRF)
  • Vérifiez que le domaine du cookie correspond à votre URL cible
Pour les sessions de courte durée :
  • Préférez l’authentification par formulaire
  • Automatisez la connexion avec des actions
  • Configurez une tâche cron pour actualiser les cookies
  • Envisagez de demander des durées de session plus longues à l’administrateur de votre outil interne
Durée de vie des cookies pour les outils internes : De nombreux outils internes définissent des cookies avec une expiration de 7 à 30 jours, ce qui les rend idéaux pour des tâches de scraping récurrentes. Vérifiez le champ Expires de votre cookie dans DevTools pour connaître sa durée de validité.