Added a try / except block around placing a urllib2.urlopen(). Additionally, when there is an error I print it and return None. This will tell the cache to remove the opened file.
Whenever a new song is loaded, we check the cache for album art. If we don't have art yet, then we place a request to the last.fm to find an image.