Wie leite ich die Ausgabe in eine Datei, wenn UTF-8-Zeichen vorhanden sind?
Ich habe ein Python-Skript, das eine Reihe aktueller Tweets von der Twitter-API abruft und sie auf dem Bildschirm ablegt. Es funktioniert gut, aber wenn ich versuche, die Ausgabe in eine Datei zu leiten, passiert etwas Seltsames und eine print-Anweisung löst eine Ausnahme aus:
> ./tweets.py > tweets.txt
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2018' in position 61: ordinal not in range(128)
Ich verstehe, dass das Problem mit einem UTF-8-Zeichen in einem der Tweets zusammenhängt, das sich nicht gut in ASCII übersetzen lässt. Behebe ich das im Python-Skript oder gibt es eine Möglichkeit, es in der Befehlszeile zu erzwingen?
BTW, das Skript wurde in Python2 geschrieben.