# -*- coding: utf-8 -*-
#######################
# WARNING
# Running this code sample will cost you Browshot credits
#######################

from browshot import BrowshotClient

browshot = BrowshotClient('my_api_key')


data = browshot.simple('http://mobilito.net/', { 'cache': 60 * 60 * 24 * 365, 'instance_id': 12 }) # 1 year cache, free screenshot
# code above is blocking, it will return when the screenshot finished or failed

if int(data['code']) == 200: # success
  image = open("screenshot.png", mode='wb')
  image.write(data['png'])
  image.close()
  
  print "Screenshot saved to screenshot.png"
else:
  print "Screenshot failed!"
  # the reason for the error is sent as part of the HTTP response in the X-Error header but it is not exposed by this library

# quicker way to save a screenshot
info = browshot.simple_file('http://mobilito.net/', "mobilito.png", { 'cache': 0, 'instance_id': 65, 'screen_width': 1280, 'screen_height': 1024 }) # no cache, premium browser
if info['file'] != '':
  print "Screenshot saved to %s" % info['file']
else:
  print "The screenshot failed"
