Tome una captura de pantalla del sitio web abierto en script de python

Necesito escribir un script en python que abra un sitio web y cuando el sitio esté completamente abierto, tomará una captura de pantalla del sitio abierto.

Yo escribí algo como esto:

import webbrowser
import wx

wx.App()
link = "http://stackoverflow.com/questions"
webbrowser.get('firefox %s').open_new_tab(link)
screen = wx.ScreenDC()
size = screen.GetSize()
bmp = wx.EmptyBitmap(size[0], size[1])
mem = wx.MemoryDC(bmp)
mem.Blit(0, 0, size[0], size[1], screen, 0, 0)
del mem
bmp.SaveFile('screenshot.png', wx.BITMAP_TYPE_PNG)

Solo abre una nueva pestaña en Firefox pero no toma una captura de pantalla :(

Quiero que la solución sea multiplataforma. Gracias por cualquier ayuda:)

EDITAR:

El principal problema aquí es que el script debe tomar una foto ANTES de que mi página web esté completamente abierta. ¿Cómo resolver ese problema?

Respuestas a la pregunta(3)

Su respuesta a la pregunta