RosettaCodeData/bin/rcd-api-list-all-tasks

28 lines
493 B
Bash
Executable File

#!/usr/bin/env bash
set -e -u -o pipefail
params=(
action=query
list=categorymembers
cmtitle=Category%3AProgramming_Tasks
cmprop=title
cmlimit=1500
format=json
)
url=https://rosettacode.org/w/api.php?$(IFS='&'; echo "${params[*]}")
more=''
while true; do
json=$(curl -Ls "$url$more")
<<<"$json" jq -r '.query .categorymembers | .[] .title'
cmcontinue=$(<<<"$json" jq -r .continue.cmcontinue)
[[ $cmcontinue == null ]] && break
more="&cmcontinue=$cmcontinue"
done