Python爬蟲獲取網頁編碼格式

2021-09-27 06:08:12 字數 854 閱讀 4149

網頁編碼格式是每個網頁規定的本頁面文字的編碼方式,其中比較流行的是ascii, gbk, utf-8, iso等。觀察許多網頁的編碼格式都是在meta標籤的content屬性中定義的。基於以上特點本文提供獲取編碼格式的方法。

**如下:

'''

注:本人使用的是idle python 3.7 64-bit,裝載bs4庫

'''from urllib.request import urlopen

from bs4 import beautifulsoup

import re

def getcharsetlist(url = none):

#開啟網頁,建立beautifulsoup物件

newurl = urlopen(url)

bsobj = beautifulsoup(newurl, "html.parser")

#首先查詢屬性中含有text/html的meta標籤以縮小查詢範圍

metataglist = bsobj.findall('meta', content = re.compile('text/html'))

#定義乙個儲存編碼格式的列表

charsetlist =

#之後從metataglist列表中的各項查詢其屬性內容(用get()函式)

for metatag in metataglist:

attribution = metatag.get('content')

chardata = str(attribution)

position = chardata.find('charset')

return charsetlist

Python爬蟲學習 獲取網頁

通過get請求獲取返回的網頁,其中加入了user agent資訊,不然會丟擲 http error 403 forbidden 異常,因為有些 為了防止這種沒有user agent資訊的訪問,會驗證請求資訊中的useragent 它的資訊包括硬體平台 系統軟體 應用軟體和使用者個人偏好 如果user...

python獲取網頁編碼格式

爬蟲獲取網頁內容要準確獲取網頁的編碼格式,有utf 8,gbk,gb2312等等。今天在爬新聞 時候,發現同乙個網頁會分不同的編碼,但是獲取html節點相關是根據第乙個編碼格式來的,拿人民網新聞頁原始碼舉例。當我使用python的 url r request.request url html req...

爬蟲 關於網頁編碼

當我們用爬蟲成功獲取網頁原始碼後,可能列印出來卻是亂碼的,因為使用requests模組時,程式會根據http頭自動判斷網頁編碼,但這樣做就顯得不太準確,所以還需要我們手動修改。手動修改網頁編碼顯得繁瑣且笨拙,我們引入乙個新的模組cchardet來幫助我們完成這一系列的工作。可以看到,requests...