ロボットに関する復習 : robots.txt - マシンがウェブサイトを探索する方法を柔軟に制御する方法

2025 年 3 月 7 日(金曜日)

ウェブサイトの所有者向けツールである robots.txt は、30 年以上の長きにわたって利用されており、クローラー運営者(サイト所有者向け、サービス向け、検索エンジン向けなどのツール)によって幅広くサポートされています。今回のロボットに関する復習シリーズでは、ウェブサイト上でロボットに実行してほしいこと(またはしてほしくないこと)を柔軟に指示する方法として、robots.txt を詳しく見ていきます。

robots.txt の使い方

使い方はいたってシンプルで、「robots.txt」というテキスト ファイルを作成し、それをウェブサイトにアップロードするのみです。コンテンツ マネジメント システム(CMS)を利用している場合は、さらに簡単になります。サイト全体がクロールされる可能性がある場合は、robots.txt ファイルを空欄のままにしておく(またはファイルを作成しない)ことができます。また、クロール管理のルールを追加することも可能です。たとえば、すべての bot(「クローラー」、「ロボット」、「スパイダー」と呼ばれることもあります)が「カートに追加」ページにアクセスすることを禁止するには、robots.txt ファイルに次の記述を追加します。

user-agent: *
disallow: /cart

robots.txt でできること(具体例)

robots.txt は、ウェブサイト上のさまざまなロボットに実行させたいこと、または実行させたくないことを指示する際に必要な要素をすべて備えた、万能なスイスアーミー ナイフのようなものです。数行の記述で済む場合もあれば、非常に特殊な URL パターンを対象とした複雑なルールを記述する場合もあります。robots.txt ファイルは、技術的な問題(不要にページネーションされたページなど)の解決や、編集上または個人的な理由(特定のものをクロールされたくない場合など)がある場合に使用できます。たとえば、次のような操作を行うことができます。

複数の bot(すべてではない)に同じルールを通知する

このグループは、examplebototherbot の両者に /search パスを避けるように指示します。

user-agent: examplebot
user-agent: otherbot
disallow: /search

特定のテキストを含むパスを避けるよう bot に指示する

たとえば、ファイル名に「.pdf」が含まれるファイルをクロールしないように documentsbot に指示できます。

user-agent: documentsbot
disallow: *.pdf

ブログはクロールしてもいいが、下書きはクロールしないよう bot に指示する

user-agent: documentsbot
allow: /blog/
disallow: /blog/drafts/

ウェブサイトの一部のクローラーをブロックし、他のクローラーにはサイトへのアクセスを許可する

この robots.txt ファイルは、前述の aicorp-trainer-bot がホームページ以外のページにアクセスすることを禁止しますが、他のクローラー(検索エンジンなど)がサイトにアクセスすることは許可します。

user-agent: *
allow: /

user-agent: aicorp-trainer-bot
disallow: /
allow: /$

備忘コメントを記載する

行頭に # をつけることで、特定のルールを設定した理由を記載できます。

# I don't want bots in my highschool photos
user-agent: *
disallow: /photos/highschool/

さらに詳しい情報については、便利な robots.txt ルールの一覧をご覧ください。

robots.txt ファイルに変更を加える(実用的な方法)

Robots Exclusion Protocol(REP)は、ルール(「allow」または「disallow」)をまとめ、これらのルールがどのロボットに適用されるかを指定することによって機能します。プログラミングを学んだり、ツールをいじったりする必要はありません。これらのルールをテキスト ファイルに記述し、ウェブサイトにアップロードするのみです。

また、ほとんどのウェブサイトでは、さらに簡単に行うことができます。CMS を使用している場合、通常は robots.txt ファイルの変更に役立つ機能がすでに組み込まれています。たとえば、チェックボックスや簡単なフォームを使用して robots.txt ファイルをカスタマイズできる CMS もありますし、robots.txt ファイルの設定やルール作成を支援するプラグインを備えた CMS も多くあります。CMS でできることを確認するには、CMS の名称 + 「robots.txt ファイルの編集」を検索してください。

設定が完了したら、ファイルが意図したとおりに設定されているかを確認するテストを行うこともできます。このテストには、ウェブ コミュニティによって開発された多くのテストツール(TametheBot の robots.txt テストツールや、オープンソースの robots.txt パーサー ライブラリを使用している robots.txt パーサーなど)を利用できます。

robots.txt についてご不明な点がございましたら、LinkedInでお問い合わせいただくか、またはコミュニティ フォーラムにて志を同じくする robot.xtx の専門家にチャットでご相談ください。


他のロボットに関する復習シリーズをご覧ください。