Найти все элементы имени класса в Selenium Python - PullRequest
0 голосов
/ 04 августа 2020

Я пытаюсь извлечь все объявления с этой страницы https://www.centris.ca/en/properties~for-rent?view=Thumbnail, а затем нажимаю на них, чтобы извлечь данные.

По какой-то причине я могу извлечь только первую запись, несмотря на используя «find_elements».

Вот мой код:

from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.centris.ca/en/properties~for-rent?view=Thumbnail")

list = driver.find_elements_by_xpath("//div[contains(@class, 'thumbnailItem col-12 col-sm-6 col-md-4 col-lg-3')]")
print(list)
for l in list:
    l.click()

Как правильно извлечь все элементы с помощью xpath (или других методов)?

1 Ответ

1 голос
/ 04 августа 2020

Чтобы извлечь атрибут href всех объявлений с этой страницы https://www.centris.ca/en/properties~for-rent?view=Thumbnail, вам нужно вызвать WebDriverWait для visibility_of_all_elements_located(), и вы можете использовать любой из следующих Стратегии локатора :

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...