ubuntuusers.de

Script zum streamen / downloaden der Ö1 Journalsendungen

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

mtron

Anmeldungsdatum:
21. Mai 2005

Beiträge: 182

Hallo ubuntu user!

Ich hatte mir aus reiner faulheit schon vor einiger Zeit ein script gebastelt, das die Nachrichtenjournale des Österreichischen Radiosenders Ö1 downloded und in mp3 konvertiert (waren damals im wma format...)

Vor kurzem wurde jetzt die Website von Ö1 umgestellt und die Journale werden endlich auch als mp3 angeboten, also musste ich mein script leicht anpassen.

Das Script verwendet zenity, wget und zum streamen den vlc. Man kann sich damit das aktuelle Morgen-, Mittags- oder Abendjournal wie gesagt streamen oder downloaden lassen.

Zur Verwendung: Script & bildchen in einen beliebigen Ordner unter $HOME legen und ausführbar machen (chmod +x journale.sh). Dann einen Launcher erstellen oder einfach vom terminal mit ./journale.sh starten.

Die Sendungen landen im selben Ordner wo das script sein darsein fristet.

Hoffe es erweist sich für den einen oder anderen nützlich!

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
#! /bin/bash
# Ö1 Journale
# version 0.1
###
ICON=oe1-logo.jpg
###

## Startmenü bauen
function menu() {
CHOICE=`zenity --list --window-icon=$ICON --radiolist --width=400 --height=250 --text "Welches Journal darf's denn sein?" --title "Ö1 Info journale" --column="" --column Auswahl --column Beschreibung \
\"\" Morgen		"Ö1 Morgenjournal" \
\"\" Mittag		"Ö1 Mittagsjournal" \
\"\" Abend		"Ö1 Abendjournal" \
`

## Auswerten der Auswahl
if [ -z "$CHOICE" ];then
	zenity --error --text "Abbruch durch den Benützer"	
	exit 0
elif [ "$CHOICE" = Morgen ];then
	morgen
elif [ "$CHOICE" = Mittag ];then
	mittag
elif [ "$CHOICE" = Abend ];then
	abend
fi
}

## ------------------
## Morgenjounal Begin 
## ------------------
function morgen() {
## URL holen
echo "hole Morgenjournal URL..."
wget -b -O oe1.html http://oe1.orf.at/konsole/on_demand
sleep 3
## bearbeiten
URLFRUEH=`grep -o 'http://[^"]*.MP3' oe1.html | grep frueh | sed -n -e '1,1p'`
echo "Morgenjournal URL ist $URLFRUEH"
## Abspielen oder Download?
fruehdown
}

function fruehdown() {
MORGENDATUM=`grep Morgen oe1.html | cut -c37-46`
CHOICE=`zenity --list --window-icon=$ICON --radiolist --width=450 --height=250 --text "Morgenjournal streamen oder downloaden?" --title "now what?" --column="" --column Auswahl --column Beschreibung \
\"\" Stream		"Ö1 Morgenjournal vom $MORGENDATUM abspielen" \
\"\" Download		"Ö1 Morgenjournal vom $MORGENDATUM downloaden" \
`

## Auswerten der Auswahl
if [ -z "$CHOICE" ];then
	zenity --error --text "Abbruch durch den Benützer"
	## Aufräumen
	rm oe1.html
	rm -rf wget-log*	
	exit 0
elif [ "$CHOICE" = Stream ];then
	fruehstream
elif [ "$CHOICE" = Download ];then
	fruehdownload
fi
}

function fruehstream() {
vlc $URLFRUEH
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}

function fruehdownload() {
DATUMFRUEH=`grep Morgen oe1.html | cut -c37-46`
FILEFRUEH="Oe1_Morgenjournal_$DATUMFRUEH.mp3"
wget $URLFRUEH -O$FILEFRUEH 2>&1 | zenity --title="Download" --progress --text="Download $FILEFRUEH läuft" --pulsate --auto-close --auto-kill
zenity --info --window-icon=$ICON --text "Download $FILEFRUEH abgeschlossen"
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}
## ------------------
## Morgenjounal END
## ------------------

## -------------------
## Mittagsjounal Begin 
## -------------------
function mittag() {
## URL holen
echo "hole Mittagsjournal URL..."
wget -b -O oe1.html http://oe1.orf.at/konsole/on_demand
sleep 3
## bearbeiten
URLMIT=`grep -o 'http://[^"]*.MP3' oe1.html | grep mittag | sed -n -e '1,1p'`
echo "Mittagsjournal URL ist $URLMIT"
## Abspielen oder Download?
mittagdown
}

function mittagdown() {
MITTAGSDATE=`grep Mittag oe1.html | cut -c38-47`
CHOICE=`zenity --list --window-icon=$ICON --radiolist --width=450 --height=250 --text "Mittagsjournal streamen oder downloaden?" --title "now what?" --column="" --column Auswahl --column Beschreibung \
\"\" Stream		"Ö1 Mittagsjournal vom $MITTAGSDATE abspielen" \
\"\" Download		"Ö1 Mittagsjournal vom $MITTAGSDATE downloaden" \
`

## Auswerten der Auswahl
if [ -z "$CHOICE" ];then
	zenity --error --text "Abbruch durch den Benützer"
	## Aufräumen
	rm oe1.html
	rm -rf wget-log*	
	exit 0
elif [ "$CHOICE" = Stream ];then
	mittagstream
elif [ "$CHOICE" = Download ];then
	mittagdownload
fi
}

function mittagstream() {
vlc $URLMIT
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}

function mittagdownload() {
DATUMMITTAG=`grep Mittag oe1.html | cut -c38-47`
FILEMITTAG="Oe1_Mittagsjournal_$DATUMMITTAG.mp3"
wget $URLMIT -O$FILEMITTAG 2>&1 | zenity --title="Download" --progress --text="Download $FILEMITTAG läuft" --pulsate --auto-close --auto-kill
zenity --info --window-icon=$ICON --text "Download $FILEMITTAG abgeschlossen"
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}
## -------------------
## Mittagsjounal END 
## -------------------

## -------------------
## Abendjounal Begin 
## -------------------
function abend() {
## URL holen
echo "hole Abendjournal URL"
wget -b -O oe1.html http://oe1.orf.at/konsole/on_demand
sleep 3
## bearbeiten
URLABEND=`grep -o 'http://[^"]*.MP3' oe1.html | grep abend | sed -n -e '1,1p'`
echo "Abendjournal URL ist $URLABEND"
## Abspielen oder Download?
abenddown
}

function abenddown() {
ABENDDATE=`grep Abend oe1.html | cut -c36-45`
CHOICE=`zenity --list --window-icon=$ICON --radiolist --width=450 --height=250 --text "Abendjournal streamen oder downloaden?" --title "now what?" --column="" --column Auswahl --column Beschreibung \
\"\" Stream		"Ö1 Abendjournal vom $ABENDDATE abspielen" \
\"\" Download		"Ö1 Abendjournal vom $ABENDDATE downloaden" \
`

## Auswerten der Auswahl
if [ -z "$CHOICE" ];then
	zenity --error --text "Abbruch durch den Benützer"
	## Aufräumen
	rm oe1.html
	rm -rf wget-log*
	exit 0
elif [ "$CHOICE" = Stream ];then
	abendstream
elif [ "$CHOICE" = Download ];then
	abenddownload
fi
}

function abendstream() {
vlc $URLABEND
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}

function abenddownload() {
DATUMABEND=`grep Abend oe1.html | cut -c36-45`
FILEABEND="Oe1_Abendjournal_$DATUMABEND.mp3"
wget $URLABEND -O$FILEABEND 2>&1 | zenity --title="Download" --progress --text="Download $FILEABEND läuft" --pulsate --auto-close --auto-kill
zenity --info --window-icon=$ICON --text "Download $FILEABEND abgeschlossen"
## Aufräumen
rm oe1.html
rm -rf wget-log*
exit 0
}
## -------------------
## Abendjounal END
## -------------------

## Menu starten
menu

mcframe

Anmeldungsdatum:
31. Mai 2005

Beiträge: 46

Gute Idee, neuerdings bieten die das Programm der ganzen Woche, allerdings leider nur zum Streamen an. Es wäre cool wenn sich das Skript auf andere dort angebotene Sendungen erweitern ließe.

Antworten |