2016-05-31 5 views
0

Ich benutze Urllib2, um eine Zeichenfolge von einem Server abzurufen. Ich erwarte, dass die Zeichenfolge wie folgt sein sollte:Nicht-ASCII-Zeichenfolge vom Server abrufen, urllib2 verwenden

Bouteflika veut croire qu'il est un dirigeant hors du commun aimé de son peuple. 

Allerdings, wenn ich es drucken, es gefällt das:

Bouteflika veut croire qu'il est un dirigeant hors du commun aim\\u00E9 de son peuple. 

Das ist mein Code wird die Zeichenfolge zu erhalten:

import urllib2 

response = urllib2.urlopen(url) 

page_source = response.read() 

print page_source.decode('utf-8') 

Meine Frage ist, wie kann ich die Zeichenfolge wie erwartet erhalten?

+0

was ist 'print repr (page_source)'? – jfs

Antwort

0

Es hängt davon ab, wie der Server die Antwort sendet.

Wenn die Antwort beispielsweise JSON ist, werden doppelte Anführungszeichen und escape-Zeichen verwendet.

entschlüsseln, dass Sie

import json 
result = json.loads(response_text) 

und das resultierende direkt ein Unicode-String sein müssen.

+0

Ich benutze deinen Code und jetzt bekomme ich etwas in der Art: "Bouteflika veut croire qu'il est un dirigeant hors du commun aim \\ u00E9 de son peuple." Es enthält immer noch 'aim \ u00e9' statt 'aimé' –

Verwandte Themen