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
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
EストアのショップサーブのWordPressサービスにメリット無し
ショップサーブのオプションサービスのWordPressを使ってみましたがデータベースには直接触れず使えないサービスでした。
-
-
日本語は2バイト文字?3バイト文字?
日本語は2バイトという理解でしたが、UTF-8では事情が違います。その説明です。
-
-
Beautiful Soupを利用してPythonでスクレイピングを行う環境構築方法の解説
BeautifulSoupはPythonでスクレイピングを行う際に便利なツール。インストール方法も簡単。ただ、事前にpipのインストールが必要でその解説もしてます。
-
-
サイト更新、引越時に.htaccessでリダイレクトする方法解説
サイト更新,引越しなどでサイトのURLが変わった場合のリダイレクトを.htaccessのRewriteEngineを使って処理する方法の解説です。
-
-
Selenium WebDriver、Pythonをインストールしブラウザ自動操作の環境構築手順のまとめ
ブラウザを自動操作しテストを実行するロボットをselenium WebDriver+Pythonの環境を構築し、動作確認までの手順のまとめ。初心者向けに詳細解説。サンプルソースも。
-
-
ブラウザのキャッシュを活用するの対策!広告バナーを消して表示を高速化
あなたのサイトが遅いのはバリューコマースのバナーではないですか?バリューコマースのバナーを外すだけでmod_deflateとmod_expiresを設定するより効果があります!
-
-
mod_pagespeedでWebサイトを超簡単高速化・Google謹製の最終兵器
Webサイトの表示スピード高速化の最終兵器、Google謹製mod_pagespeedの解説です。レンタルサーバではX-Serverでしか利用できませんが、ワンクリックで高速化します。
-
-
SyntaxHighlighterを導入してソースコードを見やすくしてみました
PHP、HTMLなどのソースコードをブログで紹介するとき、SyntaxHighlighterを利用することで見やすく提供することが出来ます。
-
-
PythonでUTF-8など日本語(全角文字)を使う方法。コメントにも必要。
Pythonの標準では日本語(全角文字)を利用できないので、利用する際は文字コードを宣言する必要がある。「# coding: utf-8」の様に記述すればOK。
-
-
XSERVERにCakePHP3をインストール。コマンドラインのPHPのバージョンを変更する方法で解決
XSERVERにCakePHP3をインストールするときに問題となるのはサーバーパネルとSSH接続の時とで認識されるPHPのバージョンの違いがあるため。その解消方法を解説する。


