node.js 之爬虫

1. cheerio 与 request

  • request:模拟客户端行为,对页面进行请求
  • cheerio:对服务器端返回的页面进行解析;
var cheerio = require('cheerio');
var request = require('request');

var startUrl = 'http://www.baidu.com'
request(startUrl, function(err, response) {
    if (err) {
        console.log(err);
    }
    var $ = cheerio.load(response.body);
    var title = $('title').text();
    console.log(title);
}

2. 认识 cheerio

  • 获取 element 位置

    • 通过 class 属性进行匹配:
    var $=cheerio.load('<div class="container"></div>'); 
    $('.container')
    • 取其链接:<a class="downbtn" href="http://mov.bn.netease.com/mobilev/2013/1/F/G/S8KTEF7FG.mp4" id="M8KTEKR84" target="_blank"></a>
    $('a.downbtn').attr('href')
    • 某一页面下的全部可链接:
    var url = 
    var $ = cheerio.load(data);
        $("a.downbtn").each(function(i, e) {
            console.log($(e).attr("href"));
        });
    
        console.log("done");
      } else {
          console.log("error");
      } 
原文地址:https://www.cnblogs.com/mtcnn/p/9421018.html