🦉
【Selenium4】Headlessにすると要素が見つからない
実行環境
- Python 3.9
- Selenium 4
- macOS
問題
エラー文
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element:
options.headless = True
を追加すると、元々取得できていた要素が取得できなくなった。
様々な方法を試し解決した方法を紹介する。
解決
オプションを以下のように記入する。
注意点として、options.add_argument('window-size=1400,600')
をoptions.add_argument("--start-maximized")
とするとエラーとなった。
options = Options()
options.headless = True
options.add_argument('window-size=1400,600')
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
options.add_argument("--user-agent=Chrome/Chromeのバージョンを記入")
options.add_experimental_option('prefs', {
'credentials_enable_service': False,
'profile': {'password_manager_enabled': False}
})
Discussion