python2.7打印接口返回的数据时提示[Decode error - output not utf-8]
阿神
阿神 2017-04-17 17:35:45
0
3
465

打印接口返回的数据,提示[Decode error - output not utf-8]

代码如下:

-- coding=utf-8 --

import urllib2
import json
import sys

reload(sys)
sys.setdefaultencoding('utf-8')

html = urllib2.urlopen(r'http://api.douban.com/v2/book/isbn/9787218087351')
content=html.read()
content = content.decode('UTF-8')
hjson = json.loads(content)

print u' '

print hjson['rating']

print hjson'images'

print hjson['summary']

如果不注释上图圈的一行代码就能正常打印。新手小白请大神指教

阿神
阿神

闭关修行中......

membalas semua(3)
伊谢尔伦

Ini ada kaitan dengan terminal sublime Ia mungkin hanya menyokong utf-8 Kerana kandungan dalam hjson anda adalah unicode, ia tidak disokong apabila dicetak sebagai utf-8:

 print hjson['summary'].encode('utf-8')
伊谢尔伦

Sublime, sila cuba jalankan atur cara pada baris arahan terlebih dahulu untuk melihat sama ada ralat akan dilaporkan.

Jika baris arahan adalah normal, ini sepatutnya menjadi masalah pengekodan yang disebabkan oleh bahasa Cina Periksa pengekodan lalai bagi fail Sublime anda. Ia ditulis di sudut kiri bawah atau kanan bawah , tukar kepada utf-8 Cubalah. utf-8

Peter_Zhu

pengekodan=utf-8

permintaan import, json
r = requests.get('http://api.douban.com/v2/book/isbn/9787218087351')
obj = json.loads(r.text)
print obj['summary']

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan