Отключить сообщение «Chrome управляется программным обеспечением для автоматизированного тестирования» в Selenium

Чтобы отключить сообщение «Chrome контролируется программным обеспечением автоматического тестирования» в Selenium, вы можете попробовать следующие методы:

  1. Используйте ChromeOptions: при создании экземпляра ChromeDriver вы можете установить для возможности «excludeSwitches» значение «enable-automation». Это предотвратит появление сообщения. Вот пример фрагмента кода на Python:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--disable-blink-features=AutomationControlled')
options.add_experimental_option('excludeSwitches', ['enable-automation'])
driver = webdriver.Chrome(options=options)
  1. Использовать Chrome DesiredCapabilities: вы можете установить для желаемой возможности «chrome.switches» значение «–disable-automation» при создании объекта DesiredCapabilities. Вот пример на Java:
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.remote.DesiredCapabilities;
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
ChromeOptions options = new ChromeOptions();
options.addArguments("--disable-automation");
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new ChromeDriver(capabilities);
  1. Использовать протокол Chrome DevTools. Вы можете использовать протокол Chrome DevTools для взаимодействия с внутренними компонентами браузера и изменения его поведения. Отправив команду Page.setInterceptFileChooserDialogс параметром enabled, установленным в значение true, вы можете отключить сообщение программного обеспечения автоматического тестирования. Вот пример на JavaScript:
const { chromium } = require('playwright');
async function disableAutomationMessage() {
  const browser = await chromium.launch();
  const context = await browser.newContext();
  const page = await context.newPage();
  await context.send('Page.setInterceptFileChooserDialog', { enabled: true });
  await page.goto('https://www.example.com');
  // Rest of your automation code here
}
disableAutomationMessage();