Saltar al contenido principal
POST
/
batch
/
scrape
Realiza scraping de varias URL y, opcionalmente, extrae información con un LLM
curl --request POST \
  --url https://api.firecrawl.dev/v1/batch/scrape \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "urls": [
    "<string>"
  ],
  "webhook": {
    "url": "<string>",
    "headers": {},
    "metadata": {},
    "events": [
      "completed"
    ]
  },
  "maxConcurrency": 123,
  "ignoreInvalidURLs": false,
  "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,
  "id": "<string>",
  "url": "<string>",
  "invalidURLs": [
    "<string>"
  ]
}
Nota: Ya está disponible una nueva versión v2 de esta API con mayor rendimiento y fiabilidad en el procesamiento por lotes.

Autorizaciones

Authorization
string
header
requerido

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

Cuerpo

application/json
urls
string<uri>[]
requerido

La URL que se va a rastrear

webhook
object

Objeto de especificación de webhook.

maxConcurrency
integer

Número máximo de scrapes simultáneos. Este parámetro te permite establecer un límite de concurrencia para este scrape por lotes. Si no se especifica, el scrape por lotes se ajustará al límite de concurrencia de tu equipo.

ignoreInvalidURLs
boolean
predeterminado:false

Si se especifican URL no válidas en el array urls, se ignorarán. En lugar de que falle toda la solicitud, se creará un scraping por lotes con las URL válidas restantes y las URL no válidas se devolverán en el campo invalidURLs de la respuesta.

onlyMainContent
boolean
predeterminado:true

Devuelve únicamente el contenido principal de la página, excluyendo encabezados, elementos de navegación, pies de página, etc.

includeTags
string[]

Etiquetas que se deben incluir en la salida.

excludeTags
string[]

Etiquetas que se excluirán de la salida.

maxAge
integer
predeterminado:0

Devuelve una versión en caché de la página si su antigüedad es menor que este valor, en milisegundos. Si la versión en caché de la página es más antigua que este valor, la página se volverá a scrapear. Si no necesitas datos extremadamente recientes, activar esta opción puede acelerar tus procesos de scraping hasta un 500 %. El valor predeterminado es 0, lo que desactiva la caché.

headers
object

Cabeceras que se enviarán con la solicitud. Pueden usarse para enviar cookies, user-agent, etc.

waitFor
integer
predeterminado:0

Especifica un retraso, en milisegundos, antes de obtener el contenido, permitiendo que la página tenga tiempo suficiente para cargarse.

mobile
boolean
predeterminado:false

Configúralo en true si quieres emular el scraping desde un dispositivo móvil. Es útil para probar páginas responsive y tomar capturas de pantalla en dispositivos móviles.

skipTlsVerification
boolean
predeterminado:false

Omitir la verificación del certificado TLS al realizar solicitudes

timeout
integer
predeterminado:30000

Tiempo de espera de la solicitud en milisegundos

parsePDF
boolean
predeterminado:true

Controla cómo se procesan los archivos PDF durante el scraping. Cuando es true, el contenido del PDF se extrae y se convierte al formato Markdown, y la facturación se basa en el número de páginas (1 crédito por página). Cuando es false, el archivo PDF se devuelve codificado en base64 con una tarifa plana total de 1 crédito.

jsonOptions
object

Objeto de opciones JSON

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

Acciones que se ejecutarán en la página antes de extraer el contenido

location
object

Configuración de ubicación de la solicitud. Cuando se especifique, usará un proxy adecuado si está disponible y emulará la configuración de idioma y zona horaria correspondientes. Si no se especifica, el valor predeterminado es 'US'.

removeBase64Images
boolean
predeterminado:true

Elimina todas las imágenes en formato base64 de la salida, que pueden hacerla excesivamente larga. El texto alternativo de la imagen se conserva en la salida, pero la URL se reemplaza por un marcador de posición.

blockAds
boolean
predeterminado:true

Habilita el bloqueo de anuncios y ventanas emergentes de cookies.

proxy
enum<string>

Especifica el tipo de proxy que se va a usar.

  • basic: Proxies para hacer scraping de sitios sin o con soluciones anti-bot básicas. Rápido y suele funcionar.
  • stealth: Proxies stealth para hacer scraping de sitios con soluciones anti-bot avanzadas. Más lento, pero más fiable en ciertos sitios. Cuesta hasta 5 créditos por solicitud.
  • auto: Firecrawl reintentará automáticamente el scraping con proxies stealth si el proxy basic falla. Si el reintento con stealth tiene éxito, se cobrarán 5 créditos por el scraping. Si el primer intento con basic tiene éxito, solo se cobrará el costo normal.

Si no especificas un proxy, Firecrawl usará basic de forma predeterminada.

Opciones disponibles:
basic,
stealth,
auto
storeInCache
boolean
predeterminado:true

Si es true, la página se almacenará en el índice y la caché de Firecrawl. Establecerlo en false es útil si tu actividad de scraping puede implicar problemas de protección de datos. El uso de algunos parámetros asociados con scraping sensible (acciones, headers) hará que este parámetro tenga que ser false.

formats
enum<string>[]

Formatos que se incluirán en el resultado.

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

Opciones de seguimiento de cambios (Beta). Solo aplicable cuando 'changeTracking' está incluido en los formatos. El formato 'markdown' también debe especificarse al usar el seguimiento de cambios.

zeroDataRetention
boolean
predeterminado:false

Si es true, no se conservarán datos de esta extracción por lotes. Para habilitar esta función, ponte en contacto con [email protected]

Respuesta

Respuesta satisfactoria

success
boolean
id
string
url
string<uri>
invalidURLs
string[] | null

Si ignoreInvalidURLs es true, este será un array que contendrá las URLs no válidas que se especificaron en la solicitud. Si no hubo URLs no válidas, será un array vacío. Si ignoreInvalidURLs es false, este campo será undefined.