I previously wrote about downloading Bing’s daily image and set it as your wallpaper using PowerShell script. However, if you are a Mac user, this simple Python script will do a similar job.
I have already made the following script an app using Mac Automator. It basically creates a new directory for you, if one does not exist, under your “Pictures” directory called “Bing Wallpapers” and download Bing’s daily image there as “wallpaper.jpg”.
You can save the app in your Applications folder or anywhere you want.
Or, if you want to edit the script, download the source below and make your own app.
import urllib2 import json import datetime import os.path, time from os.path import expanduser #market options: en-US, zh-CN, ja-JP, en-AU, en-UK, de-DE, en-NZ market = 'en-US' resolution = '1920x1080' BingDirectory= expanduser("~") +'/Pictures/Bing Wallpaper/' WallpaperName = 'wallpaper.jpg' loop_value = 1 while (loop_value == 1): try: urllib2.urlopen("http://google.com") except urllib2.URLError, e: time.sleep( 10 ) else: loop_value = 0 response = urllib2.urlopen("http://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1&mkt=" + market) obj = json.load(response) url = (obj['images']['urlbase']) url = 'http://www.bing.com' + url + '_' + resolution + '.jpg' if not os.path.exists(BingDirectory): os.makedirs(BingDirectory) path = BingDirectory + WallpaperName if os.path.exists(path): todayDate = datetime.datetime.now().strftime("%m/%d/%Y") fileDate = time.strftime('%m/%d/%Y', time.gmtime(os.path.getmtime(path))) if todayDate == fileDate: print "You already have today's Bing image" else: print ("Downloading Bing wallpaper to %s" % (path)) f = open(path, 'w') bingpic = urllib2.urlopen(url) f.write(bingpic.read()) else: print ("Downloading Bing wallpaper to %s" % (path)) f = open(path, 'w') bingpic = urllib2.urlopen(url) f.write(bingpic.read())
To make the script an app using Automator, follow these step by step.
That should be it! If you want to go the extra mile and change the app icon to Bing’s logo. Do this:
First download an icon. I have included the Bing icon I used if you would like to use it.
That should be it. Enjoy your Bing images 😉
To set the script to run every time you log in. Go to your “System Preferences” -> “Users & Groups”, select your username, select “Login Items” and click on the “+” sign to add an application to run at login