API GrabzIt Python tiene muchas características avanzadas que incluyen habilitar aplicaciones para verificar el estado de las capturas de pantalla existentes y permitir que su aplicación establezca las cookies que GrabzIt utilizará.
Para que una aplicación verifique el estado de una captura de pantalla, use el método GetStatus. Esto devuelve un objeto de estado que indica si una captura aún se está procesando, tiene un mensaje de error, está en caché o ha expirado.
from GrabzIt import GrabzItClient grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret") status = grabzIt.GetStatus(screenShotId) if status.processing: # screenshot has not yet been processed if status.cached: # screenshot is still cached by GrabzIt if status.expired: # screenshot is no longer on GrabzIt # Perhaps output status message? raise Exception(status.Message)
Muchos sitios web controlan la funcionalidad de la página web a través de cookies. GrabzIt le permite configurar sus propias cookies definidas por el desarrollador de la siguiente manera.
from GrabzIt import GrabzItClient grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret") # gets an array of cookies for google.com cookies = grabzIt.GetCookies("google.com") # sets a cookie for the google.com domain grabzIt.SetCookie("MyCookie", "google.com", "Any Value You Like") # deletes the previously set cookie grabzIt.DeleteCookie("MyCookie", "google.com")
Si bien esta es una buena descripción de la funcionalidad de las cookies, los métodos de cookies tienen más parámetros como se explica en el documentación del cliente.
Si bien se recomienda descargar una captura a un servidor web antes de usarla. Es posible mostrar cualquier tipo de captura en el navegador de un usuario sin descargarla primero en su servidor web.
Para hacer esto, una vez que la captura haya finalizado, puede enviar los bytes de la captura devueltos por el SaveTo Método a la respuesta junto con el tipo mimo correcto.
from GrabzIt import GrabzItClient grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret") grabzIt.URLToImage("https://www.tesla.com") capture = grabzIt.SaveTo()
En el ejemplo anterior, obtenemos los bytes de la captura, pero la forma en que se devuelve a la respuesta dependerá del marco que esté utilizando.