Web scraping in Node.js con axios e jsdom
In Node.js abbiamo diversi metodi/librerie per fare il web scraping.
In questo articolo vediamo come farlo axios e jsdom.
La seconda libreria non è obbligatoria, ma ci aiuta molto.
Possiamo installarle entrambe con npm:
npm i axios jsdom
Qui sotto un esempio di codice:
const axios = require('axios');
const jsdom = require("jsdom");
const {JSDOM} = jsdom;
const url = 'https://www.mattepuffo.com/blog'
axios.get(url)
.then(function (response) {
const dom = new JSDOM(response.data);
console.log(dom.window.document.title);
[...dom.window.document.querySelectorAll('.post-content h1')]
.forEach(el => console.log(`- ${el.textContent.trim()}`));
});
Come vedete con axios eseguiamo una richiesta HTTP e recuperiamo l'HTML.
Con jsdom eseguiamo il parsing usando le funzioni standard di Javascript.
Enjoy!
javascript nodejs npm axios jsdom
Commentami!