文章詳情頁
python - ulipad爬網頁時中文為何是16進制?
瀏覽:127日期: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. mysql優化 - 關于mysql分區2. php laravel框架模型作用域3. vue.js - vue 打包后 nginx 服務端API請求跨域問題無法解決。4. node.js - 在vuejs-templates/webpack中dev-server.js里為什么要exports readyPromise?5. java - Atom中文問題6. 請教各位大佬,瀏覽器點 提交實例為什么沒有反應7. objective-c - iOS開發支付寶和微信支付完成為什么跳轉到了之前開發的一個app?8. javascript - 為什么這個點擊事件需要點擊兩次才有效果9. html5 - 如何實現帶陰影的不規則容器?10. javascript - ionic2 input autofocus 電腦成功,iOS手機鍵盤不彈出
排行榜
