nodeJs爬虫获取数据简单实现代码
作者:bea
本文实例为大家分享了nodeJs爬虫获取数据代码,供大家参考,具体内容如下 var http=require('http');var cheerio=require('cheerio');//页面获取到的数据模块var url='http://www.jcpeixun.com/lesson/1512/';function filterData(html){ /*所要获取到的目标数组 var courseData=[{ chapterTitle:"",
本文实例为大家分享了nodeJs爬虫获取数据代码,供大家参考,具体内容如下
var http=require('http');
var cheerio=require('cheerio');//页面获取到的数据模块
var url='http://www.jcpeixun.com/lesson/1512/';
function filterData(html){
/*所要获取到的目标数组
var courseData=[{
chapterTitle:"",
videosData:{
videoTitle:title,
videoId:id,
videoPrice:price
}
}] */
var $=cheerio.load(html);
var courseData=[];
var chapters=$(".list-collapse");
chapters.each(function(item){
var chapterTitle=$(this).find(".collapse-head").find("label").text();
var videos=$(this).find(".listview5").children("li");
var chaptersData={
chaptersTitle:chapterTitle,
videosData:[]
}
videos.each(function(item){
var videoTitle=$(this).find(".ml10").attr('data-lesson-name');
var videoId=$(this).find(".ml10").attr('data-lesson-id');
var vadeoPrice=$(this).find(".colblue").text();
chaptersData.videosData.push({
title:videoTitle,
id:videoId,
price:vadeoPrice
})
})
courseData.push(chaptersData)
})
return courseData
}
function printCourseInfo(courseData){
courseData.forEach(function(item){
console.log(item.chaptersTitle+'
');
item.videosData.forEach(function(item){
console.log(item.title+'【'+item.id+'】'+item.price+'
')
})
})
}
http.get(url,function(res){
html="";
res.on("data",function(data){
html+=data
})
res.on('end',function(){
var courseData=filterData(html);
printCourseInfo(courseData)
})
})
效果图:
以上就是nodeJs爬虫获取数据的相关代码,希望对大家的学习有所帮助。
有用 | 无用
var http=require('http');
var cheerio=require('cheerio');//页面获取到的数据模块
var url='http://www.jcpeixun.com/lesson/1512/';
function filterData(html){
/*所要获取到的目标数组
var courseData=[{
chapterTitle:"",
videosData:{
videoTitle:title,
videoId:id,
videoPrice:price
}
}] */
var $=cheerio.load(html);
var courseData=[];
var chapters=$(".list-collapse");
chapters.each(function(item){
var chapterTitle=$(this).find(".collapse-head").find("label").text();
var videos=$(this).find(".listview5").children("li");
var chaptersData={
chaptersTitle:chapterTitle,
videosData:[]
}
videos.each(function(item){
var videoTitle=$(this).find(".ml10").attr('data-lesson-name');
var videoId=$(this).find(".ml10").attr('data-lesson-id');
var vadeoPrice=$(this).find(".colblue").text();
chaptersData.videosData.push({
title:videoTitle,
id:videoId,
price:vadeoPrice
})
})
courseData.push(chaptersData)
})
return courseData
}
function printCourseInfo(courseData){
courseData.forEach(function(item){
console.log(item.chaptersTitle+'
');
item.videosData.forEach(function(item){
console.log(item.title+'【'+item.id+'】'+item.price+'
')
})
})
}
http.get(url,function(res){
html="";
res.on("data",function(data){
html+=data
})
res.on('end',function(){
var courseData=filterData(html);
printCourseInfo(courseData)
})
})
效果图:
以上就是nodeJs爬虫获取数据的相关代码,希望对大家的学习有所帮助。
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jquery实现一个简单的表单验证实例
- js实现密码强度检测【附示例】
- 原生javascript实现的一个简单动画效果
- 纯js代码制作的网页时钟特效【附实例】
- JS 实现倒计时数字时钟效果【附实例代码】
- 详解JavaScript for循环中发送AJAX请求问题
- Jquery判断form表单数据是否变化
- 基于javascript实现tab选项卡切换特效调试笔记
- javascript实现数字倒计时特效
- 基于javascript实现样式清新图片轮播特效
- 网页中JS函数自动执行常用三种方法
- Jquery轮播效果实现过程解析
- 修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
- JavaScript 经典实例日常收集整理(常用经典)
- JavaScript 浏览器兼容性总结及常用浏览器兼容性分析
- JavaScript 不支持 indexof 该如何解决
- React.js入门学习第一篇
- 基于React.js实现原生js拖拽效果引发的思考
- 基于jQuery实现Ajax验证用户名是否存在实例