Using Selenium Web driver with Python, I am capturing screenshot from a page which is very long. Getting the following error. Normally, I got any page's screenshots without any problem.
[1112/102333.244:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102333.296:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102333.305:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102337.235:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102337.237:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102337.241:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102337.243:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102357.562:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102357.572:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102357.585:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102357.587:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102358.050:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102358.053:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102358.058:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102358.060:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102429.223:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102429.225:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102430.153:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102430.156:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102430.158:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102430.169:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102430.170:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102503.275:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
[1112/102503.278:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
Traceback (most recent call last): in get_screenshot_as_file
File "page-screen-shooter.py", line 101, in <module>
driver.save_screenshot(screen_shot_save_location + "{0}.png".format(i+1)) , in get_screenshot_as_png
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1055, in save_screenshot
return self.get_screenshot_as_file(filename)
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1032, in get_screenshot_as_file
png = self.get_screenshot_as_png()
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1064, in get_screenshot_as_png
return base64.b64decode(self.get_screenshot_as_base64().encode('ascii'))
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 1074, in get_screenshot_as_base64
return self.execute(Command.SCREENSHOT)['value']
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Python37\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: timeout: Timed out receiving message from renderer: 1.789
(Session info: headless chrome=78.0.3904.97)
In my code, I have following options:
chrome_options.add_argument("--start-maximized")
chrome_options.add_argument("--headless")
chrome_options.add_argument("--log-level=3")
I removed the following option.
chrome_options.add_argument("--start-maximized")
However I got another error:
selenium.common.exceptions.WebDriverException: Message: unknown error: unhandled inspector error: {"code":-32000,"message":"Unable to capture screenshot"}
(Session info: headless chrome=78.0.3904.97)
This error message...
[1112/102333.244:ERROR:tile_manager.cc(779)] WARNING: tile memory limits exceeded, some content may not draw
.
selenium.common.exceptions.TimeoutException: Message: timeout: Timed out receiving message from renderer: 1.789
(Session info: headless chrome=78.0.3904.97)
...implies that the ChromeDriver was unable to unable to capture screenshot of the WebBrowser i.e. chrome=78.0.3904.97.
As per the error trace logs though it is evident that you are using chrome=78.0.3904.97 but we are unsure about the ChromeDriver version.
Now as per the discussion Issue 1893: java.lang.AssertionError: unknown error: unhandled inspector error the error:
unknown error: unhandled inspector error: {"code":-32000,"message":"Unable to capture screenshot"}
was a known issue with capturing screenshot on Windows which was discussed within Issue 1844: Chrome 59 remote desktop chromedriver.exe saves white/blank screenshots and was addressed through Chrome v60.0.3112.40.
The simplest solution would be to ensure that: