第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

為什么結(jié)果只顯示“正在爬取http://idcbgp.cn/learn/id”*6 ?

結(jié)果:

正在爬取http://idcbgp.cn/learn/637
正在爬取http://idcbgp.cn/learn/348
正在爬取http://idcbgp.cn/learn/259
正在爬取http://idcbgp.cn/learn/197
正在爬取http://idcbgp.cn/learn/134
正在爬取http://idcbgp.cn/learn/75

代碼:

var?http?=?require('http')
var?cheerio?=?require('cheerio')
var?Promise?=?require('bluebird')
var?baseUrl?=?'http://idcbgp.cn/learn/'

var?videoIds?=?[637,348,259,197,134,75]
var?fetchCourseArray?=?[]
videoIds.forEach(function?(id)?{
????fetchCourseArray.push(getPageAsync(baseUrl?+?id))
})

Promise
????.all([])
????.then(function?(pages)?{
????????var?coursesData?=?[]
????????pages.forEach(function?(html)?{
????????????var?courses?=?filterChapters(html)
????????????coursesData.push(courses)
????????})

????????coursesData.sort(function?(a,?b)?{
????????????return?a.number?<?b.number
????????})

????????printCourseInfo(coursesData)
????})

function?getPageAsync(url)?{
????return?new?Promise(function?(resolve,?reject)?{
????????console.log('正在爬取'?+?url)

????????http.get(url,?function?(res)?{
????????????var?html?=?''
????????????res.on('data',function?(data)?{
????????????????html?+=?data
????????????})
????????????res.on('end',function?()?{
????????????????resolve(html)
????????????})
????????}).on('error',function?(e)?{
????????????reject(e)
????????????console.log('獲取頁面數(shù)據(jù)出錯(cuò)!')
????????})
????})

}

function?filterChapters(html)?{
????var?$?=?cheerio.load(html)
????var?chapters?=?$('.chapter')
????var?title?=?$('.course-infos?.hd?.l').text()
????var?number?=?parseInt($('.course-infos?.statics?.static-item')[3].children('.meta-value?strong').text().trim(),10)
????var?courseData?=?{
????????title:?title,
????????number:?number,
????????videos:?[]
????}
????chapters.each(function?(item)?{
????????var?chapter?=?item
????????var?chapterTitle?=?chapter.find('strong').text()
????????var?videos?=?chapter.find('.video').children('li')
????????var?chapterData?=?{
????????????chapterTitle:?chapterTitle,
????????????videos:?[]
????????}
????????videos.each(function?(item)?{
????????????var?video?=?item.find('.studyvideo')
????????????var?videoTitle?=?video.text()
????????????var?id?=?video.attr('href').split('video/')[1]
????????????chapterData.videos.push({
????????????????title:?videoTitle,
????????????????id:?id
????????????})
????????})
????????courseData.videos.push(chapterData)
????})
????return?courseData
}
function?printCourseInfo(coursesData)?{
????coursesData.forEach(function?(courseData)?{
????????console.log(courseData.number?+?'?人學(xué)過?'?+?courseData.title?+?'\n')
????})

????coursesData.forEach(function?(courseData)?{
????????console.log('###?'?+?courseData.title?+?'\n')
????????courseData.videos.forEach(function?(item)?{
????????????console.log('###?'?+?item.title?+?'\n')
????????????var?chapterTitle?=?courseData.chapterTitle
????????????console.log(chapterTitle?+?'\n')
????????????item.videos.forEach(function?(video)?{
????????????????console.log('?【'?+?video.id?+?'】'?+?video.title?+?'\n')
????????????})
????????})
????})
}


正在回答

1 回答

修改:

var?http?=?require('http')
var?cheerio?=?require('cheerio')
var?Promise?=?require('bluebird')
var?baseUrl?=?'http://idcbgp.cn/learn/'
var?videoIds?=?[637,348,259,197,134,75]

var?fetchCourseArray?=?[]
videoIds.forEach(function?(id)?{
????fetchCourseArray.push(getPageAsync(baseUrl?+?id))
})

Promise
????.all(fetchCourseArray)
????.then(function?(pages)?{
????????var?coursesData?=?[]
????????pages.forEach(function?(html)?{
????????????var?courses?=?filterChapters(html)
????????????coursesData.push(courses)
????????})

????????coursesData.sort(function?(a,?b)?{
????????????return?a.number?<?b.number
????????})

????????printCourseInfo(coursesData)
????})

function?getPageAsync(url)?{
????return?new?Promise(function?(resolve,?reject)?{
????????console.log('正在爬取'?+?url)

????????http.get(url,?function?(res)?{
????????????var?html?=?''
????????????res.on('data',function?(data)?{
????????????????html?+=?data
????????????})
????????????res.on('end',function?()?{
????????????????resolve(html)
????????????})
????????}).on('error',function?(e)?{
????????????reject(e)
????????????console.log('獲取頁面數(shù)據(jù)出錯(cuò)!')
????????})
????})
}

function?filterChapters(html)?{
????var?$?=?cheerio.load(html)
????var?chapters?=?$('.chapter')
????var?title?=?$('.course-infos?.hd?.l').text()
????var?number?=?parseInt($('.course-infos?.statics?.static-item:last-child').find('.meta-value?strong').text().trim(),10)
????var?courseData?=?{
????????title:?title,
????????number:?number,
????????videos:?[]
????}
????chapters.each(function?()?{
????????var?chapter?=?$(this)
????????var?chapterTitle?=?chapter.find('strong').text()
????????var?videos?=?chapter.find('.video').children('li')
????????var?chapterData?=?{
????????????chapterTitle:?chapterTitle,
????????????videos:?[]
????????}
????????videos.each(function?()?{
????????????var?video?=?$(this).find('.studyvideo')
????????????var?videoTitle?=?video.text()
????????????var?id?=?video.attr('href').split('video/')[1]
????????????chapterData.videos.push({
????????????????title:?videoTitle,
????????????????id:?id
????????????})
????????})
????????courseData.videos.push(chapterData)
????})
????return?courseData
}
function?printCourseInfo(coursesData)?{
????coursesData.forEach(function?(courseData)?{
????????console.log(courseData.number?+?'?人學(xué)過?'?+?courseData.title?+?'\n')
????})
????coursesData.forEach(function?(courseData,index)?{
????????console.log('課程'?+?(index+1)?+':?'?+?courseData.title?+?'\n')
????????courseData.videos.forEach(function?(item)?{
????????????var?chapterTitle?=?item.chapterTitle
????????????console.log(chapterTitle?+?'\n')
????????????item.videos.forEach(function?(video)?{
????????????????console.log('?【'?+?video.id?+?'】'?+?video.title?+?'\n')
????????????})
????????})
????})
}


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
進(jìn)擊Node.js基礎(chǔ)(二)
  • 參與學(xué)習(xí)       76728    人
  • 解答問題       242    個(gè)

本教程帶你攻破 Nodejs,讓 JavaScript流暢運(yùn)行在服務(wù)器端

進(jìn)入課程

為什么結(jié)果只顯示“正在爬取http://idcbgp.cn/learn/id”*6 ?

我要回答 關(guān)注問題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)