我希望能够将鼠标悬停在页面上,让它突出显示光标下方的元素(与开发人员工具检查器相同),并且当我单击鼠标时获取元素的 XPath。启用元素检查器并通过代码接收 XPath,并由人工选择元素。
我可以通过使用Chrome Devtools 协议并将Overlay.setInspectMethod与inspectNode=searchForNode
.
单击鼠标后,我会从事件中收到单击元素的DOM.BackendNodeIdOverlay.inspectNodeRequested
devtools 协议似乎没有任何内置方法来获取 XPath。所以我找到了 Chrome 开发者工具 Copy->Xpath 功能的这个javascript 实现。
虽然我可以通过 CDT 协议评估 javascript,但经过数小时的尝试,当我只有 BackendNodeId 时,我无法弄清楚如何获取对节点的引用以执行 javascript 函数。
有没有办法在 javascript 中获取对节点的引用,或者有没有办法在 CDTProtocol 中获取节点 XPath?