webtest遇到的问题window.navigator.webdriver如何设置为undefined

window.navigator.webdriver如何设置为undefined

# 设置开发者模式
options = webdriver.ChromeOptions()

# 此步骤很重要,设置为开发者模式,防止被各大网站识别出来使用了Selenium

options.add_experimental_option('excludeSwitches', ['enable-automation'])

# driver = webdriver.Chrome(options=options)

browser = webdriver.Chrome(options=options)

"""Selenium执行cdp命令调用chrome浏览器的开发者工具,给window.navigator对象定义一个webdriver属性,并且设置为undefined,以绕过js的检测"""
browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
    "source": """
    Object.defineProperty(navigator, 'webdriver', {
      get: () => undefined
    })
  """
})

你可能感兴趣的:(测试,python)