我正在嘗試("Get this text")使用此 Xpath 獲取以下 html 中的文本:"//span[@id='myanswer']/text()[7]"。當我將它放在cntrl F檢查 html 部分的欄位中時,它會在網站上找到文本,但是當我嘗試在我的 python 代碼中列印輸出時,它什么也不回傳。也在做類似的事情
driver.find_element(By.XPATH,"//span[@id='myanswer']").text,
也不回傳任何內容。所以我想也許將所有這些字串附加到一個串列中并列印該串列的最后一個元素?有沒有辦法列印出最后一個字串?
<span id="myanswer">
<br>
<br>
" [ "
<b>tU</b>
" method Response ]"
<br>
" "
<span class="text-success"><i class="fa fa-angle-double-right"></i></span>
<strong></strong>
" "
<span class="text-secondary"><i>string</i></span>
<b>:</b>
"
Get this text"
<br>
<br>
</span>
uj5u.com熱心網友回復:
所以我在想也許將所有這些字串附加到一個串列中并列印該串列的最后一個元素
- 這是處理此文本節點的好方法之一。
如果
driver.find_element(By.XPATH,"//span[@id='myanswer']").text
沒有回傳任何東西,那么可能有多種原因:
1.
//span[@id='myanswer'] is not unique in HTMLDOM.
檢查唯一性的步驟:
Press F12 in Chrome-> 轉到element部分 -> 執行CTRL F-> 然后粘貼xpath并查看,如果您想要element的是否使用匹配節點突出顯示。1/1
也許您錯過了延遲,請休眠或使用 Explicitwait,如下所示:
WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//span[@id='myanswer']"))).get_attribute('innerText')
進口:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/443350.html
