【发布时间】:2020-05-01 02:48:36
【问题描述】:
这是我第一次在 stackoverflow 上发帖,我对 Selenium 和 Python 还有些陌生。
当 URL 等于 fx:https://www.example.com 时,我不想运行函数。
我在另一个讨论中阅读了this 的答案,但我不太明白发生了什么。
希望您能花时间回答我的问题。
好的,所以我刚刚尝试过:
driver.get('https://www.google.com')
time.sleep(4)
driver.get('https://www.stackoverflow.com')
if WebDriverWait(driver, 10).until(EC.url_to_be('https://stackoverflow.com')):
print('Desired url was rendered within allocated time')
else:
print('Desired url was not rendered within allocated time')
但它没有工作。有什么想法吗?
控制台说
Traceback (most recent call last):
File "/Users/holger/PycharmProjects/waitTest/wait.py", line 15, in <module>
if WebDriverWait(browser, 10).until(EC.url_to_be('https://www.stackoverflow.com')):
File "/Users/holger/PycharmProjects/waitTest/venv/lib/python3.8/site-packages/selenium/webdriver/support/wait.py", line 80, in until
raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
【问题讨论】:
-
如果这是一个个人项目,并且您希望在有人访问 URL 时运行一些代码,您可以考虑使用 Python Flask,这也很酷。
-
不,我不希望程序在前一个网站重定向到另一个网站时运行一个功能,该程序应该执行一项任务。所有这些都在 webdriver 上运行。
-
您导航到“stackoverflow.com”,然后等待 URL 等于“stackoverflow.com”...这不是同一个 URL。您是否尝试过在两个地方使用相同的网址?
-
我尝试修复它,但仍然打印错误消息。
-
@Holger 找到解决方案了吗,请更新。我也面临同样的问题
标签: python selenium url webdriver webdriverwait