我遇到了一個問題,當我嘗試在 xpath 中使用宏時,它不起作用并且沒有彈出錯誤。它單擊與 xpath 不匹配的區域。我使用 chrome 網路驅動程式。
我的代碼:
dob = 'Apr 18, 1967'
driver.find_element_by_xpath("//span[contains(., dob)]").click()
當我不使用宏時它可以作業
driver.find_element_by_xpath("//span[contains(., 'Apr 18, 1967')]").click()
這是我試圖與之互動的領域:
<span class="m-list-search__result-item-text">LastName, FirstName (Apr 18, 1967)</span>
這是我在 xpath 中使用宏時與之互動的內容:
<div id="sidePanelCollapseButton" class="m-stack__item m-stack__item--middle m-brand__tools">
我試過用類定位,但 xpath 會回傳幾十個結果,所以通過 DOB 是縮小范圍的最簡單方法。
uj5u.com熱心網友回復:
您一直在嘗試的代碼
driver.find_element_by_xpath("//span[contains(., dob)]").click()
基本上是在尋找一個span tag作為dobinnerText 的。由于dob它實際上并不存在HTML并且它是 a var type,因此您應該使用f-Strings,如下所示:
dob = 'Apr 18, 1967'
driver.find_element_by_xpath(f"//span[contains(., {dob})]").click()
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/466296.html
