首頁 > 後端開發 > php教程 > 如何使用XPath正確選擇CSS類別?

如何使用XPath正確選擇CSS類別?

Patricia Arquette
發布: 2024-12-08 22:46:14
原創
718 人瀏覽過

How to Correctly Select a CSS Class with XPath?

使用 XPath 選擇 CSS 類別

在網頁抓取的上下文中,根據 CSS 類別準確定位特定元素至關重要。雖然 CSS 選擇器在處理 HTML 時很簡單,但在處理 XML 文件或利用進階網頁抓取技術時,XPath 就變得必要了。

問題:使用 XPath 選擇單一類別

這個問題源自於需要使用 XPath 僅根據「日期」類別來選擇元素。但是,提供的程式碼片段會產生意外的結果。

解決方案:正確的 XPath 等效項

要正確選擇 XPath 中具有特定類別的元素,應使用以下語法:

在此表達式中:

  • normalize-space(@class)刪除前導和尾隨空格並將多個空格折疊為一個,確保類別屬性的格式一致。
  • concat(" ", normalize-space(@class), " ") 在規範化類別值周圍新增空格使其與目標類別名稱具有可比性。
  • contains(...) 在修改後的類別屬性中搜尋目標類別名稱

避免不正確的方法

要避免的兩個常見但有缺陷的XPath 選擇器包括:

  • //*[@class="date"] :不考慮具有多個類別的元素。
  • //*[contains(@class, "date")]:符合類別名稱包含“date”的元素,例如“foobar”,這是不正確的。

Credit

這裡提供的解決方案歸因於網路爬蟲同事發表了一篇有價值的部落格文章來解決這個特定問題。我們感謝他們分享他們的見解。

以上是如何使用XPath正確選擇CSS類別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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