ウェブサイトからxmlを解析する過程で、私はUTF-8エンコーディングの問題を抱えてしまいました。具体的には、私がどのように見える文字列を持っている:私はこれを印刷するときPython UTF-8エンコーディングの問題
u'PA_g\xc3\xa9p7'
は私が取得:
>> PA_gép7
私が代わりにしたいことはここでは、次の
print('PA_g\xc3\xa9p7')
>> PA_gép7
から来ていることは私のコードです:
def get_api_xml_response(base_url, query_str):
"""gets xml from api @ base_url using query_str"""
res = requests.get(u'{}{}'.format(base_url, query_str))
xmlstring = clean_up_xml(res.content).encode(u'utf-8')
return ET.XML(xmlstring)
私のfuネームスペースと他の問題を引き起こしていた文字を削除するには、clean_up_xmlが存在します。
def clean_up_xml(xml_string):
"""remove the namespace and invalid chars from an xml-string"""
return re.sub(' xmlns="[^"]+"', '', xml_string, count=1).replace('&', '&')
お返事ありがとうございます!あなたは正しかった、私はどこにあってはならないべきかをエンコードしていた! – Valkry