Just as the subject.
With self.get_screenshot_as_base64(), we can capture an image for the whole screen. it works with this (‘GET’, ‘/session/$sessionId/screenshot’).
Do we have some approach to capture an image for an element?
Just as the subject.
With self.get_screenshot_as_base64(), we can capture an image for the whole screen. it works with this (‘GET’, ‘/session/$sessionId/screenshot’).
Do we have some approach to capture an image for an element?
Done!
In Python, we can use PIL.Image module to handle the image
def capture(self, what):
begin = what.location
size = what.size
start_x = begin['x']
start_y = begin['y']
end_x = start_x + size['width']
end_y = start_y + size['height']
name = str(start_x)+'_'+str(start_y)+'_'+str(end_x)+'_'+str(end_y)
box = (start_x, start_y, end_x, end_y)
self.driver.get_screenshot_as_file(tmp + '/' + 'full_screen.png')
image = Image.open(tmp + '/' + 'full_screen.png')
newimage = image.crop(box)
newimage.save(tmp + '/' + name + '.png')
os.popen('rm %s/full_screen.png' %tmp)
‘what’ is a webelement, ‘tmp’ is a temporary folder.