网络驱动程序是否可以自动检测浏览器网址已更改?

时间:2018-09-01 08:33:26

标签: selenium selenium-webdriver webdriver

我有用硒建立的框架。我正在尝试为其添加其他功能。为此,每次url更改时我都需要执行一些代码-可能是由于按钮/链接click或navigation()或get()所致。 现在我知道了WebDriverEventListener,它可以帮助我覆盖get()和navigation()的行为,但是我没有直接的方法来识别按钮或链接单击时的URL更改。 是否可以使用此功能来通知代码网址已更改?

1 个答案:

答案 0 :(得分:0)

以下是使用WebdriverWaitexpected_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))