nodejs做爬虫爬取文章列表
七娃博客587人阅读
nodejs可以做爬虫吗?nodejs如何爬取文章列表?nodejs做爬虫爬取文章列表,原来这么简单。最近闲置时间学了点node,发现它可以像python一样做爬虫咦!然后根着《10分钟教你撸一个nodejs爬虫系统》我比这写了自己网站的规则,发现真的爬成功了,哇,好期待自己变成爬虫高手哦!
说在前面:我自己以自己域名为例,是练习,请自己找网站练习获取数据列表的规则!每个html不一样,规则是不一样的!
nodejs做爬虫步骤:
1.安装依赖cheerio,superagent
npm install superagent cheerio --save
2.创建index.js并引入依赖
const superagent = require('superagent'); const cheerio = require('cheerio'); var fs = require('fs');
3.通过jquery选择器的方法获取需要的参数
superagent.get(reptileUrl).end(function (err, res) { // 抛错拦截 if(err){ return console.log(err); } // 等待 code console.log("链接通了!"); let $ = cheerio.load(res.text); let data = []; // 获取数据 $('.list-box li').each(function (i, elem) { let _this = $(elem); data.push({ url: _this.find('a').attr('href'), title: replaceText(_this.find('a').attr('title')), time: replaceText(_this.find('time').text()) }); }); // 写入数据, 文件不存在会自动创建 fs.writeFile(__dirname + '/a.json', JSON.stringify({ status: 0, data: data }), function (err) { if (err) console.log(err); console.log('写入完成'); }); }); function replaceText(text){ return text.replace(/\n/g, "").replace(/\s/g, ""); }
4.记得创建a.json文件,否则可能会没有权限导致失败!
5.运行js文件
node index.js
结果如下:
评论 | 0 条评论
登录之后才可留言,前往登录