使用nodeJS下载图片

javascript 复制代码
const http = require('http');
const https = require("https");
const cheerio = require('cheerio');
const request = require('request');
const fs = require('fs');

function filterData(data) {
    const $ = cheerio.load(data);
    let textLi = '';
    $('.goods-list-wrap .gl-item img.item-pic').each((index, el) => {
        let imgurl = $(el).attr('data-original');
        console.log($(el).attr('data-original'))
        textLi += $(el).attr('data-original') + "\n";
        console.log(imgurl.split('/')[imgurl.split('/').length - 1], 'fhg')
        let fileName = "./img/" + imgurl.split('/')[imgurl.split('/').length - 1];
        download_img('https:' + imgurl, fileName)
    })
    console.log($('#title-category').text(), 'text')
    fs.writeFile(`${$('#title-category').text()}.txt`, textLi, (err) => {
            if (err) throw err;
            console.log('文本文件已创建并写入数据');
        })
        // console.log(data);
}

// 下载图片
function download_img(img_url, file_name) {
    request(img_url).pipe(fs.createWriteStream(file_name)).on('close', function() {
        console.log('pic saved!')
    })
}
const server = http.createServer((req, res) => {
    let data = "";
    https.get("https://lists.meizu.com/page/list?categoryid=76", (result) => {
        result.on("data", (chuck) => {
            data += chuck;
        })

        result.on("end", () => {
            filterData(data);
        })
    })
})


server.listen(8080, () => {
    console.log("locallhost:8080")
})
相关推荐
濮水大叔5 天前
你认为Vonajs提供的这些特性会比Nestjs更好用吗?
nodejs·nestjs
bloglin9999921 天前
cursor/vscode启动项目connect ETIMEDOUT 127.0.0.1:xx
ide·vscode·编辑器·nodejs·cursor
代码哈士奇1 个月前
认识中间件-以及两个简单的示例
后端·中间件·typescript·nodejs·nest
PegasusYu2 个月前
Electron使用WebAssembly实现CRC-32 STM32校验
stm32·electron·nodejs·wasm·webassembly·crc32·crc-32
gqkmiss2 个月前
Electron 开发:获取当前客户端 IP
tcp/ip·electron·nodejs·os
akko_3 个月前
cool-admin-midway 使用腾讯云cos上传图片
云计算·nodejs·腾讯云·koa·后台管理·midway·cool-admin
丶Darling.3 个月前
利用hexo+github部署属于自己的个人博客网站(2025年3月所写)
git·github·nodejs·hexo·个人博客
GuokLiu3 个月前
250316-Open-WebUI源码部署+离线迁移
nodejs·open-webui
荣--3 个月前
重构的艺术:在代码演进中寻找优雅
javascript·微信小程序·重构·nodejs
暮良文王4 个月前
离线环境安装nodejs及npm库i5ting_toc(超详细,手把手教学一通百通)
nodejs