Herramientas para capturar y convertir la web

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

API de rubí

Produzca mejores capturas de pantalla de imágenes de páginas web o convierta HTML directamente a imágenes utilizando las siguientes funciones de API de Ruby de GrabzIt. Sin embargo, antes de comenzar, recuerde que después de llamar al url_to_image, html_to_image or file_to_image métodos de save or save_to Se debe llamar al método para crear la imagen.

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.

grabzItClient.url_to_image("https://www.tesla.com")
# Then call the save or save_to method
grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>")
# Then call the save or save_to method
grabzItClient.file_to_image("example.html")
# Then call the save or save_to method

formatos de imagen

La API Ruby 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.

grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.format = "png"

grabzItClient.url_to_image("https://www.tesla.com", options)
# Then call the save or save_to method
grabzItClient.save_to("result.png")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.format = "png"

grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the save or save_to method
grabzItClient.save_to("result.png")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.format = "png"

grabzItClient.file_to_image("example.html", options)
# Then call the save or save_to method
grabzItClient.save_to("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 establecer el tamaño del navegador, simplemente pase un valor a browserWidth y browserHeight métodos de la ImageOptions 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 1366 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 Ruby. 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.

grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.customId = "123456"

grabzItClient.url_to_image("https://www.tesla.com", options)
# Then call the save method
grabzItClient.save("http://www.example.com/handler/index")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.customId = "123456"

grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the save method
grabzItClient.save("http://www.example.com/handler/index")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.customId = "123456"

grabzItClient.file_to_image("example.html", options)
# Then call the save method
grabzItClient.save("http://www.example.com/handler/index")

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 método. Para garantizar que la imagen coincida con el tamaño del navegador, pase un -1 al height y width los atributos.

grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzItClient.url_to_image("https://www.tesla.com", options)
# Then call the save or save_to method
grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the save or save_to method
grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.browserHeight = -1
options.width = -1
options.height = -1

grabzItClient.file_to_image("example.html", options)
# Then call the save or save_to method
grabzItClient.save_to("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 métodos La dimensión que se pasa a -1 no se recortará.

grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.width = -1
options.height = -1

grabzItClient.url_to_image("https://www.tesla.com", options)
# Then call the save or save_to method
grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.width = -1
options.height = -1

grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options)
# Then call the save or save_to method
grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

options = GrabzIt::ImageOptions.new()
options.width = -1
options.height = -1

grabzItClient.file_to_image("example.html", options)
# Then call the save or save_to method
grabzItClient.save_to("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, el elemento HTML que desea capturar debe especificarse como un Selector de CSS.

...
<div id="features">
	<img src="http://www.example.com/rocket.jpg"/><h3>Rocket Launch Next Week</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.

grabzItClient = GrabzIt::Client.new("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 = GrabzIt::ImageOptions.new()
options.width = 250
options.height = 250
options.format = "jpg"
options.targetElement = "#features"

grabzItClient.url_to_image("http://www.bbc.co.uk/news", options)
# Then call the save or save_to method
grabzItClient.save_to("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.

grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret")

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

grabzItClient.url_to_image("http://www.bbc.co.uk/news", options)
# Then call the save or save_to method
grabzItClient.save_to("result.jpg")