我有在selenium中构建的框架。我正在尝试添加其他功能。为此,我需要在每次url更改时执行一些代码 - 可能是因为按钮/链接单击或导航()或get()。现在我知道WebDriverEventListener,它可以帮助我覆盖get()和navigate()的行为,但我没有直接的方法来识别按钮或链接点击上的URL更改。这是否可用,通知代码网址已更改?
以下是使用WebdriverWait
和expected_conditions
的Python示例:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
url = 'https://example/before'
changed_url = 'https://example/after'
driver = webdriver.Chrome()
driver.get(url)
# wait up to 10 secs for the url to change or else `TimeOutException` is raised.
WebDriverWait(driver, 10).until(EC.url_changes(changed_url))