As simple as Puppeteer, though even simpler.
It is Ruby clean and high-level API to Chrome. Runs headless by default, but you can configure it to run in a non-headless mode. All you need is Ruby and Chrome/Chromium. Ferrum connects to the browser via DevTools Protocol.
Cuprite used to have this code inside in one form or another but the thing is you don’t need Capybara if you are going to crawl sites. You crawl, not test. Besides that clean lightweight API to browser is what Ruby was missing, so here it comes.