Web Scraping with NodeJS: a comprehensive guide