Selenium
Long-standing browser automation project whose WebDriver API controls real browsers, used for testing and scraping
Visit Selenium →Selenium is an umbrella project for tools and libraries that automate web browsers. Its best-known piece, WebDriver, uses the automation APIs the browser vendors provide to control a real browser, and it has official Python bindings. It has been the standard for browser test automation for many years and is also used for scraping pages that need JavaScript.
You no longer have to download browser drivers by hand: Selenium Manager, a command-line tool written in Rust, is shipped with every Selenium release and manages drivers and browsers automatically. Selenium also includes Grid for running tests across many machines.
See Python Web Scraping Tools Compared for how it compares with Playwright and the non-browser options.