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」にする設定を追加します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# coding: utf-8 # ブラウザのプロフィール作成 from selenium.webdriver import FirefoxProfile default_profile = { 'browser.privatebrowsing.autostart': True, 'browser.privatebrowsing.dont_prompt_on_enter' : True, } profile = FirefoxProfile() for name, value in default_profile.items(): profile.set_preference(name, value) # プロキシの設定を作成 from selenium.webdriver import Proxy proxy = Proxy() proxy.ftp_proxy = proxy.ssl_proxy = proxy.http_proxy = None # Firefoxを起動 from selenium.webdriver import Firefox browser = Firefox(firefox_profile=profile, proxy=proxy) # URLを指定してそのページに遷移 url = 'http://blog.s-giken.net/' browser.get(url) |
サンプルスクリプトを実行した結果
前項の Pythonのサンプルスクリプトを実行しても、表示される Firefoxのウインドウがプライベートモードとして表示されるわけではありません。
ですが、「履歴」を一切保存しない設定に変わります。
上記の画面は、「オプション」-「プライバシー」の画面ですが、「履歴」の設定が変わります。
標準では、「履歴を記憶させる」となっていますが、「履歴を一切記憶させない」に変わります。
これで、事実上の「プライベートモード」と同じ状態になっている、ということです。
Selenium WebDriverで Chromeをシークレットモードで起動する方法・言語はpython
Selenium WebDriverで Chromeを起動する Pythonスクリプト
Chromeを起動させるだけの Pythonのスクリプトは下記になります。
1 2 3 4 5 6 |
# coding: utf-8 from selenium import webdriver browser = webdriver.Chrome() browser.get('http://blog.s-giken.net/') |
Selenium WebDriverで Chromeをシークレットモードで起動する Pythonスクリプト
前項の標準的な Chromeの起動スクリプトに対して、5行目、6行目にオプションとしてシークレットモードで起動する設定をして、そのオプションをブラウザを起動する際の引数に指定することで、シークレットモードの Chromeが起動するようになります。
1 2 3 4 5 6 7 8 9 |
# coding: utf-8 from selenium import webdriver chrome_options = webdriver.ChromeOptions() chrome_options.add_argument("--incognito") browser = webdriver.Chrome(chrome_options=chrome_options) browser.get('http://blog.s-giken.net/') |
画像を出すまでもないですが、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の有無、存在をチェックするスクリプト
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
借りてはいけないレンタルサーバ実例4社・アルファメール・WEBアリーナ
餅は餅屋。サーバはサーバ屋が提供するサービスを利用するべきという記事で、具体例 4サービスを例にこんなサーバはNGと紹介しています。
-
-
mod_pagespeedカスタマイズで高速化を詳細解説・Google謹製
mod_pagespeedをデフォルトのまま使っていませんか?mod_pagespeedはデフォルトのままでも速い!でも仕組みを理解し設定し直せばより速くなる!
-
-
.gitignoreを更新しても反映されないときは「git rm -r –cached .」でキャッシュを削除
gitの.gitignoreを変更しても記述内容が反映されない時がある。それはGitのキャッシュが残っているため。そんなときは「git rm」コマンドを使ってキャッシュを削除すれば解決する。
-
-
Apacheの起動しているかの確認方法と起動、再起動、終了のコマンド
Apacheが起動しているかを確認する方法の解説に加え、Apacheの起動、停止、再起動のコマンドを解説。再起動のコマンドには restart、condrestart、reload、gracefulがあり、違いを解説。
-
-
エックスサーバーで独自SSLは永久無料で取り放題。利用方法と理由を解説!
エックスサーバーでは独自SSLが無料でいくつでも設置できるように!しかも、国、都道府県などの数項目の入力と数クリックだけという超簡単!SSL化しない理由がない!
-
-
Selenium WebDriver、Pythonをインストールし Chromeの自動操作の環境構築手順のまとめ
Selenium WebDriverを使ってChromeを自動操作する環境を構築する手順のまとめ。使用するPythonのインストールから、サンプルスクリプトの動作確認までを詳細解説。
-
-
mod_pagespeedでWebサイトを超簡単高速化・Google謹製の最終兵器
Webサイトの表示スピード高速化の最終兵器、Google謹製mod_pagespeedの解説です。レンタルサーバではX-Serverでしか利用できませんが、ワンクリックで高速化します。
-
-
chromedriver.exe – ディスクがありませんと出てSeleniumの設定が上手くいかない
Selenium WebDriverを使ってChromeを自動操作する仕組みを作る際、chromedriver.exeを利用しますが、ディスクがありません、というエラーが発生する場合があります。その対処方法を解説します。
-
-
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。
-
-
日本語は2バイト文字?3バイト文字?
日本語は2バイトという理解でしたが、UTF-8では事情が違います。その説明です。