node下载图片、视频

const download = require('download')
const axios = require('axios')

let headers = {
    'User-Agent':
        'Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36',
}

function sleep(time) {
    return new Promise((reslove) => setTimeout(reslove, time))
}

async function load(skip = 0) {
    const data = await axios
        .get(
            'http://service.picasso.adesk.com/v1/vertical/category/4e4d610cdf714d2966000000/vertical',
            {
                headers,
                params: {
                    limit: 30, // 每页固定返回30条
                    skip: skip,
                    first: 0,
                    order: 'hot',
                },
            }
        )
        .then((res) => {
            return res.data.res.vertical
        })
        .catch((err) => {
            console.log(err)
        })
    await downloadFile(data)
    await sleep(3000)
    if (skip < 1000) {
        load(skip + 30)
    } else {
        console.log('下载完成')
    }
}

async function downloadFile(data) {
    for (let index = 0; index < data.length; index++) {
        const item = data[index]

        // Path at which image will get downloaded
        const filePath = `${__dirname}/img`

        await download(item.wp, filePath, {
            filename: item.id + '.jpeg',
            headers,
        }).then(() => {
            console.log(`Download ${item.id} Completed`)
            return
        })
    }
}

load()

视频

let mapUrl = 'https://vd2.bdstatic.com/mda-kimq0720banx2sm7/v1-cae/sc/mda-kimq0720banx2sm7.mp4?v_from_s=hkapp-haokan-hbe&auth_key=1676945800-0-0-819ef8908b65d75bac11d490ead528a2&bcevod_channel=searchbox_feed&pd=1&cd=0&pt=3&logid=2800780637&vid=9375399638589320789&abtest=107354_1&klogid=2800780637'
const download = require('download')
const filePath = `${__dirname}/video`
let headers = {
    'User-Agent':
        'Mozilla/5.0 (Macintosh; Intel Mac OS X 11_1_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36',
}
 download(mapUrl, filePath, {
    filename: 'video' + '.mp4',
    headers,
}).then(() => {
    console.log(`Download Completed`)
    return
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值