Instalación
Python
Uso
- Obtén una clave de API en firecrawl.dev
- Define la clave de API como una variable de entorno llamada
FIRECRAWL_API_KEYo pásala como parámetro a la claseFirecrawl.
Python
Extracción de una URL
scrape. Recibe la URL como parámetro y devuelve el documento extraído.
Python
Rastrear un sitio web
crawl. Recibe la URL inicial y opciones opcionales como argumentos. Estas opciones te permiten definir ajustes adicionales para el trabajo de rastreo, como el número máximo de páginas a rastrear, los dominios permitidos y el formato de salida. Consulta Paginación para la paginación automática/manual y los límites.
Python
Rastreo solo del sitemap
sitemap="only" para rastrear únicamente las URLs del sitemap (la URL inicial siempre se incluye y se omite la detección de enlaces HTML).
Python
Iniciar un rastreo
start_crawl. Devuelve un ID de trabajo que puedes usar para consultar el estado. Usa crawl cuando quieras un “waiter” que bloquee hasta completarse. Consulta Paginación para el comportamiento y los límites de paginado.
Python
Comprobar el estado del rastreo
get_crawl_status. Recibe el ID del job como parámetro y devuelve el estado actual del rastreo.
Python
Cancelar un rastreo
cancel_crawl. Recibe el ID del trabajo iniciado con start_crawl como parámetro y devuelve el estado de la cancelación.
Python
Mapear un sitio web
map para generar una lista de URL de un sitio web. Las opciones te permiten personalizar el proceso de mapeo, como excluir subdominios o aprovechar el sitemap.
Python
Rastreo de un sitio web con WebSockets
start_crawl y suscríbete usando el helper watcher. Crea un watcher con el ID del trabajo y adjunta handlers (p. ej., para page, completed, failed) antes de llamar a start().
Python
Paginación
next cuando hay más datos disponibles. El SDK de Python paginá automáticamente por defecto y agrega todos los documentos; en ese caso next será None. Puedes desactivar la paginación automática o establecer límites para controlar el comportamiento de la paginación.
PaginationConfig
PaginationConfig para controlar el comportamiento de la paginación al llamar a get_crawl_status o get_batch_scrape_status:
Python
| Opción | Tipo | Valor predeterminado | Descripción |
|---|---|---|---|
auto_paginate | bool | True | Cuando es True, obtiene automáticamente todas las páginas y agrupa los resultados. Establécelo en False para obtener una página a la vez. |
max_pages | int | None | Se detiene después de obtener esta cantidad de páginas (solo se aplica cuando auto_paginate=True). |
max_results | int | None | Se detiene después de recopilar esta cantidad de documentos (solo se aplica cuando auto_paginate=True). |
max_wait_time | int | None | Se detiene después de esta cantidad de segundos (solo se aplica cuando auto_paginate=True). |
Utilidades para paginación manual
auto_paginate=False, la respuesta incluye una URL next si hay más datos disponibles. Utiliza estos métodos auxiliares para obtener las páginas siguientes:
get_crawl_status_page(next_url)- Obtiene la siguiente página de resultados decrawlusando la URL opacanextde una respuesta anterior.get_batch_scrape_status_page(next_url)- Obtiene la siguiente página de resultados debatch scrapeusando la URL opacanextde una respuesta anterior.
next si quedan más páginas.
Rastreo
crawl para la forma más sencilla, o inicia un job y pagina manualmente.
Rastreo simple (paginación automática, por defecto)
- Consulta el flujo por defecto en Rastrear un sitio web.
Rastreo manual con control de paginación
auto_paginate=False. Usa get_crawl_status_page para recuperar las páginas posteriores:
Python
Rastreo manual con límites (paginación automática + detención anticipada)
max_pages, max_results o max_wait_time:
Python
Extracción por lotes
batch_scrape o inicia un job y pagina manualmente.
Raspado por lotes simple (paginación automática, por defecto)
- Consulta el flujo por defecto en Batch Scrape.
Extracción por lotes manual con control de paginación
auto_paginate=False. Usa get_batch_scrape_status_page para obtener las páginas siguientes:
Python
Raspado manual por lotes con límites (paginación automática + detención anticipada)
max_pages, max_results o max_wait_time:
Python
Manejo de errores
Clase asíncrona
AsyncFirecrawl. Sus métodos son equivalentes a los de Firecrawl, pero no bloquean el hilo principal.
Python

