gpt4 book ai didi

python - 如何点击以下网站的按钮?

转载 作者:行者123 更新时间:2023-12-01 07:42:46 26 4
gpt4 key购买 nike

我是 python 世界的新手,我尝试在以下网站上选择几个选项,然后单击搜索按钮来更新结果。但是,我无法让按钮做出响应。

我尝试使用搜索button.click()和.submit(),并且我尝试隐式等待。我还使用下面的代码来等待按钮可单击。执行代码时,它突出显示按钮,但似乎没有释放单击;几乎就像半次点击一样。

from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


driver = webdriver.Safari()
driver.get('https://leasing.com/personal/car-leasing/')
element = driver.find_element_by_id('selUpfront')
select = Select(element)
select.select_by_value("3")
element = driver.find_element_by_id('selMileage')
select = Select(element)
select.select_by_value("8000")
searchbutton = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.ID, "search-button")))
searchbutton.click()

我希望搜索结果能够根据上述条件进行更新。

最佳答案

看来你已经很接近了。要在元素上click(),您必须引发WebDriverWait以使元素可点击,并且您可以使用以下解决方案之一:

  • 使用CSS_SELECTOR:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button#search-button>i.fa.fa-search#search-button-icon"))).click()
  • 使用XPATH:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='search-button']/i[@class='fa fa-search' and @id='search-button-icon']"))).click()
  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
  • 浏览器快照:

car

关于python - 如何点击以下网站的按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56612972/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com