首页 > web前端 > js教程 > 正文

在Node.js中使用cheerio制作简单的网页爬虫(详细教程)

亚连
发布: 2018-06-02 14:30:03
原创
3335 人浏览过

本篇文章主要介绍了Node.js 利用cheerio制作简单的网页爬虫示例,现在分享给大家,也给大家做个参考。

本文介绍了Node.js 利用cheerio制作简单的网页爬虫示例,分享给大家,具有如下:

1. 目标

  1. 完成对网站的标题信息获取

  2. 将获取到的信息输出在一个新文件

  3. 工具: cheerio,使用npm下载npm install cheerio

  4. cheerio的API使用方法和jQuery的使用方法基本一致

  5. 如果熟练使用jQuery,那么cheerio将会很快上手

2. 代码部分

介绍: 获取segment fault页面的列表标题,将获取到的标题列表编号,最终输出到pageTitle.txt文件里

const https = require('https');
const fs = require('fs');
const cheerio = require('cheerio');
const url = 'https://segmentfault.com/';

https.get(url, (res) => {
  let html = '';
  res.on('data', (data) => {
    html += data;
  });
  res.on('end', () => {
    getPageTitle(html);
  });
}).on('error', () => {
  console.log('获取网页信息错误');
});

function getPageTitle(html) {
  const $ = cheerio.load(html);
  let chapters = $('.news__item-title');
  let data = [];
  let index = 0;
  let fileName = 'pageTitle.txt';
  for (let i = 0; i < chapters.length; i++) {
    let chapterTitle = $(chapters[i]).find(&#39;a&#39;).text().trim();
    index++;
    data.push(`\n${index}, ${chapterTitle}`);
  }
  fs.writeFile(fileName, data, &#39;utf8&#39;, (err) => {
    if (err) {
      console.log(&#39;fs文件系统创建新文件失败&#39;, err);
    }
    console.log(`已成功将获取到的标题放入新文件${fileName}文件中`)
  })
}
登录后复制

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

聊聊JS动画库 Velocity.js的使用

vue toggle做一个点击切换class(实例讲解)

Vue2.0 给Tab标签页和页面切换过渡添加样式的方法

以上是在Node.js中使用cheerio制作简单的网页爬虫(详细教程)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!