「GASでログインが必要なサイトをスクレイピングしたい」——そう思って検索すると、Qiitaやブログにコードがずらりと並んでいます。しかし、いざ自分のサイトで試すと「ログインが通らない」「Cookieが取得できない」「トークンが見つからない」と挫折する人が後を絶ちません。
本記事では、まずログイン認証の仕組みを簡潔に整理し、GASでのログインスクレイピングの実装方法と限界を解説します。そのうえで、コードを一切書かずに同じことを実現するOctoparse(オクトパース・オクトパス)と徹底比較し、あなたにとって最も効率的な選択肢を明らかにします。
結論を先に言えば、「学習目的ならGAS、業務で安定運用したいならOctoparse」です。その理由を、これから具体的に説明します。
なぜログインが必要なサイトはスクレイピングが難しいのか(仕組み編)
通常のスクレイピングは、公開されているHTMLを取得するだけです。しかし、ログインが必要なサイトでは、サーバーが「この人はログイン済みのユーザーだ」と認識しないと、肝心のデータが返ってきません。
この「ログイン済みである」という状態を維持する仕組みがセッションとCookieです。ログインの流れを簡潔に整理すると、次のようになります。
- フォームにID/パスワードをPOST送信 → サーバーが認証
- サーバーが「Set-Cookie」ヘッダーでセッションIDを返す → これが「ログイン証明書」
- 以降のリクエストにそのCookieを付けて送信 → サーバーが「ログイン済み」と認識
つまり、ログインスクレイピングの本質は、「Set-Cookieで受け取ったセッションIDを、次のリクエストのヘッダーに正しく付け直す」という処理です。
シンプルに聞こえますが、ここに後述する数々の落とし穴が潜んでいます。スクレイピングの注意点についても、あわせて確認しておくとよいでしょう。
GASでログインスクレイピングを実装する方法(コード編)
GAS(Google Apps Script)では、UrlFetchAppを使ってログイン処理を実装します。基本的な流れは「認証POST → Cookie取得 → Cookie付きでGET」の3ステップです。
javascript
このコードは、フォームが「ID・パスワードだけ」のシンプルなサイトであれば動作します。しかし、現代のWebサイトの多くは、これだけでは突破できません。その理由を次のセクションで説明します。
GASでログインスクレイピングが「動かない」3大原因
GASでログインスクレイピングに挑戦した人がつまずく、典型的な3つの壁を解説します。
壁1:CSRFトークンの取得が必要
多くのサイトは、不正なPOSTを防ぐためにCSRFトークン(authenticity_token等)を発行しています。これはログインフォームを表示したときにHTML内に埋め込まれており、ログインPOST時に一緒に送信しないと認証が通りません。
つまり、GASでは「①まずログインページをGETしてトークンを正規表現で抽出 → ②そのトークンを付けてPOST」という二段構えが必要になり、コードが一気に複雑化します。
壁2:JavaScriptで動的生成されるログイン画面
UrlFetchAppは、サーバーが返す初期HTMLしか取得できません。ログインフォームがReactやVueなどのJavaScriptで動的に生成される場合、GASではフォームの存在すら認識できず、お手上げです。
壁3:2段階認証(2FA)・CAPTCHA
SMS認証やGoogle Authenticator、CAPTCHAが設定されているサイトは、GASでの自動ログインがほぼ不可能です。これらは「人間であること」を確認する仕組みのため、コードでの突破は技術的にも規約的にも困難です。
さらに、運良く認証を通過できても、セッションCookieには有効期限があり、切れるたびに手動でコードを再実行しなければなりません。GASのトリガーで定期実行を組んでも、Cookie期限切れのたびにエラーで止まる——これがGAS運用の最大のストレスです。
スクレイピングのブロック回避方法でも、こうした認証まわりの課題を解説しています。
GAS vs Octoparse:ログインスクレイピング徹底比較
ここまで見てきたGASの課題を、Octoparse(オクトパース・オクトパス)はどう解決するのか。両者を項目別に比較します。

ポイント: GASが「無料」である代わりに支払うのは、学習時間とメンテナンスの手間です。Octoparseはノーコードで、ブラウザの操作をそのまま記録するため、GASがつまずく動的サイト・CSRF・セッション管理を自動で処理します。
Octoparseがログイン認証に強い理由
Octoparse(オクトパース・オクトパス)がログインスクレイピングに強いのは、実際のブラウザ操作をそのまま再現する仕組みだからです。
GASのUrlFetchAppは「HTTPリクエストを直接送る」方式のため、ブラウザが裏で行っているCookie管理やJavaScript実行を自分でコード化する必要があります。一方、Octoparseは内蔵ブラウザで「人間がログインボタンをクリックする操作」をそのまま録画・再現します。
Octoparseのログイン対応の2つの方法
方法1:ワークフローにログイン手順を組み込む ログインページでID/パスワードの入力欄をクリックし、文字を入力し、ログインボタンを押す——この一連の操作をOctoparseのワークフローにGUIで設定します。コードは一切書きません。
方法2:Cookieを保存してログイン状態を維持 一度手動でログインし、その状態のCookieをOctoparseに保存。以降はログイン済み状態でデータ取得を開始できます。2段階認証があるサイトでも、この方法なら対応可能です。
具体的な操作手順は、Octoparseの使い方【2026年版】や公式ヘルプセンターで図解付きで解説されています。
2026年の未来性:AIエージェント時代にどちらが残るか
ここまでは「現時点」の比較でした。しかし、ツール選びで本当に重要なのは未来性です。
GASでのログインスクレイピングは、サイトのHTML構造やログインAPIが変わるたびに、コードを書き直す必要があります。サイト側がアンチスクレイピング対策を強化すれば、その都度いたちごっこです。個人が片手間でメンテナンスし続けるのは、年々厳しくなっています。
一方、Octoparse(オクトパース・オクトパス)は2026年、MCP AI機能によって新たな次元に進化しています。
MCP AI機能を使えば、ChatGPTやClaudeなどのAIエージェントがOctoparseのスクレイピング能力を直接呼び出し、ログイン認証を含むデータ収集を自律的に実行できます。たとえば、AIエージェントに次のような指示を出すだけです。
「会員制の不動産サイトにログインして、新着物件の価格と間取りを毎朝収集し、前日比で値下げした物件だけをスプレッドシートにまとめて」
従来なら、認証処理の実装→データ取得→整形→前日比の計算→フィルタリング→出力のすべてを人間が手作業(GASならコード)で行う必要がありました。MCP AI機能を使えば、人間は目標設定だけを行い、AIが自律的に全工程を実行します。
GASがコードベースで「人間がすべて記述する」世界に留まるのに対し、Octoparseは「人間は目標を伝えるだけ、AIが実行する」世界へ進んでいます。この差は、2026年以降さらに広がっていくでしょう。
参考:Octoparse MCP AI|AIとWebスクレイピングの最新動向
よくある質問(FAQ)
Q1. GASでログインスクレイピングは無料でできますか?
はい、GAS自体は無料です。ただし、CSRFトークンの取得、Cookie管理、セッション切れ対応などをすべて自分でコード実装する必要があり、「無料」の代償として学習時間とメンテナンスの手間がかかります。
Q2. GASで2段階認証のあるサイトにログインできますか?
技術的にほぼ不可能です。2段階認証は「人間であること」を確認する仕組みのため、コードでの自動突破は困難です。Octoparse(オクトパース・オクトパス)なら、手動ログイン後のCookie保存方式で対応できる場合があります。
Q3. GASとOctoparse、結局どちらを使うべきですか?
プログラミングの学習が目的、または非常にシンプルなログインサイトならGAS。業務で安定的に運用したい、動的サイトや認証が複雑、メンテナンスの手間を減らしたいならOctoparse(オクトパース・オクトパス)がおすすめです。
Q4. ログインスクレイピングは違法ですか?
技術自体は違法ではありませんが、対象サイトの利用規約とrobots.txtの遵守が前提です。会員制サイトの場合、規約でデータの自動取得を禁止しているケースも多いため、必ず事前に確認してください。
Q5. GASのCookieが頻繁に切れるのを防ぐ方法は?
Cookieの有効期限はサイト側が決めるため、根本的に防ぐことはできません。GASでは切れるたびに再ログイン処理が必要です。Octoparse(オクトパース・オクトパス)なら、再ログイン手順をワークフローに記録しておくことで、セッション切れにも自動対応できます。
まとめ:あなたが選ぶべきはどちらか
正直に言うと、筆者も最初はGASでログインスクレイピングに挑戦しました。「無料だし、コードもネットに転がっているし」と軽い気持ちで始めたのです。
しかし現実は甘くありませんでした。最初のサイトはCSRFトークンの取得でつまずき、次のサイトはログインフォームがJavaScript生成でUrlFetchAppでは取れず、ようやく動いたサイトも一週間後にはCookieが切れてトリガーがエラーで止まっていました。動くコードを完成させるまでに、土日を2回潰しました。
その後、同じことをOctoparse(オクトパース・オクトパス)で試したところ、ログインボタンをクリックして、IDとパスワードを入力する操作を記録するだけ——所要時間は15分。コードは一行も書いていません。
結論を整理すると、こうなります。
GASが向いている人: プログラミングを学びたい、ログインがID/パスワードだけのシンプルなサイト、コードを書くこと自体が楽しい人。
Octoparse(オクトパース・オクトパス)が向いている人: 業務で安定運用したい、動的サイトや複雑な認証を相手にする、メンテナンスに時間をかけたくない、そして何より「データ収集が目的であって、コードを書くことが目的ではない」人。
GASのコードと格闘した経験は、決して無駄ではありませんでした。ログイン認証の仕組みを深く理解できたからです。でも、もし「とにかくデータが欲しいだけ」なら、最初からOctoparseを使えばよかった——これが、土日を2回潰した筆者の正直な感想です。
まずはOctoparse(オクトパース・オクトパス)の無料版で、あなたが今コードと格闘しているそのサイトを試してみてください。
コード不要でログインサイトをスクレイピングするなら → Octoparse(オクトパース・オクトパス)無料ダウンロード




