Skip to main content
This function has multiple overloads
Navigates to a specified URL with enhanced reliability features including automatic retries with exponential backoff, intelligent timeout handling, and optional AI-powered loading verification.This function handles common navigation challenges by automatically retrying failed requests, detecting navigation hangs, and ensuring the page reaches a truly idle state.
async def go_to_url(
    page: Page,
    url: str,
    *,
    timeout_s: int,
    retries: int,
    wait_for_load_state: str,
    throw_on_timeout: bool,
    wait_for_load_using_ai: Literal[False],
) -> None
Use this overload for standard navigation without AI-powered loading detection.

Examples

from typing import TypedDict
from playwright.async_api import Page
from intuned_browser import go_to_url
class Params(TypedDict):
    pass
async def automation(page: Page, params: Params, **_kwargs):
    await go_to_url(
        page,
        url='https://sandbox.intuned.dev/'
    )
    # At this point, go_to_url has waited for the page to be loaded and the network requests to be settled.

Arguments

page
Page
required
The Playwright Page object to navigate.
url
str
required
The URL to navigate to.
timeout_s
int
Maximum navigation time in seconds. Defaults to 30.
retries
int
Number of retry attempts with exponential backoff (factor: 2). Defaults to 3.
wait_for_load_state
Literal['load', 'domcontentloaded', 'networkidle', 'commit']
When to consider navigation succeeded. Defaults to “load”.
throw_on_timeout
bool
Whether to raise an error on navigation timeout. When False, the function returns without throwing, allowing continued execution. Defaults to False.
wait_for_load_using_ai
bool
Set to False to disable AI-powered loading checks. Defaults to False.

Returns: None

Function completes when navigation is finished or fails after retries.