我在 python 中使用 selenium 时遇到了问题。我正在尝试与这样的页面进行交互:
driver_window_manager.get(url)
iframe = driver_window_manager.find_elements_by_tag_name('iframe')[0]
driver_window_manager.switch_to_frame(iframe)
但在网页中,会出现一个弹出窗口并等待用户单击,然后页面最终加载。
But driver.get
在硒中等待页面完全加载,所以我无法关闭此弹出窗口并与页面交互。
谢谢大家,对我糟糕的英语感到抱歉。
driver.get
等待页面加载然后才继续下一步,如果你不想等待,那么你需要使用 javascript 来加载 URLexecute_script http://selenium-python.readthedocs.io/api.html#execute_script。它会立即返回,以便您可以执行您想要的任何操作 -
driver.execute_script("window.open(your_url);")
现在,如果您想要接受弹出窗口,您可以这样做 -
WebDriverWait(driver, 10).until(EC.alert_is_present())
alert = driver.switch_to.alert
alert.accept()
请注意,您需要添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)