Você pode usar um serviço de terceiros que faz tudo para você. GrabzIt é um exemplo. Primeiro você solicita que um URL seja transformado em uma captura de tela.
import GrabzItClient
#Create the GrabzItClient class
#Replace "APPLICATION KEY", "APPLICATION SECRET" with the values from your account!
grabzIt = GrabzItClient.GrabzItClient("APPLICATION KEY", "APPLICATION SECRET")
#Take the picture the method will return the unique identifier assigned to this task
id = grabzIt.TakePicture("http://www.google.com", "http://www.example.com/GrabzItHandler.py")
Depois, você pode baixar a imagem e salvá-la de onde quiser.
#Wait for a while
result = grabzIt.GetPicture(id)
if result != None:
#Ensure that the application has the correct rights for this directory.
fo = open("images" + os.sep + filename, "wb")
fo.write(result)
fo.close()
Você pode encontrar mais informações na API do Python .