【发布时间】:2019-01-12 17:57:34
【问题描述】:
我正在抓取网站的源代码。
我的第一次打印打印出完整的源代码。
然后第二次打印将一个实际的 DOM 打印到控制台,但由于某种原因,文档的内容略有变化。
让我烦恼的是<body> 标签丢失了,我不知道为什么。
我刚刚意识到<head> 标签也丢失了。所以这可能是有充分理由的。
澄清:<head> 和 <body> 标记的内容一起保留在容器中。只是标签本身消失了,而不是它们的内容。
我希望将整个源代码解析为可访问的 DOM。
这是代码:
$.ajax({url: url, dataType: "text", success: function(data) {
console.log("data:", data);
var htmlDocument = $("<html>").html(data)[0];
console.log("htmlDocument:", htmlDocument);
}});
我是 JavaScript 新手,感谢您的帮助。我很想了解这个问题,但现在我真的只是希望它能够工作。
【问题讨论】:
-
你到底想用它做什么?请详细说明用例。请注意,jQuery html() 删除了
<body>和<head> -
我想访问 body 标签。搜索其内容。我刚刚意识到 标签也丢失了。这是为什么呢?
-
-
$('<div>').html(data);和$('<html>').html(data);有什么区别?我希望有一份源代码的精确副本,可以作为 DOM 访问。 -
没有必要使用
<html>,因为您所说的只是查看内容
标签: javascript html ajax dom web-scraping