首頁 > 後端開發 > Python教學 > 簡化網頁擷取:使用 BeautifulSoup 擷取文章標題

簡化網頁擷取:使用 BeautifulSoup 擷取文章標題

DDD
發布: 2024-12-20 13:23:09
原創
340 人瀏覽過

Web Scraping Simplified: Extracting Article Titles with BeautifulSoup

簡化網頁擷取:使用 BeautifulSoup 擷取文章標題

介紹

網頁抓取對於需要有效率地從網路收集資料的開發人員來說是一項基本技能。在本教學中,我們將演練一個簡單的 Python 腳本,使用 BeautifulSoup(一個用於解析 HTML 和 XML 的強大函式庫)從新聞網站中抓取文章標題。

在本教程結束時,您將擁有一個腳本,只需幾行程式碼即可從網頁中提取並顯示文章標題!


先決條件

在深入研究程式碼之前,請確保您的系統上安裝了 Python。您還需要以下程式庫:

  1. 請求:發出 HTTP 請求並取得網頁內容。
  2. BeautifulSoup (bs4):從 HTML 解析並擷取資料。

您可以使用 pip 安裝這些函式庫:


 問題

假設您想追蹤 BBC 新聞等網站的最新新聞。您可以使用 Python 自動執行此任務並抓取文章標題以進行分析或顯示,而不是手動造訪網站。


守則

這是用於抓取文章標題的完整 Python 腳本:


它是如何運作的

  1. 提出請求

    • 我們使用requests.get方法來取得目標網頁的內容。
    • raise_for_status 方法可確保儘早擷取任何 HTTP 錯誤(如 404 或 500)。
  2. 解析內容:

    • BeautifulSoup 函式庫解析 HTML 內容,讓使用 CSS 選擇器輕鬆導覽和擷取元素。
  3. 提取標題

    • soup.select 方法取得所有

      ;元素,通常包含新聞網站上的文章標題。

    • get_text 方法從每個元素中提取乾淨的文字。

範例輸出

運行腳本時,您將獲得一個乾淨的文章標題清單:


自訂腳本

您可以修改此腳本以抓取其他類型的內容或定位不同的網站。您可以嘗試以下一些調整:

  • 更改 CSS 選擇器:
    如果目標網站具有不同的結構,請將“h3”替換為更具體的選擇器(例如“div.article-title”)。

  • 抓取額外資料:
    透過選擇相關的 HTML 元素和屬性來提取 URL、發布日期或摘要。


道德抓取的技巧

  1. 尊重網站的服務條款
    請務必檢查網站的 robots.txt 檔案或使用條款,以確保允許抓取。

  2. 限制您的要求
    透過使用 time.sleep 方法在請求之間添加延遲來避免伺服器過載。

  3. 優雅地處理變化
    網站可以改變其結構,從而破壞您的腳本。始終準備好調試和更新您的程式碼。


結論

只用幾行 Python 程式碼,我們就建立了一個簡單但功能強大的腳本來從新聞網站抓取文章標題。 BeautifulSoup 可以輕鬆導航和提取所需的數據,而 requests 則處理 HTTP 互動。

網路抓取可以釋放大量機會,從監控趨勢到自動化資料收集。請記住負責任地刮擦!

以上是簡化網頁擷取:使用 BeautifulSoup 擷取文章標題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板