[英]How to locate exact text on xpath element?
我試圖找到與確切文本“制造商”匹配的 xpath,但它不起作用。
我不能使用“contains”,因為還有另一個 xpath 元素,其中包含“Discontinued by Manufacturer”文本。 我需要一個解決方案,我可以在其他 url 上使用相同的東西,有時沒有其他包含文本“制造商”的元素,如“制造商停產”,只有“制造商”
這是我嘗試搜索“制造商”錯誤圖像時所看到的
該頁面上有 4 個制造商。
你可以試試這個 xpath :
(//ul[contains(@class, 'a-unordered-list')]/descendant::span[@class='a-text-bold'])[1]
匹配
Is Discontinued By Manufacturer : No
和
(//ul[contains(@class, 'a-unordered-list')]/descendant::span[@class='a-text-bold'])[5]
匹配 :
Manufacturer : BEAKEY
由於有 2 個帶有文本“制造商”的 span 元素,因此應該適合:
"(//span[contains(text(),'Manufacturer')])[last()]"
如果要完全匹配文本節點或元素的內容,請使用“=”運算符,而不是contains()
。
使用contains()
代替“=”是一個常見的 XPath 錯誤。 事實上,根據函數的名稱猜測函數的作用,而不是閱讀規范,這是一個常見的錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.