Firefox 输出与xpath对应的所有数据的greasemonkey脚本

Firefox 输出与xpath对应的所有数据的greasemonkey脚本,firefox,xpath,greasemonkey,css-selectors,Firefox,Xpath,Greasemonkey,Css Selectors,我想编写一个greasemonkey脚本,在给定xpath的情况下,该脚本以.txt文件的形式返回当前页面上执行的xpath的所有输出,每行一个结果 我该怎么做 编辑:如果输出未写入文件,则为ok。我只想让它显示出来。下面是一个示例,它将所有href链接的列表附加到html正文中。你可以用样式来修饰它,使它隐藏、浮动等等 // ==UserScript== // @name test // @namespace johnweldon.com // @descript

我想编写一个greasemonkey脚本,在给定xpath的情况下,该脚本以.txt文件的形式返回当前页面上执行的xpath的所有输出,每行一个结果

我该怎么做


编辑:如果输出未写入文件,则为ok。我只想让它显示出来。

下面是一个示例,它将所有href链接的列表附加到html正文中。你可以用样式来修饰它,使它隐藏、浮动等等

// ==UserScript==
// @name           test
// @namespace      johnweldon.com
// @description    test
// @include        *
// ==/UserScript==

(function() { 
    try {
        var xpath = "//a[@href]";                // get all links
        var res = document.evaluate(xpath, document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,  null);
        var str = "<div><ul>";
        for ( var i = 0; i < res.snapshotLength; i++) {
            str = str + "\n<li>" + res.snapshotItem(i);
        }
        str += "</ul></div>";

        var ev = document.createElement("div");  // parent element for our display
        ev.innerHTML = str;                      //quick and dirty
        document.body.appendChild(ev);
    }
    catch (e) {
        alert(e.message);
    }
}())
/==UserScript==
//@name测试
//@namespace johnweldon.com
//@描述测试
//@包括*
//==/UserScript==
(函数(){
试一试{
var xpath=“//a[@href]”;//获取所有链接
var res=document.evaluate(xpath,document,null,XPathResult.ORDERED\u NODE\u SNAPSHOT\u TYPE,null);
var str=“
    ”; 对于(var i=0;i”+res.snapshotItem(i); } str+=“
”; var ev=document.createElement(“div”);//显示的父元素 ev.innerHTML=str;//又快又脏 文件.正文.附件(ev); } 捕获(e){ 警报(e.message); } }())
我想在for循环中的语句末尾缺少一个
+“”
。@hlovdal不是真的;请参阅关于关闭
li
标记的讨论: