python爬蟲中文亂碼問題

2021-10-14 16:35:53 字數 1428 閱讀 2674

iso

-8859-1

gb2312

['gb2312'

]

說明預設的解析「iso-8859-1」不正確,應該用gb2312解碼。

2、gb2312解碼過程中提示「gb2312』 codec can』t decode byte 0xf3 in position 67376」錯誤,大概意思是說解碼沒錯,但在某個位置解碼錯誤,處理方式忽略即可:

處理命令:gb2312解碼,ignore忽略錯誤

string=res.content.

decode

('gb2312'

,'ignore'

)

完整**:

import requests

from bs4 import beautifulsoup

url=

''res=requests.

get(url)

print

(res.headers[

'content-type'])

print

(res.status_code)

print

(res.encoding)

print

print

(requests.utils.

get_encodings_from_content

(res.text)

)string=res.content.

decode

('gb2312'

,'ignore'

)//#'gb2312' codec can't decode byte 0xf3 in position 67376時,加入ignore引數

//#string.decode('iso-8859-1')

//#aa=res.encoding('iso-8859-1')

//#aa=aa.decode('utf-8')

//#string.encoding='utf-8'

//#print(string)

html=

beautifulsoup

(string,

'html.parser'

)a=html.

find_all

('a'

)for i in a:

if i.text==

'本地1線'

:print

(i['href'

])

輸出結果:

// an highlighted block

text/html

200iso

-8859-1

gb2312

['gb2312'

]

python 爬蟲中文亂碼問題

在爬取 是遇到requests得到的respone為 先用import urllib import urllib.parse urllib.parse.unquote res.text 得到 然後我們直接把 replace一下 urllib.parse.unquote res.text replac...

Python爬蟲中文亂碼問題

我們在爬蟲輸出內容時,常常會遇到中文亂碼情況 以如下 為例 在輸出內容時,出現如下圖的情況 檢視網頁源 的head部分的編碼 發現網頁編碼為gbk型別 利用requests庫的方法檢視預設輸出的編碼型別 import requests url response requests.get url pr...

解決python爬蟲中文亂碼問題

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