Seleniumでスクレイピングをする時によく使うChromOptionsをまとめました。
筆者はよくdockerのコンテナ環境でスクレイピングを行うため、それに関係したオプションが多くなっています。その他のオプションを知りたい方はこちらを参考にしてください。
オプションは下記のようにして使用します。
from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument("--headless")# ヘッドレスで起動するオプションを指定 driver = webdriver.Chrome(options=options) driver.get("https://hogehoge.com")
seleniumでスクレイピング環境を簡単に構築したい方は、下記のページを参考にしてください。
オプション
--headless | ヘッドレスモードで起動する(バックグラウンドで起動するようになる) dockerコンテナ環境などのCLIで起動する場合は必須 |
--no-sandbox | sandboxモードを解除する セキュリティを高めるためのsandboxだが、筆者のdocker環境では、 このオプションを指定しないとクラッシュしてしまう。 |
--disable-gpu | GPUハードウェアアクセラレーションを無効にする。 dockerコンテナ環境下では、指定したほうがクラッシュする確率が減った。 |
--window-size | --window-size=800,600 のようにして初期のウィンドウサイズを指定する。小さくしたほうがメモリの消費を抑えられる。 |
--start-maximized | 初期のウィンドウサイズを最大化する。 |
--disable-dev-shm-usage | /dev/shm パーティションの使用を禁止し、パーティションが小さすぎることによる、クラッシュを回避する。dockerなどのVM環境下では、設定したほうがクラッシュする確率が減る。 |
--use-fake-ui-for-media-stream | WebRTCなどを使用するときの「カメラ(マイク)の使用を許可しますか」ダイアログを回避する。--use-fake-device-for-media-stream のオプションを指定したときのみ機能する。 |
--use-fake-device-for-media-stream | メディアストリームに、偽のカメラ・マイクデバイスを用意して、実際のカメラやマイクと置き換える。 WebRTCの試験などの時に使用すると、カメラやマイクを用意しなくても映像・音声を流すことができる。 |
--use-file-for-fake-video-capture | --use-file-for-fake-video-capture=fake_video.y4m のようにして、偽のカメラ映像として使うビデオファイルを指定できる。使用できるファイル形式は”y4m”形式のみ。 --use-fake-device-for-media-stream を指定したときのみ有効。このオプションでファイルを指定しない場合は、デフォルトで用意されている試験用の映像が使用される。 また、空文字を指定した場合は、真っ黒な映像が流れる。 |
--use-file-for-fake-audio-capture | --use-file-for-fake-audio-capture=fake_audio.wav のようにして、偽のマイク音声として使用するオーディオファイルを指定できる。使用できるファイル形式は”wav”形式のみ。 --use-fake-device-for-media-stream を指定したときのみ有効。このオプションでファイルを指定しない場合は、デフォルトで用意されている試験用の音声が使用される。 また、空文字を指定した場合は、無音が流れる。 |
--disable-extensions | 拡張機能を無効にする。 |
--proxy-server | --proxy-server=http://proxy.com のようにプロキシサーバーを指定する。direct://を指定した場合、プロキシを経由せず直接接続する。 |
--proxy-auth | --proxy-auth=user:pass のようにして、プロキシサーバーの認証情報を指定する。 |
コメントを残す