Downloads a file from a web page using various trigger methods. This function provides three flexible ways to initiate file downloads:
URL: Creates a new page, navigates to the URL, waits for download, then automatically closes the page. Ideal for direct download links.
Locator: Uses the current page to click the element and capture the resulting download. Perfect for download buttons or interactive elements.
Callback: Executes the provided function with the page object and captures the first triggered download. Offers maximum flexibility for complex download scenarios.
from typing import TypedDictfrom playwright.async_api import Pagefrom intuned_browser import download_fileclass Params(TypedDict): passasync def automation(page: Page, params: Params, **_kwargs): # Download from a direct URL, this will open the url and automatically download the content in it. download = await download_file( page, trigger="https://intuned-docs-public-images.s3.amazonaws.com/32UP83A_ENG_US.pdf" ) file_name = download.suggested_filename return file_name