5b10b419a2
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
32 lines
845 B
Go
32 lines
845 B
Go
package browser
|
|
|
|
import (
|
|
"fmt"
|
|
)
|
|
|
|
// CdpNavigate navega a la URL indicada usando Page.navigate.
|
|
// NO espera a que la pagina cargue: retorna en cuanto Chrome acepta la navegacion
|
|
// (solo verifica que no haya errorText). Para esperar la carga real encadena
|
|
// despues CdpWaitLoad (document.readyState) o CdpWaitIdle (red en reposo).
|
|
func CdpNavigate(c *CDPConn, targetURL string) error {
|
|
if c == nil {
|
|
return fmt.Errorf("cdp navigate: conexion nula")
|
|
}
|
|
|
|
params := map[string]any{
|
|
"url": targetURL,
|
|
}
|
|
|
|
result, err := c.sendCDP("Page.navigate", params)
|
|
if err != nil {
|
|
return fmt.Errorf("cdp navigate: %w", err)
|
|
}
|
|
|
|
// Verificar que no hubo error de navegacion
|
|
if errText, ok := result["errorText"].(string); ok && errText != "" {
|
|
return fmt.Errorf("cdp navigate: error navegando a %q: %s", targetURL, errText)
|
|
}
|
|
|
|
return nil
|
|
}
|