83f1d7c8d3
Sincroniza la documentación con los cambios de comportamiento: - cdp_wait_load.md: descripción y notas reflejan el cambio de polling a evento Page.loadEventFired con fast path; bump a v1.1.0; añade tag de grupo 'navegator' y growth log. - cdp_type_text.md: corrige la nota (envía 2 eventos keyDown+keyUp, no 3; ya no manda el char extra que duplicaba) y la pausa aleatoria; documenta la función hermana rápida CdpInsertText; bump a v1.1.0; tag 'navegator'; growth log. - cdp_type_ref.md: documenta CdpTypeRefFast (camino rápido insertText) frente a CdpTypeRef (camino human); bump a v1.1.0; growth log.
2.2 KiB
2.2 KiB
name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
| name | kind | lang | domain | version | purity | signature | description | tags | uses_functions | uses_types | returns | returns_optional | error_type | imports | params | output | tested | tests | test_file_path | file_path | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| cdp_wait_load | function | go | browser | 1.1.0 | impure | func CdpWaitLoad(c *CDPConn, timeout time.Duration) error | Espera a que la pagina actual termine de cargar completamente. Bloquea hasta recibir el evento CDP Page.loadEventFired (sin polling), con un fast path inicial de document.readyState: si ya esta complete, retorna de inmediato. Retorna error si se agota el timeout o si no logra habilitar el dominio Page. |
|
|
false | error_go_core |
|
|
error si document.readyState no llega a complete | false | functions/browser/cdp_wait_load.go |
Ejemplo
conn, _ := CdpConnect(9222)
CdpNavigate(conn, "https://example.com")
// Esperar hasta 30 segundos a que la pagina cargue por completo
if err := CdpWaitLoad(conn, 30*time.Second); err != nil {
log.Fatal("Timeout esperando carga:", err)
}
html, _ := CdpGetHTML(conn)
Notas
Bloquea esperando el evento CDP Page.loadEventFired (sin polling). Antes de esperar hace un fast path con document.readyState: si la página ya está complete, retorna de inmediato sin armar el handler. Tras suscribir el evento re-chequea readyState una vez más para no perder la carga por una carrera entre el fast path y el registro del handler. Habilita el dominio Page vía ensurePage (cacheado por conexión, idempotente).
Si timeout <= 0 usa 30s por defecto (mas largo que CdpWaitElement porque la carga completa de red puede tardar mas que la aparicion de un elemento DOM).
Capability growth log
- v1.1.0 (2026-06-13) — De polling de
document.readyStatecada 200ms a esperar el eventoPage.loadEventFired(víaOnEvent+ canal con timeout), con fast path inicial dereadyState. Elimina los round-trips de polling y la cuantización de ±200ms: si la página ya está cargada retorna en microsegundos.