NodeJS简单爬虫-资源下载

1、需求
扒取当前网页的请求资源,包括:js、css、
2、环境及使用工具
NodeJS     puppeteer    Gulp
3、环境的搭建
3-1、安装nodejs
为了支持async和await,我们需要安装较高版本的node,具体安装过程查看官网:(https://nodejs.org/zh-cn/download/)
3-2、安装puppeteer
MAC用户建议使用yarn来安装,安装方式如下:[在安装的过程中,会默认安装chromium,如果安装不成功,可以跳过该安装过程,自己手动安装chromium]
  yarn add puppeteer
  //或者
  npm install puppeteer
3-3、安装gulp
需要全局安装gulp
npm install --save-dev -g gulp
4、爬虫代码
4-1、请求资源的获取
const links = [];
const browser = await puppeteer.launch();
const page = await browser.newPage();

await page.goto(url);//打开网页

const allRequests = new Map();

await page.on('request', req => {
    //获取请求资源
    links.push(req._url);
    allRequests.set(req.url(), req);
});

await page.reload({waitUntil: 'networkidle0'})
await browser.close();
4-2、资源的下载
const download = require('gulp-downloader');
gulp.task('download', function () {
    return new Promise(function (resolve, reject) {
        download(url).pipe(gulp.dest('./dist'));//将请求到的资源下载到指定的目录下
    })
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值