A year ago, web scraping was still a foreign concept to me. How could I possibly automate logging into a site, navigating to a target, and extracting the required data, especially if the site relied on JavaScript for key parts of the interaction or DOM manipulation??? Fortunately, Nightmare, a simple, straightforward Node.js wrapper around PhantomJS, takes all of the horror out of this.
Full article