Python Selenium выбирает класс div с пробелами - PullRequest
0 голосов
/ 21 октября 2018

У меня проблема при попытке выбрать класс тега div, в котором есть пробелы.

Это структура страницы:

<div class="sadasd-dashboardtab even asdasd-syndicating_from_my_file" id="124121_1540012412412414">
    <div id="124121_154006585856856858">
        <span class="label">Syndicating From My File</span>
        <button class="column-dropdown" title="Click for more tab options"></button>
    </div>
</div>

Это мои попытки кода для этой части:

#syndicating_button = driver.find_element_by_xpath("//span[text()='Syndicating From My File']")  
#syndicating_button = driver.find_element_by_xpath("//div[@class='yui3-dashboardtab even s-tab-syndicating_from_my_site']")
syndicating_button = driver.find_element_by_css_selector("div.yui3-dashboardtab.even.s-tab-syndicating_from_my_site")                                               
syndicating_button.click()

1 Ответ

0 голосов
/ 21 октября 2018

Ваша проблема не имеет ничего общего с "пробелами" / "пробелами" , поскольку ваши селекторы должны работать хорошо ... если элемент присутствует в DOM.Попробуйте подождать, пока элемент не появится в DOM и не станет активным:

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

wait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//span[text()='Syndicating From My Site']"))).click()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...