Javascript 使用节点js将名称为的爬网图像写入本地服务器
我正在制作一个网络爬虫,我想把我的图片保存在我项目的图片目录中,并使用它们的原始名称。。。假设爬网后我得到两张图片,第一次得到../logo.png,另一次得到另一张标题为../glasses.png的图片,然后我想在我的图片文件夹中将我的图片保存为相同的标题 这是我的密码:Javascript 使用节点js将名称为的爬网图像写入本地服务器,javascript,node.js,web-crawler,Javascript,Node.js,Web Crawler,我正在制作一个网络爬虫,我想把我的图片保存在我项目的图片目录中,并使用它们的原始名称。。。假设爬网后我得到两张图片,第一次得到../logo.png,另一次得到另一张标题为../glasses.png的图片,然后我想在我的图片文件夹中将我的图片保存为相同的标题 这是我的密码: var $ = cheerio.load(html); var title = $('head title').text(); var keywords = $('head meta[name=ke
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 img = $('img').attr('src');
var request = http.get($, function(res){
var imagedata = ''
res.setEncoding('binary')
res.on('data', function(chunk){
imagedata += chunk
});
res.on('end', function(){
fs.writeFile(img, imagedata, 'binary', function(err){
if (err) throw err
console.log('File saved.')
});
});
});
任何帮助都将不胜感激。
http.get($,函数(res){…
不应$
是img
(src属性的值);soo那么我写的是什么而不是$?请解释一下@c.p.u1Bro,您正在尝试http.get所有图像,对吗?您需要http.request
获取img属性的src值。现在,您正在向cheerio.load
返回的对象发送请求{应该是var request=http.get(img,function(res){
其中img是src值。好的,它的工作。但是我做了一些更改,我在数组中拍摄了图像,但是错误被分割了,没有定义所以我可以使用什么???