当前位置: 首页 > 后端技术 > Node.js

Node.js简单爬虫

时间:2023-04-03 20:37:13 Node.js

假设您已经安装了node.js和npm,如果没有,请参考其他教程安装。第一个配置是配置package.json文件,这里用到了express、request和cheerio。package.json如下:{"name":"node-scrape","version":"0.0.1","description":"Scrape","main":"server.js","dependencies":{"express":"latest","request":"latest","cheerio":"latest"}}npm安装把package.json文件放到你定义的文件夹(nodejs_scrape),然后在命令上运行line执行cdnodejs_scrapenpminstall抓取内容在nodejs_scrape目录下新建server.js文件,首先定义如下变量和方法varexpress=require('express');varfs=require('fs');varrequest=require('request');varcheerio=require('cheerio');varapp=express();app.get('/',function(req,res){//获取内容的方法});app.listen('8081');//使用端口8081console.log('Magichappensonport8081');exports=module.exports=app;接下来我们完善一下get方法的内容。首先定义要抓取的url,这里以segmentfault为例url='https://segmentfault.com/news';页面如下,点击F12查看,我们提取最简单的class="mr10"标签抓取内容如下request(url,function(err,res,html){if(!err){var$=cheerio.load(html);vartitle;$('.mr10').filter(function(){vardata=$(这);title=data.text();//获取标签的内容console.log('titleis'+title);//控制台打印});}});server.js完整代码如下/***管理员于2017/3/1创建。*/varexpress=require('express');varfs=require('fs');varrequest=require('request');varcheerio=require('cheerio');varapp=express();app.get('/',function(req,res){//所有的抓取魔法都会在这里发生url='https://segmentfault.com/news';request(url,function(err,res,html){if(!err){var$=cheerio.load(html);vartitle;$('.mr10').filter(function(){vardata=$(this);title=data.text();控制台。log('titleis'+title);});}});});app.listen('8081');console.log('Magichappensonport8081');exports=module.exports=app;在nodejs_scrape目录下运行nodeserver,可以看到如下在浏览器中运行http://127.0.0.1:8081/,可以看到爬取的内容如下:这样,我们就完成了一个简单得不能再简单的node.js爬虫