DrissionPage/docs/使用方法/启动配置/Session启动配置.md
2022-01-15 01:00:48 +08:00

3.2 KiB
Raw Blame History

SessionOptions 对象用于管理 Session 对象连接配置。
其使用逻辑与 DriverOptions 相似。

注意: SessionOptions 仅用于管理启动配置,程序启动后再修改无效。

SessionOptions 类

SessionOptions 对象创建时默认读取默认 ini 文件配置信息,也可手动设置所需信息。
该类的方法支持链式操作。

初始化参数:

  • read_file是否从默认 ini 文件中读取配置信息
  • ini_pathini 文件路径,为 None 则读取默认 ini 文件

headers

该属性返回 headers 设置信息,可传入字典赋值。

set_headers()

该方法与 headers 参数赋值功能一致。

参数:

  • headersheaders 字典

返回:当前对象

set_a_header()

该方法用于设置 headers 中的一个项。

参数:

  • attr设置项名称
  • value设置值

返回:当前对象

so = SessionOptions()
so.set_a_header('accept', 'text/html')
so.set_a_header('Accept-Charset', 'GB2312')

print(so.headers)

输出:

{'accept': 'text/html', 'accept-charset': 'GB2312'}

remove_a_header()

此方法用于从 headers 中移除一个设置项。

参数:

  • attr要删除的设置名称

返回:当前对象

cookies

此属性返回 cookies 设置信息,可赋值。
可接收 dict、list、tuple、str、RequestsCookieJar 等格式的信息。

proxies

此属性返回代理信息,可赋值。可传入字典类型。
格式:{'http': 'http://xx.xx.xx.xx:xxxx', 'https': 'http://xx.xx.xx.xx:xxxx'}

set_proxies()

此方法与 proxies 属性赋值功能一致。

参数:

  • dict 格式的代理参数

返回:当前对象

auth

此属性用于返回和设置 auth 参数,接收 tuple 类型参数。

hooks

此属性用于返回和设置 hooks 参数,接收 dict 类型参数。

params

此属性用于返回和设置 params 参数,接收 dict 类型参数。

verify

此属性用于返回和设置 verify 参数,接收 bool 类型参数。

cert

此属性用于返回和设置 cert 参数,接收 str 或 tuple 类型参数。

adapters

此属性用于返回和设置 adapters 参数。

stream

此属性用于返回和设置 stream 参数,接收 bool 类型参数。

trust_env

此属性用于返回和设置 trust_env 参数,接收 bool 类型参数。

max_redirects

此属性用于返回和设置 max_redirects 参数,接收 int 类型参数。

save()

此方法用于保存当前配置对象的信息到配置文件。

参数:

  • path配置文件的路径传入 None 保存到当前读取的配置文件,传入 'default' 保存到默认 ini 文件

返回:配置文件绝对路径

as_dict()

该方法以 dict 方式返回所有配置信息。

参数:无

返回:配置信息

简单示例

from DrissionPage.config import SessionOptions
from DrissionPage import MixPage

# 创建配置对象(默认从 ini 文件中读取配置)
so = SessionOptions()
# 设置 cookies
so.cookies = ['key1=val1; domain=xxxx', 'key2=val2; domain=xxxx']
# 设置 headers 一个参数
so.set_a_header('Connection', 'keep-alive')

# 以该配置创建页面对象
page = MixPage(mode='s', session_options=so)