这是我第一次在stackoverflow上发帖,我对Selenium和Python有点陌生。
URL等于fx时,我将无法运行函数:https://www.example.com。
我在另一个讨论中读过this答案,但我不太了解发生了什么。
我希望您花时间回答我的问题。
如果您的用例是一旦URL等于https://www.example.com
后就运行一个函数,则通过以下任一WebDriverWait引起expected_conditions不相交:
url_changes(url)
:检查当前URL的期望。 url是预期的url,如果不相同,则不能完全匹配,否则返回True,否则返回false。
url_changes(url)
WebDriverWait(driver, 10).until(EC.url_changes("https://www.example.com"))
:期望检查当前URL是否包含区分大小写的子字符串。 url是预期的url片段,当url匹配时返回True,否则返回False
url_contains(url)
url_contains(url)
:检查当前URL的期望。 pattern是预期的模式,必须为完全匹配,如果url匹配则返回True,否则返回false。
WebDriverWait(driver, 10).until(EC.url_contains("example"))
url_matches(pattern)
:检查当前URL的期望。 url是预期的url,必须完全匹配,如果url匹配则返回True,否则返回false。
url_matches(pattern)
注:您必须添加以下导入:
WebDriverWait(driver, 10).until(EC.url_matches("a_matching_pattern_of_the_expected_url"))
如果WebDriverWait返回url_to_be(url)
,则要运行函数,可以使用以下解决方案:
url_to_be(url)