爬虫
superagent(抓取资源)
cheerio(转化为DOM结构)
var superagent = require('superagent');
superagent.get(host_url).end(function(err, sres) {
// 常规的错误处理
if (err) {
return next(err);
}
// sres.text 里面存储着网页的 html 内容,将它传给 cheerio.load 之后
// 就可以得到一个实现了 jquery 接口的变量,我们习惯性地将它命名为 `$`
// 剩下就都是 jquery 的内容了
// console.log(sres.text);
var $ = cheerio.load(sres.text);
var items = [];
// console.log($('#list-container'));
$('#list-container li .title').each(function(idx, element) {
var $element = $(element);
var href = url.resolve(host_url, $element.children().attr('href'));
items.push({
title: $element.text(),
href: href
});
topicUrls.push(href);
});
// res.send(items);
// res.send($('#list-container').html());
});
控制并发
eventproxy和async