文章詳情頁
python - ulipad爬網頁時中文為何是16進制?
瀏覽:185日期: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. boot2docker無法啟動2. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””3. docker-compose中volumes的問題4. javascript - mock.js可以存儲數據嗎5. docker安裝后出現Cannot connect to the Docker daemon.6. nignx - docker內nginx 80端口被占用7. java - SSH框架中寫分頁時service層中不能注入分頁類8. docker api 開發的端口怎么獲???9. dockerfile - 為什么docker容器啟動不了?10. golang - 用IDE看docker源碼時的小問題
排行榜

網公網安備