首頁  >  文章  >  web前端  >  在Node.js中使用cheerio製作簡單的網頁爬蟲(詳細教學)

在Node.js中使用cheerio製作簡單的網頁爬蟲(詳細教學)

亚连
亚连原創
2018-06-02 14:30:033337瀏覽

本篇文章主要介紹了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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn