我正在抓取网站的源代码。
我的第一张照片打印出了完整的源代码。
然后,第二张打印品将实际的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新手,感谢您的帮助。我很想了解这个问题,但现在我真的只希望它能正常工作。
答案 0 :(得分:1)
如Charlietfl所说
请注意,jQuery
.html()
删除了body
和head
尝试
$('html')[0].outerHTML
或
document.documentElement.outerHTML