目标:
从Selenium WebDriver获取附加到节点的所有事件
我正在使用selenium-python,我想执行一个javascript脚本(通过driver.execute_script('my js script')
。
该脚本使用getEventListeners
,仅在Chrome上可用。
我成功使用了
driver = webdriver.Chrome('path/to/chromedriver')
启动Chrome浏览器。用getEventListeners(myNode)
执行我的脚本,我得到如下信息:
在execute_script中的文件“ /usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py”,第403行
{'script':脚本,'args':converted_args})['value']
执行中的文件“ /usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/webdriver.py”,行175
self.error_handler.check_response(响应)
文件“ /usr/local/lib/python2.7/dist-packages/selenium/webdriver/remote/errorhandler.py”,行166,在check_response中
引发exception_class(消息,屏幕,堆栈跟踪)
selenium.common.exceptions.WebDriverException:消息:未知错误:未定义getEventListeners
getEventListeners
可通过命令行API使用,但我无法在硒中使用它。有解决方案吗?还有其他方法可以将所有事件绑定到元素吗? (尤其是Click事件)
干杯
javascript大神给出的解决方案
遗憾的是,答案是:无法通过getEventListeners
访问ChromeDriver
。这是-如注释中所述-by design:
警告:仅当您从Chrome DevTools控制台调用这些功能时,这些功能才起作用。如果您尝试在脚本中调用它们,它们将无法工作。
相应的issue report设置为WontFix
。
但:
检出this answer来查找不使用getEventListeners
附加到节点的所有事件。
嗨,我是GetStream的新手,仍然在学习。这是我正在使用的压缩版本。我有一个python后端,可在其中创建用户令牌:client = stream.connect(...) token = client.create_user_token(id) return token 然后,我将令牌传递给js前端,在该前端中该令牌用于检索该用户的feed活动。我正在…
Python sqlite3数据库已锁定 - python我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…
用大写字母拆分字符串,但忽略AAA Python Regex - python我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…
子条件的python条件覆盖 - python我试图找到一个python代码覆盖率工具,该工具可以衡量语句中是否包含子表达式:例如,我想看看下面的示例是否涵盖了condition1 / condition2 / condtion3?if condition1 or condition2 or condition3: x = true_value python大神给出的解决方案 对此的唯一合理答案是:当前…
USB设备发行 - python我目前正在使用PyUSB。由于我不熟悉USB,所以我不知道如何执行以下操作。我已经从Python PyUSB成功连接到我的USB设备硬件。在代码中,我需要重置USB设备硬件。通过向硬件发送命令来完成。现在,在硬件重置后,我想从Python PyUSB释放当前的USB设备。然后,我想在重置后将其重新连接到USB设备硬件。请让我知道,如何释放USB设备连接和接口…