Ferrum
Headless Chrome Ruby API
...Ferrum runs in headless mode by default but can also be configured to run with a visible browser window for debugging and development purposes. The library communicates directly with Chrome through the DevTools Protocol, providing access to advanced browser functionality such as DOM manipulation, network inspection, and page automation. Because of this low-level access, Ferrum offers greater flexibility and performance compared to traditional WebDriver-based automation tools. It is commonly used for tasks such as web scraping, automated testing, crawling, and screenshot or PDF generation.