0
我想加载一个url并检查页面的所有http和https链接,并将这些链接放到两个不同的文件中。我使用的JavaScript,当我尝试写的所有只有最后一个被写入文件中的HTTP URL,而有些则没有written.Below是代码如何通过页面的链接循环并在java脚本中写入文件中的所有http链接
var jsdom = require("jsdom");
var request = require('request');
var fs = require("fs");
jsdom.env(
'http://www.google.com', ["http://code.jquery.com/jquery.js"],
function(error, window) {
console.log("There are", window.$('.body').find('img').length, "img");
var $ = window.$;
$($('.body').find('a')).each(function() {
var src = $(this).attr('href');
if (src.startsWith('http://')) {
console.log(src)
fs.writeFile('out.html', src,
function(err) {
if (err) throw error;
})
}
})
});
如何使这个代码写的所有http链接到out.html文件。现在它只是写入最后一个链接。
这似乎是在一个,2个基本问题2个问题的一个可能我补充。除此之外,你确定你没有覆盖你每次添加一个新的时写的最后一个? – Ryan
循环已完成,我可以在控制台中看到结果,但在写入文件时只有最后一个正在写入 – nodemongo1
因此您不确定。我同意迈克在这一个,你可能没有阅读所有的文件,并错过了关于writeFile错综复杂的部分。 – Ryan