-
Notifications
You must be signed in to change notification settings - Fork 0
/
cralwer.js
40 lines (36 loc) · 1010 Bytes
/
cralwer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
var http = require('http');
var url = 'http://coding.imooc.com/';
var cheerio = require('cheerio');
function filterChapters(html){
var $ = cheerio.load(html);
var chapters = $('.bottom');
var courseData = []; //存放爬虫数据
chapters.each(function(item){
var chapter = $(this);
var chapterTitle = chapter.find('h2').text();
var desc = chapter.find('.desc').text();
var data={
title : chapterTitle,
desc : desc
}
courseData.push(data)
});
return courseData;
};
function printCourseInfo(courseData){
courseData.forEach(function(item){
var chapterTitle = item.title;
var desc = item.desc;
console.log(chapterTitle + " : " + desc + '\n')
})
}
http.get(url,function(res){
var html='';
res.on('data',function(data){
html+=data;
});
res.on('end',function(){
var courseData = filterChapters(html);
printCourseInfo(courseData)
})
})