跳到主要内容

🛰️ 浏览器子环境


本节介绍浏览器独立子环境(ChromiumContext)的功能。

每个子环境对象的 cookies 是独立的,可视作一个无痕子浏览器,可管理自己的标签页,并且可以独立设置代理。

✅️️ 新建子环境

Chromium对象的new_context()方法新建一个ChromiumContext对象。

参数名称类型默认值说明
proxystrNone代理服务器,格式'协议://用户名:密码@ip:port',用户名密码非必须
proxy_bypassstr
List[str]
None不代理的网址,用str传入多个网址时用';'分隔
auto_closeboolNone是否随接管结束自动关闭
返回类型说明
ChromiumContextChromiumContext对象

刚新建时这个子浏览器是不可见的,需用这个对象新建一个标签页才会出现。

from DrissionPage import Chromium

browser = Chromium()
context = browser.new_context(proxy='127.0.0.1:7890') # 创建新子环境并独立设置代理
tab = context.new_tab()
tab.get('https://DrissionPage.cn')

✅️️ 标签页相关操作

📌 new_tab()

此方法用于在当前子环境中新建一个标签页。

使用方法与浏览器对象一致:new_tab()

📌 get_tab()

此方法用于获取当前子环境中一个标签页对象或它的 id。

使用方法与浏览器对象一致:get_tab()


📌 get_tabs()

此方法用于获取当前子环境中多个符合条件的标签页对象或它们的 id 组成的列表。

使用方法与浏览器对象一致:get_tabs()


📌 wait.new_tab()

此方法用于等待当前子环境中出现新标签页。

使用方法与浏览器对象一致:wait.new_tab()


📌 latest_tab

此属性返回当前子环境最新的标签页对象或 id。

使用方法与浏览器对象一致:latest_tab


📌 tab_ids

此属性返回当前子环境所有标签页 id 组成的列表,只统计普通标签页(即'page''webview'类型)。

使用方法与浏览器对象一致:tab_ids


✅️️ cookies 相关

📌 cookies()

此方法以列表形式返回当前子环境中所有域名的 cookies,cookie 是dict格式。

使用方法与浏览器对象一致:cookies()


📌 set.cookies()

此方法用于设置当前子环境的 cookies。

使用方法与浏览器对象一致:set.cookies()


📌 set.cookies.clear()

此方法用于清空当前子环境的 cookies。

使用方法与浏览器对象一致:set.cookies.clear()


✅️️ 浏览器权限

子环境可单独设置浏览器权限,使用方法与浏览器对象一致:set.perm


✅️️ 其它

📌 wait()

此方法用于等待若干秒。

使用方法与浏览器对象一致:wait()


📌 close()

此方法用于关闭当前子环境,其中的标签页也会跟着关闭。

参数:

返回:None