Skip to main content

Go

El SDK de Firecrawl para Go es un wrapper de la API de Firecrawl que te permite convertir sitios web en Markdown fácilmente.
3 min read

Instalación#

El SDK oficial de Go se encuentra en el monorepo de Firecrawl, en apps/go-sdk.

Para instalar el SDK de Firecrawl para Go, ejecuta:

Note
Requiere Go 1.23 o superior.

Uso#

  1. Obtén una clave de API de firecrawl.dev
  2. Configura la clave de API como una variable de entorno llamada FIRECRAWL_API_KEY o pásala con option.WithAPIKey(...)

Aquí tienes un ejemplo rápido con la API actual del SDK:

Scraping de una URL#

Para hacer scraping de una sola URL, usa el método Scrape.

Extracción JSON#

Extrae JSON estructurado con JsonOptions mediante el endpoint Scrape:

Rastreo de un sitio web#

Para rastrear un sitio web y esperar a que finalice, usa Crawl.

Iniciar un rastreo#

Inicia un trabajo sin esperar con StartCrawl.

Consultar el estado del rastreo#

Consulta el progreso del rastreo con GetCrawlStatus.

Cancelar un rastreo#

Cancela un rastreo en ejecución con CancelCrawl.

Mapeo de un sitio web#

Encuentra enlaces en un sitio con Map.

Buscar en la Web#

Busca con opciones de búsqueda opcionales mediante Search.

Scraping por lotes#

Realiza scraping de varias URL en paralelo con BatchScrape.

Agent#

Ejecuta un agente con IA mediante Agent.

Con un esquema JSON para una salida estructurada:

Uso & métricas#

Consulta la concurrencia y los créditos restantes:

Browser#

El SDK de Go incluye utilidades para el sandbox del navegador.

Crear una sesión#

Ejecutar código#

Sesión interactiva vinculada al scraping#

Usa un ID de trabajo de scraping para ejecutar código adicional del navegador en el mismo contexto reproducido:

  • Interact(...) ejecuta código en la sesión del navegador vinculada al scraping (y la inicializa en el primer uso).
  • StopInteractiveBrowser(...) detiene explícitamente la sesión interactiva cuando hayas terminado.

Listar & cerrar sesiones#

Configuración#

firecrawl.NewClient() acepta opciones funcionales:

OpciónTipoPredeterminadoDescripción
option.WithAPIKeystringvariable de entorno FIRECRAWL_API_KEYTu clave de API de Firecrawl
option.WithAPIURLstringhttps://api.firecrawl.dev (o FIRECRAWL_API_URL)URL base de la API
option.WithTimeouttime.Duration5 * time.MinuteTiempo de espera del cliente HTTP
option.WithMaxRetriesint3Reintentos automáticos ante fallos transitorios
option.WithBackoffFactorfloat640.5Factor de backoff exponencial en segundos
option.WithHTTPClient*http.ClientSe construye a partir del timeoutInstancia de cliente HTTP preconfigurada
option.WithHeaderstring, stringAñade una cabecera adicional a todas las solicitudes

Cliente HTTP personalizado#

Puedes pasar un *http.Client preconfigurado para controlar la configuración del transporte, del proxy, de TLS y más. Cuando se proporciona, la opción WithTimeout se ignora y prevalece la propia configuración del cliente.

Compatibilidad con context.Context#

Todos los métodos aceptan context.Context como primer argumento para gestionar la cancelación y los plazos:

Manejo de errores#

El SDK usa errores tipados del paquete firecrawl.

Lógica de reintento#

El SDK reintenta automáticamente los errores transitorios:

  • Se reintentan: errores 408, 409 y 5xx, y fallos de conexión
  • No se reintentan: errores 401, 429 y otros errores 4xx
  • Backoff: backoff exponencial con factor configurable

Funciones auxiliares para punteros#

El SDK proporciona funciones auxiliares para campos de puntero opcionales:

¿Eres un agente de IA que necesita una clave de API de Firecrawl? Consulta firecrawl.dev/agent-onboarding/SKILL.md para ver las instrucciones de incorporación automática.