解決Python網(wǎng)頁(yè)爬蟲(chóng)之中文亂碼問(wèn)題
Python是個(gè)好工具,但是也有其固有的一些缺點(diǎn)。最近在學(xué)習(xí)網(wǎng)頁(yè)爬蟲(chóng)時(shí)就遇到了這樣一種問(wèn)題,中文網(wǎng)站爬取下來(lái)的內(nèi)容往往中文顯示亂碼??催^(guò)我之前博客的同學(xué)可能知道,之前爬取的一個(gè)學(xué)校網(wǎng)頁(yè)就出現(xiàn)了這個(gè)問(wèn)題,但是當(dāng)時(shí)并沒(méi)有解決,這著實(shí)成了我一個(gè)心病。這不,剛剛一解決就將這個(gè)方法公布與眾,大家一同分享。
首先,我說(shuō)一下Python中文亂碼的原因,Python中文亂碼是由于Python在解析網(wǎng)頁(yè)時(shí)默認(rèn)用Unicode去解析,而大多數(shù)網(wǎng)站是utf-8格式的,并且解析出來(lái)之后,python竟然再以Unicode字符格式輸出,會(huì)與系統(tǒng)編碼格式不同,導(dǎo)致中文輸出亂碼,知道原因后我們就好解決了。下面上代碼,實(shí)驗(yàn)對(duì)象仍是被人上了無(wú)數(shù)遍的百度主頁(yè)~
# -*- coding: utf-8 -*-
import urllib2
import re
import requests
import sys
import urllib
#設(shè)置編碼
reload(sys)
sys.setdefaultencoding('utf-8')
#獲得系統(tǒng)編碼格式
type = sys.getfilesystemencoding()
r = urllib.urlopen("http://www.baidu.com")
#將網(wǎng)頁(yè)以u(píng)tf-8格式解析然后轉(zhuǎn)換為系統(tǒng)默認(rèn)格式
a = r.read().decode('utf-8').encode(type)
print a
最后輸出效果,中文完美輸出

以上這篇解決Python網(wǎng)頁(yè)爬蟲(chóng)之中文亂碼問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Python爬取破解無(wú)線網(wǎng)絡(luò)wifi密碼過(guò)程解析
- Python使用爬蟲(chóng)猜密碼
- Python3實(shí)現(xiàn)的爬蟲(chóng)爬取數(shù)據(jù)并存入mysql數(shù)據(jù)庫(kù)操作示例
- Python使用爬蟲(chóng)爬取靜態(tài)網(wǎng)頁(yè)圖片的方法詳解
- Python爬蟲(chóng)獲取圖片并下載保存至本地的實(shí)例
- Python3.x爬蟲(chóng)下載網(wǎng)頁(yè)圖片的實(shí)例講解
- Python爬蟲(chóng)如何應(yīng)對(duì)Cloudflare郵箱加密
相關(guān)文章
beam search及pytorch的實(shí)現(xiàn)方式
這篇文章主要介紹了beam search及pytorch的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-05-05
Tornado Application的實(shí)現(xiàn)
本文主要介紹了Tornado Application的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05
Python循環(huán)取數(shù)組的值的方法實(shí)現(xiàn)
本文主要介紹了兩種Python中遍歷數(shù)組的方法,for循環(huán)和索引,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
Python進(jìn)階_關(guān)于命名空間與作用域(詳解)
下面小編就為大家?guī)?lái)一篇Python進(jìn)階_關(guān)于命名空間與作用域(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
python創(chuàng)建和使用字典實(shí)例詳解
字典是python中唯一內(nèi)建的映射類(lèi)型。字典中的值并沒(méi)有特殊的順序,但是都存儲(chǔ)在一個(gè)特定的鍵(key)里。2013-11-11
python 鏈接sqlserver 寫(xiě)接口實(shí)例
這篇文章主要介紹了python 鏈接sqlserver 寫(xiě)接口實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
python如何實(shí)現(xiàn)全角半角的相互轉(zhuǎn)換
這篇文章主要介紹了python如何實(shí)現(xiàn)全角半角的相互轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11

