Skip to content

🚄 获取网页信息

成功访问网页后,可使用SessionPage自身属性和方法获取页面信息。

from DrissionPage import SessionPage

page = SessionPage()
page.get('http://www.baidu.com')
# 获取页面标题
print(page.title)
# 获取页面html
print(page.html)

输出:

百度一下,你就知道
<!DOCTYPE html>
<!--STATUS OK--><html> <head><meta http-equi...

✅️️ 页面信息

📌 url

此属性返回当前访问的 url。

类型:str


📌 url_available

此属性以布尔值返回当前链接是否可用。

类型:bool


📌 title

此属性返回当前页面title文本。

类型:str


📌 html

此属性返回当前页面 html 文本。

类型:str


📌 json

此属性把返回内容解析成 json。
比如请求接口时,若返回内容是 json 格式,用html属性获取的话会得到一个字符串,用此属性获取可将其解析成dict

类型:dict


✅️️ 运行参数信息

📌 timeout

此属性返回网络请求超时时间。默认为 10,可对其赋值设置。

类型:intfloat

# 创建页面对象时指定
page = SessionPage(timeout=5)

# 修改 timeout
page.timeout = 20

📌 retry_times

此属性为网络连接失败时的重试次数。默认为 3,可对其赋值。

类型:int

# 修改重试次数
page.retry_times = 5

📌 retry_interval

此属性为网络连接失败时的重试等待间隔秒数。默认为 2,可对其赋值。

类型:intfloat

# 修改重试等待间隔时间
page.retry_interval = 1.5

✅️️ cookies 信息

📌 cookies

此属性以dict方式返回当前页面所使用的 cookies。

须要注意的是,如果不同子域名使用相同的name属性,此属性返回的 cookies 可能有缺失。

类型:dict


📌 get_cookies()

此方法获取 cookies 并以 cookie 组成的list形式返回。

类型:dictlist

参数名称 类型 默认值 说明
as_dict bool False 是否以字典方式返回结果,为False返回 cookie 组成的list,且all_info参数无效
all_domains bool False 是否返回所有域的 cookies,为False则指返回当前域名的
all_info bool False 返回的 cookies 是否包含所有信息,False时只包含namevaluedomain信息
返回类型 说明
dict as_dictTrue时,返回字典格式 cookies
list as_dictFalse时,返回 cookies 组成的列表

示例:

from DrissionPage import SessionPage

page = SessionPage()
page.get('http://www.baidu.com')
page.get('http://gitee.com')

for i in page.get_cookies(as_dict=False, all_domains=True):
    print(i)

输出:

{'domain': '.baidu.com', 'domain_specified': True, ......}
......
{'domain': 'gitee.com', 'domain_specified': False, ......}
......

✅️️ 内嵌对象

📌 session

此属性返回当前页面对象使用的Session对象。

类型:Session


📌 response

此属性为请求网页后生成的Response对象,本库没实现的功能可直接获取此属性调用 requests 库的原生功能。

类型:Response

# 打印连接状态
r = page.response
print(r.status_code)