gpt4 book ai didi

javascript - Selenium 点击 GDPR 点击按钮

转载 作者:行者123 更新时间:2023-12-04 10:25:02 27 4
gpt4 key购买 nike

我试图以编程方式单击在 ubuntu 服务器上运行脚本的按钮以访问网站内容。我正在尝试使用 recipies 访问该站点

这是我的代码:


driver = webdriver.Firefox(executable_path="/home/ubuntu/.linuxbrew/Cellar/geckodriver/0.26.0/bin/geckodriver",options=options)
data = []


# In[34]:

# click GDPR full-width banner
start_time = datetime.now()
driver.get("http://some_web_site.here/")
time.sleep(10)

# gdpr_button = driver.find_element_by_link_text("Continue")
#gdpr_button = driver.find_element_by_xpath('//button[text()="Continue"]')

driver.find_element_by_xpath("//input[@style='order:2' and @onclick='sendAndRedirect()']").click()

# //input[@onclick='sendAndRedirect()']
# <button style="order:2" onclick="sendAndRedirect();">Continue</button>

但是,我无法到达元素并获得
selenium.common.exceptions.TimeoutException: Message: connection refused

如何访问 GDPR 表单中的“继续”按钮?感谢你的帮助

最佳答案

所需元素是动态元素,因此要定位/click()在您需要为 element_to_be_clickable() 引入 WebDriverWait 的元素上您可以使用以下任一 Locator Strategies :

  • 使用 CSS_SELECTOR :
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[onclick^='sendAndRedirect']"))).click()
  • 使用 XPATH和innerText事件:
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[text()='Continue']"))).click()
  • 使用 XPATH和 onclick 事件:
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[starts-with(@onclick, 'sendAndRedirect')]"))).click()
  • 备注 :您必须添加以下导入:
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
  • 关于javascript - Selenium 点击 GDPR 点击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60661525/

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