Instalación
Python
Uso
Obtén una clave de API en firecrawl.dev y luego defínela como una variable de entorno llamadaFIRECRAWL_API_KEY o pásala directamente a la clase Firecrawl.
¿No tienes una clave de API? Puedes instanciar
Firecrawl sin una clave y usar scrape, search e interact en el plan Free sin clave (con límite de tasa por IP — consulta Rate Limits). Todos los demás métodos requieren una clave.Python
Extracción de una URL
Para extraer una sola URL, usa el métodoscrape. Devuelve el contenido de la página como datos estructurados, incluidos markdown, metadatos y cualquier otro formato que solicites.
Python
El SDK de Python convierte todos los nombres de los campos de la respuesta de
camelCase a snake_case. Por ejemplo, los campos de metadatos como ogImage, ogTitle y sourceURL de la API se convierten en og_image, og_title y source_url en la respuesta del SDK.Análisis de archivos cargados
Usaparse para cargar archivos locales (html, pdf, docx, xlsx, etc.) directamente en /v2/parse.
parse no admite changeTracking ni opciones exclusivas del navegador, como acciones, wait_for, location, mobile, screenshot y branding.
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
Usasitemap="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
Consultar el estado del rastreo
Consulta el estado de un trabajo de rastreo conget_crawl_status. Pasa el ID de trabajo y obtén el estado actual junto con los resultados recopilados hasta el momento.
Python
Cancelar un rastreo
Cancela un trabajo de rastreo con el métodocancel_crawl. Pasa el ID de trabajo devuelto por start_crawl para obtener 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
Ejecutar un agente
Asigna una tarea de investigación o extracción a un agente con el métodoagent. Acepta un prompt, un schema opcional para estructurar la salida y max_credits para limitar el gasto de la ejecución.
Python
start_agent para obtener un ID de trabajo de inmediato y luego consulta su estado con get_agent_status.
Python
get_agent_trace y get_agent_snapshot. Consulta Agent para conocer el esquema de eventos y la lista completa de parámetros.
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
Los puntos de conexión de Firecrawl para crawl y batch scrape devuelven una URLnext 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
UtilizaPaginationConfig para controlar el comportamiento de la paginación al llamar a get_crawl_status o get_batch_scrape_status:
Python
Utilidades para paginación manual
Cuandoauto_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.
- Consulta el flujo por defecto en Rastrear un sitio web.
auto_paginate=False. Usa get_crawl_status_page para recuperar las páginas posteriores:
Python
max_pages, max_results o max_wait_time:
Python
Extracción por lotes
batch_scrape o inicia un job y pagina manualmente.
- Consulta el flujo por defecto en Batch Scrape.
auto_paginate=False. Usa get_batch_scrape_status_page para obtener las páginas siguientes:
Python
max_pages, max_results o max_wait_time:
Python
Manejo de errores
Cuando una petición falla, el SDK genera una excepción con un mensaje descriptivo que explica qué salió mal. Encapsula las llamadas entry/except para capturar estas excepciones y manejar los errores en tu aplicación.
Clase asíncrona
Para operaciones asíncronas, utiliza la claseAsyncFirecrawl. Sus métodos son equivalentes a los de Firecrawl, pero no bloquean el hilo principal.
Python
Python
Navegador
Inicia sesiones de navegador en la nube y ejecuta código de forma remota.Crear una sesión
Python
Ejecutar código
Python
Python
Perfiles
Guarda y reutiliza el estado del navegador (cookies, localStorage, etc.) entre sesiones:Python
Conectar vía CDP
Para tener control total de Playwright, conéctate directamente mediante la URL de CDP:Python
Listar y cerrar sesiones
Python
Sesión interactiva vinculada al scrape
Usa un ID de trabajo de scrape para seguir interactuando con el contexto de la página reproducida de ese scrape:interact(job_id, ...)ejecuta código en la sesión de browser vinculada al scrape.- La primera llamada a
interactinicializa automáticamente la sesión a partir del contexto del scrape. - Las llamadas adicionales a
interactcon el mismo ID de trabajo reutilizan ese estado activo del browser. stop_interaction(job_id)detiene la sesión interactiva cuando hayas terminado.
Python
¿Eres un agente de IA que necesita una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para obtener instrucciones de configuración inicial automatizada.

