Web scraping con htmlq

Mattepuffo's logo
Web scraping con htmlq

Web scraping con htmlq

htmlq è un programma scritto in Rust per il web scraping delle pagine web.

Essendo scritto in Rust è potenzialmente multi piattaforma, anche se io l'ho testato solo su Linux.

Prima di tutto dovete installare Cargo; su Debian:

# aptitude install cargo

Dopo di che possiamo installare htmlq:

$ cargo install htmlq

Poi dovete aggiungere la directory cargo al PATH; aggiungete questa riga al vostro file .bashrc (o quello che usate):

export PATH="${PATH}:${HOME}/.cargo/bin"

Fatto tutto questo possiamo usare il programma; nell'esempio più basico estraiamo tutta la pagina:

$ curl --silent http://www.climbook.com/ | htmlq

Se invece vogliamo estrarre tutti i links:

$ curl --silent http://www.climbook.com/ | htmlq a

Se vogliamo visualizzare solo il link vero e proprio:

$ curl --silent http://www.climbook.com/ | htmlq a --attribute href -b http://www.climbook.com/

Se vogliamo visualizzare solo testo che c'è tra i caratteri di apertura e chiusura:

$ curl --silent http://www.climbook.com/ | htmlq a --text

Volendo possiamo prendere componenti HTML cercando per classi CSS:

$ curl --silent http://www.climbook.com/ | htmlq div.media-body

Per fare un test che effettivamente funzioni, provate a mettere una classe errata:

$ curl --silent http://www.climbook.com/ | htmlq div.media-body__

Enjoy!


Condividi

Commentami!