import os
import psutil
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 检查是否已经存在浏览器实例,如果存在则不再创建
for proc in psutil.process_iter():
    try:
        if 'chrome' in proc.name() and '--remote-debugging-port=9223' in proc.cmdline():
            break
    except:
        pass
else:
    # 创建浏览器实例
    os.system(r'start chrome --remote-debugging-port=9223 --user-data-dir="D:\评阅用"')

# 配置浏览器实例
options = Options()
options.add_experimental_option('debuggerAddress', '127.0.0.1:9223')

# 创建浏览器实例
driver = webdriver.Chrome(options=options)

# 打开网页
driver.get('http://one.ouchn.cn')

这段代码演示了如何使用 Python Selenium 库进行自动化测试。

主要功能:

  1. 检查已有浏览器实例: 使用 psutil 库检查是否已存在 Chrome 实例并打开了远程调试端口。
  2. 启动 Chrome 浏览器: 如果没有找到合适的实例,则使用 os.system() 启动新的 Chrome 浏览器,并设置远程调试端口和用户数据目录。
  3. 配置 Selenium 选项: 创建 Options 对象并设置 debuggerAddress,以便连接到已启动的 Chrome 浏览器。
  4. 创建 WebDriver 对象: 使用配置好的选项创建 webdriver.Chrome 对象。
  5. 打开网页: 使用 driver.get() 方法打开目标网页 'http://one.ouchn.cn'。

代码解释:

  • --remote-debugging-port=9223:启用 Chrome 浏览器的远程调试功能,并指定端口号为 9223。
  • --user-data-dir="D:\评阅用":指定 Chrome 浏览器使用特定的用户数据目录,例如用于存储 Cookies、历史记录等的文件夹。
  • options.add_experimental_option('debuggerAddress', '127.0.0.1:9223'):告诉 Selenium 连接到本地地址 127.0.0.1 的 9223 端口,该端口是之前启动 Chrome 时指定的远程调试端口。

通过这段代码,您可以使用 Selenium 控制 Chrome 浏览器进行各种自动化测试任务,例如网页导航、元素操作、表单填写等。

Python Selenium 自动化测试:启动 Chrome 并打开网页

原文地址: https://www.cveoy.top/t/topic/f2JM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录