【python自动化】Playwright基础教程(二)

简介: 【python自动化】Playwright基础教程(二)

安装

1、直接使用playwright

image.png

2、使用官方提供的pytest插件版本(可选)

image.png

这两种的区别:

· pytest版本支持所有pytest功能,并且提供相关的断言测试方法

· pytest版本和pytest有比较强的关联性,需要对pytest框架有一定的了解

· 直接安装的版本更适合纯新手学习、应用、实战

3、安装Chromium、Firefox、WebKit等浏览器的驱动文件(内置浏览器)

image.png

这一步下载会比较慢如果你没有科学上网的话。

这些内容最终会下载到C:\Users\xiaozai\AppData\Local\ms-playwright文件夹下,也可以指定文件夹操作,详细可以去查看playwright的命令行参数,这里建议默认。

快速入门&脚本录制

以下脚本为简单启动一个浏览器并进入对应网址。除了注释,我后面还会有逐行代码解析。 image.png image.png

代码逐步解析

首先,我使用的是同步模式,入门学习不建议直接学异步模式,不要有这么多好奇心,先入门再说。

 

from playwright.sync_api import sync_playwright:从playwright.sync_api模块中导入sync_playwright函数。这个函数用于同步启动Playwright。

 

def pw_test()::定义了一个名为pw_test的函数。

 

playwright = sync_playwright().start():使用同步方式启动Playwright库,并将返回的playwright对象赋值给变量playwright。这个playwright对象可以用来启动浏览器和创建页面等操作。

 

browser = playwright.chromium.launch(headless=False):通过playwright对象的chromium.launch()方法启动一个Chromium内核的浏览器实例。参数headless=False表示以非无头模式运行,这意味着浏览器界面会显示出来。

 

context = browser.new_context():在浏览器实例上创建一个新的上下文(Context)对象。上下文相当于一个浏览器窗口,用于隔离各个页面之间的环境。

 

page = context.new_page():在上下文中创建一个新的页面(Page)对象。每个页面可以看作是一个浏览器标签页。

 

page.goto("https://pingcode.com/signin"):使用page对象的goto()方法导航到指定的网址。

 

page.pause():暂停代码的执行,显示Playwright窗口,以便进行相关操作,如元素定位或录制操作。

 

page.wait_for_timeout(3000):设置一个最大的等待超时时间,以毫秒为单位。这里表示等待3秒,你可以理解为是time.sleep(3)。

对于page.pause(),代码运行到此处,你会发现浏览器旁边会弹出如下界面,这时候你就可以进行录制操作,点击Record按钮,你操作页面的时候这里就会自动帮你生成代码。

你可以通过这种方式快速了解playwright代码的编写方式,如定位、输入、点击等操作。

image.png

点击小窗口的Record按钮,可以进入录屏模式,进入录屏模式后你看看到浏览器的元素定位等功能,如下图所示。 image.png

image.png

此时,我手动输入了一些内容,这时候录制模式已经自动帮我转化为了代码。

我们根据录制的代码就可以开始模仿着写了。


image.png image.png

这时候启动代码就会发现可以登录成功。

目录
相关文章
|
11天前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
22天前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
197 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
1月前
|
机器学习/深度学习 运维 数据可视化
Python时间序列分析:使用TSFresh进行自动化特征提取
TSFresh 是一个专门用于时间序列数据特征自动提取的框架,支持分类、回归和异常检测等机器学习任务。它通过自动化特征工程流程,处理数百个统计特征(如均值、方差、自相关性等),并通过假设检验筛选显著特征,提升分析效率。TSFresh 支持单变量和多变量时间序列数据,能够与 scikit-learn 等库无缝集成,适用于大规模时间序列数据的特征提取与模型训练。其工作流程包括数据格式转换、特征提取和选择,并提供可视化工具帮助理解特征分布及与目标变量的关系。
75 16
Python时间序列分析:使用TSFresh进行自动化特征提取
|
1月前
|
存储 安全 数据可视化
用Python实现简单的任务自动化
本文介绍如何使用Python实现任务自动化,提高效率和准确性。通过三个实用案例展示:1. 使用`smtplib`和`schedule`库自动发送邮件提醒;2. 利用`shutil`和`os`库自动备份文件;3. 借助`requests`库自动下载网页内容。每个案例包含详细代码和解释,并附带注意事项。掌握这些技能有助于个人和企业优化流程、节约成本。
70 3
|
2月前
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
213 61
|
2月前
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
96 7
|
2月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
87 8
|
2月前
|
Python
Seaborn 教程-模板(Context)
Seaborn 教程-模板(Context)
57 4
|
2月前
Seaborn 教程-主题(Theme)
Seaborn 教程-主题(Theme)
155 7
|
2月前
|
数据可视化 Python
Seaborn 教程
Seaborn 教程
64 5

热门文章

最新文章

推荐镜像

更多