首页 > 解决方案 > 如何访问 Selenium 中的第二个 div 节点(Python)

问题描述

以下 HTML 代码作为收益:

<div class="lower-text"> 
<div data-text="winScreen.yourCodeIs">Your Code Is:</div> 
<div>GENERATEDCODE</div>

我试图访问的是“lower-text”类中的第二个div节点(随机生成的数字)

 try:
    element = WebDriverWait(browser, 10).until(
        EC.visibility_of_element_located((By.CLASS_NAME, 'lower-text'))
    )
finally:
    found = browser.find_element_by_xpath("//a[@class='lower-text'][2]").text
    print(found)

这是我尝试过的,但没有成功。我不确定如何访问第二个 div 节点。任何帮助,将不胜感激。

标签: pythonpython-3.xseleniumselenium-webdriver

解决方案


请尝试以下解决方案::

element = WebDriverWait(driver, delay).until(
        EC.presence_of_element_located((By.XPATH, "//*[@data-text='winScreen.yournumberis']/following-sibling::div")))
    print element.text

您还需要在下面添加导入

from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait as Wait
from selenium.webdriver.support.ui import WebDriverWait
from selenium import webdriver

推荐阅读