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」にする設定を追加します。
# 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のスクリプトは下記になります。
# 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が起動するようになります。
# 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の有無、存在をチェックするスクリプト
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
EストアのショップサーブのWordPressサービスにメリット無し
ショップサーブのオプションサービスのWordPressを使ってみましたがデータベースには直接触れず使えないサービスでした。
-
-
PythonでURLの有無、存在をチェックするスクリプト
PythonでURLが存在するか否かのチェックスクリプト。ライブラリ「urllib2」を使い、指定のURLにアクセスしそのレスポンスコードを判別するという仕組み。
-
-
X Serverへの引越しの注意点まとめ。ロリポップとの違いと対処方法 6事例
ロリポップからX Serverに引越し。ロリポップとX Serverの違いに注目することでX Serverの設定方法を明確にします。またX Serverならではの設定ポイントなども解説。
-
-
ブラウザのキャッシュを活用するの対策!広告バナーを消して表示を高速化
あなたのサイトが遅いのはバリューコマースのバナーではないですか?バリューコマースのバナーを外すだけでmod_deflateとmod_expiresを設定するより効果があります!
-
-
FTPでダウンロード時にファイルが重複するため上書きしますか?と表示される問題
FTPでファイルをダウンロードする際に「ファイルが重複しています。上書きしますか?」というメッセージが出る場合がありますが、これの原因と対策、解決策の記事です。
-
-
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。
-
-
So-netのレンタルサーバHSはヤバイ・借りてはいけないレンタルサーバリスト
餅は餅屋。サーバはサーバ屋が提供するサービスを利用するべきという記事で、単独でSo-netを紹介。OEMでサービスの提供を受けているだけなので何とも残念すぎる内容。
-
-
Git管理のソースを元に新しく構築する環境に反映させる手順
Gitで管理しているソースを使って環境を構築する方法を解説。CakePHPを使う想定で、環境を構築したのちpullして、重複ファイルを削除して、改めてpullすれば出来上がる。
-
-
直リンク禁止の.htaccessを超分かりやすく解説。日本語じゃなくてPHPで説明
直リンクを禁止する.htaccessの記述内容を日本語ではなくPHPで解説!私自身もこの方法ですっかり理解できました。.htaccessって簡単!って思えますよ。
-
-
日本語は2バイト文字?3バイト文字?
日本語は2バイトという理解でしたが、UTF-8では事情が違います。その説明です。


