当前位置: 首页 > 知识库问答 >
问题:

Python Selenium,被动地等待,直到满足特定的页面标准,然后接管[重复]

孟鸿朗
2023-03-14

使用Python Selenium是否可以让脚本在后台被动运行,直到满足特定的页面标准,然后让脚本接管浏览器的主动控制(如果相关,使用Chrome浏览器)。

我一直试图找到类似于'on_page_load()'事件的东西,它将在每次页面加载时运行(理想情况下,它将检查页面上是否存在特定的元素),然后它将分支到接管浏览器控制权的方法。到目前为止还没有运气。

共有1个答案

鲁财
2023-03-14

您可以为此使用selenium的javascript runner。

driver.execute_script("
     window.onload = (function () {// logic here})();")

您还可以在元素可用或回调时实现某种类型的listner。

def hello(value, callback):
print value
callback()

def hi():
print "Hi"

hello(“hello”, hi)
 类似资料:
  • 我在用硒检查搜索结果。我想检查搜索结果并移到详细页。所以,我用了两次'WebDriverWait Until'。第一次等待似乎很有效,但第二次等待就不起作用了。 当我添加time.sleep(0.5)时,它起作用了。但是,我不想为了这个而睡觉。 你们能看看我的剧本吗?为了测试,我已经在脚本中输入了IP地址。我以后再换。

  • 问题内容: 怎么可能 等到动作完成后再继续循环,我不能得到$ this var,因为它具有最后一个值,对不起我的英语,谢谢!!! 问题答案: 选项1:切换到处理程序中数组中的下一个元素。 选项2:同步发出Ajax请求: 全球: 或直接在请求中: });

  • 我使用这段代码点击下拉列表: 我得到错误可能是因为有一个显示登录栏的层。之后,该元素被禁用,代码抛出异常。 是否可以实现一个等待元素不被禁用的listen?

  • 我有一个页面,它用ajax加载动态内容,然后在一定时间后重定向(不固定)。我如何强制Selenium Webdriver等待页面重定向,然后立即转到另一个链接?

  • 问题内容: 我尝试了以下selenium-webdriverJS代码: 预期: 导航到给定的URL,找到元素,然后按如下所示打印属性: 实际: 在导航到URL本身之前,显示以下消息: 环境: 问题答案: 您需要从使用以下方法返回的承诺中提取值: 所有的webdriver命令都将诺言作为诺言管理器的一部分返回。这使您能够编写 不必像这样将它们链接起来: 但是,和许多Webdriver JS命令一样,

  • 我有一个登录屏幕,其中将发生一些用户输入验证,用户将被验证,最后重定向到欢迎屏幕。 以下是