Skip to main content
Version: 1.12.0

Screenshots

Here is a quick way to capture a screenshot and save it into a file:

page.screenshot(path="screenshot.png")

Screenshots API accepts many parameters for image format, clip area, quality, etc. Make sure to check them out.

Full page screenshots#

Full page screenshot is a screenshot of a full scrollable page, as if you had a very tall screen and the page could fit it entirely.

page.screenshot(path="screenshot.png", full_page=True)

Capture into buffer#

Rather than writing into a file, you can get a buffer with the image and post-process it or pass it to a third party pixel diff facility.

screenshot_bytes = page.screenshot()
image = Image.open(io.BytesIO(screenshot_bytes))

Element screenshot#

Sometimes it is useful to take a screenshot of a single element.

element_handle = page.query_selector(".header")
element_handle.screenshot(path="screenshot.png")

API reference#