便利ツール

Seleniumで本家ChromeのCookieを読込む方法

Selenium で Chrome を起動すると、コンテンツ側で自動制御されていることを検知できます。
そのため、reCaptcha などの「私はロボットではありません」系を突破することが困難です。

そこで、本記事では本家の Chrome から Cookie を読み込ませる方法をご紹介します。

SANACHAN
普段使っている手動で操作するChromeを「本家Chrome」と呼んでいます。

参考

Selenium で Cookie をファイルから読込・保存する方法は、こちらを参考にしてください。

 

全体の流れと注意事項

以下の流れで普段使用している Chrome の Cookie を
Selenium から起動する Chrome に読み込むことができます。

step
1
本家ChromeのCookieをエクスポート

step
2
エクスポートしたJSONを加工

step
3
加工したJSONをSeleniumで読込む

順番に詳しく説明していきます。

注意事項

この方法は、あくまで個人用途、何があっても自己責任でお願いします。

 

準備:本家ChromeのCookieをエクスポート

EditThisCookie

Chrome の拡張機能「EditThisCookie」を公式ページからインストールします。
インストールしたら、機能を有効化しましょう。

 

EditThisCookieのアイコン

次に、Cookie をエクスポートしたい Web ページへ移動し、
インストールした EditThisCooke アイコンを押下します。

SANACHAN
エクスポートする前に、ログインなど Cookie への書込みを済ませておきましょう。

 

EditThisCookieのコンテキストメニュー

アイコンをクリックすると、EditThisCookie のコンテキストメニューが表示されます。
赤枠で囲った右上の「エクスポート」ボタンを押下します。

現在見ているページのドメインに適用されている Cookie がクリップボードにエクスポートされます。
メモ帳などのテキストエディタに貼りつけ、JSON ファイルとして保存すれば準備完了です。

SANACHAN
ログイン情報などが入っているため、他人に送付したりしないようにしましょう。

 

編集:エクスポートしたJSONを加工

エクスポートした JSON ファイルをそのまま読込めれば便利なのですが、
Selenium Web Driver が解釈できないキーが含まれているため、それを削除します。

具体的には、「sameSite」のキーと値が不要となります。
各 Cookie のエントリーに入っていますので、それぞれ削除します。

 

 cookie.json
{
cookies: [
(省略)
]
}

さいごに、Python で扱いやすいように、クリップボードにコピーされた内容全てが値となるように
キーを設けます。先頭に「{ cookies:」を追加し、末尾に「}」を追加します。

SANACHAN
これで準備完了!

 

読込:加工したJSONをSeleniumで読込む

記事「SeleniumでCookieの読込と保存」で紹介したサンプルコードから、
load_cookie(driver, file_path) の関数を変更し、その引数として渡す file_path
JSON ファイルに書き換えるだけです。

 

こちらの記事もよく読まれています

  • この記事を書いた人
  • 最新記事
SANACHAN

SANACHAN

「生涯一エンジニア」を掲げ、大手グローバル企業でSE/PGとして8年勤め、キャリアアップ転職した現役のエンジニアです。世にあるメジャーな全プログラム言語(コボル除く)を自由に扱えます。一児の父。自分のため、家族のため、日々勉強してます。システムエンジニア、プログラミングに関する情報を蓄積している雑記帳です。

-便利ツール
-, , ,