2017-07-06 60 views
-2

我做pythonAPI練習,這是我完成的API地址:我不能一個JSON格式文件轉換成一個Python格式文件

http://api.juheapi.com/japi/toh?key=10245c2b75fa03d527204967ef7291cb&v=1.0&month=07&day=05

如果您使用瀏覽器打開時,正確的JSON文件顯示。但我不能得到正確的 結果使用下面的代碼。

page = urllib.urlopen(url) 
html = page.read() 
dic_json = json.loads(html) 
print dic_json 
+1

什麼樣的錯誤你得到 – Swagat

+0

對不起,請刪除地址] – flystar

+0

這樣的:{u'reason ':U' \ u8bf7 \ u6c42 \ u6210 \ u529f \ uff01' ,u'error_code':0, u'result':[{u'des':u'\ u57 \ u74 \ u524d \ u7684 \ u4eca \ uff0c1415 \ u57e747 \ u703c5(uc196 u5166 u \ u16708 \ u421d \ u4e00)\ uff0c \ u6377b \ u7684 \ u7231 \ u56fd \ u4e3b \ u4e49 \ u8005 \ u80e1 \ u53f8 \ u9047 \ u96be \ u3002', – flystar

回答

0

json中沒有任何錯誤。它成功地將json解析爲python字典。你應該看看python unicode。當你嘗試在python 2中打印一個unicode時,你會發現像這樣,但是當在瀏覽器中打開它時,它將是正確的非ASCII字符。

Python2將非ASCII字符存儲爲這種格式。

要閱讀這個特定的字典,你可以做這樣的事情。

for x,y in dic_json.items(): 
    print x,":", y 
+0

哦,好吧,那麼,我如何在控制檯中打印Unicode呢? – flystar

+0

嘗試使用'print dic_json ['reason']',舉個例子 – Swagat

相關問題