UnicodeEncodeError nur beim Ausführen als Cron Job [Duplizieren]

Diese Frage hat hier schon eine Antwort:

  • Setzen Sie die richtige Codierung, wenn Piping Stdout in Python 9 Antworten

Mein Programm funktioniert direkt in der Kommandozeile, aber wenn ich es als Cron Job ausführen, stürzt es auf den Fehler ab:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xa7' in position 13: ordinal not in range(128) 

Es stürzt auf der Aussage ab

 print title 

Warum dies geschieht nur, wenn die App als Cron Job läuft? Wie könnte das behoben werden?

Ich habe versucht (ohne Hilfe):

 print unicode(title) 

Python ist 2,7

2 Solutions collect form web for “UnicodeEncodeError nur beim Ausführen als Cron Job [Duplizieren]”

Abgesehen davon: Dies ist ein häufiges Problem; Als solches ist das wohl eine doppelte Frage.

Die Standardcodierung auf 2.7 ist ascii .
Sie müssen eine Kodierung für die Ausgabe Ihres Programms angeben.
Eine gängige Codierung ist 'utf8'.

Also würdest du stattdessen tun

 print title.encode('utf8') 

Hier ist eine Möglichkeit, die Standard-Codierung zu überprüfen:

 import sys sys.getdefaultencoding() # -> 'ascii' 

Du kannst es einfacher machen. Definiere einfach PYTHONIOENCODING vor dem Ausführen dieses Skripts. So was:

 PATH=<your path> MAILTO=someone@somewhere PYTHONIOENCODING=utf8 * * * * * /run/your/script 
  • Warum Unicode-String wird nicht auf der PyCharm-Konsole angezeigt?
  • Chr () äquivalent, das ein Bytes-Objekt zurückgibt, in py3k
  • Python: Daten vs. Text?
  • Beste Weg, um eine Unicode-URL in ASCII (UTF-8 Prozent-Escaped) in Python zu konvertieren?
  • Python io Modul's TextIOWrapper oder BuffereRWPair Funktionen spielen nicht gut mit pySerial
  • Warum funktioniert diese Umstellung nicht auf utf8?
  • Was bedeutet sys.maxunicode?
  • Schreiben von Text mit diakritischen ("nikud", Vokalisierungszeichen) mit PIL (Python Imaging Library)
  • UnicodeEncode Fehler bei der Bereitstellung von Python Application
  • Unicode in Python
  • Holen Sie sich eine Liste aller Codierungen, die Python codieren kann
  • Python ist die beste Programmiersprache der Welt.