diff --git a/webscraping/README.md b/webscraping/README.md new file mode 100644 index 0000000..142b56a --- /dev/null +++ b/webscraping/README.md @@ -0,0 +1,5 @@ +# Web scraping + +### Definition + +This folder includes examples of using nushell to scrape server side rendered websites diff --git a/webscraping/scraping.nu b/webscraping/scraping.nu new file mode 100755 index 0000000..7779183 --- /dev/null +++ b/webscraping/scraping.nu @@ -0,0 +1,9 @@ +#!/usr/bin/env nu +let baseurl = 'https://www.schiit.co.uk/' +let pages = [headphone-amps dacs schiit-gaming-products power-amplifiers preamps upgrades accessories-cables schiit%20graded%20stock] +$pages|each { + let product = $it + fetch (build-string $baseurl $product)|selector 'div.caption' -a|each { + echo [[($it|selector 'h5'|str trim)]; [(echo $it|selector 'p.stock')]]|pivot $product availability + } +}