This repo demonstrates a GitHub action that every 3 hours scrapes Weston Lambert's available work page. It records the currently available products to products.csv, and there are any new products that are unsold, sends me a push notification using ntfy.sh.
It uses a staged deployment process where deploy.yaml creates a docker container when you tag a commit. Then run.yml checks out that container and runs scrape.R every three hours.