python爬蟲中文亂碼解決方法

2021-08-28 09:15:41 字數 517 閱讀 4836

前幾天用python來爬取全國行政區劃編碼的時候,遇到了中文亂碼的問題,折騰了一會兒,才解決。現特記錄一下,方便以後檢視。

我是用python的requests和bs4庫來實現爬蟲,這兩個庫的簡單用法可參照python爬取當當網的書籍資訊並儲存到csv檔案

url = '要爬取的網頁'

r = requests.get(url, timeout=30)

soup = beautifulsoup(r.text, 'lxml')

我爬取的網頁使用的編碼是gbk。所以要按gbk編碼,才能避免中文亂碼。

url = '要爬取的網頁'

r = requests.get(url, timeout=30)

r.encoding='gbk' #增加encoding=『gbk』,解決中文亂碼問題

soup = beautifulsoup(r.text, 'lxml')

解決python爬蟲中文亂碼問題

首先網頁時可能採用不同編碼的,類似這個我爬取的網頁 當我直接使用.text函式列印時會出現如下亂碼 嘗試編碼結果 print strhtml.text.encode utf8 但發現明顯中文被變成了位元組 可以明顯的發現此處用於解碼的encoding是繼承自父類strhtml的,而沒有設定過的話父類...

python 爬蟲中文亂碼

許多小夥伴在python爬蟲中遇到中文亂碼的問題。都以為是編碼錯誤,其實真正的原因 是檔案被壓縮了 直接上 加上紅色這段 就ok!import zlib import urllib2 import sys typeencode sys.getfilesystemencoding request ur...

python 爬蟲中文亂碼

import requests import chardet from lxml import etree from bs4 import beautifulsoup res requests.get 要爬取的網頁 chardet 自動檢測字元的編碼 res.encoding chardet.det...