Herramientas para capturar y convertir la web

Capture capturas de pantalla del sitio web o convierta HTML a imágenesAPI de Python

Cree capturas de pantalla de imágenes perfectas de sitios web o convierta HTML directamente a imágenes utilizando las siguientes funciones de API de Python de GrabzIt. Sin embargo, antes de comenzar, recuerde que después de llamar al URLToImage, HTMLToImage or FileToImage métodos de Save or SaveTo Se debe llamar al método para tomar la captura de pantalla.

Opciones basicas

Solo se requiere un parámetro para tomar una captura de pantalla de una página web o convertir HTML intuna imagen como se muestra en el siguiente ejemplo.

grabzIt.URLToImage("https://www.tesla.com")
# Then call the Save or SaveTo method
grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>")
# Then call the Save or SaveTo method
grabzIt.FileToImage("example.html")
# Then call the Save or SaveTo method

formatos de imagen

La API Python de GrabzIt puede tomar capturas de pantalla de imágenes en varios formatos, incluidos JPG, PNG, WEBP, BMP (bit 8, bit 16, bit 24 o bit 32) y TIFF. El formato predeterminado para las capturas de pantalla de imágenes es JPG. Sin embargo, la calidad de una imagen JPG puede no ser lo suficientemente buena para algunas aplicaciones. En estas circunstancias, se recomienda el formato PNG para capturas de pantalla de imágenes, ya que proporciona un buen equilibrio entre la calidad y el tamaño del archivo. El siguiente ejemplo muestra una captura de pantalla de imagen tomada con el formato PNG.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.format = "png"

grabzIt.URLToImage("https://www.tesla.com", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.png")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.format = "png"

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.png")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.format = "png"

grabzIt.FileToImage("example.html", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.png")

Tamaño del navegador

El tamaño del navegador se refiere al tamaño de la ventana del navegador que se utilizará al capturar la captura de pantalla; en la mayoría de los casos, no es necesario establecerlo, ya que el tamaño predeterminado del navegador será suficiente para la mayoría de las tareas. Para usar el tamaño predeterminado del navegador, simplemente pase 0 al browserWidth y browserHeight atributos de la GrabzItImageOptions clase.

Cambiar tamaño de imagen

Cambiar el tamaño de una imagen es fácil, hacerlo sin distorsionar la imagen es un poco más difícil. Para simplificar todo el proceso, le recomendamos que utilice este calculadora de dimensión de imagen simple.

Si desea aumentar el ancho y alto de la imagen a un tamaño mayor que el ancho y alto del navegador, que por defecto es 1024 por 728 píxeles, el ancho y la altura del navegador también deben aumentarse para que coincidan.

Identificador personalizado

Puede pasar un identificador personalizado a imagen métodos como se muestra a continuación, este valor se devuelve a su controlador GrabzIt Python. Por ejemplo, este identificador personalizado podría ser un identificador de base de datos, lo que permite asociar una captura de pantalla con un registro de base de datos particular.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.customId = "123456"

grabzIt.URLToImage("https://www.tesla.com", options)
# Then call the Save method
grabzIt.Save("http://www.example.com/handler.py")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.customId = "123456"

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the Save method
grabzIt.Save("http://www.example.com/handler.py")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.customId = "123456"

grabzIt.FileToImage("example.html", options)
# Then call the Save method
grabzIt.Save("http://www.example.com/handler.py")

Captura de pantalla completa

GrabzIt le permite tomar una captura de pantalla completa de una página web completa para hacer esto, necesita pasar un -1 al browserHeight atributo. Para garantizar que la imagen coincida con el tamaño del navegador, pase un -1 al height y width los atributos.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzIt.URLToImage("https://www.tesla.com", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzIt.FileToImage("example.html", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")

También puede devolver miniaturas que no estén recortadas, pero tenga en cuenta que esto puede crear imágenes grandes. Para hacer esto, pase un -1 al height y / o width atributos. La dimensión que se pasa a -1 no se recortará.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.width = -1
options.height = -1

grabzIt.URLToImage("https://www.tesla.com", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.width = -1
options.height = -1

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")
from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzItImageOptions.GrabzItImageOptions()
options.width = -1
options.height = -1

grabzIt.FileToImage("example.html", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")
Tenga en cuenta que no hay un ancho de navegador completo.

¡Usar estos valores especiales significa que puede crear una captura de pantalla que sea una versión a escala completa de toda la página web si lo desea!

Tomar una captura de pantalla de un elemento de página

GrabzIt le permite tomar una captura de pantalla de un elemento HTML, como un div or span etiquetar y capturar todo su contenido. Para hacer esto, la identificación o clase del elemento HTML que desea capturar debe especificarse como Selector de CSS.

...
<div id="features">
	<img src="http://www.example.com/race.jpg"/><h3>Car Race Tommorow</h3>
</div>
...

Para el ejemplo a continuación, seleccionaremos el div con la identificación "características" y lo enviaremos como una imagen 250 x 250px JPEG.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

# The 250 parameters indicates that image should be sized to 250 x 250 px
options = GrabzItImageOptions.GrabzItImageOptions()
options.width = 250
options.height = 250
options.format = "jpg"
options.targetElement = "#features"

grabzIt.URLToImage("http://www.bbc.co.uk/news", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")

El siguiente ejemplo toma otra captura de pantalla del div "características" pero esta vez genera una imagen JPEG que tiene el tamaño exacto del div.

from GrabzIt import GrabzItImageOptions
from GrabzIt import GrabzItClient

grabzIt = GrabzItClient.GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret")

# The -1 indicates that image should not be cropped
options = GrabzItImageOptions.GrabzItImageOptions()
options.width = 250
options.height = 250
options.browserHeight = -1
options.format = "jpg"
options.targetElement = "#features"

grabzIt.URLToImage("http://www.bbc.co.uk/news", options)
# Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg")