Python

Selenium経由でGoogleログオンしようとするとエラー

Python

最近、以前に作成していたツールを使っていただいている方から問い合わせがあって調べたのでメモしておきます。

ちなみに、Seleniumでの自動操作についてはあくまで自己責任でお願いします。

エラーの現象

Selenium経由でGoogleへログオンしようとすると、「このブラウザまたはアプリは安全でない可能性があります。」というエラーが出てログオンできない状態でした。

Selenium実践入門 ――自動化による継続的なブラウザテスト WEB+DB PRESS plus

Selenium実践入門 ――自動化による継続的なブラウザテスト WEB+DB PRESS plus

伊藤 望, 戸田 広, 沖田 邦夫, 宮田 淳平, 長谷川 淳, 清水 直樹, Vishal Banthia
3,449円(09/22 10:39時点)
発売日: 2018/11/14
Amazonの情報を掲載しています

エラーの原因

ちょっと調べたところ、以下の記事が概要しそうです。

「人の手ではなくソフトウェアで自動的に操作されている」というのはまさしくSeleniumの事を指すので、これが検知されていると思われます。

以前はできていたはずですが、Google側の仕様変更によって変わってしまったようです。

サポートされているブラウザでログインする - パソコン - Google アカウント ヘルプ

どうも、ChromeだけでなくFirefoxでもSeleniumを使っていると弾かれるみたいです。

対応

今回はとあるサイトにログオンする際の認証としてGoogleを使っていました。

Selenium経由ではなく手動でChromeを立ち上げて認証を行った場合には、上記のエラーはでずにGoogle認証もクリアできました。

そこで、ログオンに成功したChromeのプロファイルをSeleniumで指定しているプロファイルに上書きします。

ちなみにselenium側では以下の様にプロファイル名を指定しています。

options.add_argument('--user-data-dir=UserProfile')

まずはログオン成功したChromeのプロファイルがどこにあるか確認します。

Chromeに「chrome://version」と入力するとProfile Pathが確認できます。

そうしたらフォルダへ移動してデータをコピーしますが、ここで注意です。DefaultではなくUser Dataのフォルダへ移動してその階層にあるデータをコピーしてください。

データのコピーが終わったらSelenium経由で操作を試してみてください。ログオンが成功した状態で操作できるようになっているはずです。

Pythonのオススメ勉強方法

私がオススメするPythonの効果的な学習方法は「Udemy(ユーデミー)」によるビデオ学習です。

「Udemy」は、オンライン学習の提供サイトです。学びたい人は多くある講座の中から受講したいコースを選択することができ、動画で学べるのが特徴です。

多くあるPythonのコースの中でもオススメするPythonのコースは以下となります!!

現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

このコースでは合計で28.5時間のビデオ講座があって、それらを受講するだけで、Pythonの基礎から応用まで学ぶことができます。

私も購入して受講していますが、内容としては初心者の方から上級者まで対応する幅広い内容になっています。

下手な書籍を何冊か購入するより、この動画コースを最初からじっくりと受けることで総合的なスキルを習得することができるできます。おそらくこれ以上の教材はないと思いますので、絶対おすすめです。

ちなみに、Udemyでは頻繁にセール(1か月に2,3回程度)が開催されているので、セールのタイミングで購入すれば90%OFFになる講座もあるため、セールが開催されてからの購入をオススメします!

今回は以上となります。

コメント

タイトルとURLをコピーしました