使用node.js下载图片

要准备下载的图片:
在这里插入图片描述

代码:

const http = require('http')
const cheerio = require('cheerio')
const download = require('download')

const HOST = 'http://www.18183.com/yxzjol/?soucre=bdald'
let req = http.request(HOST, res => {
    //异步的响应
   // console.log(res)
    //监听data事件,并获取传递过来的数据片段
    //拼接数据片段
    let chunks=[]
    res.on('data', chuck => {
       chunks.push(chuck)
    })
    //监听end事件,获取数据完毕时触发
    res.on('end', () => {
        //拼接所有的chuck,并转化或字符串==》html字符串
        //console.log(Buffer.concat(chunks).toString('utf-8'))
        let htmlStr = Buffer.concat(chunks).toString('utf-8')
        let $ = cheerio.load(htmlStr)
         
       
        //$('.pic-menu ul li  img ').each( function (index, item) {
        //    console.log(index,item)
        //    console.log($(item).attr('src'))

        //})
        //获取图片
        let imgs = Array.prototype.map.call($('.pic-menu ul li  img '), item => $(item).attr('src'))

        //let imgs=  $('.pic-menu ul li  img ').map((index,item) => $(item).attr('src'))
        // console.log(imgs[0])
        console.log(imgs)
        //下载图片
        Promise.all(imgs.map(x => download(x, 'dist'))).then(() => {

            console.log('Download complete');
        })
    })
})
//将请求发出
req.end()

注意:引入cheerio,download包

完成效果:

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你的美,让我痴迷

你的好,我会永远记住你的。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值