Я пытаюсь загрузить полный список изображений на странице. На странице есть кнопка «Показать больше». Я хочу щелкнуть его, пока все изображения не будут загружены.Найти элемент по xpath и нажать на него
HTML:
<li class="show-more-row">
<button class="show-more-cta bottom-btn ga"data-ga-action="click"data-ga-label="category-see-more:SectionCourses>Show More
<i class="lyndacon arrow-down"></i>
</button>
</li>
Я до пытался получить элемент по Xpath. Но он постоянно меняется каждый раз, когда я нажимаю кнопку.
Пример:
//*[@id="category-courses"]/li[101]/button
и //*[@id="category-courses"]/li[151]/button
Я также попытался найти элемент по имени класса:
while(browser.find_element_by_class_name("show-more-cta bottom-btn ga")):
moreElem = browser.find_element_by_class_name("show-more-cta bottom-btn ga")
moreElem.click()
Но это дает ошибку:
invalid selector: Compound class names not permitted
Попробуйте просто показать больше-cta. Ошибка, которую вы получаете, исходит из того, что в имени класса есть пробелы. Это означает, что существует составной класс –
. Вы также можете просмотреть поиск с помощью CSS-селектора. Я считаю, что это позволяет вам справиться с проблемой сложного класса. –