文章詳情頁
python - ulipad爬網頁時中文為何是16進制?
瀏覽:196日期: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’);
相關文章:
1. 運行python程序時出現“應用程序發生異常”的內存錯誤?2. spring-mvc - spring-session-redis HttpSessionListener失效3. javascript - QQ第三方登錄的問題4. 在mac下出現了兩個docker環境5. node.js - mongodb查找子對象的名稱為某個值的對象的方法6. 利用IPMI遠程安裝centos報錯!7. 測試自動化html元素選擇器元素ID或DataAttribute [關閉]8. 正在使用electron和node.js做桌面應用,需要實時監聽是否有網絡連接,node或者electron是否可以做到9. javascript - 在 model里定義的 引用表模型時,model為undefined。10. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統有創建日志文件,不寫入日志信息。
排行榜

網公網安備