くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

sitemapperでsitemap.xmlのURLを取得する

sitemap.xmlにあるURLの一覧を取得したいなと思ったら、便利なライブラリが(*´ω`*)

github.com

使い方

まずはインストール

$ npm install sitemapper --save

簡単な使い方はこんな感じ。

import Sitemapper from 'sitemapper';

async function main() {
  const sitemapper = new Sitemapper({
    url: 'https://www.google.com/work/sitemap.xml',
    timeout: 15000, // 15 seconds
  });
  
  const { url, sites } = await sitemapper.fetch();
  console.log(`url:${url}`, 'sites:', sites);
}

main().then();

リクエストヘッダとリトライ回数もオプションで設定できる。

const sitemapper = new Sitemapper({
  url: 'https://art-works.community/sitemap.xml',
  timeout: 15000,
  requestHeaders: {
    'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0'
  },
  debug: true,
  concurrency: 2,
  retries: 1,
});

以上!! 便利(*´ω`*)

参考にしたサイト様