python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python之playwright使用

python之playwright的基本使用及说明

作者:382427827

这段代码使用Playwright库自动化操作三种主流浏览器(Chromium、Firefox、WebKit),访问百度首页,对每个浏览器进行截图并打印网页标题
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    for browser_type in [p.chromium,p.firefox,p.webkit]:
        browser = browser_type.launch(headless=False)
        page = browser.new_page()
        page.goto('https://www.baidu.com')
        page.screenshot(path=f'screenshot-{browser_type.name}.png')
        print(page.title())
        browser.close()

运行结果如下:

关键知识点

这段代码使用了 Playwright(一个用于自动化浏览器操作的 Python 库)来依次启动三种主流浏览器(Chromium、Firefox、WebKit),访问百度首页,并对每个浏览器进行截图和打印网页标题。

下面是对每一行代码的详细解释:

导入模块

from playwright.sync_api import sync_playwright

启动上下文管理器

with sync_playwright() as p:

好处with 会自动在结束时关闭所有资源(如浏览器进程),防止内存泄漏。

遍历三种浏览器

for browser_type in [p.chromium, p.firefox, p.webkit]:

注意:首次运行时,Playwright 会自动下载这些浏览器的精简版(如果尚未安装)。

启动浏览器并打开新页面

browser = browser_type.launch(headless=False)
page = browser.new_page()

browser_type.launch(headless=False)

browser.new_page()

访问百度首页

page.goto('https://www.baidu.com')

截图保存

page.screenshot(path=f'screenshot-{browser_type.name}.png')

对当前页面进行截图,并保存为 PNG 文件。

文件名根据浏览器类型动态生成,例如:

打印网页标题

print(page.title())

关闭浏览器

browser.close()

虽然 with sync_playwright() 会在最后清理资源,但显式调用 browser.close() 是良好实践,尤其在循环中。

总结:这段代码的作用

使用 Playwright 自动化测试框架,在 Chromium、Firefox 和 WebKit 三种浏览器中分别打开百度首页,截图保存,并打印页面标题。

补充说明

依赖安装

pip install playwright
playwright install  # 安装浏览器二进制文件

常见用途

注意事项

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文