Playwright中Page类的方法

导航和页面操作

goto(url: str, **kwargs: Any): 导航到一个URL。
reload(**kwargs: Any): 重新加载当前页面。
go_back(**kwargs: Any): 导航到会话历史记录中的前一个页面。
go_forward(**kwargs: Any): 导航到会话历史记录中的下一个页面。
set_default_navigation_timeout(timeout: float): 设置默认的导航超时时间(以毫秒为单位)。
set_viewport_size(width: int, height: int): 设置视口大小。
bring_to_front(): 将页面带到前台。
close(**kwargs: Any): 关闭页面。
context() -> "BrowserContext": 获取与此页面关联的浏览器上下文。
is_closed() -> bool: 如果页面已关闭,则返回True。
pdf(path: Union[Path, str, None] = None, **kwargs: Any): 将页面保存为PDF文件。
screenshot(path: Union[Path, str, None] = None, **kwargs: Any): 对页面进行截图并保存到指定路径。
set_content(html: str, **kwargs: Any): 设置页面的HTML内容。
content() -> str: 获取页面的HTML内容。
title() -> str: 获取页面的标题。
title() -> str: 获取页面的标题。
page.request.get() :get 请求
page.request.post(): post请求

页面元素定位和交互

click(selector: str, **kwargs: Any): 使用选择器找到元素并点击。
fill(selector: str, value: str, **kwargs: Any): 使用选择器找到表单元素,并填充指定的值。
press(selector: str, key: str, **kwargs: Any): 模拟在指定元素上按下键盘键。
type(selector: str, text: str, **kwargs: Any): 在指定元素中输入文本。
check(selector: str, **kwargs: Any): 选中指定的复选框或单选按钮。
uncheck(selector: str, **kwargs: Any): 取消选中指定的复选框或单选按钮。
select_option(selector: str, value: str, **kwargs: Any): 在指定的下拉列表中选择一个选项。
locator(selector: str) -> "Locator": 获取一个Locator对象,用于通过CSS选择器、XPath等定位页面元素。
get_by_test_id(id: str) -> "Locator": 通过data-testid属性获取元素。
get_by_role(role: str) -> "Locator": 通过role属性获取元素。
get_by_label(label: str) -> "Locator": 通过label属性获取元素。
get_by_placeholder(placeholder: str) -> "Locator": 通过placeholder属性获取元素。
get_by_alt_text(alt: str) -> "Locator": 通过alt属性获取元素。
get_by_title(title: str) -> "Locator": 通过title属性获取元素。
get_by_text(text: str) -> "Locator": 通过文本内容获取元素。
frame(frame_locator: Union["FrameLocator", str]) -> "Frame": 获取一个Frame对象。
frame_locator(selector: str) -> "FrameLocator": 获取一个FrameLocator对象。
drag_and_drop(source: str, target: str, **kwargs: Any): 拖动一个元素并将其放置到另一个位置。
frames() -> List["Frame"]: 获取所有的Frame对象。

页面事件和等待

wait_for_event(event_name: str, **kwargs: Any): 等待一个事件。
wait_for_function(page_function: str, arg: Any = None, **kwargs: Any): 等待一个函数返回True。
wait_for_load_state(state: str = "load", **kwargs: Any): 等待页面达到指定的加载状态。
wait_for_url(url: str, **kwargs: Any): 等待页面的URL匹配一个模式。
wait_for_selector(selector: str, state: Optional[str] = None, **kwargs: Any): 等待指定选择器匹配到的元素满足给定状态(如可见、可点击等)。
expect_event(event_name: str, **kwargs: Any): 期待一个事件。
expect_console_message(message: Union[str, Pattern], **kwargs: Any): 等待一个控制台消息。
expect_download(**kwargs: Any): 等待一个下载。
expect_file_chooser(**kwargs: Any): 等待一个文件选择器。
expect_popup(**kwargs: Any): 等待一个弹出窗口。
expect_request(url: Union[str, Pattern], **kwargs: Any): 等待一个请求。
expect_request_finished(url: Union[str, Pattern], **kwargs: Any): 等待一个请求完成。
expect_response(url: Union[str, Pattern], **kwargs: Any): 等待一个响应。
expect_websocket(**kwargs: Any): 等待一个WebSocket。
expect_worker(**kwargs: Any): 等待一个Worker。

JavaScript执行和脚本处理

evaluate(page_function: str, arg: Any = None, **kwargs: Any): 在页面上执行一个JavaScript函数,并返回结果。
evaluate_handle(page_function: str, arg: Any = None, **kwargs: Any): 获取一个可以在页面上执行JavaScript的句柄。
add_init_script(script: str, **kwargs: Any): 添加一个在每个新页面加载时运行的脚本。
expose_binding(name: str, playwright_binding: Callable[..., Any], **kwargs: Any): 在页面上公开一个绑定。
expose_function(name: str, playwright_function: Callable[..., Any], **kwargs: Any): 在页面上公开一个函数。

网络请求和拦截处理

route(url: Union[str, Pattern], handler: Callable[["Route"], Awaitable[None]], **kwargs: Any): 添加一个路由。
route_from_har(har_entries: List[Dict[str, Any]], **kwargs: Any): 从HAR文件添加路由。
unroute(url: Union[str, Pattern], **kwargs: Any): 移除一个路由。
unroute_all(**kwargs: Any): 移除所有路由。
set_extra_http_headers(headers: Dict[str, str]): 设置额外的HTTP头。
emulate_media(media: Union[None, str, Media]): 模拟媒体类型或颜色方案。

其他操作

add_locator_handler(name: str, handler: Callable[["Locator", Dict[str, Any]], "Locator"]): 添加一个定位器处理器。
add_script_tag(url: Optional[str] = None, content: Optional[str] = None, **kwargs: Any): 在页面中添加一个script标签。
add_style_tag(url: Optional[str] = None, content: Optional[str] = None, **kwargs: Any): 在页面中添加一个style标签。
pause(): 暂停执行,直到用户手动恢复。
set_default_timeout(timeout: float): 设置默认的超时时间(以毫秒为单位)。

事件

page.on('load', Callable()):监听页面加载事件
page.on('domcontentloaded', Callable()): 监听 DOMContentLoaded 事件
page.on('request', Callable()):监听请求事件
page.on('response', Callable()):监听响应事件
page.on('dialog', Callable()):监听弹窗事件
page.on('pageerror', Callable(error)):监听页面错误事件
相关推荐
大学生毕业题目8 分钟前
毕业项目推荐:83-基于yolov8/yolov5/yolo11的农作物杂草检测识别系统(Python+卷积神经网络)
人工智能·python·yolo·目标检测·cnn·pyqt·杂草识别
Kyln.Wu40 分钟前
【python实用小脚本-205】[HR揭秘]手工党逐行查Bug的终结者|Python版代码质量“CT机”加速器(建议收藏)
开发语言·python·bug
计算机毕业设计木哥42 分钟前
Python毕业设计推荐:基于Django的饮食计划推荐与交流分享平台 饮食健康系统 健康食谱计划系统
开发语言·hadoop·spring boot·后端·python·django·课程设计
小草cys1 小时前
在树莓派集群上部署 Distributed Llama (Qwen 3 14B) 详细指南
python·llama·树莓派·qwen
数据科学作家4 小时前
学数据分析必囤!数据分析必看!清华社9本书覆盖Stata/SPSS/Python全阶段学习路径
人工智能·python·机器学习·数据分析·统计·stata·spss
HXQ_晴天5 小时前
CASToR 生成的文件进行转换
python
java1234_小锋6 小时前
Scikit-learn Python机器学习 - 特征预处理 - 标准化 (Standardization):StandardScaler
python·机器学习·scikit-learn
Python×CATIA工业智造6 小时前
Python带状态生成器完全指南:从基础到高并发系统设计
python·pycharm
向qian看_-_7 小时前
Linux 使用pip报错(error: externally-managed-environment )解决方案
linux·python·pip
Nicole-----7 小时前
Python - Union联合类型注解
开发语言·python