亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

這段代碼是與老師的一模一樣,但是為什么在命令行運行后什么都不顯示不加載呢?

var http=require('http')

var cheerio=require('cheerio')

var url='http://www.xianlaiwan.cn/learn/348'


function filterChapters(html){

var $=cheerio.load(html)

var chapters=$('.learnchapter')

// [{

// chapterTitle:'',

// videos:[

// title:'',

// id:''

// ]

// }]

//?

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('.studyvideo')

var videoTitle = video.text()

var id=video.attr('href').split('video/')[1]

// console.log('sssss')

chapterData.videos.push({

title:videoTitle,

id:id

})

})



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(' 【' + videos.id + '】 ' + videos.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('獲取出錯')

})

http://img1.sycdn.imooc.com//5800a35800012d0105580132.jpg

正在回答

3 回答

那是因為現在慕課網的html頁面元素的class名更改了。

1、var chapters=$('.learnchapter') ?修改為 ? ??var chapters=$('.chapter')

2、var video=$(this).find('.studyvideo') ?修改為 ?var video=$(this).find('.J-media-item')

1 回復 有任何疑惑可以回復我~
#1

長不大不勤奮

我改了,但還是不顯示。我在最后console.log('1234')可以打印出來1234.
2016-12-26 回復 有任何疑惑可以回復我~
#2

長不大不勤奮

解決了 是因為我的類名寫錯了var chapters = $('.chapter') 寫成了var chapters = $('.chpater')。我看了這個貼把樓主的代碼和我的比較了一下。樓主的代碼中console.log(' 【' + videos.id + '】 ' + videos.title + '\n')的是為video沒有s,樓主的代碼雖然報錯但是可以跑出來。我看了我的發現了問題,是類名寫的不對。我還以為是cheerio沒裝上去。裝了4天。感謝樓主的代碼,和笑歌自若的解答讓我找到問題所在,心里的煩躁好了許多,非常感謝。
2016-12-26 回復 有任何疑惑可以回復我~

66666666666

0 回復 有任何疑惑可以回復我~

666,謝謝!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
進擊Node.js基礎(一)
  • 參與學習       219329    人
  • 解答問題       982    個

本視頻教程帶你揭開Node.js的面紗,帶你走進一個全新世界

進入課程

這段代碼是與老師的一模一樣,但是為什么在命令行運行后什么都不顯示不加載呢?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號