#! /usr/bin/env nix-shell
#! nix-shell -i bash -p htmlq
search_args=$1
recipies_per_search=500
update_cache() {
cache=$(curl "$1" -s)
}
get_number_of_search_pages() {
local results=$(curl "https://www.bbcgoodfood.com/api/search-frontend/search?limit=1&${search_args}" -s | jq '.searchResults.totalItems')
if [[ $(($results % recipies_per_search)) == 0 ]]; then
echo $(($results / $recipies_per_search))
else
echo $(($results / $recipies_per_search + 1))
fi
}
get_main_ingredients() {
if [[ -z "$1" ]]; then
local data=$cache
else
local data=$(curl $1 -s)
fi
echo "$data" | htmlq -p | grep '.*' | sed 's/^.*//' | sed 's/<\/a>.*//' | sed 's/,//'
echo "$data" | htmlq -p | grep '.*' | sed 's//@/g' | awk -F@ '{print $2}' | sed 's/,//'
}
get_page_json() { # Unused - but could be helpful for expanding this out layer
if [[ -z "$1" ]]; then
local data=$cache
else
local data=$(curl $1 -s)
fi
echo "$data" | htmlq -p | grep '