admin管理员组

文章数量:1561882

 在edge浏览器中使用webdriver时控制台中window.navigator.webdriver 元素会显示True,正常情况下来说应该是关掉的,所以我们用js来屏蔽掉这个元素

from selenium import webdriver
from selenium.webdriver.edge.options import Options

opt = Options()

# 去掉浏览器爬虫标识
opt.add_experimental_option('excludeSwitches', ['enable-automation'])

# 模拟iphone X浏览器,用不到可忽略
opt.add_experimental_option('mobileEmulation', {'deviceName': 'iPhone X'})
# 以下两行是无头浏览器
opt.add_argument("--headless")
opt.add_argument("--disable-gpu")
driver = webdriver.Edge(options=opt)
# 将浏览器窗口最大化
driver.maximize_window()
driver.get('http://www.xxx')
js = '''Object.defineProperty(navigator, 'webdriver', {
             get: () => undefined
           })'''
driver.execute_script(js)
 

本文标签: 浏览器无头手机selenium