var http = require('http'); var cheerio = require('cheerio'); var url = "http://www.imooc.com/learn/348"; function filterChapters(html){ var $ = cheerio.load('html'); var chapters = $('.chapter'); 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('.J-media-item'); var videoTitle = video.text(); var id = video.attr('href').split('video/')[1]; chapterData.videos.push({ id: id, title: videoTitle }); }) courseData.push(chapterData); }) return courseData; } function printCourseInfo(courseData) { courseData.forEach(function(item){ var chapterTitle = item.chapterTitle; console.log(chapterTitle+'\n'); item.videos.forEach(function(video){ console.log(' 【'+ video.id +'】 '+ video.title + '\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); }) }).on('error', function () { console.log('获取课程信息出错!') })
这是源码,不知道哪里出错了,代码就是不执行,不知道是因为cheerio安装问题还是代码问题,试了各种网上的方法都没用!!!
吃天狗的月亮
拿不到钥匙的车放不进手机的歌