Last Updated : 12 Jul, 2025
Selenium’s Python Module is built to perform automated testing with Python. Selenium Python bindings provides a simple API to write functional/acceptance tests using Selenium WebDriver. To open a webpage using Selenium Python, checkout -
Navigating links using get method – Selenium Python. Just being able to go to places isn’t terribly useful. What we’d really like to do is to interact with the pages, or, more specifically, the HTML elements within a page. There are multiple strategies to find an element using Selenium, checkout -
Locating StrategiesThis article revolves around how to use
screenshot_as_png
method in Selenium.
screenshot_as_png
method is used to gets the screenshot of the current element as binary data.
Syntax -element.screenshot_as_pngExample - html
<input type="text" name="passwd" id="passwd-id" />
To find an element one needs to use one of the locating strategies, For example,
element = driver.find_element_by_id("passwd-id") element = driver.find_element_by_name("passwd") element = driver.find_element_by_xpath("//input[@id='passwd-id']")
Also, to find multiple elements, we can use -
elements = driver.find_elements_by_name("passwd")
Now one can get screenshot of this element with binary data -
element.screenshot_as_pngHow to use screenshot_as_png element method in Selenium Python ?
Let's try to get element and its screenshot at geeksforgeeks using
screenshot_as_pngmethod.
Program - Python3
# import webdriver
from selenium import webdriver
# create webdriver object
driver = webdriver.Firefox()
# get geeksforgeeks.org
driver.get("https://www.geeksforgeeks.org/")
# get element
element = driver.find_element_by_id("gsc-i-id2")
# get rect
print(element.screenshot_as_png)
Output- Terminal Output -
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4