Не удается найти элемент Селен Python с xpath - PullRequest
0 голосов
/ 10 января 2019

Я относительный новичок в селене, так что это может быть что-то невероятно простое, но я не могу получить доступ к элементу, даже если он появляется на странице. Я не думаю, что это может быть, что он еще не загружен, потому что я могу ссылаться на другие элементы. Строка кода, которую я пытаюсь использовать, и HTML ниже.

max_questions = driver.find_element_by_xpath(xpath="//span[contains(@class, 'total-questions')]")

<div data-v-404a90e7="" data-v-084771db="" class="header animated fadeInDown anim-300-duration">
    <div data-v-404a90e7="" class="left-section half-width">
        <div data-v-404a90e7="" flow="right" class="menu-icon animated fadeIn anim-300-duration">
            <div data-v-404a90e7="" class="menu-icon-image"></div>
        </div>
        <div data-v-404a90e7="" class="question-number-wrapper text-unselectable animated fadeIn anim-300-duration">
            <span data-v-404a90e7="" class="current-question">1</span>
            <span data-v-404a90e7="" class="total-questions">/10</span>
        </div>
    </div>
    <div data-v-404a90e7="" class="right-section half-width">
        <div data-v-404a90e7="" class="room-code animated fadeIn anim-300-duration">712851</div>
        <div data-v-404a90e7="" flow="left" class="exit-game-btn-wrapper animated fadeIn anim-300-duration">
            <div data-v-404a90e7="" class="exit-game-icon"></div>
        </div>
    </div>
</div>

1 Ответ

0 голосов
/ 10 января 2019

Вы можете использовать WebDriverWait с expected_conditions:

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

driver = webdriver.Chrome('d:\\chromedriver\\chromedriver.exe')
driver.get(url)
wait = WebDriverWait(driver, 10)
max_questions = wait.until(EC.element_to_be_clickable((By.XPATH, "//*[contains(@class, 'total-questions')]")))
print(max_questions.text)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...