2016-05-23 6 views
0

ich vor unter Windows mehrere Monate 3.5.1 Python installiert 7. ich ein Python-Programm haben, die in Py-Datei. Es läuft gut aus IDLE Python.Python laufen py Datei - funktioniert OK in IDLE, nicht über Eingabeaufforderung von Windows 7 - UnicodeEncodeError

Allerdings, wenn ich es von Eingabeaufforderung ausführen, heißt es:

C:\_1\Python>info_.py 
START ------------------------- 
Traceback (most recent call last): 
    File "C:\_1\Python\info_.py", line 33, in <module> 
    print (data) 
    File "C:\Program Files\Python35\lib\encodings\cp866.py", line 19, in encode 
    return codecs.charmap_encode(input,self.errors,encoding_map)[0] 
UnicodeEncodeError: 'charmap' codec can't encode character '\xab' in position 18 
4: character maps to <undefined> 

Daten:

u = urllib.request.urlopen('http://www.****') 
data = u.read() 

Ich will auch von der unverzüglichen Programme auszuführen. Was kann ich tun, um sicherzustellen, dass mein Code in IDLE und über die Eingabeaufforderung unter Windows funktioniert?

+1

Ihr Problem besteht darin, ähnlich wie man hier angegeben http://stackoverflow.com/questions/27092833/unicodeencodeerror-charmap-codec-cant-encode-characters – Harwee

Antwort

1

Versuchen kodieren

print(data.encode('utf-8')) 
+1

Dies ist nur das Drucken repr von einem 'bytes' Objekt, so' '« "wird als' b '\ xc2 \ xab'' gedruckt. Zum Drucken von Unicode in der Windows-Konsole ist eine separate API mit erweiterten Zeichen erforderlich, die Python standardmäßig nicht verwendet. Installieren Sie ['win_unicode_console'] (https://pypi.python.org/pypi/win_unicode_console), um diese API zu aktivieren. – eryksun

Verwandte Themen