La API de datos web para agentes de IA. Busca en la web, haz scraping de cualquier página e interactúa con ella desde una sola API.
Firecrawl es la API de datos web para agentes de IA. Busca, haz scraping e interactúa con la web en vivo para obtener Markdown limpio o datos estructurados.
Haz scraping de tu primera página. No necesitas una cuenta ni una clave de API para esta solicitud.
cURL
# No se necesita API key para comenzar — agrega -H "Authorization: Bearer $FIRECRAWL_API_KEY" para límites de tasa más altos:curl -s -X POST "https://api.firecrawl.dev/v2/scrape" \ -H "Content-Type: application/json" \ -d '{ "url": "https://firecrawl.dev", "formats": ["markdown", "html"] }'
Un solo comando instala la CLI de Firecrawl, autentica en tu navegador y añade skills a todos los agentes de programación detectados.
npx -y firecrawl-cli@latest init --all --browser
Reinicia tu agente de programación después de la configuración para que pueda descubrir las nuevas skills. Consulta
CLI para ver la configuración completa.
Salida lista para LLM: Markdown limpio, JSON estructurado, capturas de pantalla y más.
Se encarga de lo difícil: Proxies, protección anti-bots, renderizado de JavaScript y contenido dinámico.
Fiable: Diseñado para producción, con alta disponibilidad y resultados consistentes.
Rápido: Resultados en segundos, optimizado para un alto rendimiento.
MCP Server: Conecta Firecrawl a cualquier herramienta de IA mediante Model Context Protocol.
Recompensa: 5000 créditos por comentarios de calidad sobre Firecrawl
Para optar a ella, completa una entrevista con información relevante (casos de uso concretos y bien pensados, etc.) con nuestro Asistente de feedback de Firecrawl. Solo toma unos minutos, puedes detenerla en cualquier momento y es apta tanto para personas como para agentes (¡solo pega el enlace en tu entorno de agentes!). ¿Eres nuevo en Firecrawl? Tu opinión también cuenta.
Buscar en la web y obtener el contenido completo de la página de los resultados en una sola llamada. Consulta la documentación de la función Search para ver todas las opción.
from firecrawl import Firecrawlfirecrawl = Firecrawl( # No se necesita API key para comenzar — agrega una para límites de tasa más altos: # api_key="fc-YOUR-API-KEY",)results = firecrawl.search( query="firecrawl", limit=3,)print(results)
import { Firecrawl } from 'firecrawl';const firecrawl = new Firecrawl({ // No se necesita API key para comenzar — agrega una para obtener límites de tasa más altos: // apiKey: "fc-YOUR-API-KEY",});const results = await firecrawl.search('firecrawl', { limit: 3, scrapeOptions: { formats: ['markdown'] }});console.log(results);
# No se necesita API key para comenzar — agrega -H "Authorization: Bearer $FIRECRAWL_API_KEY" para límites de tasa más altos:curl -s -X POST "https://api.firecrawl.dev/v2/search" \ -H "Content-Type: application/json" \ -d '{ "query": "firecrawl", "limit": 3 }'
# Buscar en la webfirecrawl search "firecrawl web scraping" --limit 5 --pretty
Respuesta
Los SDK devolverán el objeto de datos directamente. cURL devolverá la carga útil completa.
JSON
{ "success": true, "data": { "web": [ { "url": "https://www.firecrawl.dev/", "title": "Firecrawl - The Web Data API for AI", "description": "The web crawling, scraping, and search API for AI. Built for scale. Firecrawl delivers the entire internet to AI agents and builders.", "position": 1 }, { "url": "https://github.com/firecrawl/firecrawl", "title": "mendableai/firecrawl: Turn entire websites into LLM-ready ... - GitHub", "description": "Firecrawl is an API service that takes a URL, crawls it, and converts it into clean markdown or structured data.", "position": 2 }, ... ], "images": [ { "title": "Quickstart | Firecrawl", "imageUrl": "https://mintlify.s3.us-west-1.amazonaws.com/firecrawl/logo/logo.png", "imageWidth": 5814, "imageHeight": 1200, "url": "https://docs.firecrawl.dev/", "position": 1 }, ... ], "news": [ { "title": "Y Combinator startup Firecrawl is ready to pay $1M to hire three AI agents as employees", "url": "https://techcrunch.com/2025/05/17/y-combinator-startup-firecrawl-is-ready-to-pay-1m-to-hire-three-ai-agents-as-employees/", "snippet": "It's now placed three new ads on YC's job board for “AI agents only” and has set aside a $1 million budget total to make it happen.", "date": "3 months ago", "position": 1 }, ... ] }}
Haz scraping de cualquier URL y obtén su contenido en markdown, HTML u otros formatos. Consulta la documentación de la función Scraping para ver todas las opciones.
from firecrawl import Firecrawlfirecrawl = Firecrawl( # No se necesita API key para comenzar — añade una para obtener límites de tasa más altos: # api_key="fc-YOUR-API-KEY",)# Extraer datos de un sitio web:doc = firecrawl.scrape("https://firecrawl.dev", formats=["markdown", "html"])print(doc)
import { Firecrawl } from 'firecrawl';const firecrawl = new Firecrawl({ // No se necesita API key para comenzar — agrega una para límites de tasa más altos: // apiKey: "fc-YOUR-API-KEY",});// Extraer un sitio web:const doc = await firecrawl.scrape('https://firecrawl.dev', { formats: ['markdown', 'html'] });console.log(doc);
# No se necesita API key para comenzar — agrega -H "Authorization: Bearer $FIRECRAWL_API_KEY" para límites de tasa más altos:curl -s -X POST "https://api.firecrawl.dev/v2/scrape" \ -H "Content-Type: application/json" \ -d '{ "url": "https://firecrawl.dev", "formats": ["markdown", "html"] }'
# Scrape a URL and get markdownfirecrawl https://firecrawl.dev# Con múltiples formatos (devuelve JSON)firecrawl https://firecrawl.dev --format markdown,html,links --pretty
Respuesta
Los SDK devolverán el objeto de datos directamente. cURL devolverá la carga útil exactamente como se muestra a continuación.
{ "success": true, "data" : { "markdown": "¡Launch Week I ya está aquí! [Consulta nuestro lanzamiento del Día 2 🚀](https://www.firecrawl.dev/blog/launch-week-i-day-2-doubled-rate-limits)[💥 Obtén 2 meses gratis...", "html": "<!DOCTYPE html><html lang=\"en\" class=\"light\" style=\"color-scheme: light;\"><body class=\"__variable_36bd41 __variable_d7dc5d font-inter ...", "metadata": { "title": "Inicio - Firecrawl", "description": "Firecrawl rastrea y convierte cualquier sitio web en Markdown limpio.", "language": "en", "keywords": "Firecrawl,Markdown,Data,Mendable,Langchain", "robots": "seguir, indexar", "ogTitle": "Firecrawl", "ogDescription": "Convierte cualquier sitio web en datos listos para LLM.", "ogUrl": "https://www.firecrawl.dev/", "ogImage": "https://www.firecrawl.dev/og.png?123", "ogLocaleAlternate": [], "ogSiteName": "Firecrawl", "sourceURL": "https://firecrawl.dev", "statusCode": 200, "contentType": "text/html" } }}
Haz scraping de una página y luego sigue trabajando con ella: haz clic en botones, completa formularios, extrae contenido dinámico o navega más en profundidad. Describe lo que quieres en inglés sencillo o escribe código para tener control total. Consulta la documentación de la función Interact para ver todas las opciones.
from firecrawl import Firecrawlapp = Firecrawl( # No se necesita API key para comenzar — añade una para límites de tasa más altos: # api_key="fc-YOUR-API-KEY",)# 1. Extraer la página principal de Amazonresult = app.scrape("https://www.amazon.com", formats=["markdown"])scrape_id = result.metadata.scrape_id# 2. Interactuar — buscar un producto y obtener su precioapp.interact(scrape_id, prompt="Search for iPhone 16 Pro Max")response = app.interact(scrape_id, prompt="Click on the first result and tell me the price")print(response.output)# 3. Detener la sesiónapp.stop_interaction(scrape_id)
import { Firecrawl } from 'firecrawl';const app = new Firecrawl({ // No se necesita API key para comenzar — agrega una para límites de tasa más altos: // apiKey: 'fc-YOUR-API-KEY',});// 1. Extraer la página principal de Amazonconst result = await app.scrape('https://www.amazon.com', { formats: ['markdown'] });const scrapeId = result.metadata?.scrapeId;// 2. Interactuar — buscar un producto y obtener su precioawait app.interact(scrapeId, { prompt: 'Search for iPhone 16 Pro Max' });const response = await app.interact(scrapeId, { prompt: 'Click on the first result and tell me the price' });console.log(response.output);// 3. Detener la sesiónawait app.stopInteraction(scrapeId);
# 1. Extraer la página principal de Amazon# No se necesita API key para comenzar — añade -H "Authorization: Bearer $FIRECRAWL_API_KEY" para límites de tasa más altos:RESPONSE=$(curl -s -X POST "https://api.firecrawl.dev/v2/scrape" \ -H "Content-Type: application/json" \ -d '{"url": "https://www.amazon.com", "formats": ["markdown"]}')SCRAPE_ID=$(echo $RESPONSE | jq -r '.data.metadata.scrapeId')# 2. Interactuar — buscar un producto y obtener su preciocurl -s -X POST "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact" \ -H "Content-Type: application/json" \ -d '{"prompt": "Search for iPhone 16 Pro Max"}'curl -s -X POST "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact" \ -H "Content-Type: application/json" \ -d '{"prompt": "Click on the first result and tell me the price"}'# 3. Detener la sesióncurl -s -X DELETE "https://api.firecrawl.dev/v2/scrape/$SCRAPE_ID/interact"
# 1. Scrape la página principal de Amazon (el ID de scrape se guarda automáticamente)firecrawl scrape https://www.amazon.com# 2. Interactúa — busca un producto y obtén su preciofirecrawl interact "Search for iPhone 16 Pro Max"firecrawl interact "Click on the first result and tell me the price"# 3. Detén la sesiónfirecrawl interact stop
Respuesta
Response
{ "success": true, "cdpUrl": "wss://browser.firecrawl.dev/...", "liveViewUrl": "https://liveview.firecrawl.dev/...", "interactiveLiveViewUrl": "https://liveview.firecrawl.dev/...", "output": "The iPhone 16 Pro Max (256GB) is priced at $1,199.00.", "exitCode": 0, "killed": false}