Как изменить useragent-string во время выполнения chromedriver Selen - PullRequest
0 голосов
/ 16 мая 2018

Я разрабатываю что-то, что хочет, чтобы я поменял имя пользователя. В начале я поставляю пользовательский агент как ... (для chromedriver)

options.addArguments("--user-agent=Mozilla/5.0 (iPad; CPU OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25");

Но затем я хочу изменить его на Windows-пользовательский агент или просто удалить этот пользовательский агент.

Как я могу достичь этого программно в Selenium Java.

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Как сказал @Debanjan, вы не можете изменить пользовательский агент во время выполнения, но если вы попытались использовать плагин ModifyHeader, вы можете настроить его для изменения пользовательского агента, но не на уже созданном драйвере.Вы можете выполнить настройку во время создания экземпляра webDriver, а также попробовать с ChromeOptions.

ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("src/main/resources/idgpnmonknjnojddfkpgkljpfnnfcklj.crx"));

DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);

или

ChromeOptions chrome = new ChromeOptions();
chrome.addArguments("user-agent=YOUR_USER_AGENT");
0 голосов
/ 16 мая 2018

Нет , вы не можете изменить useragent активного сеанса просмотра после настройки экземпляра WebDriver через экземпляр атрибута ChromeOptions и addArguments и запуск активного сеанса просмотра .

Даже если вы сможете извлечь Session ID, Cookies, User Agent и другие атрибуты сеанса из активного сеанса просмотра , вы все равно не сможете изменить / отредактировать эти атрибуты как HOOK для WebDriver .

Чтобы изменить Пользовательский агент , вам необходимо переконфигурировать экземпляр WebDriver и инициировать новый сеанс просмотра .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...