欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

解析html生成xpath,html使用xpath解析xml

发布时间:2024/9/27 编程问答 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 解析html生成xpath,html使用xpath解析xml 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

test.xml:

Everyday Italian

Giada De Laurentiis

2005

30.00

Harry Potter

J K. Rowling

2005

29.99

XQuery Kick Start

James McGovern

Per Bothner

Kurt Cagle

James Linn

Vaidyanathan Nagarajan

2003

49.99

Learning XML

Erik T. Ray

2003

39.95

test.html:

/*

@desc 加载XHR文件

@author lee []

@param file 文件路径

@param async 同步或异步 true 异步 flase 同步

@return xmlDoc 加载后的内容

*/

function loadDoc(file,async=true){

if(window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

}else{ // code for IE6, IE5

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

}

if(async === true){

xmlhttp.onreadystatechange = function(){

if(xmlhttp.readyState < 4){

// 加载中

}else if (xmlhttp.readyState == 4 && xmlhttp.status == 200){

// 成功

xmlDoc=xmlhttp.responseXML;

return xmlDoc

}else{

// 失败

}

}

}

xmlhttp.open("GET",file,async);

xmlhttp.send();

if(async === false){

xmlDoc=xmlhttp.responseXML;

return xmlDoc

}

}

var xmlDoc = loadDoc('test.xml',false)

var path="/bookstore/book/title"

// code for IE

if (window.ActiveXObject){

var nodes=xmlDoc.selectNodes(path);

for (i=0;i

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

document.write("
");

}

}

// code for Mozilla, Firefox, Opera, etc.

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

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

var result=nodes.iterateNext();

while (result){

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

document.write("
");

result=nodes.iterateNext();

}

}

输出:

Harry Potter

Everyday Italian

Learning XML

XQuery Kick Start

总结

以上是生活随笔为你收集整理的解析html生成xpath,html使用xpath解析xml的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。