Как получить доступ ко второму узлу div в Selenium (Python) - PullRequest
0 голосов
/ 27 марта 2020

Следующий HTML код выглядит так:

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

Я пытаюсь получить доступ ко второму узлу 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. Любая помощь будет оценена.

1 Ответ

1 голос
/ 27 марта 2020

Пожалуйста, попробуйте следующее решение: *

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...