使用节点js比较html响应

时间:2013-06-12 10:45:32

标签: html node.js

我有一个案例,我向服务器发送请求并记录响应。然后我制作请求并再次将其发送到服务器,并将响应与先前记录的响应进行比较。

我正在使用node.js,我想知道是否有比较node.js中的HTML响应的最佳例程,它可以直接指出HTML响应中的差异。

2 个答案:

答案 0 :(得分:3)

看一下jsdiff,它可以在几个不同的级别(字符,单词,行)中返回两个文本或HTML之间的差异。

答案 1 :(得分:2)

您可以结合使用jsdomdom-compare

var compare = require('dom-compare').compare,
    jsdom = require('jsdom');

// Those are the HTML fragments that we want to compare:
var expectedHTML = '<div><i>m</i><b>q</b></div>';
var actualHTML = '<div><i>h</div>';

var expectedDOM = jsdom.jsdom(expectedHTML);
var actualDOM = jsdom.jsdom(actualHTML);
var result = compare(expectedDOM, actualDOM);

console.log('diff array:', result.getDifferences());

// we can use a reporter to pretty-print the result:
var reporter = require('dom-compare').GroupingReporter;
console.log(reporter.report(result));