from firecrawl import Firecrawlfirecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")# Extraire le contenu d’un site :doc = firecrawl.scrape("https://firecrawl.dev", formats=["markdown", "html"])print(doc)
Pour plus d’informations sur les paramètres, consultez la référence de l’API.
Chaque opération de scrape consomme 1 crédit. Des crédits supplémentaires sont facturés pour certaines options : le mode JSON coûte 4 crédits supplémentaires par page, le proxy avancé coûte 4 crédits supplémentaires par page, et le traitement des PDF coûte 1 crédit par page de PDF.
Vous pouvez désormais extraire sans schéma en passant simplement un prompt au point de terminaison. Le LLM choisit la structure des données.
Copier
from firecrawl import Firecrawlapp = Firecrawl(api_key="fc-YOUR-API-KEY")result = app.scrape( 'https://firecrawl.dev', formats=[{ "type": "json", "prompt": "Extrait la mission de l’entreprise à partir de la page." }], only_main_content=False, timeout=120000)print(result)
Résultat :
JSON
Copier
{ "success": true, "data": { "json": { "company_mission": "Collecte et extraction de données web propulsées par l’IA", }, "metadata": { "title": "Firecrawl", "description": "Collecte et extraction de données web propulsées par l’IA", "robots": "follow, index", "ogTitle": "Firecrawl", "ogDescription": "Collecte et extraction de données web propulsées par l’IA", "ogUrl": "https://firecrawl.dev/", "ogImage": "https://firecrawl.dev/og.png", "ogLocaleAlternate": [], "ogSiteName": "Firecrawl", "sourceURL": "https://firecrawl.dev/" }, }}
Le format « branding » extrait des informations complètes sur l’identité de marque à partir d’une page web, notamment les couleurs, les polices, la typographie, les espacements, les composants d’interface, et bien plus encore. C’est utile pour l’analyse de design systems, la veille de marque, ou la création d’outils qui doivent comprendre l’identité visuelle d’un site web.
Copier
from firecrawl import Firecrawlfirecrawl = Firecrawl(api_key='fc-VOTRE_CLE_API')result = firecrawl.scrape( url='https://firecrawl.dev', formats=['branding'])print(result['branding'])
Firecrawl vous permet d’effectuer diverses actions sur une page web avant d’en extraire le contenu. C’est particulièrement utile pour interagir avec du contenu dynamique, naviguer entre les pages ou accéder à du contenu nécessitant une interaction de l’utilisateur.Voici un exemple d’utilisation des actions pour accéder à google.com, rechercher Firecrawl, cliquer sur le premier résultat et prendre une capture d’écran.Il est recommandé d’utiliser presque systématiquement l’action wait avant et après l’exécution d’autres actions afin de laisser suffisamment de temps au chargement de la page.
Lorsque vous renseignez les paramètres de localisation, Firecrawl utilisera, si possible, un proxy adapté et adoptera la langue et le fuseau horaire correspondants. Par défaut, la localisation est définie sur « US » si aucun paramètre n’est fourni.
Pour utiliser les paramètres de localisation et de langue, incluez l’objet location dans le corps de votre requête avec les propriétés suivantes :
country : code pays ISO 3166-1 alpha-2 (p. ex. « US », « AU », « DE », « JP »). Par défaut : « US ».
languages : un tableau des langues et paramètres régionaux préférés pour la requête, par ordre de priorité. Par défaut : la langue de la localisation spécifiée.
Pour accélérer les requêtes, Firecrawl renvoie par défaut les résultats depuis le cache lorsqu’une copie récente est disponible.
Fenêtre de fraîcheur par défaut : maxAge = 172800000 ms (2 jours). Si une page en cache est plus récente que ce délai, elle est renvoyée instantanément ; sinon, la page est explorée puis mise en cache.
Performances : cela peut accélérer les scrapes jusqu’à 5x lorsque les données n’ont pas besoin d’être ultra fraîches.
Toujours récupérer du contenu frais : définissez maxAge à 0. Cela contourne complètement le cache : chaque requête passe par l’intégralité du pipeline de scraping, ce qui allonge le temps de traitement et augmente le risque d’échec. Utilisez une valeur de maxAge non nulle si une fraîcheur maximale à chaque requête n’est pas critique.
Éviter le stockage : définissez storeInCache sur false si vous ne voulez pas que Firecrawl mette en cache/stocke les résultats pour cette requête.
Consultation du cache uniquement : définissez minAge pour effectuer une consultation du cache uniquement sans déclencher de nouveau scrape. La valeur est en millisecondes et spécifie l’ancienneté minimale que doivent avoir les données en cache. Si aucune donnée en cache n’est trouvée, une erreur 404 avec le code SCRAPE_NO_CACHED_DATA est renvoyée. Définissez minAge à 1 pour accepter toute donnée en cache, quel que soit son âge.
Suivi des modifications : les requêtes qui incluent changeTracking contournent le cache, donc maxAge est ignoré.
Exemple (forcer du contenu frais) :
Copier
from firecrawl import Firecrawlfirecrawl = Firecrawl(api_key='fc-YOUR_API_KEY')doc = firecrawl.scrape(url='https://example.com', max_age=0, formats=['markdown'])print(doc)
Exemple (utiliser une fenêtre de cache de 10 minutes) :
Vous pouvez désormais lancer l’extraction par lots de plusieurs URL simultanément. La fonction prend en arguments les URL de départ ainsi que des paramètres optionnels. L’argument params vous permet de définir des options supplémentaires pour la tâche d’extraction par lots, comme les formats de sortie.
C’est très proche du fonctionnement du point de terminaison /crawl. Il lance un job de scraping par lot et renvoie un ID de job pour en vérifier l’état.Le SDK propose deux méthodes, synchrone et asynchrone. La méthode synchrone renvoie les résultats du job de scraping par lot, tandis que la méthode asynchrone renvoie un ID de job que vous pouvez utiliser pour en suivre l’état.
Si vous utilisez les méthodes synchrones des SDK, elles renverront les résultats du travail de scraping par lot. Sinon, elles renverront un identifiant de travail que vous pourrez utiliser pour vérifier l’état du scraping par lot.
Vous pouvez ensuite utiliser l’ID de la tâche pour vérifier l’état du batch scrape en appelant le point de terminaison /batch/scrape/{id}. Ce point de terminaison est destiné à être utilisé pendant l’exécution de la tâche ou juste après son achèvement, car les tâches de batch scrape expirent après 24 heures.
Pour les sites web complexes, Firecrawl propose un mode amélioré qui offre de meilleurs taux de réussite tout en préservant la confidentialité.En savoir plus sur le Mode amélioré.