您的位置:首頁技術文章
文章詳情頁

python - ulipad爬網頁時中文為何是16進制?

瀏覽:102日期: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’);

標簽: Python 編程
相關文章:
国产综合久久一区二区三区