nodeJs爬虫获取数据简单实现代码

 更新时间:2016年03月29日 17:27:29   作者:Jone_chen  
这篇文章主要为大家详细介绍了nodeJs爬虫获取数据简单实现代码,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了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+'\n');
    item.videosData.forEach(function(item){
      console.log(item.title+'【'+item.id+'】'+item.price+'\n')
    })
  })
}
http.get(url,function(res){
  html="";
  res.on("data",function(data){
    html+=data
  })
  res.on('end',function(){
    var courseData=filterData(html);
    printCourseInfo(courseData)
  })
})

效果图:

以上就是nodeJs爬虫获取数据的相关代码,希望对大家的学习有所帮助。

相关文章

  • Node快速切换版本、版本回退(降级)、版本更新(升级)

    Node快速切换版本、版本回退(降级)、版本更新(升级)

    这篇文章主要介绍了Node快速切换版本、版本回退(降级)、版本更新(升级),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • node.js 和HTML5开发本地桌面应用程序

    node.js 和HTML5开发本地桌面应用程序

    这篇文章主要介绍了node.js 和HTML5开发本地桌面应用程序的相关资料,需要的朋友可以参考下
    2016-12-12
  • nodejs搭建本地服务器并访问文件操作示例

    nodejs搭建本地服务器并访问文件操作示例

    这篇文章主要介绍了nodejs搭建本地服务器并访问文件操作,结合实例形式分析了nodejs搭建本地服务器操作步骤及文件访问相关实现技巧,需要的朋友可以参考下
    2019-05-05
  • node省市区三级数据性能测评实例分析

    node省市区三级数据性能测评实例分析

    这篇文章主要介绍了node省市区三级数据性能,结合具体实例形式评测分析了node省市区三级数据的实现、改进方法与运行效率,需要的朋友可以参考下
    2019-11-11
  • Node.js的文件权限及读写flag详解

    Node.js的文件权限及读写flag详解

    Node.js对文件的读写还是相当灵活的,因为自己老是记不住文件或目录权限的数值表达和字符表达。所以整理出这篇文章,方便以后查阅,下面来一起看看吧。
    2016-10-10
  • node.js中的fs.lchownSync方法使用说明

    node.js中的fs.lchownSync方法使用说明

    这篇文章主要介绍了node.js中的fs.lchownSync方法使用说明,本文介绍了fs.lchownSync的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
    2014-12-12
  • Node.js学习教程之Module模块

    Node.js学习教程之Module模块

    这篇文章主要给大家介绍了关于Node.js学习教程之Module模块的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Node.js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • 如何使node也支持从url加载一个module详解

    如何使node也支持从url加载一个module详解

    这篇文章主要给大家介绍了关于如何使node也支持从url加载一个module的相关资料,文中通过示例代码将实现的方法介绍非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧
    2018-06-06
  • linux服务器快速卸载安装node环境(简单上手)

    linux服务器快速卸载安装node环境(简单上手)

    这篇文章主要介绍了linux服务器快速卸载安装node环境(简单上手),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 利用Mongoose让JSON数据直接插入或更新到MongoDB

    利用Mongoose让JSON数据直接插入或更新到MongoDB

    这篇文章主要给大家介绍了利用Mongoose让JSON数据直接插入或更新到MongoDB数据库的相关资料,文中详细介绍了配置Mongoose、创建目录及文件、插入数据,POST提交JSON增加一条记录以及询数据,取出刚增加的记录等内容,需要的朋友可以参考下。
    2017-05-05

最新评论