JAVA实现可视化的xpath_【Java】爬虫基础 -- XPath 小案例

在项目下新建一个xpath.html 文件,编写代码解析books.xml。

代码如下:

Title

/*定义一个函数用来加载xml文档*/

function loadXMLDoc(dname) {

if (window.XMLHttpRequest) {

xhttp = new XMLHttpRequest();//获取XMLHttpRequest对象

} else {

xhttp = new ActiveXObject("Microsoft.XMLHTTP");

}

xhttp.open("GET",dname,false);

xhttp.send("");

return xhttp.responseXML;

}

xml = loadXMLDoc("books.xml");

/*

信息的位置

path = "/bookstore/book/title"//选取所有title还可以这样写:path="//title[@lang='en']"

path="/bookstore/book[1]/title" //选取第一个 book 的 title

path ="/bookstore/book/price/text()" //选取所有价格

path = "/bookstore/book[price>35]/price" //选取价格高于 35 的 price 节点

path = "//author" //选取作者

path = "//year" //选取年份

*/

path = "//price";

if(window.ActiveXObject){

/*xmlDoc.selectNodes(xpath);从XML文档中选取节点*/

var nodes = xml.selectNodes(path);

for (i = 0; i

document.write(nodes[i].childNodes[0].nodeValue);

document.write("
");

}

} else if (document.implementation && document.implementation.createDocument) {

/*Firefox、Chrome、Opera 以及 Safari 使用 evaluate() 方法从 XML 文档中选取节点:*/

var nodes = xml.evaluate(path, xml, null, XPathResult.ANY_TYPE, null);

var result = nodes.iterateNext();

while (result) {

document.write(result.childNodes[0].nodeValue);

//document.write(result.nodeValue); //选取所有价格对应的处理

document.write("
");

result = nodes.iterateNext();

}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值