Cheerio 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

准备

数据源

爬虫要想爬取数据首先提供爬取数据的路径,在这里我们爬取本课程的课程介绍页面。

url:http://www.hubwiz.com/course/562427361bc20c980538e26f

爬虫目标

课程介绍页面中最重要的信息就是每一章节的标题及其中小节的标题名称。我们的目标就是把它爬取出来,然后输出。

小爬虫

提供了爬取路径之后,我们首先利用 http 模块中get 和 request 爬取路径页面中的内容。

var http = require('http');
var url = 'http://www.hubwiz.com/course/5437538a032c781670afddbe/';

http.get(url, function(res){
    var html = '';

    res.on('data', function(data){
        html += data;
    })
    res.on('end',function(){
        console.log(html);
    })
}).on('error', function(){
    console.log('爬取页面错误');
});

解析:示例中首先引用了 nodejs 的核心模块 http 和提供了爬取路径,然后通过 http 中的 get 接口给 url 发送 get 请求,最回调函数中对请求回来的数据进行处理。

在右侧代码框中第11行中输入 console.log(html); 查看我们需要爬取的页面。

完成示例后,可以看到我们把请求路径中的 html 代码全部输出了。这不是我们需要的效果,所以我们要对数据进行解析。那么如何解析呢?