返回

性感慕课-在线被爬

前端

性感慕课-在线被爬

在学习了 alsotang 大神的 《Node.js包教不包会》后的一个爬虫小练习,期间也碰到挺多小问题,也学到了很多小东西。「单押×3」

在这里用到的是 superagent 和 cheerio 来爬取页面,这里有相关文档可以参考: superagent中文文档、cheerio中文文档、慕课网API文档。

1. 安装依赖

npm install superagent cheerio

2. 编写代码

const superagent = require('superagent');
const cheerio = require('cheerio');

// 请求慕课网首页
superagent.get('https://www.imooc.com/')
  .then((res) => {
    // 将页面内容转换为DOM结构
    const $ = cheerio.load(res.text);

    // 提取课程标题
    const titles = $('.course-item-title').map((i, elem) => {
      return $(elem).text();
    }).get();

    // 提取课程链接
    const links = $('.course-item-title').map((i, elem) => {
      return $(elem).attr('href');
    }).get();

    // 提取课程价格
    const prices = $('.course-item-price').map((i, elem) => {
      return $(elem).text();
    }).get();

    // 将结果输出到控制台
    console.log(titles);
    console.log(links);
    console.log(prices);
  })
  .catch((err) => {
    console.error(err);
  });

3. 运行代码

node index.js

4. 输出结果

[
  '【2023三八节特惠】「设计小白都搞定的UI组件库入门到实战」,变身组件库小能手!',
  '暗夜模式来了!跟顿老师自制高品质UI组件库,前端设计师必备!',
  '跟幻云老师学UI框架打造功能型电商项目,快速提升设计能力!',
  'UI交互如何做?从零开始教你构建复杂UI交互动画,全面提升交互能力!',
  '3月18日起:学习更轻松,来imooc.com购买春季优惠特辑课程,限时低至5折!',
  '学习如何在react中正确使用key,让你代码高效又清晰!',
  '精通Vue3.2,实现前后端分离实践,轻松解决企业级项目',
  '零基础学javaEE,从Java语法到开发架构,秒变java高手',
  '1小时学会计算机网络基础,搭建基础网络服务',
  '编程小白也能学会!熟练使用Git,成为Web前端工程师必备!',
  '夯实基础,快速提升编程能力,大学霸的「C语言基础课」【免费开课】',
  '阿里巴巴大神教你用Go开发微服务架构,成为企业中坚力量',
  'Python带你从入门到精通,轻松成为AI程序员',
  '轻松掌握大数据管理与分析,打造全栈AI项目',
  '「AI大数据时代」,如何深度学习数据分析?',
  '从零到一,轻松学会Excel数据分析,解锁数据处理新技能!',
  '短视频必学课:手把手教你从拍摄剪辑到发布,成为短视频大神!',
  '高效视频剪辑技巧,让你轻松制作专业视频!'
]
[
  '/course/detail/26748',
  '/course/detail/26747',
  '/course/detail/26644',
  '/course/detail/26536',
  '/sale/special?tid=4064',
  '/course/detail/26764',
  '/course/detail/26720',
  '/course/detail/26753',
  '/course/detail/26759',
  '/course/detail/26760',
  '/course/detail/26762',
  '/course/detail/26758',
  '/course/detail/26756',
  '/course/detail/26746',
  '/course/detail/26749',
  '/course/detail/26750',
  '/course/detail/26761',
  '/course/detail/26745'
]
[
  '159.00元',
  '299.00元',
  '299.00元',
  '199.00元',
  '109.00元',
  '69.00元',
  '299.00元',
  '299.00元',
  '49.00元',
  '99.00元',
  '49.00元',
  '299.00元',
  '299.00元',
  '299.00元',
  '299.00元',
  '299.00元',
  '299.00元',
  '299.00元'
]

5. 总结

本文介绍了如何使用 superagent 和 cheerio 来爬取慕课网上的数据。本文中的代码可以帮助你快速入门数据爬取,并为你的爬虫项目提供一个良好的基础。