You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DrissionPage ChromiumPage中按名称切换多个Chrome配置文件?

在DrissionPage的ChromiumPage中切换Chrome配置文件

你的代码问题在于直接覆盖page变量却未正确关闭旧实例,导致要么资源冲突,要么达不到切换效果。以下是两种场景下的正确实现方式:

场景1:同时运行多个不同配置文件的浏览器

如果需要同时打开多个独立配置的Chrome窗口,为每个配置创建独立的ChromiumPage实例即可:

from DrissionPage import ChromiumOptions, ChromiumPage

# 启动第一个配置文件的浏览器
co1 = ChromiumOptions()
co1.set_user(user='event_name1')
page1 = ChromiumPage(co1)
page1.get('https://example.com')

# 启动第二个配置文件的浏览器
co2 = ChromiumOptions()
co2.set_user(user='event_name2')
page2 = ChromiumPage(co2)
page2.get('https://google.com')

# 后续可分别操作两个页面

场景2:切换当前浏览器的配置文件(关闭旧的,打开新的)

如果需要替换当前使用的配置文件,必须先关闭旧的浏览器实例,再用新配置启动:

from DrissionPage import ChromiumOptions, ChromiumPage

# 启动第一个配置
co = ChromiumOptions()
co.set_user(user='event_name1')
page = ChromiumPage(co)
page.get('https://example.com')

# 关闭当前浏览器
page.quit()

# 切换到第二个配置
co = ChromiumOptions()
co.set_user(user='event_name2')
page = ChromiumPage(co)
page.get('https://google.com')

关键说明

  • set_user() 会为每个用户名称创建独立的Chrome数据目录,确保各个配置文件(书签、Cookie、扩展等)完全隔离,互不干扰。
  • 切换配置时必须调用quit()关闭旧实例,否则DrissionPage可能复用已有浏览器进程,导致新配置不生效。

内容的提问来源于stack exchange,提问作者Osama Bin Ghazanfar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 04:17:06