Hier findet man ein paar vorschläge, aber wirklich überzeugen zun die glaub ich nicht, oder?
http://stackoverflow.com/questions/1463 ... -undefined
am besten gefällt mir in der zweiten Antwort die funktion:
Code: Alles auswählen
def uprint(*objects, sep=' ', end='\n', file=sys.stdout):
enc = file.encoding
if enc == 'UTF-8':
print(*objects, sep=sep, end=end, file=file)
else:
f = lambda obj: str(obj).encode(enc, errors='backslashreplace').decode(enc)
print(*map(f, objects), sep=sep, end=end, file=file)
hier wird das € zeichen durch '\u20ac' ersetzt.
Allerdings ist da nun die Frage, ob diese Funktion nur mit print funktioniert.
Letzlich will ich die Antworten ja so nicht printen, sondern ich möchte die Daten auslesen.
Mit uprint() sieht das add_order" event nun so aus:
Code: Alles auswählen
5:::{"name":"add_order","args":[{"id":"1912831","type":"offer","amount":"10","min_amount":"0.1775","price":"386.72","vol
ume":"3867.20","min_trust_level":"bronze","only_kyc_full":"0","seat_of_bank_of_creator":"de","bic_short":"0yzjPeTwlzkig1
B-","bic_full":"0yzjPeTw33DssfxIB4io2Mow-w..","uid":"0ywbQpkIozshf3HhqA..","trade_to_sepa_country":"[\"DE\",\"AT\",\"CH\
",\"DK\",\"NL\",\"NO\",\"SE\"]","is_shorting":"0","is_shorting_allowed":"0","is_trade_by_sepa_allowed":"0","is_trade_by_
fidor_reservation_allowed":"1","fidor_account":"0","is_kyc_full":"1","price_de":"386,72 \u20ac","volume_de":"3.867,20 \u
20ac","amount_de":"10","min_amount_de":"0,1775","country_payment_method_de":"Deutschland","price_formatted_de":"386,72 "
,"price_en":"\u20ac386.72","volume_en":"\u20ac3,867.20","amount_en":"10","min_amount_en":"0.1775","country_payment_metho
d_en":"Germany","price_formatted_en":"386.72","price_fr":"386,72 \u20ac","volume_fr":"3 867,20 \u20ac","amount_fr":"10",
"min_amount_fr":"0,1775","country_payment_method_fr":"Allemagne","price_formatted_fr":"386,72 ","price_es":"\u20ac 386,7
2","volume_es":"\u20ac 3.867,20","amount_es":"10","min_amount_es":"0,1775","country_payment_method_es":"Alemania","price
_formatted_es":" 386,72","price_it":"\u20ac 386,72","volume_it":"\u20ac 3.867,20","amount_it":"10","min_amount_it":"0,17
75","country_payment_method_it":"Germania","price_formatted_it":" 386,72","order_id":"KQYN3P","order_type":"sell","payme
nt_option":"1"}]}
Letzlich will ich daraus ja nur die einträge extrahieren. also beim price brauch ich nur die Zahl und nicht das euro zeichen.
Muss ich da die antwort nun vorher auch encoden, oder nicht?