Linux 15.069 Themen, 107.534 Beiträge

rsstail / gawk und umlaute bei bestimmten RSS Feeds

robinx99 / 2 Antworten / Baumansicht Nickles

Hallo,
ich veruche gerade mir ein Skript zurecht zu basteln, mit dem ich mir RSS Feeds vorlesen lassen kann. Momentan versuche ich es mit rsstail das klappt z.B.: auch mit den rss feeds von heise.de und auch n24.de. Allerdings scheitert mein bisheriges konstruk bei nickles.de oder auch n-tv.de an umlauten. Umlaute werden auch nicht korrekt im terminal angezeigt wenn ich mir die xml datei des rss feeds mittels wget runterlade, bisher nur die 4 seiten getestet n24.de und heise.de funktionieren n-tv.de und nickles.de funktionieren nicht.
Hat da jemand eine idee? evtl. acuh eine alternative zu rsstail.

achja mein bisheriger testversuch sieht so aus
------------------
mkdir /tmp/fifo
mkfifo /tmp/fifo/b
mkfifo /tmp/fifo/c
rsstail -n 5 -u http://www.heise.de/newsticker/heise-atom.xml >>/tmp/fifo/a &
sleep 1s
rsstail -u http://www.n24.de/2/index.rss -d -n 5 >>/tmp/fifo/a &
echo "" >/tmp/fifo/a
tail -f /tmp/fifo/a| gawk '{if (substr ($0,0,11)!="Description") {print substr ($0,12,8) " " substr ($0,28);fflush ("")} if (substr ($0,0,11)=="Description"){print substr ($0,14)}}' | espeak -v de --stdout |dd of=/tmp/fifo/b &
oggenc /tmp/fifo/b -o /tmp/fifo/c &
mplayer /tmp/fifo/c
--------------------

und warum der mplayer die wav datei nicht direkt abspielen will und ich den umweg über oggenc machen muß ist mir auch noch nicht klar (Fehlermeldung mplayer "Cannot seek backwards in linear stream", doch warum mplayer spulen will verstehe ich nicht). Ich lasse momentan espeak auch den umweg über eine fifo gehen aus dem grund dass espeak manchmal aus irgendwelchen gründen nicht direkt abspielen kann und folgende Fehlermeldung gibt:
PaHost_OpenStream: could not open /dev/dsp for O_WRONLY
PaHost_OpenStream: ERROR - result = -10000

gruß
robinx99

bei Antwort benachrichtigen
Borlander robinx99 „rsstail / gawk und umlaute bei bestimmten RSS Feeds“
Optionen

Ich würde spontan auf die verschiedenen Zeichensatzcodierungen tippen. Wird vermutlich immer dann krachen wenn der Feed eine andere Zeichensatzcodierung hat als bei Dein Systemstandard. Wenn die Codierung direkt für die XML-Datei angegeben ist gibt es evtl. tools die das automatisch auf das von Dir gewünschte konvertieren können...

Gruß
Borlander

bei Antwort benachrichtigen
robinx99 Borlander „Ich würde spontan auf die verschiedenen Zeichensatzcodierungen tippen. Wird...“
Optionen

Ja bei genauerer betrachtung scheint es darauf hinauszulaufen.
Nur habe ich momentan noch ein problem.
Ich habe gesehen dass ich den inhalt wie folgt convertieren könnte, wenn er in einer datei ist
cat /tmp/datei | iconv --from-code ISO-8859-1 --to-code UTF-8
Funktioniert.
Interessanterweise funktioniert
tail -f /tmp/datei | iconv --from-code ISO-8859-1 --to-code UTF-8
nicht, und eingentlich bräuchte ich ja etwas dass die datei permanent weiterließt.
Aber danke für den Tip mit dem encoding, ich werde mir dass noch genauer anschaun

gruß
robinx99

bei Antwort benachrichtigen