nodejs爬虫系统

页面导航:首页 > 网络编程 > JavaScript > nodejs爬虫系统

nodejs爬虫系统

来源: 作者: 时间:2016-01-22 08:40 【

其中express是服务端框架request相当于前端的ajax请求cheerio相当于jq开始首先我们先新建一个 crawler目录执行 npm install express -g 命令 和 npm install express-generator -g 命令接着 cd cr
其中express是服务端框架
request相当于前端的ajax请求
cheerio相当于jq
 
 
开始
首先我们先新建一个 crawler目录
执行 npm install express -g 命令 和  npm install express-generator -g 命令
 
接着 cd crawler 进入crawler目录   执行 npm install request --save-dev  和  npm install cheerio --save-dev             
 
然后在我们的目录下建立express项目  直接命令行执行 express
OK 我们的项目目录变成这个样子:
 
 
接下来
我们首先安装下项目的依赖,执行 npm install 就OK
 
那这样我们的前期工作就做好了。
 
接着
我们打开app.js
我们来修改他。
如下:
 
 1 var express = require('express');
 2 var app = express();
 3 
 4 app.get('/', function(req, res) {
 5   res.send('hello express');
 6 });
 7 
 8 app.listen(3000, function() {
 9   console.log('listening on 3000');
10 });
 
终端执行 supervisor app.js
(注:supervisor是nodejs中监控进程用的。比如我们修改了app.js 那么supervisor就会自动去重启这个文件,不需要我们手动去node app.js,用户可以通过 npm install supervisor -g 来安装。这个也是我们在nodejs开发中常用到的一个工具)
 
OK。
我们打开127.0.0.1:3000
看到页面上输出了 hello express。 一切正常
 
就下来我们看下request。我们去到npm 里面 request的官网
 
看到关于他的使用,我们把它趴下来:
 
 
 
修改我们的app.js
 
 1 var express = require('express');
 2 var app = express();
 3 var request = require('request');
 4 
 5 app.get('/', function(req, res) {
 6   request('http://www.cnblogs.com/galenyip', function (error, response, body) {
 7     if (!error && response.statusCode == 200) {
 8       console.log(body);// Show the HTML for the Google homepage. 
 9       res.send('hello express');
10     }
11   });
12 });
13 
14 app.listen(3000, function() {
15   console.log('listening on 3000');
16 });

 

 
地址修改成我的博客地址吧。来爬爬我这个博客
 
OK,刷新我们的页面。等一会,会看到终端打印出了相关信息。
 
 
 
接着,
 
我们用上 cheerio
 
在app.js中 我们就入 var cherrio = require('cherrio');
 
 1 var express = require('express');
 2 var app = express();
 3 var request = require('request');
 4 var cheerio = require('cheerio');
 5 
 6 app.get('/', function(req, res) {
 7   request('http://www.cnblogs.com/galenyip', function (error, response, body) {
 8     if (!error && response.statusCode == 200) {
 9       $ = cheerio.load(body); //拿到body,作为选择器
10     }
11   });
12 });
13 
14 app.listen(3000, function() {
15   console.log('listening on 3000');
16 });

 

 
同时,我们可以看到  cheerio.load(body)就是我们拿到的页面,把它作为总的选择器。
 
之后的,我们就可以像操作jq一样操作这个页面了。
 
 
 
它的api跟jq很像,那这个就不做介绍了
 
 
 
其实,我们的整个爬虫就差不多了。
 
剩下的就是看客们根据自己的需要,去抓取页面的dom,筛选等等等等。。。。
Tags:

文章评论

最 近 更 新
热 点 排 行
Js与CSS工具
代码转换工具

<