我想解析完整的HTML子项及其子项,其中我不会将任何属性ID放置到标记。
例如:
<html>
<head>
<script>
function blah(){
alert("hi");
}
</script>
<style>
body{
font:10px;
}
</style>
</head>
<body>
<h1> My Header </h1>
<div class="container">
<div class="colone">Hai22</div>
<div class="coltwo">Hai44</div>
</div>
</body>
</html>
现在我想解析整个html并逐个获取它的子节点并将其转换为JSON字符串。 喜欢
{
"html":{
"head":{
"script":
.
.
.
.
.
.
.
}
答案 0 :(得分:0)
这是不可能的,因为HTML(或类似XML)树对Javascript / JSON对象模型有不同的限制。具体来说,每个孩子都有一个孩子。标签在父级中必须是唯一的。这不是有效的JSON:
"section": {
"div": { ... },
"div": { ... },
"div": { ... }
}
您不能拥有名为"div"
的对象的三个属性。最后,您必须存储对象列表,例如:
{
"tagname": "section",
"children": [
{ "tagname": "div",
"children": ... }
...
]
}
一旦达到这一点,转换就毫无意义。使用您喜欢的编程语言中的标准DOM解析库。