DeepCrawlでは、世界最大の企業のウェブサイトのいくつかで毎年何千もの技術的なSEOの問題をデバッグするのに役立ちました。
複雑な技術的なSEOの問題をすばやく複製してデバッグするために、ChromeでGooglebotシミュレータを作成しました。 私はそれをChromebot技術と呼んだ。
このガイドでは、複雑な技術的なSEOの問題をデバッグするために、Google Chromeで独自のGooglebotシミュレータを作成する方法を説明します。
Chromebot技術とは何ですか?
Chromebot技術は、人間がgooglebotクローラー(レンダリングではない)のように動作するようにchromeの設定を構成することを可能にする単純な非コードソリューションです。 これは、SEOの専門家がウェブサイト上のユニークなクロールとインデックスの問題を識別するのに役立ちます。
なぜこのテクニックを使うのですか?
私はDeepCrawlで、無数のクライアントのクロールとインデックス作成の問題をデバッグするときに、この手法をたくさん使用しました。
これは、技術的なSeoが検索エンジンのクローラーのように、より人間のように考えるのを助けるために、かなりシンプルだが効果的な非コード技術です。
多くのウェブサイトは、Googlebotユーザーがページを要求するときに面白いことを行うことができます。
Googlebotクローラーの設定をどのように知っていますか?
すべての設定は、エンジニアとのチャット、Googlebotに関するドキュメントの研究、DeepCrawlのページレンダリングサービスのドキュメントの更新に費やした時間に基づ
私は設定に基づいている元の文書をリストしました:
- 検索関連のJavaScriptの問題を修正
- Google検索でのレンダリングを理解する
- JavaScriptとSEO: クロールとインデックス作成の違い
この手法には何が必要ですか?
必要なのは、Google Chrome Canaryと仮想プライベートネットワーク(VPN)だけです。
なぜGoogle ChromeでGooglebotをシミュレートするのですか?
この手法を使用するには、4つの主要な利点があります。
Google Chromeでのデバッグ
私はDeepCrawlで何百ものウェブサイトをデバッグしました。 サードパーティ製のwebクロールツールは素晴らしいですが、私はいつも彼らが限界を持っていることを発見しました。
これらのツールの結果を解釈しようとするとき、私は常に複雑な問題を理解し、デバッグするのに役立つChromeに目を向けます。
Google Chromeはまだ問題をデバッグするための私のお気に入りの非SEOツールであり、設定するとGooglebotをシミュレートしてクロールツールが拾っているものを検証する
GooglebotはChromium
を使用しているGooglebotは、webからコンテンツを取得してダウンロードするために独自のカスタムビルドソリューションを使用していることを明ら その後、インデックスシステムに渡されます。
Googlebot crawlerがChromiumまたはChromeを使用していることを示唆する証拠はありませんが、IPullRankのJoshua Giardinoは、GoogleがChromiumを使用してブラウザベースのwebクローラーを作成することにつ
Google Chromeは、オープンソースのChromiumプロジェクトだけでなく、他の多くのブラウザにも基づいています。
Chromiumブラウザを使用してGooglebot webクロールをシミュレートして、ウェブサイトをよりよく理解することは理にかなっています。
ユニークなSEOの洞察
google Chromeを使用してgooglebotのようなwebページをすばやく解釈することは、クロールやインデックスの問題が数分である理由を正確に理
webクローラーの実行が完了するのを待つ時間を費やすのではなく、この手法を使用して潜在的なクロールとインデックス作成を迅速にデバッグできます。
その後、クロールデータを使用して問題の程度を確認します。
Googlebotは人間ではありません
ウェブはより複雑でダイナミックになってきています。
クロールとインデックスの問題をデバッグするときは、人間であり、Googlebotはマシンであることを覚えておくことが重要です。 現代の多くのサイトでは、これらの2つのユーザーを別々に扱います。
人間がウェブをナビゲートするのを助けるように設計されたGoogle Chromeは、人間がボットのようなサイトを見るのを助けることができます。
Googlebot simulatorの設定方法
そう、その理由は十分です。 私はあなた自身のGooglebotシミュレータを作成する方法を説明してみましょう。
Google Chromeのダウンロード
Chrome Canaryをダウンロードし、独自のGoogle Chromeブラウザを使用しないことをお勧めします(またはFirefoxに切り替えた場合はGoogle Chromeを使用します)。
これの主な理由は、ブラウザの設定を変更することになり、リセットを忘れたり、百万のタブを開いたりすると苦痛になる可能性があるためです。 自分自身にいくつかの時間を節約し、ちょうどあなたの専用のGooglebotシミュレータとしてカナリアを使用しています。
VPNをダウンロードまたは使用する
米国外にいる場合は、仮想プライベートネットワーク(VPN)にアクセスできることを確認して、IPアドレスを米国に切り替
これは、デフォルトではGOOGLEBOTが米国からクロールされ、クロール動作を真にシミュレートするには、米国からサイトにアクセスしているふりをする必要があ
Chromeの設定
これらをダウンロードして設定したら、Chromeの設定を構成する時間です。
各設定を構成する必要がある理由について説明しましたが、ページレンダリングサービスガイドを書き直したときにChromebotを使用するという元のアイデア
Web Dev Tools
Web Developer Tools UIは、Googlebotのようなウェブサイトを表示する上で重要な部分です。 コンソール内を確実に移動できるようにするには、Web開発ツールを別のウィンドウに移動する必要があります。
DevToolsウィンドウは開いたタブにリンクされていることを覚えておいてください。 Google Chromeでそのタブを閉じると、[設定と開発ツール]ウィンドウも閉じます。
これを行うのは非常に簡単です、あなたがする必要があるのは次のとおりです:
- webページ上で右クリックし、要素の検査(またはCTRL+SHIFT+I)をクリックします
- 右側に移動し、3つの垂直点をクリックし、左端のドックサイドオプションを選
Web Dev Toolコンソールが別のウィンドウに表示されます。
User-agentトークン
user-agent文字列またはテキスト行は、アプリケーションがサーバーまたはネットワークに対して自分自身を識別する方法です。 Googlebotをシミュレートするには、ブラウザのuser-agentを更新して、Googleのwebクローラーであることをウェブサイトに知らせる必要があります。
コマンドメニュー
コマンドメニュー(CTRL+Shift+P)を使用し、”ネットワーク条件を表示”と入力してDevToolsのネットワーク条件タブを開き、user-agentを更新します。
マニュアル
これを行うには、別のWeb Dev Toolsウィンドウに移動し、Escボタンを押します。 これにより、コンソールが開きます。
コンソールタブの左側にある三つの小さなボタンをクリックします。
オプションのリストで、ネットワーク条件をクリックします。 これにより、[コンソール]タブの横にある[ネットワーク条件]タブが開きます。
ネットワーク条件タブで下にスクロールし、’user-agent select automatically’オプションのチェックを外します。
Google Chromeでは、ブラウザのユーザーエージェント文字列をGooglebotまたはGooglebot Mobileに変更できるようになりました。
私は通常、デフォルトでmobile-indexingを使用してGooglebot Mobileに設定します。 Google Search Consoleで確認することをお勧めしますが、どのGooglebotが最も頻繁にwebサイトをクロールするかを確認します。
googlebot user-agentは、安定版ではなくdev beta Chromeバージョンを自動的に使用します。 これは通常、ウェブサイトの99%の問題ではありませんが、必要に応じて安定したChromeからカスタムUAを入力することができます。
これで、user-agentを変更し、コンソールを閉じます(もう一度ESCキーを押します)。
ステートレスなクロールを有効にする
Googlebotは、ページの読み込み全体でステートレスなwebページをクロールします。
Google Search developer documentationには、クロールされた新しいページはそれぞれ新しいブラウザを使用し、キャッシュ、cookie、または場所を使用してwebページを検出およびクロールしない
私たちのGooglebotシミュレータは、ロードされた新しいページごとにステートレスであることを(できる限り)複製する必要があります。 これを行うには、Chromeのキャッシュ、cookie、および場所を無効にする必要があります。
キャッシュを無効にする
コマンドメニュー
コマンドメニュー(CTRL+Shift+P)を使用し、”Disable Cache”と入力して、DevToolsが開いているときにキャッシュを無効にします。
Manual
キャッシュを無効にするには、DevToolsのネットワークパネルに移動し、”キャッシュを無効にする”にチェックを入れます。
クッキーを無効にする
コマンドメニュー
コマンドメニュー(CTRL+Shift+P)を使用し、DevToolsが開いているときにキャッシュを無効にするには、”キャッシュを無効にする”と入力します。
手動
Chromeでchrome://settings/cookiesに移動します。 クッキーの設定では、”サードパーティのクッキーをブロックする”オプションを選択します。
Chromeで
の場所を無効にするブラウザのchrome://settings/content/locationに移動します。 “アクセスする前に確認する(推奨)”を”ブロック”に切り替えます。
サービスワーカーを無効にする
Googlebotは、サービスワーカーの仕様に依存するインターフェイスを無効にします。 これは、データをキャッシュしてサーバーからUrlを取得する可能性のあるService Workerをバイパスすることを意味します。
これを行うには、DevToolsのアプリケーションパネルに移動し、サービスワーカーに移動し、”ネットワークをバイパス”オプションをオンにします。
無効にすると、ブラウザは常にネットワークからリソースを要求し、Service Workerを使用しないように強制されます。
JavaScriptを無効にする
googlebotクローラーはクロール時にJavaScriptを実行しません。
クロールとレンダリングサブシステムについては、JavaScript SEOの基本を理解するガイドおよびGooglebot&JavaScript:TechSEO Boost2019でのWRSの詳細を参照してください。
Googlebotは非常に複雑なシステムであり、上記の図でさえ単純化しすぎています。 ただし、Googlebotクローラーは、レンダリングに関係なく、最初にwebページをフェッチ、ダウンロード、および検査する必要があります。
Googlebotシミュレータでは、JavaScriptを使用せずにサーバー側のHTML、httpステータスコード、リソースを検査できることを確認することが重要です。
コマンドライン
コマンドメニュー(CTRL+Shift+P)を使用して、JavaScriptをすばやく無効にするには、”Javascriptを無効にする”と入力します。
Manual
ChromeでJavaScriptを無効にするには、DevToolsに移動し、設定cogをクリックします。
次に、「Javascriptを無効にする」ボックスにチェックを入れます。
これで、Googlebotシミュレータを使用するときは、最初のサーバー側のHTMLのみを検査します。 これは、クローラーの問題の原因となっているリンク、コンテンツ、またはHTTPステータスコードの問題があるかどうかをよりよく理解するのに役立ちます。
ネットワークパネル
最後に、ネットワークパネルを設定する時間です。 それはあなたがGooglebotとして多くの時間を費やすDevToolsのこの領域にあります。
ネットワークパネルは、リソースが取得されてダウンロードされていることを確認するために使用されます。 このパネルでは、ページを要求するときにダウンロードされた個々のURLのメタデータ、httpヘッダー、コンテンツなどを調べることができます。ただし、Googlebotのようなサーバーからダウンロードしたリソース(HTML、CSS、IMG)を検査する前に、ヘッダーを更新してパネルに最も重要な情報を表示する必要があります。
DevToolsのネットワークパネルに移動します(別のウィンドウになりました)。 パネル内のテーブルで、列ヘッダーを右クリックし、ネットワークパネルの列として追加するには、以下の見出しを選択します(リストされていない他のも
各見出しとそれらを追加する理由について簡単な説明も提供しました。
ステータス
サーバーからダウンロードされているURLのhttpsステータスコード。 Googlebotは、Urlを監査するときに理解するための最も重要な情報の一つであるhttpステータスコードのタイプに応じてクロールの動作を変更します。
スキーム
は、ダウンロードされているリソースの安全でないhttps://または安全なhttps://スキームを表示します。 Googlebotは、ページ上のリソースによって使用されているスキームを十分に理解することが重要であるため、HTTPS Urlをクロールしてインデックスを作成することを
ドメイン
リソースがダウンロードされたドメインを表示します。 重要なコンテンツが外部のCDN、API、またはサブドメインに依存しているかどうかを理解することは重要です。
リモートアドレス
Google Chromeは、リソースがダウンロードされているホストのIPアドレスを一覧表示します。 Webサイトのクロール予算はドメインではなくホストのIPアドレスに基づいているため、取得した各URLのIPアドレスも考慮に入れることが重要です。
Type
要求されたリソースのMIMEタイプ。 さまざまなタイプのGooglebotがさまざまなタイプのコンテンツ(HTML、CSS、IMG)に関心を持っているため、重要なUrlに正しいMIMEタイプがラベル付けされているこ
サイズ
サーバーによって配信される応答ヘッダーと応答本文の合計サイズ。 ウェブサイトのサイト速度を向上させることは、ユーザーとGooglebotの両方がサイトにすばやくアクセスできるようにするために重要です。
時間
要求の開始から応答の最後のバイトの受信までの合計期間。 サーバーの応答は、Googlebotのクロール速度の制限に影響を与える可能性があります。 サーバーが減速すれば網のクローラーはあなたのウェブサイトをより少し這う。
優先順位
最初にロードするリソースのブラウザの最良の推測。 これは、GooglebotがクロールするUrlに優先順位を付ける方法ではありませんが、ブラウザがどのリソースに優先順位を付けているかを確認すると便利です(独自のヒューリスティックを使用して)。
Last Modified
Last-ModifiedレスポンスHTTPヘッダーには、元のサーバーがリソースが最後に変更されたと判断した日付と時刻が含まれています。 この応答は、Googlebotが他の信号と組み合わせて使用して、サイトでのクロールの優先順位を設定するのに役立ちます。
米国のIPアドレス
Chrome DevToolsのネットワークパネルヘッダーを更新すると、Googlebotシミュレータはほぼ準備が整いました。
すぐに使用したい場合は、米国のIPアドレスに切り替える必要があります。
Googlebotはアメリカ合衆国からクロールします。 このため、Googlebot simulatorを使用するときは、常にIPアドレスを米国に変更することをお勧めします。
それはGooglebotが訪問したときにあなたのウェブサイトがどのように動作するかを理解するための最良の方法です。 たとえば、サイトが米国のIPアドレスで訪問者をブロックしている場合や、場所に基づいて訪問者を地理的にリダイレクトしている場合、Googleのクロー
私は、Googlebot Chrome
あなたのIPアドレスが切り替わったら、あなた自身のGooglebotシミュレータを持って行く準備ができています。
動作するかどうかをテストしたい場合は、次の場所に移動しますangular.io またはeventbrite.com….. これらのウェブサイトは、コンテンツやリンクをロードするためにJavaScriptを必要とする–JavaScriptが無効になっていると、これらのサイトは、インターフェイ
よくある質問
シミュレータは一つのタブで動作しますか?
はい。 Google DevToolの設定は、現在開いているタブのためのものです。 新しいタブを開くと、無効にするJavaScriptとユーザーエージェントの設定がリセットされます。
その他のChromeベースの設定(cookie、service worker)は引き続き設定されます。
これはJavaScript SEOの問題をデバッグするのに役立ちますか?
はいこの手法は、view-sourceとレンダリングされたHTMLを比較するときに、Webサイト上のJavaScript SEOの問題をデバッグするために使用できます。 大規模にこれを行うためのより良い拡張機能とツールがあるかもしれませんが。
毎回設定を更新する必要がありますか?
タブを閉じたら、次の設定を更新する必要があります:
- Javascriptを無効にする
- ユーザーエージェントトークンを更新する
その他の設定はすべてブラウザによって保存されます。
Chrome Canaryを使用する必要があるのはなぜですか?
私はあなたのChromeブラウザを台無しにし、設定の間を前後に行く時間を費やすことからあなたを停止するためにこれを使用することをお勧めします。FirefoxまたはSafariを使用している場合は、通常のGoogle Chromeをダウンロードしてください。
私はすでにヘッドレスクロームで、またはいくつかの他の自動化を介してこれを構築しましたか?
まず、よくやった! あなたが私のようで、(現在)新しいコーディング言語を学ぶ時間/能力を持っていない場合、この非コードメソッドは始めるのに最適です。