gag*_*ina 2 python utf-8 character-encoding
我有这串 Traor\u0102\u0160
Traor\u0102\u0160应该产生Traoré。然后Traoréutf-8解码应该产生Traorè
我如何将其转换为Traorè?
什么样的字符是Traor\u0102\u0160?Unicode?
我已经阅读了很多http://docs.python.org/howto/unicode.html#encodings。但是我还是很困惑。
我通过以下请求获取此数据:
import json
import requests
# making a request to get this json
r = requests.get('http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/web/199074.json')
print r.json
Run Code Online (Sandbox Code Playgroud)
#! /usr/bin/env python
# -*- coding: utf-8 -*-
import json
import requests
headers = {'Content-Type': 'application/json'}
r = requests.get('http://cdn.content.easports.com/fifa/fltOnlineAssets/2013/fut/items/web/199074.json', headers=headers)
print r.content
#prints
{"Item":{"FirstName":"Lacina","LastName":"Traoré","CommonName":null,"Height":"203","DateOfBirth":{"Year":"1990","Month":"8","Day":"20"},"PreferredFoot":"Left","ClubId":"100766","LeagueId":"67","NationId":"108","Rating":"78","Attribute1":"79","Attribute2":"71","Attribute3":"45","Attribute4":"69","Attribute5":"50","Attribute6":"72","Rare":"1","ItemType":"PlayerA"}}
Run Code Online (Sandbox Code Playgroud)
基本上,我需要设置发送严格的标题。
谢谢你们
>>> import requests
>>> r = requests.get(url)
>>> r.encoding = 'UTF-8'
>>> r.json[u'Item'][u'LastName']
u'Traor\xe9'
Run Code Online (Sandbox Code Playgroud)
否则,您将获得以下信息:
>>> r = requests.get(url)
>>> r.json['Item']['LastName']
u'Traor\u0102\u0160'
Run Code Online (Sandbox Code Playgroud)