📜  在 selenium Webdriver python 中隐藏窗口(1)

📅  最后修改于: 2023-12-03 15:07:49.196000             🧑  作者: Mango

在 Selenium WebDriver Python 中隐藏窗口

若想在 Selenium WebDriver 中使用 PhantomJS 或 Chrome Headless 等无头浏览器进行测试,可以隐藏浏览器窗口以避免干扰。本文将介绍如何在 Python 中使用 Selenium WebDriver 隐藏浏览器窗口。

步骤
  1. 首先需要安装 selenium 和相应的浏览器驱动。
  2. 导入 selenium 库并创建浏览器对象。
  3. 需要设置浏览器的选项,以实现隐藏窗口。
  4. 打开需要测试的网站或目标地址。
  5. 在脚本结束后,关闭浏览器。
示例代码
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 创建 Chrome 选项对象
chrome_options = Options()
# 设置 Chrome 选项
chrome_options.add_argument('--headless')
chrome_options.add_argument('--disable-gpu')
# 隐藏 Chrome 窗口
chrome_options.add_argument('--window-size=1920x1080')

# 创建 Chrome 浏览器对象并指定选项
browser = webdriver.Chrome(chrome_options=chrome_options)

# 访问测试网站
browser.get('https://www.example.com')

# 退出浏览器
browser.quit()

在上述示例代码中,首先创建了 Chrome 的选项对象 chrome_options,并添加了三个选项来实现无头模式:--headless 参数表示无头模式,--disable-gpu 参数可以提高性能,--window-size=1920x1080 参数表示设定窗口大小,避免产生随机的窗口大小。

然后使用 webdriver.Chrome() 构造函数创建 Chrome 浏览器对象 browser,并指定了选项 chrome_options

接下来访问测试网站并在结束后退出浏览器。

总结

隐藏浏览器窗口是使用 Selenium WebDriver 进行无头测试的必要步骤,通过设置浏览器选项实现该功能十分简单。此外,selenium 库还支持多种主流浏览器和多种编程语言,同时其文档齐备,易于使用,本文只是提供了一个简单的示例,读者可以按需求进行调整或参考 selenium 的文档进行更多高级操作。