在把網(wǎng)頁(yè)源代碼爬下來之后,出現(xiàn)了一個(gè)問題
源代碼中的中文字符全部變成“吆鹤?厨疙??”問號(hào)(黑人問號(hào)臉.jpg)
pycharm提示的是decode方面出現(xiàn)了問題疑务,所以我上網(wǎng)百度了一下python的編碼解碼
其中http://blog.csdn.net/moodytong/article/details/8136258
這篇博文較為詳細(xì)的說明了python的編碼解碼沾凄,所以我就按照上面的方法進(jìn)行嘗試梗醇,一開始看的是下面幾行代碼:
u = u'中文'#顯示指定unicode類型對(duì)象ustr = u.encode('gb2312')#以gb2312編碼對(duì)unicode對(duì)像進(jìn)行編碼
str1 = u.encode('gbk')#以gbk編碼對(duì)unicode對(duì)像進(jìn)行編碼
str2 = u.encode('utf-8')#以u(píng)tf-8編碼對(duì)unicode對(duì)像進(jìn)行編碼
u1 = str.decode('gb2312')#以gb2312編碼對(duì)字符串str進(jìn)行解碼,以獲取unicode
u2 = str.decode('utf-8')#如果以u(píng)tf-8的編碼對(duì)str進(jìn)行解碼得到的結(jié)果撒蟀,將無法還原原來的unicode類型
看懂后進(jìn)行嘗試叙谨,結(jié)果沒成功,應(yīng)該是因?yàn)閜ython的版本問題所致牙肝,所以我繼續(xù)往下看唉俗,又看到了幾行代碼:
u = u'中文'#顯示指定unicode類型對(duì)象u
str = u.encode('gb2312')#以gb2312編碼對(duì)unicode對(duì)像進(jìn)行編碼
str1 = u.encode('gbk')#以gbk編碼對(duì)unicode對(duì)像進(jìn)行編碼
str2 = u.encode('utf-8')#以u(píng)tf-8編碼對(duì)unicode對(duì)像進(jìn)行編碼
u1 = str.decode('gb2312')#以gb2312編碼對(duì)字符串str進(jìn)行解碼,以獲取unicode
u2 = str.decode('utf-8')#如果以u(píng)tf-8的編碼對(duì)str進(jìn)行解碼得到的結(jié)果配椭,將無法還原原來的unicode類型
依照這幾行代碼的提示虫溜,我終于成功的解決了python的編碼解碼問題
也算是較為順利地完成了一個(gè)任務(wù)(繼續(xù)加油)