POST https://api.acedata.cloud/webextrator/render
La API de renderizado web de WebExtrator es un servicio de renderizado web basado en Chromium sin interfaz gráfica. Dada una URL,
devuelve el HTML completamente renderizado (incluido el contenido inyectado por JS), texto sin formato, el título de la página y la URL final.
Render es la interfaz más básica de WebExtrator. Si necesitas resultados de extracción estructurados (cuerpo de artículos,
precios de productos, ingredientes de recetas …), utiliza
/webextrator/extract —— ejecuta un conjunto completo de flujos de extracción tipados
sobre la misma base de renderizado.
Proceso de solicitud
Para utilizar la página de servicio de WebExtrator, primero obtén tu API Token en la consola de Ace Data Cloud y guárdalo como respaldo.
Si aún no has iniciado sesión o no te has registrado, serás redirigido automáticamente a la página de inicio de sesión para invitarte a registrarte e iniciar sesión; al completarlo, volverás automáticamente a la página actual.
Un solo API Token puede invocar todos los servicios de la plataforma, sin necesidad de solicitar uno por separado para cada servicio. La primera solicitud incluye crédito gratuito, que permite una experiencia gratuita; cuando el crédito sea insuficiente, puedes recargar saldo general en la consola.
📘 Documentación completa: Página de servicio de WebExtrator →
Autenticación
Todas las interfaces de WebExtrator utilizan autenticación estándar mediante Bearer Token:Parámetros de solicitud
El contrato de la plataforma utiliza de forma unificada snake_case. El servicio interno de renderizado admite camelCase, pero las llamadas externas siempre utilizan snake_case.
Estructura de Cookie
Respuesta síncrona
Respuesta asíncrona
Cuandoasync=true (o se proporciona callback_url), devuelve inmediatamente (HTTP 200):
POST a callback_url (si está configurado), o se consultará activamente a través de
/webextrator/tasks.
Estructura de devolución de llamada
La plataforma hacePOST del envelope exactamente igual que en el modo síncrono a callback_url,
con Content-Type: application/json. Devolver cualquier 2xx se considera confirmado; los 5xx se
reintentarán con retroceso exponencial durante aproximadamente 5 minutos.
Respuesta de error
Estructura de error:
Ejemplos
cURL
Python (requests)
Node.js (fetch)
Asíncrono + callback
{ "success": true, "task_id": "...", "trace_id": "...", "started_at": 1777717800.123 };
cuando la tarea se complete, la plataforma hará POST del resultado completo a tu callback_url.
Forzar la omisión de caché
Consejos y errores comunes
- Es importante elegir correctamente
wait_until.networkidlees el más estable pero el más lento;domcontentloadedes rápido, pero puede omitir contenido inyectado de forma asíncrona;loades adecuado para páginas estáticas tradicionales. - La clave de caché ignora
async. Las solicitudes síncronas y asíncronas para la misma URL alcanzan la misma entrada de caché, por lo que cambiar libremente entre ellas no la invalidará. - La clave de caché ignora
bypass_cacheycache_ttl_seconds. Estos dos son interruptores operativos, y no afectan al contenido de la respuesta. cookiesyheaderssegmentan la caché. Personalizar estos dos hará que falle el primer acierto con la misma combinación.- Las SPA pesadas a menudo superan los 30 segundos predeterminados. Se recomienda
timeout: 60,wait_until: "domcontentloaded",delay: 4, y luego combinarlo conwait_for_selectorpara esperar los elementos que realmente te interesan. block_resourceses la vía más rápida para reducir la latencia. Las imágenes / fuentes / medios ya están bloqueados de forma predeterminada; si tu extracción no depende del diseño CSS, añadirstylesheetpuede hacerlo aún más rápido.

