Node.js 利用cheerio制作简单的网页爬虫示例
程序员文章站
2022-04-15 20:05:13
本文介绍了node.js 利用cheerio制作简单的网页爬虫示例,分享给大家,具有如下:
1. 目标
完成对网站的标题信息获取
将获取到的信息输出在...
本文介绍了node.js 利用cheerio制作简单的网页爬虫示例,分享给大家,具有如下:
1. 目标
- 完成对网站的标题信息获取
- 将获取到的信息输出在一个新文件
- 工具: cheerio,使用npm下载npm install cheerio
- cheerio的api使用方法和jquery的使用方法基本一致
- 如果熟练使用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('a').text().trim(); index++; data.push(`\n${index}, ${chaptertitle}`); } fs.writefile(filename, data, 'utf8', (err) => { if (err) { console.log('fs文件系统创建新文件失败', err); } console.log(`已成功将获取到的标题放入新文件${filename}文件中`) }) }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。