在 Firefox 中,可以在开发人员工具的 Inspect Element 中查看与每个元素相关的事件。
我想以编程方式列出与之关联的元素和事件。最好使用硒+蟒蛇。
我知道getEventListeners
Chrome 的开发人员工具中有可以使用的功能,但在 Selenium 中无法访问。
我经历了这个问题中提供的大多数解决方案,但没有找到解决我的问题的方法。
我的最终目标是迭代给定页面的 throw html 元素并执行每个元素的事件。
在 Firefox 中,可以在开发人员工具的 Inspect Element 中查看与每个元素相关的事件。
我想以编程方式列出与之关联的元素和事件。最好使用硒+蟒蛇。
我知道getEventListeners
Chrome 的开发人员工具中有可以使用的功能,但在 Selenium 中无法访问。
我经历了这个问题中提供的大多数解决方案,但没有找到解决我的问题的方法。
我的最终目标是迭代给定页面的 throw html 元素并执行每个元素的事件。
您可以在一定程度上使用 python + selenium(仅限 Chrome)执行此操作:
body = driver.execute_cdp_cmd("Runtime.evaluate", {"expression": "document.body"})
listeners = driver.execute_cdp_cmd("DOMDebugger.getEventListeners", {"objectId": body["result"]["objectId"]})
将来可能与谁有关!
@pguardiario 提供的解决方案收集了大多数事件,但据我测试此解决方案,不收集React
and 。jQuery
为了克服这个问题并收集React
事件,jQuery
我深入研究了firefox
源代码,发现它firefox
使用某种解析器来显示React
和jQuery
事件,与Visual Events 2解决方案相同。