我正在编写一个网页抓取工具,它将从网址中提取标题描述和图像..我希望将图像保存在项目中的图像文件夹中,保存正确但图像未完全加载显示致命错误:致命错误阅读PNG图像文件:不是png文件...我设置了一个缓冲区来存储将扩展其字节但仍然是相同错误的图像。所有图像都是1.7 kb,这不会意味着我的图像无法正确加载 任何帮助都会很明显: 这是一个代码:
var $ = cheerio.load(html);
var title = $('head title').text();
var keywords = $('head meta[name=keywords]').attr('content');
var desc = $('head meta[name=description]').attr('content');
var links = $('a');
var imgArray = [];
$('img').each(function(){
var temp = $(this).attr("src");
imgArray.push(temp);
var downloadImage = function (temp, fileName) {
http.get(temp, function (res) {
var imagedata = ''
res.setEncoding('binary');
res.on('data', function(chunk){
imagedata += chunk;
});
res.on('end', function(){
var imgArr = temp.split("/");
var Name = util.id();
fs.writeFile(__dirname + '/img/' + Name + ".png" , imagedata, 'binary', function(err)
if (err) throw err;
console.log('image saved')
});
});
});
};
downloadImage(temp,'test.png');
console.log("image is " + imgArray);
});
console.log('Crawling "%s" | %s',title,this.url);