Passer au contenu principal
POST
/
scrape
Récupérez le contenu d’une seule URL et, éventuellement, extrayez des informations à l’aide d’un LLM
curl --request POST \
  --url https://api.firecrawl.dev/v1/scrape \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "onlyMainContent": true,
  "includeTags": [
    "<string>"
  ],
  "excludeTags": [
    "<string>"
  ],
  "maxAge": 0,
  "headers": {},
  "waitFor": 0,
  "mobile": false,
  "skipTlsVerification": false,
  "timeout": 30000,
  "parsePDF": true,
  "jsonOptions": {
    "schema": {},
    "systemPrompt": "<string>",
    "prompt": "<string>"
  },
  "actions": [
    {
      "type": "wait",
      "milliseconds": 2,
      "selector": "#my-element"
    }
  ],
  "location": {
    "country": "US",
    "languages": [
      "en-US"
    ]
  },
  "removeBase64Images": true,
  "blockAds": true,
  "proxy": "basic",
  "storeInCache": true,
  "formats": [
    "markdown"
  ],
  "changeTrackingOptions": {
    "modes": [
      "git-diff"
    ],
    "schema": {},
    "prompt": "<string>",
    "tag": null
  },
  "zeroDataRetention": false
}
'
{
  "success": true,
  "data": {
    "markdown": "<string>",
    "html": "<string>",
    "rawHtml": "<string>",
    "screenshot": "<string>",
    "links": [
      "<string>"
    ],
    "actions": {
      "screenshots": [
        "<string>"
      ],
      "scrapes": [
        {
          "url": "<string>",
          "html": "<string>"
        }
      ],
      "javascriptReturns": [
        {
          "type": "<string>",
          "value": "<unknown>"
        }
      ],
      "pdfs": [
        "<string>"
      ]
    },
    "metadata": {
      "title": "<string>",
      "description": "<string>",
      "language": "<string>",
      "sourceURL": "<string>",
      "keywords": "<string>",
      "ogLocaleAlternate": [
        "<string>"
      ],
      "<any other metadata> ": "<string>",
      "statusCode": 123,
      "error": "<string>"
    },
    "llm_extraction": {},
    "warning": "<string>",
    "changeTracking": {
      "previousScrapeAt": "2023-11-07T05:31:56Z",
      "changeStatus": "new",
      "visibility": "visible",
      "diff": "<string>",
      "json": {}
    }
  }
}
Remarque : une nouvelle version v2 de cette API est désormais disponible avec des fonctionnalités et des performances améliorées.

Autorisations

Authorization
string
header
requis

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Corps

application/json
url
string<uri>
requis

L’URL à explorer

onlyMainContent
boolean
défaut:true

Renvoyer uniquement le contenu principal de la page, en excluant les en-têtes, éléments de navigation, pieds de page, etc.

includeTags
string[]

Balises à inclure dans la sortie.

excludeTags
string[]

Balises à exclure du résultat.

maxAge
integer
défaut:0

Renvoie une version mise en cache de la page si elle a moins que cette ancienneté (en millisecondes). Si une version mise en cache de la page est plus ancienne que cette valeur, la page sera à nouveau scrapée. Si vous n’avez pas besoin de données extrêmement récentes, activer cette option peut accélérer vos opérations de scraping jusqu’à 500 %. La valeur par défaut est 0, ce qui désactive la mise en cache.

headers
object

En-têtes à envoyer avec la requête. Peuvent servir à envoyer des cookies, l’en-tête User-Agent, etc.

waitFor
integer
défaut:0

Spécifiez un délai, en millisecondes, avant de récupérer le contenu, afin de laisser à la page suffisamment de temps pour se charger.

mobile
boolean
défaut:false

Mettez cette option à true si vous souhaitez simuler le scraping depuis un appareil mobile. Utile pour tester les pages responsive et prendre des captures d’écran mobiles.

skipTlsVerification
boolean
défaut:false

Ignorer la vérification des certificats TLS lors de l’envoi de requêtes

timeout
integer
défaut:30000

Délai d'attente de la requête en millisecondes

parsePDF
boolean
défaut:true

Contrôle la façon dont les fichiers PDF sont traités lors du scraping. Lorsque cette option est activée (true), le contenu du PDF est extrait et converti au format markdown, avec une facturation basée sur le nombre de pages (1 crédit par page). Lorsque cette option est désactivée (false), le fichier PDF est renvoyé sous forme de base64 avec un tarif forfaitaire de 1 crédit au total.

jsonOptions
object

Objet JSON d’options

actions
(Wait · object | Screenshot · object | Click · object | Write text · object | Press a key · object | Scroll · object | Scrape · object | Execute JavaScript · object | Generate PDF · object)[]

Actions à effectuer sur la page avant de récupérer le contenu

location
object

Paramètre de localisation de la requête. Lorsqu’il est spécifié, un proxy approprié est utilisé si disponible et la langue ainsi que le fuseau horaire correspondants sont émulés. Par défaut, « US » est utilisé si aucun paramètre n’est spécifié.

removeBase64Images
boolean
défaut:true

Supprime toutes les images encodées en base64 de la sortie, qui peuvent être extrêmement longues. Le texte alternatif de l’image est conservé dans la sortie, mais l’URL est remplacée par un placeholder.

blockAds
boolean
défaut:true

Active le blocage des publicités et des bannières de cookies.

proxy
enum<string>

Spécifie le type de proxy à utiliser.

  • basic : Proxies pour le scraping de sites avec peu ou pas de solutions anti-bot. Rapides et généralement efficaces.
  • stealth : Proxies furtifs pour le scraping de sites avec des solutions anti-bot avancées. Plus lents, mais plus fiables sur certains sites. Coût pouvant atteindre 5 crédits par requête.
  • auto : Firecrawl réessaiera automatiquement le scraping avec des proxies furtifs si le proxy basic échoue. Si la nouvelle tentative avec stealth réussit, 5 crédits seront facturés pour l’opération de scraping. Si la première tentative avec basic réussit, seul le coût normal sera facturé.

Si vous ne spécifiez pas de proxy, Firecrawl utilisera basic par défaut.

Options disponibles:
basic,
stealth,
auto
storeInCache
boolean
défaut:true

Si ce paramètre est défini sur true, la page sera stockée dans l’index et le cache de Firecrawl. Le définir sur false est utile si votre activité de scraping peut soulever des enjeux de protection des données. L’utilisation de certains paramètres associés à un scraping sensible (actions, en-têtes) forcera ce paramètre à false.

formats
enum<string>[]

Formats à inclure dans le résultat.

Options disponibles:
markdown,
html,
rawHtml,
links,
screenshot,
screenshot@fullPage,
json,
changeTracking
changeTrackingOptions
object

Options de suivi des modifications (bêta). Applicable uniquement lorsque « changeTracking » est inclus dans les formats. Le format « markdown » doit également être spécifié lors de l’utilisation du suivi des modifications.

zeroDataRetention
boolean
défaut:false

Si cette valeur est définie sur true, cela activera l’absence de conservation des données pour cette opération de scraping. Pour activer cette fonctionnalité, veuillez contacter [email protected]

Réponse

Réponse réussie

success
boolean
data
object