浏览器操作练习 · 页面信息

获取网页标题、地址、源码及会话信息等操作

首页 浏览器操作导航

页面导读 · 页面信息

演示 Selenium 提供的 6 种浏览器状态读取方式,是做断言、调试、日志的基础工具。点击按钮即可实时读取当前 demo 页面的各项属性。

6 个核心属性/方法:

⚠️ 注意:page_source 返回的是初始 HTML,不是 JS 渲染后的 DOM!SPA 页面要用 execute_script('return document.documentElement.outerHTML')。

参数配置 打开关闭 页面导航 窗口控制 页面信息 元素交互 Cookie操作 截图保存 超时等待

练习 5 · 页面信息获取(title / current_url / source / session_id / capabilities)

📋 练习要求 · 页面信息
概念 从 WebDriver 实例和已加载页面中提取元信息(只读属性)
Selenium API driver.title / current_url / page_source / session_id / capabilities / name
练习要点
  • title、current_url、session_id 非空断言
  • page_source 包含 <html 或页面标题关键字
  • capabilities['browserName'] == 'chrome'
# 快速参考
driver.get("https://example.com")
assert "Example" in driver.title
assert "example.com" in driver.current_url
assert driver.session_id
assert "chrome" == driver.capabilities['browserName']
assert "<html" in driver.page_source.lower()
📋 本节练习清单
  • ✅ 练习目标 1:title / current_url — get() 后断言 driver.title 包含预期文案、driver.current_url 包含目标域名
  • ✅ 练习目标 2:session_id / capabilities — 断言 driver.session_id 非空,driver.capabilities['browserName'] 等于 chrome
  • ✅ 练习目标 3:page_source 页面源码 — 获取 driver.page_source,断言其中包含 <html 标签与页面标题关键字
5 练习目标:一次 get 后获取页面全部关键信息并断言

操作步骤:
① driver.get("目标URL") 后获取 driver.title 断言包含预期文案,driver.current_url 断言包含目标域名。
② 断言 driver.session_id 非空,driver.capabilities['browserName'] 等于 chrome。
③ 获取 driver.page_source 断言包含 <html 标签与页面标题关键字。

页面信息面板(mock 值)
driver.title
Example Domain
driver.current_url
https://example.com/
driver.session_id
abc123XYZ-9876543210fedcba
driver.capabilities['browserName']
chrome

💡 driver.page_source 返回完整 HTML 源码,通常包含 <html、<head、<body 等标签。

查看参考答案(Python Selenium)
# 练习 5 参考答案
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://example.com")

# ① 各种信息获取与断言
title = driver.title
assert title is not None and "Example" in title, f"title 不符合预期: {title}"

current_url = driver.current_url
assert "example.com" in current_url, f"url 不符合预期: {current_url}"

session_id = driver.session_id
assert session_id, "session_id 为空"

browser_name = driver.capabilities['browserName']
assert browser_name == "chrome", f"browserName 不符合预期: {browser_name}"

# ② page_source 断言
source = driver.page_source
assert "<html" in source.lower(), "page_source 不包含 <html"
assert "Example Domain" in source, "page_source 不包含标题文本"

driver.quit()
print("✅ 练习 5 所有断言通过!")

关于我们

Python 自动化测试学习平台是一个面向软件测试工程师、开发人员及在校学生的交互式在线学习平台,专注于 Selenium WebDriver 与 Python unittest 自动化测试技能的教学与实践。

我们以"理论 + 实战 + 可交互演示"为核心特色,将八种常规元素定位和Javascript定位、元素操作、自动化测试工具、单元测试、测试模型等知识体系拆分为模块化课程,每个模块都配有可点击、可输入、可运行的模拟练习页面。

平台致力于降低自动化测试的入门门槛,让学习者从"看懂代码"到"动手实操",逐步掌握企业级自动化测试框架的设计与落地能力。

联系方式

📧邮箱:lq@selenium-auto-test.com

📞电话:0755-12345678

📍地址:深圳

💬微信公众号:Selenium自动化测试

🐙GitHub:github.com/selenium-auto-test

免责声明

1. 本平台所有示例代码、演示页面及教程内容均仅供学习交流使用,不构成任何商业推广或技术服务承诺。

2. 平台中的 Selenium API 描述、Python 语法说明均以官方文档为准,如有版本差异请以对应官方文档为准。

3. 学习者在实际项目中应用平台所学内容时,应结合自身项目环境进行充分测试,本平台不对因直接使用示例代码而产生的任何直接或间接损失承担责任。

4. 本平台所引用的第三方库(Selenium、ChromeDriver、unittest 等)版权归其各自作者及维护者所有。

5. 如涉及版权问题或内容建议,请及时通过联系方式与我们沟通,我们将第一时间处理。