Я пытаюсь очистить этот сайт с разбивкой на страницы. Проблема, с которой я столкнулся, заключается в том, что селен находит следующую кнопку.
Что я пробовал:
next_button = driver.find_element_by_css_selector(
'ul[class="css-12ke8jn e65zztl0"] button[aria-label="Next"]').click()
А также
page_amount = driver.find_element_by_css_selector(
'/html/body/div[1]/div[2]/div/div/div/div[2]/div[1]/main/div[3]/div/div[2]/div[2]/nav/ul/button').click()
Ничего из этого не работает, и я как бы застрял. Причина, по которой я использую aria-label для первой, заключается в том, что при выборе следующей кнопки предыдущая кнопка изменяется на тот же класс, что и следующая кнопка. Примечание: кнопка находится внутри ul.
3 ответа
Next_button = driver.find_element_by_xpath ('// кнопка [@ class = "css-1lkjxdl eanm77i0"]'). click ()
Вы использовали переменную xpath и нашли ее с помощью css. для селектора css вы должны использовать класс (.css-1lkjxdl) и использовать приведенный выше код, он будет работать и примет ответ. Благодаря!!
aria-label
- это атрибут, а не элемент.
Ваш xpath должен быть исправлен следующим образом:
button[@aria-label="Next"]
Чтобы найти эту кнопку в любом месте страницы, вы можете попробовать:
//button[@aria-label="Next"]
Затем вы можете попробовать:
button = driver.find_element_by_xpath('//button[@aria-label="Next"]')
Поиск элемента может не сработать, потому что он не отображается в пользовательском интерфейсе - он загружен, но не отображается, самый простой способ - перейти к этому элементу и щелкнуть по нему.
next_button = driver.find_element_by_css_selector('[aria-label=\'Next\']')
actions = ActionChains(driver)
actions.move_to_element(next_button).perform()
next_button.click()
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.