nodeJS中的JSDOM:如何找回被操作的html?

我想操纵一个远程HTML并返回它操纵。 我决定使用JSDOM,但不知道如何获得操纵的HTML回来。 有任何想法吗?

jsdom.env({ url: "http://www.cnn.com", scripts: ["http://code.jquery.com/jquery.js"], done: function (err, window) { var $ = window.$; console.log("HN Links"); var src = $(".ghciTopStoryImage1 img").attr('src','http://lorempixel.com/396/220/'); var headline = $(".blkbigheader span").html('header'); var description = $(".blkbigheader").parent().find("pa:eq(0)").html('text'); // not working.... content =$(window.document).html(); } }); 

从jsdom自述 :

 var jsdom = require("jsdom").jsdom; var serializeDocument = require("jsdom").serializeDocument; var doc = jsdom("<!DOCTYPE html>hello"); serializeDocument(doc) === "<!DOCTYPE html><html><head></head><body>hello</body></html>"; doc.documentElement.outerHTML === "<html><head></head><body>hello</body></html>"; 

然后调整你的上面的例子就是content = serializeDocument(window.document)

有时jQuery不是答案

 content = window.document.documentElement.outerHTML;