【保存版】GASでWEBスクレイピングしてスプレッドシートに結果保存する方法|初心者向けステップ解説!

「特定のサイト情報を定期的に収集したい…」
「スクレイピングツールは難しそうで手が出せない!」

そんなあなたにこそ知ってほしいのが、Google Apps Script(GAS)を使ったWEBスクレイピング&結果保存の自動化です!

この記事では、初心者でもすぐできる
GASを使ったWEBスクレイピング+スプレッドシートへの結果保存方法を
実例とサンプルコード付きでわかりやすく解説します!

これを読めば、
手間ゼロで最新データを取得できる仕組みを今日から作れます!


1. なぜGASでWEBスクレイピングを自動化すべきなのか?

日々更新される情報(例:商品価格、ニュースタイトル、イベント情報など)を
手作業でコピペしていると、

  • ミスが発生しやすい

  • 毎日時間が奪われる

  • 情報更新のタイミングを逃す

といった問題が起きがちです。

GASを使えば、

  • 必要な情報だけ自動取得

  • 定期的にスプレッドシートへ保存

  • 情報収集ミスゼロ&圧倒的時短

が実現できるため、
業務も趣味も格段に効率化できるのです!


2. 【準備編】必要なもの

  • Googleアカウント

  • Googleスプレッドシート(結果保存用)

  • Google Apps Script(GAS:標準搭載)

これだけで、誰でも無料&すぐにスタートできます!


3. 【設計編】WEBスクレイピング&保存の流れを理解しよう

まずは、ざっくり全体像を整理しておきましょう。

■ 基本フロー

  1. GASで対象サイトにHTTPリクエストを送信

  2. HTMLデータを取得

  3. 必要な情報だけ抽出(スクレイピング)

  4. スプレッドシートに結果を書き込む

この流れをGASスクリプトでまとめれば、
毎日の情報収集が自動で回る仕組みが完成します!


4. 【基本編】GASでWEBスクレイピング+結果保存する方法

さっそく、実際に動くものを作っていきましょう!


ステップ① スプレッドシートを準備する

新しいスプレッドシートを作成し、
必要に応じてカラム(例:タイトル、URL、価格、更新日など)を用意しておきます。


ステップ② Apps Scriptエディタを開く

スプレッドシートから
「拡張機能」→「Apps Script」→「新しいプロジェクト作成」


ステップ③ サンプルスクリプトを書く

【基本版】WEBスクレイピングしてスプレッドシートに保存する

function scrapeAndSave() {
  const url = 'https://example.com'; // 取得したいサイトURL
  const response = UrlFetchApp.fetch(url);
  const html = response.getContentText();
  
  const title = html.match(/<title>(.*?)<\/title>/i);
  const pageTitle = title ? title[1] : '取得失敗';

  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheet = ss.getSheetByName('データ') || ss.insertSheet('データ');
  
  sheet.appendRow([new Date(), pageTitle, url]);
}

このスクリプトを実行すると、

  • 指定URLにアクセスして

  • <title>タグの中身(ページタイトル)を抜き出し

  • スプレッドシートに保存

できます!


5. 【応用編】さらに高度なスクレイピング&管理テクニック!


✅ 特定のHTMLタグからデータを抜き出す

たとえば、商品リストなどをスクレイプしたい場合。

const matches = html.match(/<h2 class="product-title">(.*?)<\/h2>/gi);
if (matches) {
  matches.forEach(item => {
    const cleanText = item.replace(/<[^>]+>/g, '');
    sheet.appendRow([new Date(), cleanText]);
  });
}

正規表現を工夫すれば、
任意の要素だけピックアップできるようになります!


✅ 複数サイトから一括取得する

URLリストをスプレッドシートに書いておいて、
ループ処理で一括スクレイピング&保存することも可能!


✅ 結果を整理してダッシュボード化

集めたデータをグラフ化したり、条件付き書式で色分けすれば、
視覚的に情報を管理できるようになります!


6. 【運用編】安定して自動化を回すための注意点


✔️ 取得先サイトの利用規約を確認

スクレイピングが禁止されているサイトもあるので、事前に必ず利用規約をチェックしましょう。


✔️ リクエスト頻度を制御する

短時間に大量リクエストを送ると、IPブロックされるリスクがあります。
適度な間隔(例:1~2分おき)で実行するのがおすすめです。


✔️ 定期実行トリガーを設定

毎日深夜にスクレイピング → 朝イチで最新情報確認、
というフローをGASの「時間主導型トリガー」で簡単に作れます!


7. まとめ|GASでWEBスクレイピング&結果保存を自動化して、情報収集を圧倒的に効率化しよう!

GASを使えば、

  • 必要なサイトから情報を自動収集

  • スプレッドシートにまとめて保存

  • 定期的なデータ更新も完全自動化

が誰でも実現できます!

まずはこの記事のサンプルコードで「ページタイトル取得&保存」から始めてみてください!

慣れてきたら、

  • 商品価格監視

  • ニューストピック収集

  • イベント情報まとめ

など、さらに実用的なスクレイピングツールにも挑戦できます!

Shop now