Node.js 利用cheerio制作簡單的網(wǎng)頁爬蟲示例
本文介紹了Node.js 利用cheerio制作簡單的網(wǎng)頁爬蟲示例,分享給大家,具有如下:
1. 目標(biāo)
- 完成對網(wǎng)站的標(biāo)題信息獲取
- 將獲取到的信息輸出在一個新文件
- 工具: cheerio,使用npm下載npm install cheerio
- cheerio的API使用方法和jQuery的使用方法基本一致
- 如果熟練使用jQuery,那么cheerio將會很快上手
2. 代碼部分
介紹: 獲取segment fault頁面的列表標(biāo)題,將獲取到的標(biāo)題列表編號,最終輸出到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('獲取網(wǎng)頁信息錯誤'); }); 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文件系統(tǒng)創(chuàng)建新文件失敗', err); } console.log(`已成功將獲取到的標(biāo)題放入新文件${fileName}文件中`) }) }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Node.js發(fā)起HTTP請求的6種不同方法小結(jié)
本文主要介紹了Node.js發(fā)起HTTP請求的6種不同方法小結(jié),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03node.js中TCP Socket多進(jìn)程間的消息推送示例詳解
這篇文章主要給大家介紹了關(guān)于node.js中TCP Socket多進(jìn)程間的消息推送的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07Node.js 中exports 和 module.exports 的區(qū)別
這篇文章主要介紹了Node.js 中exports 和 module.exports 的區(qū)別的相關(guān)資料,需要的朋友可以參考下2017-03-03NodeJS創(chuàng)建最簡單的HTTP服務(wù)器
這篇文章主要介紹了NodeJS創(chuàng)建最簡單的HTTP服務(wù)器的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05nodejs實(shí)現(xiàn)HTTPS發(fā)起POST請求
這篇文章主要介紹了nodejs實(shí)現(xiàn)HTTPS發(fā)起POST請求的實(shí)例代碼,非常的簡單實(shí)用,有需要的小伙伴可以參考下。2015-04-04云服務(wù)器部署Node.js項(xiàng)目的方法步驟(小白系列)
這篇文章主要介紹了云服務(wù)器部署Node.js項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03