【发布时间】:2016-12-04 08:40:18
【问题描述】:
我正在尝试将一些 Unicode 字符打印出来或写入文本文件并遇到错误..请建议,尝试 google 给了我一些提示,但那个错误也被编辑了..下面是我的代码..我在这里可能做错了什么..
我正在尝试最终使用“请求”并使用具有 Unicode 值的数据解析 JSON..
我正在尝试使用来自此 url 的请求来解析 JSON
https://api.discogs.com/releases/7828220
try:
import requests
import json
url = 'https://api.discogs.com/releases/7828220'
headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.0; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0' }
art = requests.get(url, headers=headers)
json_object = json.loads(art.text)
try:
print str(json_object['companies'][0][name])
except:
print "Genre list isn't defined"
{u'name': u'\u041e\u041e\u041e "\u041f\u0430\u0440\u0430\u0434\u0438\u0437"', u'entity_type': u'10', u'catno': u'PARAD-432', u'resource_url': u'https://api.discogs.com/labels/210403', u'id': 210403, u'entity_type_name': u'Manufactured By'}
这里的 json_object['companies'][0][name] 有一些 Unicode 字符不会显示在命令行终端上,也不会写入具有所需输出 (Unicode) 的文件
Actual output looks like "ООО "Парадиз"",
如何让 python 解释这些值?
【问题讨论】:
-
错误是什么?问题是什么?
-
顺便说一句 bytes = u'' 已经是一个 unicode 字符串
-
你确定你的终端字体支持那些缺失的字符吗?
标签: python unicode python-unicode