文章詳情頁
python - ulipad爬網頁時中文為何是16進制?
瀏覽:113日期:2022-08-15 18:33:50
問題描述
#! /usr/bin/env python#coding=utf-8import urlliburl = 'http://www.tust.edu.cn'content = urllib.urlopen(url).read()print content
python初學者,也是編程初學者。上面是代碼,用python2.7編譯的時候網頁上的中文可以正常顯示,但是用ulipad編譯的時候,網頁中的文字就是以16進制的方式顯示的。請問這個是什么問題?
我搜索的時候,看到有的回答說是在代碼后面加上encode
然而我在content后面接encode(’utf-8’)或者encode(’gb2312’)的時候都會提示報錯
ascii codec can’t decode byte 0Xef in position 0:ordinal not in range
我查了一下,找到了下面這個網址
http://blog.csdn.net/qian_f/a...
好像是說是字符編碼不統一的問題。緊接著我查了一下read返回的好像就是byte string呀....
求各位大神解答...
問題解答
回答1:個人理解,應該是read()默認的編碼無法解析網頁內容,查下資料,嘗試在read的括號內指定編碼,應該沒有必要用encode的
回答2:unicode.encode(content,’utf-8’);
相關文章:
排行榜
