diff options
Diffstat (limited to 'skripti/365_prenesi_omejene_vsebine.sh')
-rwxr-xr-x | skripti/365_prenesi_omejene_vsebine.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/skripti/365_prenesi_omejene_vsebine.sh b/skripti/365_prenesi_omejene_vsebine.sh new file mode 100755 index 0000000..bdc003c --- /dev/null +++ b/skripti/365_prenesi_omejene_vsebine.sh @@ -0,0 +1,32 @@ +#!/bin/bash +# program poženi enkrat na dan (cronjob) v direktoriju za arhiviranje +# v datoteko zadnji shrani ID zadnje preverjene vsebine +# ko preveri vso vsebino od zadnje preverjene vsebine, se zapre +# ko naleti na vsebino, ki poteče, jo prenese +# če datoteka zadnji ne obstaja, vzame ID zadnjega dnevnika +set -euo pipefail +page=`curl --fail-with-body https://365.rtvslo.si/oddaja/dnevnik/92` # outputa preveč shita za set -x +set -x +dnevnik_id=`grep href=./arhiv/dnevnik <<<"$page" | cut -d\" -f2 | cut -d/ -f4 | head -n1` +client_id=`grep client-id <<<"$page" | cut -d\" -f2 | head -n1` +if [ ! -f zadnji ] +then + echo $dnevnik_id > zadnji +fi +id_oddaje=`cat zadnji` +while : +do + id_oddaje=$(($id_oddaje+1)) + api_response=`curl --fail-with-body https://api.rtvslo.si/ava/getRecordingDrm/$id_oddaje?client_id=$client_id` + if [ "`jq --raw-output .response.title <<<$api_response`" = Error ] + then + break + fi + if [ "`jq --raw-output .response.expirationDate <<<$api_response`" = "3001-01-01 00:00:00" ] + then + continue + fi + echo $api_response > $id_oddaje.json + yt-dlp http://365.rtvslo.si/arhiv/oddaja/$id_oddaje + echo $id_oddaje > zadnji +done |