Download “NPO Radio 2 – Top 2000” in mp3 format

Top 2000

In a marathon program from Christmas to New Year’s eve NPO Radio 2 broadcasts the so called “Top 2000“. A list of the 2000 most popular songs of all time. Because I’m not able to listen all 2000 songs in one go, I like to have them on a USB drive in MP3 format, so that I’m able to listen for example in my car.

The shell script below downloads the full “Top 2000” of 2022 in MP3 format from the official website. 80 MP3 files, ~12GB in size.

Required tools: curl jq sed grep tac cat

set -e

for i in $(seq 25 31); do
    curl -s$i-12-$year | grep __NEXT_DATA__ | sed -e 's/.*application\/json">//' -e 's/<\/script><script>//' | jq -r .props.pageProps.broadcasts[].url | sed -e 's/^/https:\/\/' | tac >> pages

for p in $(cat pages); do
    curl -s $p | grep __NEXT_DATA__ | sed -e 's/.*application\/json">//' -e 's/<\/script><script>//' | jq -r .props.pageProps.radioBroadcast.showAssets[].embedCode | sed -e "s/');};document.getElementById.*$//" -e "s/.*'//" -e "s/$/.mp3/" -e "s/^/https:\/\/\/handle\//" >> mp3
# optional: remove the 1st 4 items (00:00-02:00, 02:00-04:00, 04:00-06:00, 06:00-08:00)
#tail -n +5 mp3 | sponge mp3

for m in $(cat mp3); do
    curl -OL $m

December 31, 2022: Script updated