我正在编写一个在Firefox的Greasemonkey(或Chrome的Tampermonkey)中运行的用户脚本。我的要求是从不是当前网页的另一个网页中检索信息(链接)。假设当前页面是A,我想从另一个页面B获取信息,然后在A上显示它。
作为Java语言的新手,我已经为之奋斗了一段时间。我已经尝试过此代码:
var link = "https://example.com";
var request = new XMLHttpRequest();
request.open('GET', link, /* async = */ false);
request.send();
console.log('response head: ' + request.responseText.substring(0, 150) + '...');
responseXML = new DOMParser().parseFromString(request.response, "text/xml");
该代码在浏览器控制台中产生以下内容:
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta ...
但是在这一行似乎失败了:
responseXML = new DOMParser().parseFromString(request.response, "text/xml");
XML Parsing Error: mismatched tag. Expected: </meta>.
Line Number 32, Column 3:
我的问题是,有人可以帮助我使此代码正常工作吗?我希望能够像文档对象一样使用responseXML,以便我可以做类似的事情
document.getElementsByTagName('a');