首页 > 代码库 > nodejs 之 小爬虫
nodejs 之 小爬虫
一、简单的单页面
var http = require(‘http‘) var url = ‘http://www.imooc.com/learn/348‘ http.get(url,function(res){ var html = ‘‘ //有data触发时 res.on(‘data‘,function(data){ html += data }) res.on(‘end‘,function(){ console.log(html) }) //出现异常时 }).on(‘error‘,function(){ console.log(‘获取出错‘) }) var server = http.createServer(function(req,res){ res.writeHead(200,{‘Content-Type‘:‘text/plain‘}) res.end(); }) server.listen(2017)
运行结果
二、获取页面的课程列表
安装cheerio
cmd 执行命令 npm install cheerio 然后就可以require cheerio
var http = require(‘http‘) var cheerio = require(‘cheerio‘) var url = ‘http://www.imooc.com/learn/348‘
//过滤页面,获取到列表的名称与id等信息 与javascript方法一致 function filterChapters(html){ var $ = cheerio.load(html) // console.log($) var chapters = $(‘.chapter‘) var courseData = http://www.mamicode.com/[]"data-media-id") chapterData.video.push({ title:videoTitle, id:id }) }) courseData.push(chapterData) }) return courseData } //将获取到的信息打印出来 function printCourseInfo(courseData) { courseData.forEach(function(item){ var chapterTitle = item.chapterTitle item.video.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(){ //过滤页面信息 // console.log(html) var courseData = http://www.mamicode.com/filterChapters(html)>
运行结果
nodejs 之 小爬虫
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。