Chrome扩展:以编程方式检查元素和"复制xpath"或者“复制CSS路径”
Chrome Extension: Programmatically inspect element and "copy xpath" or "copy css path"
我想知道是否有可能以编程方式访问一个元素,比如我悬停在当前元素上,并执行相当于右键单击它,进入"检查元素",在元素选项卡中选择它,右键单击"复制xpath"或"复制css路径"。
另外,我想知道是否有可能获得类似元素的xpath或css路径。说所有的链接在这个网站的一边,如何使chrome获得xpath或css路径表达式,表示在类似的问题下的一组链接?
我的目的是编写一个扩展,让我可以轻松地获取页面上元素的xpath或css路径,这对于自动测试web应用程序来说足够准确。
一种可能性是使用
document.querySelectorAll(":hover");
这将返回一个NodeList的元素决定顺序从parent => child =>…=>最后一个孩子。因此,NodeList中的最后一个元素将是最"特定的",并且(大多数时候)可以通过反向工作来构建到该特定元素的css路径。
关于你的第二个问题,你进入了一个非常困难的领域!一般来说,如果你试图从一个未知的html页面中提取信息,在不事先知道页面结构的情况下,以自动/编程的方式这样做是不可行的。
如果你想让你的扩展只提取路径从一个特定的(小)数量的网站然后伟大的…您可以(手动)查看站点是否有结构良好的标记,并将这些路径硬编码到代码中。否则,对于任何一般站点,寻找类似的路径应该留给用户作为练习(可能使用上面提到的hover
方法:))
相关文章:
- 使用Clipboard.js复制span文本
- ZeroClipboard-在复制之前添加到值
- 如何在android中使用phonegap将文件从一个文件夹移动/复制到另一个文件夹
- 铬:“;未捕获的语法错误:意外的标记:"
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- 复制图像路径以单击它
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- 使用“+="操作人员
- 复制当前url按钮-Javascript
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- Javascript复选框函数:;缺少:在属性id之后"
- "“;变量未引用正确的对象
- 具有所有样式的文本正在复制到可编辑文本区域
- "日期“;AJAX请求返回的类型值未定义
- 得到"TypeError:无法读取属性'filename'未定义的“;调用“npm start
- JavaScript禁用”;打开”"打开新标签”;以及“;复制“;长按iOS 8 safari中的锚标签