資料分析的美麗湯

Mondo 科技 更新 2024-01-31

beautiful soup

Beautiful Soup 提供了簡單的 Python 樣式函式,用於導航、搜尋、修改分析樹等。 它是乙個工具箱,通過解析文件為使用者提供他們需要抓取的資料,並且由於它很簡單,因此編寫乙個完整的應用程式並不需要太多時間。 Beautiful Soup 自動將輸入文件轉換為 Unicode 編碼,將輸出文件轉換為 UTF-8 編碼。 您無需考慮編碼方法,除非文件未指定編碼方法,在這種情況下,Beautiful Soup 不會自動識別編碼方法。 然後,您只需要解釋原始編碼是如何完成的。 Beautiful Soup 已經成為乙個與 LXML 和 HTML6LiB 一樣好的 Python 直譯器,讓使用者可以靈活地使用不同的解析策略或強大的速度。

環境安裝:pip install bs4

BS4 資料解析過程。

1.例項化乙個 beautifulsoup 物件,然後將要解析的頁面的原始碼資料載入到該物件中。

beautifulsoup(fp,'lxml'):fp 表示本地檔案,用於解析本地儲存的 html 檔案。

beautifulsoup(page_text,'lxml':p age 文字是網路請求的頁面的原始碼資料,該方法直接解析網路請求的頁面的原始碼資料。

2.呼叫 beautifulsoup 物件中的相關屬性和方法,實現標籤定位和資料抽取。

特定解析的操作:

Local:- 建立乙個新測試。 在當前目錄中html 檔案,然後將以下內容複製到該檔案中。

百里信守承諾。 李清釗.

王安石. 蘇軾。

劉宗元. this is span

宋朝是最強大的王朝,不是因為軍隊強大,而是因為經濟強大,人民非常富裕。

總是因為烏雲遮住了太陽,長安並不擔心。

清明節期間,雨下得很大,路上的行人都想破魂,於是問餐廳在哪裡,牧童指著興華村。

秦年、明月和漢代,千里長征還未歸,但龍城會飛進來,胡 馬不教做陰山。

在齊王府見到的次數屢見不鮮,崔九堂之前也聽說過幾次,是江南的好風景,是落花季與你相約的好時機。

杜甫。 杜牧.

杜曉月

蜜月。 鳳凰台上的鳳凰之旅,鳳凰去太空河自流,吳宮花草埋道,晉代裝扮成古塚。

帶測試HTML 檔案,請進行以下操作。

from bs4 import beautifulsoup

FP 代表本地儲存的 HTML 檔案。

fp = open('./test.html','r',encoding='utf-8')

分析本地儲存的 HTML 檔案的內容。

例項化 beautifulsoup 物件,然後將待解析頁面的源資料載入到物件中。

soup = beautifulsoup(fp,'lxml'引數 2 lxml 為固定形式,表示指定的解析器。

執行時報此錯誤,需要安裝 lxml

解析的內容是我們的 HTML 檔案。

標籤定位。

方法1:湯tagname,它將僅定位到滿足條件的第乙個標籤。

tag1 = soup.title 位於 title 標籤中。

tag2 = soup.div

方法二:屬性定位、find函式、findall函式。

#find('tagname',attrname='attrvalue'):find 將僅定位滿足要求的第乙個標記。

tag3 = soup.find('div',class_='song'找到 class 屬性值為 Song 的 div 標籤,在 class 屬性中新增乙個類

tag4 = soup.find('a',id='feng'找到 ID 屬性值為 feng 的 A 標籤。

#findall('tagname',attrname='attrvalue'):findall 可以找到所有滿足要求的標籤,並返回乙個列表。

tag5 = soup.findall('div',class_='song')

方法三:選擇器定位:湯select('選擇器')

id 選擇器:feng --id 是 feng

類選擇器:song --class 就是歌曲

級別選擇器:大於號表示乙個級別,空格表示多個級別 大於號不能跨級別。

tag6 = soup.select('#feng'導航到 ID 屬性值為 feng 的所有標籤。

tag7 = soup.select('.song'導航到類屬性值為 song 的所有標籤,並返回乙個列表。

tag8 = soup.select('.tang > ul > li'找到所有 LI tags 在 TANG 下的 UL 下進行分類。

tag9 = soup.select('.tang li'將類下的所有 li 標籤定位為 tang,就可以不使用直接系統了。

大於號不能跨級別,否則不會取值。

也可以在直接級別選擇空間。

提取標籤中的內容。

#1.提取標籤中間的內容:

#tag.string:標籤中只能提取直接系統的文字內容,如果直接系統中沒有文字,則列印為無

#tag.text:可以提取標籤中的所有文字內容,列印出直接系統中的文字和子標籤中的所有文字。

返回的只是乙個字串。

# p_tag = soup.p

# print(p_tag.string)

# print(p_tag.text)

# div_tag = soup.find('div',class_='song')

# print(div_tag.text)

區別很明顯。

#2.提取標籤的屬性值。

#tag['attrname']

img_tag = soup.img

print(img_tag['src']) 提取 img 標籤的 src 的屬性值。

要提取屬性值,請先找到標籤,然後提取屬性值。

相關問題答案

    SPSSPRO商業資料分析的價格敏感度分析

    在傳統的商業環境中,企業通常有兩種型別的定價策略 成本上公升策略和競爭性定價策略。成本加成策略是根據企業的成本資訊進行最優設定的一種方式,具體操作是計算單個產品的全部成本,包括直接成本 如原材料 人工等 和間接成本 如管理費用 折舊費用等 然後加上預期利潤率,得到產品的售價。成本加成策略實施起來相對...

    如何開始資料分析?

    資料分析入門指南。資料分析是處理資料以識別有意義的模式 趨勢和資訊的過程。它是現代商業和科學中非常重要的技能,因此開始資料分析需要一定的習和實踐。以下是幫助您開始資料分析的詳細指南。第一部分 理論基礎。了解資料分析的重要性。在開始資料分析之前,需要了解資料分析在商業和科學中的重要性。資料分析不僅可以...

    網站資料分析工具

    資料分析工具,你知道嗎?一起來看看吧!.流量 資料分析工具。分析 流量 的資料分析工具,LA統計資料市場覆蓋面最大。LA的單一 歷史源查詢功能。通過這個功能,我可以知道某條流量 最近個月的流量變化,從而更好地掌握每個推廣渠道的流量趨勢。資料 資料。二 搜尋引擎收錄 反向鏈結 PR值 排名綜合查詢工具...

    TikTok KOL 營銷資料分析 量化投資回報率和成功指標

    品牌在做TikTok KOL營銷時首先關注的指標之一是受眾增長和 度。通過分析合作後的粉絲數量 次數等資料,品牌可以了解合作是否有效吸引了目標受眾的注意力,進而評估投資回報率。在 TikTok 上,使用者的參與率和參與度是衡量營銷活動效果的重要指標。通過分析點讚 評論和分享等資料,品牌可以了解使用者...

    FXCM 2023 12:11資料分析

    根據您提供的資訊,中金公司 發布了乙份研究報告,他們認為目前的基本面不支援美聯儲在第一季度開始降息。但是,如果假設美聯儲因非基本面因素而提前降息,則可以考慮以下三個方面 預防 降息 這一考慮源於年和年的情況。在這兩個時期,美聯儲採取了預防性降息措施,以避免經濟衰退和金融市場的不穩定。中金公司認為,如...