Puppeteer is a headless Node library that provides a high level API for controlling Chromium or Chrome over the DevTools protocol. It requires zero setup and comes bundled with the Chromium version most suited to it. Puppeteer is headless by default, making it fast to run. However, it can also be set to run full or non-headless Chrome or Chromium, simply set the headless option when launching a browser.
Many of the things you can do manually in the browser, you can also do with Puppeteer...