#python #python-3.x #selenium #selenium-webdriver #onclick
Вопрос:
<button class="in chlodIng" onclick="Attendance.Dashboard.WeeklyData.updateCheckOut(true)">
driver.find_element_by_class_name('out chlodIng').click()
Кнопка должна быть нажата, я получаю ошибку:
селен.общие.исключения.Исключение NoSuchElementException: Сообщение: такого элемента нет: Не удается найти элемент: {«метод»:»селектор css»,»селектор»:».out chlodIng»}
Пожалуйста, дайте мне знать, как это сделать должным образом. Заранее спасибо
Комментарии:
1. Я не вижу на картинке элемента, соответствующего
'out chlodIng'
имени класса
Ответ №1:
имя класса не работает spaces
, я бы, вероятно, предложил вам использовать приведенное ниже css selector
с Explicit waits :
пример кода :
wait = WebDriverWait(driver, 10)
wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[onclick^='Attendance.Dashboard.WeeklyData.updateCheckOut']"))).click()
Импорт :
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
Комментарии:
1. попробовал, и я получил ошибку подождите.пока(EC.element_to_be_clickable((По.CSS_SELECTOR, кнопка «[onclick^=’Посещаемость. Информационная панель. WeeklyData.updateCheckOut’]»))).нажмите() Файл «/home/madhuraank/.local/lib/python3.8/site-packages/selenium/webdriver/support/wait.py», строка 80, в до тех пор, пока не возникнет исключение TimeoutException(сообщение, экран, трассировка стека) selenium.common.исключения. Исключение TimeoutException: Сообщение:
Ответ №2:
пожалуйста, попробуйте
driver.find_element_by_xpath("//button[@class='in chlodIng'][contains(.,'Check-in')]
Комментарии:
1. Попробовал, получил ошибку: selenium.common.исключения. Исключение NoSuchElementException: Сообщение: такого элемента нет: Не удается найти элемент: {«метод»:»xpath»,»селектор»:»//кнопка[@class=’в кодировании’] [содержит(.,’Регистрация’)]»}
2. можете ли вы предоставить свой URL-адрес, пожалуйста