Chrome handless
模式,Google
针对Chrome
浏览器59版
新增的一种模式,可以让你不打开UI
界面的情况下使用Chrome
浏览器,所以运行效果与Chrome
保持完美一致。- 系统要求:
1、Chrome 版本要求 Unix/Linux 系统要求 chrome >= 59 Windows 系统需要 chrome >= 60 2、Python 版本 >= 3.6 3、Selenium 版本 >= 3.4 4、ChromeDriver 版本 >= 2.31
ChromeOptions
常用配置
# 配置对象 options = webdriver.ChromeOptions() options.add_experimental_option("excludeSwitches", ["enable-automation"]) # 禁止浏览器被监控提示 options.add_experimental_option('detach', True) # 不自动关闭浏览器 options.add_argument('--headless') # 设置无窗口模式 options.add_argument('--disable-gpu') # 禁用gpu加速 options.add_argument("--user-agent=' '") # 设置请求头user-agent options.add_argument('--start-maximized') # 设置窗口最大化 options.add_argument('--window-size=200,200') # 设置窗口大小 options.add_argument('--incognito') # 无痕模式 options.add_argument('--hide-scrollbars') # 隐藏滚动条 options.add_argument('--disable-javascript') # 禁用js options.add_argument('--blink-settings=imagesEnabled=false') # 不加载图片(拦截图片)
Chrome handless(无界面浏览器)
使用(直接拷贝就能用,初始化格式固定的)
# 导入 selenium from selenium import webdriver # 如果需要指定路径,但是路径在新版本中被重构到 Service 函数中了 from selenium.webdriver.chrome.service import Service # 配置对象 from selenium.webdriver.chrome.options import Options # 导入常量对象(可以点进去看看,其实也可以手写) # from selenium.webdriver.common.by import By # 导入 定时器 from time import sleep # 浏览器封装 def share_browser (): # 浏览器驱动路径(可以是下载的驱动,也可以直接使用电脑上 Chrome 浏览器的驱动,找到路径就行) # win_path = 'chromedriver.exe' mac_path = 'chromedriver' # 配置对象 options = Options() # options = webdriver.ChromeOptions() # 也可以这样创建 options 对象 # options.add_experimental_option('detach', True) # 不自动关闭浏览器 options.add_argument('--headless') # 设置无窗口模式 options.add_argument('--disable-gpu') # 禁用gpu加速 # 创建浏览器 service = Service(mac_path) browser = webdriver.Chrome(service=service, options=options) # 返回 return browser # 创建浏览器 browser = share_browser() # 打开指定网址 browser.get('https://www.baidu.com') # 保存快照 browser.save_screenshot('baidu.png') # 睡眠 sleep(2) # 退出 browser.quit()