«Microsoft Edge контролируется автоматизированным тестовым программным обеспечением» - Selenium | Веб-драйвер | Python - PullRequest
0 голосов
/ 01 мая 2020

Я использую MS Edge с Selenium и Python, чтобы выполнить очистку веб-страниц и иметь проблему.

Инструменты и версия:

  • Microsoft Edge: версия 81.0.416.68 (официальная сборка) (64-разрядная версия) Edge
  • Драйвер: msedgedriver.exe (Выпуск 81 | Версия: 81.0.410.0 | ОС: x86 | https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/)
  • Версия Selenium: 3.141.0
  • Python Версия: Python 3.8

Описание:

Веб-сайт, к которому мне нужно получить доступ, имеет функцию безопасности. Требуется код доступа при открытии в новом браузере. Однако, если код доступа указан один раз, он будет запомнен при повторном посещении с использованием того же браузера.

То же самое и со старым браузером Edge Legacy, поскольку я предоставлял код доступа один раз, и браузер всегда запускался как обычный браузер по умолчанию, а не как тестовый браузер, поэтому он мог получить доступ к веб-сайту без необходимости новый код доступа каждый раз, потому что он запомнился. Это сработало очень хорошо.

Проблема:

Однако теперь с новым Edge моя Python программа теперь обрабатывается как тестовая программа, которая запускает браузер как новый, и поэтому веб-сайт требует код доступа каждый раз. Это негативно влияет на мою программу автоматизации. Кто-нибудь знает, как позволить драйверу Edge открывать браузер как обычный браузер, а не новый браузер в качестве тестовой программы?

Частичный код для справки:

import selenium
from selenium import webdriver

# Locate Edge web driver
driver = webdriver.Edge(executable_path="C://Windows//SysWOW64//msedgedriver.exe")

# Maximize browser for better performance
driver.maximize_window()

# initiate web driver to launch website
driver.get("https://*****************************.com")

# Enter user credential 
login_un = driver.find_element_by_id('username').send_keys("USERNAME")
login_pw = driver.find_element_by_id('password').send_keys("PASSWORD")

# Click to log in
driver.find_element_by_id('login_btn_signin').click()

...