【发布时间】:2022-01-05 10:47:06
【问题描述】:
我正在使用 Selenium 4 和 Firefox Gecko Web 驱动程序制作 Python 3 脚本。
目标很简单:
- 打开网页
- 点击蓝色的“Greit”按钮接受 cookie
到目前为止,这是我的 Python 3 脚本,但它没有按预期工作。该脚本似乎没有找到该按钮。也许是因为它不是初始 DOM 的一部分。它是由一个 javascript 弹出窗口触发的。
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec
import time
URL = 'https://examplepage.com'
driver = webdriver.Firefox()
driver.get(URL)
time.sleep(2)
print(driver.page_source)
wait = WebDriverWait(driver, 5)
wait.until(ec.visibility_of_element_located((By.XPATH, '//button[text()="Greit"]')))
driver.find_element(By.XPATH, '//button[text()="Greit"]').click()
driver.quit()
我该怎么做才能让 selenium 找到按钮并单击它?弹出窗口的 HTML 在 DevTools 检查中可用,但在页面源中不可用。
【问题讨论】:
标签: python python-3.x selenium selenium-webdriver iframe