ChromeDriver でよく使うオプションのチートシート

# はじめに
毎回、気になったときに調べているような気がするのでまとめる。
ついでにnavigator.webdriverの対策もできる。
メモのつもりで書いているので深くは考えていない

* 2024.11.05　selenium 4.26.0 へオプションの内容を一新
* 2024.11.05　selenium 4.15.2 のオプションを折りたたみ表示へ
* 2023.11.20　ファイルのダウンロードに関するオプションを追加、細かな修正
* 2023.11.15　ヘッドレスモードで起動したとき、コンソールにエラーログが出ないように修正
* 2023.11.14　selenium 4 にオプションの内容を一新
* 2023.11.14　selenium 3 のオプションを折りたたみ表示へ
* 2022.06.03　コピペできるコードブロックに追記、並び替え
* 2022.04.28　投稿

## selenium 4
### 環境
| アイテム | バージョン |
|:-|:-|
| OS| Windows 11 64bit |
| Python | 3.10.10 64bit |
| selenium | 4.26.0 |
| Google Chrome | 130.0.6723.70 |



### 変更点
#### `from fake_useragent import UserAgent`
`anti_useragent`(https://pypi.org/project/anti-useragent/) の更新が止まったため、
`fake-useragent`(https://pypi.org/project/fake-useragent/) へ移行。
<br>

#### `service.creation_flags = 0x08000000`
呼び出した`import Service`で`subprocess.Popen`が使用されており、
`subprocess.Popen`は Windowsの CreateProcess() 関数が使われているようで
10進数なら`134217728`、16進数なら`0x08000000`の値で`CREATE_NO_WINDOW`を渡す、ということみたい。
参考URL：https://learn.microsoft.com/ja-jp/windows/win32/procthread/process-creation-flags

なお、selenium のバージョンが ~4.5.0 までは`service.creationflags`と、記述が変わる上に上記の内容が対応しているか不明。
<br>

#### シークレットモードでファイルをダウンロードする方法
...は、オプションで設定不可能なので別記事で紹介

https://qiita.com/kawagoe6884/items/a42139f2ac9d6f4fa49e

<br>



### 起動オプション
| 引数 | 簡単な説明 |
|:-|:-|
| service.creation_flags = 0x08000000 | ヘッドレスモードで`DevTools listening on ws:~~`を非表示にする。 |
| --blink-settings=imagesEnabled=false | 画像を非表示にする。 |
| --disable-background-networking | 拡張機能の更新、セーフブラウジングサービス、アップグレード検出、翻訳、UMAを含む様々なバックグラウンドネットワークサービスを無効にする。 |
| --disable-blink-features=AutomationControlled | navigator.webdriver=false となる設定。確認⇒`driver.execute_script("return navigator.webdriver")` |
| --disable-default-apps | デフォルトアプリのインストールを無効にする。 |
| --disable-dev-shm-usage | ディスクのメモリスペースを使う。DockerやGcloudのメモリ対策でよく使われる。 |
| --disable-extensions | 拡張機能をすべて無効にする。 |
| --disable-features=Translate | Chromeの翻訳を無効にする。右クリック・アドレスバーから翻訳の項目が消える。 |
| --disable-popup-blocking | ポップアップブロックを無効にする。 |
| --headless=new | ヘッドレスモードで起動する。 |
| --hide-scrollbars | スクロールバーを隠す。 |
| --ignore-certificate-errors | SSL認証(この接続ではプライバシーが保護されません)を無効 |
| --incognito | シークレットモードで起動する。 |
| --mute-audio | すべてのオーディオをミュートする。 |
| --no-default-browser-check | アドレスバー下に表示される「既定のブラウザとして設定」を無効にする。 |
| --propagate-iph-for-testing | Chromeに表示される青いヒント(？)を非表示にする。 |
| --start-maximized | ウィンドウの初期サイズを最大化。`--window-position`, `--window-size`の2つとは併用不可 |
| --user-agent=Mozilla/5.0~~~~~... | ユーザーエージェントの指定。 |
| --window-position=100,100 | ウィンドウの初期位置を指定する。`--start-maximized`とは併用不可 |
| --window-size=1600,1000 | ウィンドウの初期サイズを設定する。`--start-maximized`とは併用不可 |



### 実験的なオプション
| 引数 | 引数 | 簡単な説明 |
|:-|:-|:-|
| excludeSwitches | ["enable-automation"] | Chromeは自動テスト ソフトウェア~~ を非表示 |
| credentials_enable_service | False | パスワード保存のポップアップを無効 |
| savefile.default_directory | download_dir | ダイアログ(名前を付けて保存)の初期ディレクトリを指定 |
| download.default_directory | download_dir | ダウンロード先を指定 |
| download_bubble.partial_view_enabled | False | ダウンロードが完了したときの通知(吹き出し/下部表示)を無効にする。 |
| plugins.always_open_pdf_externally | True | Chromeの内部PDFビューアを使わない(＝URLにアクセスすると直接ダウンロードされる) |


:::note info
ちょっとした小技
起動オプションにある **--incognito** を使うと、パスワード保存のポップアップを無効にする設定は省略可能です。
:::

:::note warn
注意①
引数 **download_dir** は変数名なので、自分が分かりやすい変数名に変えてください。
:::



### 使わなくなったオプション
| 引数 | 簡単な説明 |
|:-|:-|
| options.add_experimental_option("excludeSwitches", ["enable-logging"]) | `service.creation_flags`があるので削除 |
| options.add_argument("--test-type=gpu") | `enable-automation`があるので削除 |
| options.add_argument("--disable-features=DownloadBubble") | このオプションは削除されました。 |
| options.add_argument("--disable-features=DownloadBubbleV2") | このオプションは削除されました。 |



### コピペできるコードブロック
```python:chrome_option.py
from pathlib import Path

from fake_useragent import UserAgent
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service

# ------ download_dir の変数 ------
# パスにOneDriveが含まれているときの対策
f_lst = list(Path.home().glob("*/Downloads"))
if len(f_lst) == 0:
    f_lst = list(Path.home().glob("Downloads"))
download_dir = str(f_lst[0])

# ------ ChromeDriver のオプション ------
service = Service()
service.creation_flags = 0x08000000                                         # ヘッドレスモードで DevTools listening on ws:~~ を表示させない
options = Options()
# options.add_argument("--blink-settings=imagesEnabled=false")                # 画像を非表示にする。
options.add_argument("--disable-background-networking")                     # 拡張機能の更新、セーフブラウジングサービス、アップグレード検出、翻訳、UMAを含む様々なバックグラウンドネットワークサービスを無効にする。
options.add_argument("--disable-blink-features=AutomationControlled")       # navigator.webdriver=false となる設定。確認⇒　driver.execute_script("return navigator.webdriver")
options.add_argument("--disable-default-apps")                              # デフォルトアプリのインストールを無効にする。
options.add_argument("--disable-dev-shm-usage")                             # ディスクのメモリスペースを使う。DockerやGcloudのメモリ対策でよく使われる。
options.add_argument("--disable-extensions")                                # 拡張機能をすべて無効にする。
options.add_argument("--disable-features=Translate")                        # Chromeの翻訳を無効にする。右クリック・アドレスバーから翻訳の項目が消える。
# options.add_argument("--disable-popup-blocking")                            # ポップアップブロックを無効にする。
# options.add_argument("--guest")                                             # ゲストモードで起動する。--incognitoとは併用不可
# options.add_argument("--headless=new")                                      # ヘッドレスモードで起動する。
options.add_argument("--hide-scrollbars")                                   # スクロールバーを隠す。
options.add_argument("--ignore-certificate-errors")                         # SSL認証(この接続ではプライバシーが保護されません)を無効
# options.add_argument("--incognito")                                         # シークレットモードで起動する。--guestとは併用不可
options.add_argument("--mute-audio")                                        # すべてのオーディオをミュートする。
options.add_argument("--no-default-browser-check")                          # アドレスバー下に表示される「既定のブラウザとして設定」を無効にする。
options.add_argument("--propagate-iph-for-testing")                         # Chromeに表示される青いヒント(？)を非表示にする。
# options.add_argument("--start-maximized")                                   # ウィンドウの初期サイズを最大化。--window-position, --window-sizeの2つとは併用不可
options.add_argument("--user-agent=" + UserAgent(os="windows").chrome)      # ユーザーエージェントの指定。
options.add_argument("--window-position=100,100")                           # ウィンドウの初期位置を指定する。--start-maximizedとは併用不可
options.add_argument("--window-size=1600,1000")                             # ウィンドウの初期サイズを設定する。--start-maximizedとは併用不可
options.add_experimental_option("excludeSwitches", ["enable-automation"])   # Chromeは自動テスト ソフトウェア~~　を非表示
# options.set_capability("browserVersion", "123")                             # ブラウザのバージョンを指定する。
prefs = {
    "credentials_enable_service": False,                                    # パスワード保存のポップアップを無効
    "savefile.default_directory": download_dir,                             # ダイアログ(名前を付けて保存)の初期ディレクトリを指定
    "download.default_directory": download_dir,                             # ダウンロード先を指定
    "download_bubble.partial_view_enabled": False,                          # ダウンロードが完了したときの通知(吹き出し/下部表示)を無効にする。
    "plugins.always_open_pdf_externally": True,                             # Chromeの内部PDFビューアを使わない(＝URLにアクセスすると直接ダウンロードされる)
}
options.add_experimental_option("prefs", prefs)

# ------ ChromeDriver の起動 ------
driver = webdriver.Chrome(service=service, options=options)
driver.get("https://www.hogehoge.jp")
```

:::note info
変数 **download_dir** について
デスクトップパスが取得できないことがあったので`pathlib`で対策をしました。
ダウンロードフォルダを指定しているので、適宜変えてください。
:::


:::note warn
`pip install fake-useragent` のインストールが必要です。

"--user-agent" を使わない場合は以下の内容を削除してください。
`from fake_useragent import UserAgent`
`options.add_argument("--user-agent=" + UserAgent("windows").chrome)`

fake-useragent　詳細は以下のURLから
https://pypi.org/project/fake-useragent/
:::


<details><summary>selenium 4.15.2 (記事更新前)は折りたたみました</summary><div>


## selenium 4(記事更新前)
### 環境
| アイテム | バージョン |
|:-|:-|
| OS| Windows 10 64bit |
| Python | 3.8.7 64bit |
| selenium | 4.15.2 |
| ChromeDriver | 119.0.6045.124 |

~~便宜上、 **webdriver-manager** を使っています。使い方は省略、以下に参考URLを置いておきます。~~
https://qiita.com/centerfield77/items/0aebd6ed452b278d872c

`selenium 4.11.0` 以降のバージョンに同じ機能が実装されました。今までありがとうございました。

https://www.selenium.dev/blog/2023/whats-new-in-selenium-manager-with-selenium-4.11.0/



### 起動オプション
| 引数 | 簡単な説明 |
|:-|:-|
| --blink-settings=imagesEnabled=false | 画像を非表示にする。 |
| --disable-background-networking | 拡張機能の更新、セーフブラウジングサービス、アップグレード検出、翻訳、UMAを含む様々なバックグラウンドネットワークサービスを無効にする。 |
| --disable-blink-features=AutomationControlled | navigator.webdriver=false となる設定。確認⇒`driver.execute_script("return navigator.webdriver")` |
| --disable-default-apps | デフォルトアプリのインストールを無効にする。 |
| --disable-dev-shm-usage | ディスクのメモリスペースを使う。DockerやGcloudのメモリ対策でよく使われる。 |
| --disable-extensions | 拡張機能をすべて無効にする。 |
| --disable-features=DownloadBubble | ダウンロードが完了したときの通知を吹き出しから下部表示(従来の挙動)にする。 |
| --disable-features=DownloadBubbleV2 | `--incognito`を使うとき、ダイアログ(名前を付けて保存)を非表示にする。 |
| --disable-features=Translate | Chromeの翻訳を無効にする。右クリック・アドレスバーから翻訳の項目が消える。 |
| --disable-popup-blocking | ポップアップブロックを無効にする。 |
| --headless=new | ヘッドレスモードで起動する。 |
| --hide-scrollbars | スクロールバーを隠す。 |
| --ignore-certificate-errors | SSL認証(この接続ではプライバシーが保護されません)を無効 |
| --incognito | シークレットモードで起動する。 |
| --mute-audio | すべてのオーディオをミュートする。 |
| --no-default-browser-check | アドレスバー下に表示される「既定のブラウザとして設定」を無効にする。 |
| --propagate-iph-for-testing | Chromeに表示される青いヒント(？)を非表示にする。 |
| --start-maximized | ウィンドウの初期サイズを最大化。`--window-position`, `--window-size`の2つとは併用不可 |
| --test-type=gpu | アドレスバー下に表示される「Chrome for Testing~~」を非表示にする。 |
| --user-agent=Mozilla/5.0~~~~~... | ユーザーエージェントの指定。 |
| --window-position=100,100 | ウィンドウの初期位置を指定する。`--start-maximized`とは併用不可 |
| --window-size=1600,1024 | ウィンドウの初期サイズを設定する。`--start-maximized`とは併用不可 |



### 実験的なオプション
| 引数 | 引数 | 簡単な説明 |
|:-|:-|:-|
| excludeSwitches | ["enable-automation"] | Chromeは自動テスト ソフトウェア~~ を非表示 |
| excludeSwitches | ["enable-logging"] | コンソールに表示される`Devtools`や`ERROR:device_event_log_impl`などのエラー を非表示 |
| credentials_enable_service | False | パスワード保存のポップアップを無効 |
| savefile.default_directory | download_dir | ダイアログ(名前を付けて保存)の初期ディレクトリを指定 |
| download.default_directory | download_dir | ダウンロード先を指定 |
| download_bubble.partial_view_enabled | False | ダウンロードが完了したときの通知(吹き出し/下部表示)を無効にする。 |
| plugins.always_open_pdf_externally | True | Chromeの内部PDFビューアを使わない(＝URLにアクセスすると直接ダウンロードされる) |


:::note info
ちょっとした小技
起動オプションにある **--incognito** を使うと、パスワード保存のポップアップを無効にする設定は省略可能です。
:::

:::note warn
注意①
引数 **download_dir** は変数名なので、自分が分かりやすい変数名に変えてください。
:::



### 使わなくなったオプション
| 引数 | 簡単な説明 |
|:-|:-|
| options.add_argument("--disable-browser-side-navigation") | このオプションは削除されました。 |
| options.add_argument("--disable-gpu") | 以前は`--headless`と一緒に使われることが多かったが、今は必要ない。 |
| options.add_argument("--no-sandbox") | 非推奨。`https://unix.stackexchange.com/questions/68832/` |
| options.add_experimental_option("useAutomationExtension", False) | [説明](https://bugs.chromium.org/p/chromedriver/issues/detail?id=3574#c1)を読む限り、あってもなくても変わらない。 |
| prefs = {"download.directory_upgrade": True,} | [説明 #1991-1992行](https://source.chromium.org/chromium/chromium/src/+/main:chrome/common/pref_names.h;l=1993)を読む限り、必要ない。 |
| prefs = {"profile.default_content_setting_values.notifications": 2,} | あってもなくても変わらない。 |
| prefs = {"profile.password_manager_enabled": False,} | あってもなくても変わらない。 |



### コピペできるコードブロック
```python:chrome_option.py
from pathlib import Path

from anti_useragent import UserAgent
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service

# ------ download_dir の変数 ------
# パスにOneDriveが含まれているときの対策
f_lst = list(Path.home().glob("*/Downloads"))
if len(f_lst) == 0:
    f_lst = list(Path.home().glob("Downloads"))
download_dir = str(f_lst[0])

# ------ ChromeDriver のオプション ------
options = Options()
# options.add_argument("--blink-settings=imagesEnabled=false")                                 # 画像を非表示にする。
options.add_argument("--disable-background-networking")                                      # 拡張機能の更新、セーフブラウジングサービス、アップグレード検出、翻訳、UMAを含む様々なバックグラウンドネットワークサービスを無効にする。
options.add_argument("--disable-blink-features=AutomationControlled")                        # navigator.webdriver=false となる設定。確認⇒　driver.execute_script("return navigator.webdriver")
options.add_argument("--disable-default-apps")                                               # デフォルトアプリのインストールを無効にする。
options.add_argument("--disable-dev-shm-usage")                                              # ディスクのメモリスペースを使う。DockerやGcloudのメモリ対策でよく使われる。
options.add_argument("--disable-extensions")                                                 # 拡張機能をすべて無効にする。
# options.add_argument("--disable-features=DownloadBubble")                                    # ダウンロードが完了したときの通知を吹き出しから下部表示(従来の挙動)にする。
options.add_argument('--disable-features=DownloadBubbleV2')                                  # `--incognito`を使うとき、ダイアログ(名前を付けて保存)を非表示にする。
options.add_argument("--disable-features=Translate")                                         # Chromeの翻訳を無効にする。右クリック・アドレスバーから翻訳の項目が消える。
# options.add_argument("--disable-popup-blocking")                                             # ポップアップブロックを無効にする。
# options.add_argument("--headless=new")                                                       # ヘッドレスモードで起動する。
options.add_argument("--hide-scrollbars")                                                    # スクロールバーを隠す。
options.add_argument("--ignore-certificate-errors")                                          # SSL認証(この接続ではプライバシーが保護されません)を無効
options.add_argument("--incognito")                                                          # シークレットモードで起動する。
options.add_argument("--mute-audio")                                                         # すべてのオーディオをミュートする。
options.add_argument("--no-default-browser-check")                                           # アドレスバー下に表示される「既定のブラウザとして設定」を無効にする。
options.add_argument("--propagate-iph-for-testing")                                          # Chromeに表示される青いヒント(？)を非表示にする。
# options.add_argument("--start-maximized")                                                    # ウィンドウの初期サイズを最大化。--window-position, --window-sizeの2つとは併用不可
# options.add_argument("--test-type=gpu")                                                      # アドレスバー下に表示される「Chrome for Testing~~」を非表示にする。
options.add_argument("--user-agent=" + UserAgent("windows").chrome)                          # ユーザーエージェントの指定。
options.add_argument("--window-position=100,100")                                            # ウィンドウの初期位置を指定する。--start-maximizedとは併用不可
options.add_argument("--window-size=1600,1024")                                              # ウィンドウの初期サイズを設定する。--start-maximizedとは併用不可
options.add_experimental_option("excludeSwitches", ["enable-automation", "enable-logging"])  # Chromeは自動テスト ソフトウェア~~ ｜ コンソールに表示されるエラー　を非表示
# options.set_capability("browserVersion", "117")                                              # `--headless=new`を使うとき、コンソールに表示されるエラーを非表示にするための必須オプション
prefs = {
    "credentials_enable_service": False,                                                     # パスワード保存のポップアップを無効
    "savefile.default_directory": download_dir,                                              # ダイアログ(名前を付けて保存)の初期ディレクトリを指定
    "download.default_directory": download_dir,                                              # ダウンロード先を指定
    "download_bubble.partial_view_enabled": False,                                           # ダウンロードが完了したときの通知(吹き出し/下部表示)を無効にする。
    "plugins.always_open_pdf_externally": True,                                              # Chromeの内部PDFビューアを使わない(＝URLにアクセスすると直接ダウンロードされる)
}
options.add_experimental_option("prefs", prefs)

# ------ ChromeDriver の起動 ------
service = Service()
driver = webdriver.Chrome(service=service, options=options)
driver.get("https://www.hogehoge.jp")
```

:::note info
変数 **download_dir** について
デスクトップパスが取得できないことがあったのでpathlibで対策をしました。
ダウンロードフォルダを指定しているので、適宜変えてください。
:::


:::note warn
`pip install anti-useragent` のインストールが必要です。

"--user-agent" を使わない場合は以下の内容を削除してください。
`from anti_useragent import UserAgent`
`options.add_argument("--user-agent=" + UserAgent("windows").chrome)`

anti-useragent　詳細は以下のURLから
https://pypi.org/project/anti-useragent/1.0.10/
:::
</div></details>


<details><summary>selenium 3.141.0 (記事更新前)は折りたたみました</summary><div>


## selenium 3(記事更新前)
### 環境
| アイテム | バージョン |
|:-|:-|
| OS| Windows 10 64bit |
| Python | 3.8.7 64bit |
| selenium | 3.141.0 |
| webdriver-manager | 3.5.4 |
| ChromeDriver | 101.0.4951 |

便宜上、 **webdriver-manager** を使っています。使い方は省略、以下に参考URLを置いておきます。

https://qiita.com/centerfield77/items/0aebd6ed452b278d872c


:::note warn
**webdriver-manager** を使わない人向け
下記にある**コピペできるコードブロック**の内容を変更してください。
【削除】`from webdriver_manager.chrome import ChromeDriverManager`
【変更】`ChromeDriverManager().install()` から `ChromeDriverのフルパス指定` へ
:::



### 起動オプション
| 引数 | 簡単な説明 |
|:-|:-|
| --blink-settings=imagesEnabled=false | 画像の非表示 |
| --disable-blink-features=AutomationControlled | navigator.webdriver=false とする設定　↓ 確認用コマンド<br>driver.execute_script('return navigator.webdriver') |
| --disable-browser-side-navigation | ”Timed out receiving message from renderer:” の修正 |
| --disable-dev-shm-usage | ディスクのメモリスペースを使う |
| --disable-extensions | すべての拡張機能を無効 |
| --disable-gpu | GPUハードウェアアクセラレーションを無効 |
| --headless | ヘッドレスモードで起動 |
| --ignore-certificate-errors | SSL認証(この接続ではプライバシーが保護されません)を無効 |
| --incognito | シークレットモードで起動 |
| --no-sandbox | Chromeの保護機能を無効 |
| --start-maximized | 初期のウィンドウサイズを最大化 |
| --window-size=1920,1080 | 初期のウィンドウサイズを指定 |



### 実験的なオプション
| 引数 | 引数 | 簡単な説明 |
|:-|:-|:-|
| profile.default_content_setting_values.notifications | 2 | 通知ポップアップを無効 |
| credentials_enable_service | False | パスワード保存のポップアップを無効 |
| profile.password_manager_enabled | False | パスワード保存のポップアップを無効 |
| download.default_directory | download_dir | ダウンロード先のディレクトリを指定 |

:::note info
ちょっとした小技
シークレットモードで起動するオプション **--incognito** を入れれば、
パスワード保存のポップアップを無効にする設定は省略可能です。
:::

:::note warn
注意①
**credentials_enable_service** と **profile.password_manager_enabled** は2つ合わせて使います。
**credentials_enable_service** 1つだけでもパスワード保存のポップアップを無効にできますが、
ネット情報や書籍からも、2つ合わせて使っているので足並みをそろえます。
:::

:::note warn
注意②
引数 **download_dir** は変数名なので、自分が分かりやすい変数名に変えてください。
:::



### コピペできるコードブロック
```python:chrome_option.py
import getpass
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

# ------ download_dir の変数 ------
download_dir = f'C:\\Users\\{getpass.getuser()}\\Desktop\\download_folder'

# ------ ChromeDriver のオプション ------
options = Options()
options.add_argument('--blink-settings=imagesEnabled=false')                    # 画像の非表示
options.add_argument('--disable-blink-features=AutomationControlled')           # navigator.webdriver=false とする設定
options.add_argument('--disable-browser-side-navigation')                       # Timed out receiving message from renderer: の修正
options.add_argument('--disable-dev-shm-usage')                                 # ディスクのメモリスペースを使う
options.add_argument('--disable-extensions')                                    # すべての拡張機能を無効
options.add_argument('--disable-gpu')                                           # GPUハードウェアアクセラレーションを無効
# options.add_argument('--headless')                                            # ヘッドレスモードで起動
options.add_argument('--ignore-certificate-errors')                             # SSL認証(この接続ではプライバシーが保護されません)を無効
options.add_argument('--incognito')                                             # シークレットモードで起動
options.add_argument('--no-sandbox')                                            # Chromeの保護機能を無効
# options.add_argument('--start-maximized')                                     # 初期のウィンドウサイズを最大化
options.add_argument('--window-size=1920,1080')                                 # 初期のウィンドウサイズを指定
options.add_experimental_option("excludeSwitches", ['enable-automation'])       # Chromeは自動テスト ソフトウェア~~ を非表示
options.add_experimental_option("excludeSwitches", ['enable-logging'])          # ERROR:device_event_log_impl.cc~~ などのログ出力を無効化
options.add_experimental_option('useAutomationExtension', False)                # 拡張機能の自動更新を停止
prefs = {
    'profile.default_content_setting_values.notifications' : 2,                 # 通知ポップアップを無効
    'credentials_enable_service' : False,                                       # パスワード保存のポップアップを無効
    'profile.password_manager_enabled' : False,                                 # パスワード保存のポップアップを無効
    # 'download.default_directory' : download_dir                               # ダウンロード先のディレクトリを指定
}
options.add_experimental_option('prefs', prefs)

# ------ ChromeDriver の起動 ------
driver = webdriver.Chrome(ChromeDriverManager().install(), options=options)
driver.get('https://www.hogehoge.jp')
```

:::note info
変数 **download_dir** について
記載されたパスは適宜変えてください。
また、存在しないパスを指定しても動作するのでよく確認してください。
:::
</div></details>



# 最後に
何か間違いなどあればコメントください。
<br>



メモ
[Timed out receiving message from renderer の修正、他の引数など](https://stackoverflow.com/questions/48450594/selenium-timed-out-receiving-message-from-renderer)
[Chrome オプション機能一覧（1）](https://niek.github.io/chrome-features/)
[Chrome オプション機能一覧（2）](https://peter.sh/experiments/chromium-command-line-switches/)
[上記の注意①で挙げた書籍](https://books.google.co.jp/books?id=dbtIEAAAQBAJ&pg=PT53&lpg=PT53&dq=password_manager_enabled&source=bl&ots=aRiUHSD6AC&sig=ACfU3U0u5Jmcfsma7dJJGQTAz5tr5zfP6A&hl=ja&sa=X&ved=2ahUKEwjAyor0-7X3AhWbdHAKHdVrCcgQ6AF6BAgoEAM)