参考了各位大大的,然后自己写了个爬虫
用到的modules:
utils.js --- moment
module_url.js
var http = require("http"); //获得页面数据
var cheerio = require("cheerio"); //分析页面数据,提取内容
var sanitize = require("validator"); //过滤没用的数据 如空格等
var fs = require('fs'); //操作文件,保存结果
app.js
var async = require("async"); //异步操作 如each, filter
var ts = require("timespans") //计算花费时间
var sanitize = require("validator"); //过滤没用的数据 如空格等
获得每个页面的话题列表 -- 并行的
根据话题列表获得的话题具体内容 -- 并行的 但是最后输出的内容是按顺序的
别处拷来的utils 里面重写了下console.log 增加了输出的时间
var moment = require('moment'); exports.inc = function(n, callback, timeout) { timeout = timeout || 200; setTimeout(function() { callback(null, n+1); }, timeout); }; exports.fire = function(obj, callback, timeout) { timeout = timeout || 200; setTimeout(function() { callback(null, obj); }, timeout); }; exports.err = function(errMsg, callback, timeout) { timeout = timeout || 200; setTimeout(function() { callback(errMsg); }, timeout); }; // utils exports.log = function(msg, obj) { process.stdout.write(moment().format('ss.SSS')+'> '); if(obj!==undefined) { process.stdout.write(msg); console.log(obj); } else { console.log(msg); } }; exports.wait = function(mils) { var now = new Date; while(new Date - now <= mils); }