![](/img/trans.png)
[英]Selenium, webdriver - can't find - xpath/css_selector/… python
[英]Selenium can't find xpath or css selector
我正在嘗試抓取這個有分頁的網站。 我面臨的問題是讓 selenium 找到下一個按鈕。
我試過的:
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的原因是因為選擇下一個按鈕時,上一個按鈕更改為同一ZA2F2ED4F8EBC2CBB4C21A21A29DC40AB61DZ作為下一個按鈕。 注意:按鈕在 ul 中。
它可能無法找到元素,因為它在 UI 中不可見 - 它已加載但不可見,最簡單的方法是移動到該元素並單擊它。
next_button = driver.find_element_by_css_selector('[aria-label=\'Next\']')
actions = ActionChains(driver)
actions.move_to_element(next_button).perform()
next_button.click()
next_button = driver.find_element_by_xpath('//button[@class="css-1lkjxdl eanm77i0"]').click()
您正在使用 xpath 變量並通過 css 找到它。 對於 css 選擇器,您必須使用 class (.css-1lkjxdl) 並使用上面的代碼它將工作並接受答案。 謝謝!!
aria-label
是一個屬性,而不是一個元素。
您的 xpath 應固定如下:
button[@aria-label="Next"]
要在頁面的任何位置找到此按鈕,您可以嘗試:
//button[@aria-label="Next"]
然后,您可以嘗試:
button = driver.find_element_by_xpath('//button[@aria-label="Next"]')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.