エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Selenium WebDriverでFirefoxをプライベートウィンドウ/Chromeをシークレットモードで起動する方法・言語はpython

      2017/04/29

Seleniumでは初期状態でブラウザを起動する

 
Seleniumでブラウザを起動する際、デフォルトで新しいプロファイルを使用してブラウザを起動します。
そのため、わざわざ Firefoxのプライベートウィンドウモード、Google Chromeのシークレットモードを指定して起動することなく、プライベートウインドウモード(シークレットモード)でブラウザを起動していることと同様の状態でブラウザが立ち上がっています。
 
ですが、この記事では、強制的に Firefoxのプライベートウィンドウモード、Google Chromeのシークレットモードを指定したうえで起動したい、という方法を解説します。
 
ちなみに、言語は Pythonです。
 
 


 

Selenium WebDriverで Firefoxをプライベートウィンドウで起動する方法・言語はpython

 

Firefoxをプライベートウィンドウで起動するサンプルスクリプト

 
Firefoxのプライベートモードをオンにして実行したい場合は、下記の様にプロフィール設定で「browser.privatebrowsing.autostart」と「browser.privatebrowsing.dont_prompt_on_enter」を「True」にする設定を追加します。
 

 
 

サンプルスクリプトを実行した結果

 
前項の Pythonのサンプルスクリプトを実行しても、表示される Firefoxのウインドウがプライベートモードとして表示されるわけではありません。
ですが、「履歴」を一切保存しない設定に変わります。
 

 

 
 
上記の画面は、「オプション」-「プライバシー」の画面ですが、「履歴」の設定が変わります。
標準では、「履歴を記憶させる」となっていますが、「履歴を一切記憶させない」に変わります。
 
これで、事実上の「プライベートモード」と同じ状態になっている、ということです。
 
 

Selenium WebDriverで Chromeをシークレットモードで起動する方法・言語はpython

 

Selenium WebDriverで Chromeを起動する Pythonスクリプト

 
Chromeを起動させるだけの Pythonのスクリプトは下記になります。
 

 
 

Selenium WebDriverで Chromeをシークレットモードで起動する Pythonスクリプト

 
前項の標準的な Chromeの起動スクリプトに対して、5行目、6行目にオプションとしてシークレットモードで起動する設定をして、そのオプションをブラウザを起動する際の引数に指定することで、シークレットモードの Chromeが起動するようになります。
 

 
 

 
画像を出すまでもないですが、Chromeを起動すると上記の様にシークレットモードで起動します。
 
Firefoxの場合は「事実上」のプライベートモードとなりますが、Chromeの場合は、画面からシークレットモードに変わりますので、シークレットモードで起動している、という見た目の安心感はありますね。
 
 
 
参考サイト
http://stackoverflow.com/questions/27630190/python-selenium-incognito-private-mode
 
 

selenium+Pythonで処理の自動化に関する記事

Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ
PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。
Pythonをコマンドラインで実行。全角文字(日本語)を引数にする場合の対処方法
Selenium WebDriverでFirefoxをプライベートウィンドウ/Chromeをシークレットモードで起動する方法・言語はpython
Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ
Beautiful Soupを利用してPythonでスクレイピングを行う環境構築方法の解説
PythonでMySQLへの接続ライブラリMySQL-pythonの簡単インストール方法
PythonでURLの有無、存在をチェックするスクリプト

 - プログラミング・Web関連技術

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

コピーコンテンツ・直リンクの3つの対策Google通報などのまとめ

コピーコンテンツを発見したときにやること!Googleに通報、画像の直リンクを禁止、RSSの全文配信を停止。この対策をしないとあなたのサイトの評価も下がるかも!

X Serverへの引越しの注意点まとめ。ロリポップとの違いと対処方法 6事例

ロリポップからX Serverに引越し。ロリポップとX Serverの違いに注目することでX Serverの設定方法を明確にします。またX Serverならではの設定ポイントなども解説。

.htaccessのmod_expiresでブラウザキャッシュで高速化でSEO対策!

Page Speed Insightsの指摘事項のファイルのブラウザキャッシュの設定方法。解説もしてるけど、.htaccessにコピペするだけの簡単設置で効果抜群!SEOにも威力を発揮!

サイト更新、引越時に.htaccessでリダイレクトする方法解説

サイト更新,引越しなどでサイトのURLが変わった場合のリダイレクトを.htaccessのRewriteEngineを使って処理する方法の解説です。

Webサイト公開時に重複コンテンツを排除する.htaccessのリダイレクトの設定のまとめ

サイトを公開する際にはURLの正規化は必須です。正規化とは何かを解説し、.htaccessに設定すべきリダイレクトの設定を具体的に説明します。

CentOS環境に ntpdをインストールして自動的に時刻を取得する設定にする
CentOS環境に ntpdをインストールして自動的に時刻を取得して合わせる設定にする

VirtualBoxに構築した CentOSの環境の時計がずれているとき、ntpdをインストールし、時計を合わせる方法を解説。NTPサーバを指定する方法や ntpdを自動起動する設定も解説。

Gitで「fatal: Authentication failed for 'https://example.com/git_repositories/example.git/'」のエラーが出た場合の対処方法の一つ
Gitで「fatal: Authentication failed for ‘https://example.com/git_repositories/example.git/’」のエラーが出た場合の対処方法の一つ

Gitのリモートリポジトリにアクセスする際、Authentication failedのエラーが。しかし、ID、PASSが間違っているのではなく、リモートリポジトリのURLが間違っている場合もあるので再度確認を。

Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説

開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。

Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順
Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順

Gitはフォルダだけを管理対象にすることはできない。そのため空の.gitkeepファイルを作成し管理対象にすることで、それが入っているフォルダも管理対象にする、と言う手順で管理を行う。

コピーコンテンツ対策.htaccessで直リンク禁止しリダイレクトで対応

不正なコピーコンテンツからの直リンクを拒否する.htaccessの設定方法。拒否するサイトを指定、許可するサイトを指定する方法、単純な拒否と画像の差し替えを解説。