//http小爬蟲 var http=require('http') var cheerio=require('cheerio') var url='http://www.imooc.com/learn/348' function filter(html){ var $=cheerio.load(html); var chapters=$('.mod-chapters') var courseData=[] chapters.each(function(item){ var chapter=$(this) var chapterTitle=chapter.find('strong').text() var videos=chapter.find('.video').children('li') var chapterData={ chapterTitle:chapterTitle, videos:[] } videos.each(function(item){ var video=$(this).find('.stydyvideo') var videoTitle=video.text() chapterData.videos.push({ title:videoTitle, }) }) courseData.push(chapterData) }) return courseData } http.get(url,function(res){ var html='' res.on('data',function(data){ html+=data }) res.on('end',function(){ var data=filter(html); console.log(data) }) }).on('error',function(){ }) /** * Created by Administrator on 2017-07-03. */ //事件模塊小插曲 對一個事件不要超過10個監聽器 var EventEmitter=require('events').EventEmitter var life=new EventEmitter(); life.on('ddd',function(){ console.log('55555555') }) life.on('ddd',function(){ console.log('6666') }) function water(){ } life.listeners('ddd').length//查看事件的個數 EventEmitter.listenerCount(life,'ddd') //life.removeListener('ddd',water)//刪除事件監聽 life.emit('ddd')//事件觸發 //刪除全部的監聽事件 life.removeAllListeners()