nodeJs爬虫小程序练习

//爬虫小程序

	var express = require('express');
	//superagent是一个http的库,可以发起get和post请求
	var superagent = require('superagent');
	//cheerio是一个类似于jquery的库,用来从网页中以css 选择器取数据,
	//使用方式和jquery相同
	var cheerio = require('cheerio');
	
	var app = express();
	
	app.get('/', function(req, res, next){
	    superagent.get('https://cnodejs.org/')
	    .end(function(err,sres){
	    	//常规错误处理
	    	if(err){
	    		return next(err);
	    	}
	    	var $ = cheerio.load(sres.text);
	    	var items = [];//数组
	        $('#topic_list .topic_title').each(function(idx, element){
	        	var $element = $(element);
	        	items.push({
	        		title: $element.attr('title'),
	        		href: $element.attr('href')
	        	});
	        });
	
	        res.send(items);
	    });
	});
	
	app.listen(3000,function(req,res){
	    console.log('app is run at port 3000');
	});
  • SuperAgent是轻量级的渐进式ajax API,灵活性高,可读性高。可以通过调用request对象上的适当方法.end()来启动请求,然后调用发送请求。例如一个简单的GET请求:

       request
         .get('/search')
         .end(function(err, res){
      
         });
    
posted @ 2017-08-19 21:07  美美王子  阅读(344)  评论(0编辑  收藏  举报