截图
简介
这里有一个快速截图并保存到文件的方法:
- 同步
- 异步
page.screenshot(path="screenshot.png")
await page.screenshot(path="screenshot.png")
截图 API 支持许多参数,比如图片格式、裁剪区域、质量等。请务必查看相关参数。
全页面截图
全页面截图是指对整个可滚动页面进行截图,就像你有一个非常高的屏幕,页面可以完全显示一样。
- 同步
- 异步
page.screenshot(path="screenshot.png", full_page=True)
await page.screenshot(path="screenshot.png", full_page=True)
截图到内存缓冲区
除了写入文件,你还可以获取图片的字节流,然后进行后处理,或者传递给第三方像素对比工具。
- 同步
- 异步
screenshot_bytes = page.screenshot()
print(base64.b64encode(screenshot_bytes).decode())
# 截图到图片字节流
screenshot_bytes = await page.screenshot()
print(base64.b64encode(screenshot_bytes).decode())
元素截图
有时候你可能只需要对单个元素进行截图。
- 同步
- 异步
page.locator(".header").screenshot(path="screenshot.png")
await page.locator(".header").screenshot(path="screenshot.png")