summaryrefslogtreecommitdiffstats
path: root/skripti/365_prenesi_omejene_vsebine.sh
diff options
context:
space:
mode:
Diffstat (limited to 'skripti/365_prenesi_omejene_vsebine.sh')
-rwxr-xr-xskripti/365_prenesi_omejene_vsebine.sh32
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