From f7c5557f56062f74313a38fc380236525da233b6 Mon Sep 17 00:00:00 2001 From: Grzegorz Chodzicki Date: Wed, 4 Aug 2021 19:09:58 +0200 Subject: [PATCH] Added webscraping example --- webscraping/README.md | 5 +++++ webscraping/scraping.nu | 9 +++++++++ 2 files changed, 14 insertions(+) create mode 100644 webscraping/README.md create mode 100755 webscraping/scraping.nu 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 + } +}