ChromeOptions — это класс в библиотеке Selenium, предназначенный для настройки опций Chrome. Когда вы создаете объект этого класса, вы получаете возможность конфигурировать различные параметры и свойства браузера, прежде чем он будет запущен.
# Создание объекта ChromeOptions options = webdriver.ChromeOptions()
Это включает в себя такие вещи как аргументы командной строки, использование прокси-сервера, установка расширений и множество других.
Метод add_argument() этого объекта служит для добавления аргументов командной строки к запуску браузера. Аргументы командной строки — это флаги или параметры, которые можно передать при запуске Chrome из командной строки, чтобы модифицировать его поведение. В контексте Selenium, add_argument() делает это за вас, передавая эти параметры при инициализации webdriver.Chrome().
# Добавление аргументов командной строки options.add_argument('--headless') # Запуск браузера в фоновом режиме (без GUI) options.add_argument('--disable-gpu') # Отключение GPU (полезно для старых версий Chrome) options.add_argument('--no-sandbox') # Отключение режима "песочницы" (sandbox)
Объект ChromeOptions затем передается в конструктор webdriver.Chrome(), чтобы эти настройки были применены к новому экземпляру браузера.
# Запуск экземпляра браузера Chrome с заданными опциями driver = webdriver.Chrome(options=options)
Ниже будут перечислены команды, которые могут пригодится в контексте разработки парсингов.
—disable-gpu — отключает аппаратное ускорение GPU. Иногда это делается для избежания проблем с графикой.
—no-sandbox — запускает браузер без дополнительных мер безопасности.
—incognito — запускает браузер в режиме инкогнито. В этом режиме не сохраняются куки и история просмотров.
—window-size=width,height — устанавливает начальный размер окна браузера.
—start-maximized — запускает браузер на весь экран.
—disable-extensions — отключает все установленные расширения.
—user-data-dir=path — устанавливает директорию для хранения профиля пользователя.
—disable-infobars — убирает информационные строки в верхней части окна.
—ignore-certificate-errors — игнорирует ошибки SSL-сертификатов. Полезно, если нужно обращаться к сайтам с недействительными сертификатами.
—lang=ru — устанавливает язык интерфейса браузера на русский.
—disable-popup-blocking — отключает блокировку всплывающих окон. Может быть полезным при автоматизации некоторых сценариев.
—allow-running-insecure-content — позволяет загружать небезопасный контент на страницы, загруженные по HTTPS. Опасная опция, используйте с осторожностью.
—disable-notifications — отключает уведомления браузера. Особенно полезно при автоматизированном тестировании.
—disable-web-security — отключает меры безопасности веба. Не рекомендуется для обычного просмотра, но может быть полезно для тестирования.
—disable-client-side-phishing-detection — отключает обнаружение фишинга на клиентской стороне.
—enable-logging — включает журналирование в файл.
—log-level=0 — устанавливает уровень журналирования (0-3).
—disable-cache — отключает кэш браузера. Полезно для тестирования изменений на веб-страницах в реальном времени.
—enable-automation — подсказывает браузеру, что он управляется программой. Это может изменить поведение некоторых веб-сайтов.
—disable-setuid-sandbox — отключает песочницу безопасности для браузера. Также не рекомендуется для обыденного использования.
—disable-sync — отключает синхронизацию с аккаунтом Google.