python - ulipad爬網(wǎng)頁(yè)時(shí)中文為何是16進(jìn)制?
問(wèn)題描述
#! /usr/bin/env python#coding=utf-8import urlliburl = 'http://www.tust.edu.cn'content = urllib.urlopen(url).read()print content
python初學(xué)者,也是編程初學(xué)者。上面是代碼,用python2.7編譯的時(shí)候網(wǎng)頁(yè)上的中文可以正常顯示,但是用ulipad編譯的時(shí)候,網(wǎng)頁(yè)中的文字就是以16進(jìn)制的方式顯示的。請(qǐng)問(wèn)這個(gè)是什么問(wèn)題?
我搜索的時(shí)候,看到有的回答說(shuō)是在代碼后面加上encode
然而我在content后面接encode(’utf-8’)或者encode(’gb2312’)的時(shí)候都會(huì)提示報(bào)錯(cuò)
ascii codec can’t decode byte 0Xef in position 0:ordinal not in range
我查了一下,找到了下面這個(gè)網(wǎng)址
http://blog.csdn.net/qian_f/a...
好像是說(shuō)是字符編碼不統(tǒng)一的問(wèn)題。緊接著我查了一下read返回的好像就是byte string呀....
求各位大神解答...
問(wèn)題解答
回答1:個(gè)人理解,應(yīng)該是read()默認(rèn)的編碼無(wú)法解析網(wǎng)頁(yè)內(nèi)容,查下資料,嘗試在read的括號(hào)內(nèi)指定編碼,應(yīng)該沒(méi)有必要用encode的
回答2:unicode.encode(content,’utf-8’);
相關(guān)文章:
1. javascript - 原生JS和jQuety關(guān)于設(shè)置圖片輪播定時(shí)器問(wèn)題2. 初來(lái)乍到,相對(duì)路徑問(wèn)題,新手求教3. javascript - 請(qǐng)問(wèn)為啥這個(gè)不能渲染成功?4. 老師您好!我有一個(gè)問(wèn)題、5. c++ - 如何在python的阻塞的函數(shù)中獲取變量值6. javascript - iframe 為什么加載網(wǎng)頁(yè)的時(shí)候滾動(dòng)條這樣顯示?7. list - python 求助8. 后端開(kāi)發(fā) - mysql按時(shí)間分段統(tǒng)計(jì)的sql語(yǔ)句怎么寫(xiě)好?9. mysql - 在下剛?cè)腴Tsql 關(guān)于sql的語(yǔ)法詢問(wèn)10. 哭遼 求大佬解答 控制器的join方法怎么轉(zhuǎn)模型方法
