Examples
How to convert HTML to a base64 image with Selenium and Ruby
Install Selenium for Ruby
gem install selenium-webdriver selenium-webdriver 4.11+ includes Selenium Manager, which downloads the right chromedriver automatically — the separate webdrivers gem is no longer needed.
Get the base64 encoded image of some HTML and print to screen
require 'selenium-webdriver'
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless=new')
driver = Selenium::WebDriver.for(:chrome, options: options)
html = '<html><body><h1>Hello World</h1></body></html>'
driver.get('data:text/html;charset=utf-8,' + html)
puts driver.screenshot_as(:base64)
driver.quit Find out how to generate a PNG from HTML with Ruby and Selenium.
That was 13 lines of code — plus a browser to run in production
Keeping headless browsers fed, patched and scaled is a job in itself. We built Urlbox so the same screenshot is one API call:
curl "https://api.urlbox.com/v1/YOUR_API_KEY/png?url=https://example.com" Try the Urlbox screenshot API — free trial, no browser babysitting.