Я пытаюсь отключить загрузку изображений с настройками Chrome. вот мой код:
from selenium.webdriver import Remote
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--allow-running-insecure-content')
prefs = {"profile.managed_default_content_settings.images": 2}
chrome_options.add_experimental_option("prefs",prefs)
# Note: '127.0.0.1:8888 is my Charles proxy.
chrome_options.add_argument('--proxy-server=http://127.0.0.1:8888')
driver = Remote(
command_executor='http://127.0.0.1:4444/wd/hub',
desired_capabilities=chrome_options.to_capabilities())
driver.get('https://www.google.com')
Я ожидаю, что драйвер не загрузит изображение на сайт. Но это так (из того, что я вижу у Чарльза).
В контейнере я могу найти файл настроек с путем /tmp/.org.chromium.Chromium.xxxxxx/Default/Preferences
:
{"alternate_error_pages":{"enabled":false},"autofill":{"enabled":false},"browser":{"check_default_browser":false},"distribution":{"import_bookmarks":false,"import_history":false,"import_search_engine":false,"make_chrome_default_for_user":false,"skip_first_run_ui":true},"dns_prefetching":{"enabled":false},"profile":{"content_settings":{"pattern_pairs":{"https://*,*":{"media-stream":{"audio":"Default","video":"Default"}}}},"default_content_setting_values":{"geolocation":1},"default_content_settings":{"geolocation":1,"mouselock":1,"notifications":1,"popups":1,"ppapi-broker":1},"managed_default_content_settings":{"images":2},"password_manager_enabled":false},"safebrowsing":{"enabled":false},"search":{"suggest_enabled":false},"translate":{"enabled":false}}
Мне кажется, что экспериментальный_опция не работает, потому что браузер неправильно читает файл настроек
Есть идеи?
Я использую последний образ докера selenium / standalone-chrome и запускаю образ, как предложено в документах