The Google Knowledge Graph. Showing quick stats, connections, follow-up links on celebrities, buildings, places, bands and many more. To check it out switch to Google.com in English.
Google Images - When searching for some images which are somehow connected with recent events, it shows a little label with it’s age
/via Ondra
Sebastian Schmieg is getting creative with code (see below). As far as I interpret the code right (and I just vaguely understand this 01-gibberish) he uses the Google image search for similar images and starts with a black image. And always uses the first resulting image for a next search and so on. And putting all the results together in a video. And the fun part: even though the start is just a blank/black image, a (little random, still amusing) narrative is created. Totally generative with no human manipulation at all. It’s a bit dry, though, without any soundtrack. Try listening to this in background while watching the video: Philip Glass, Glassworks.
import re, subprocess, time class GoogleSearchByImage : GOOGLE_URL = "http://www.google.com" GOOGLE_SBI_URL = "/searchbyimage?image_url=" AGENT_ID = "Mozilla/5.0 (X11; Linux x86_64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1" MIN_SECONDS_BETWEEN_REQUESTS = 2 _myLastRequestTimestamp = 0 _myCurrentHtml = "" def scrape(self, theReference) : if time.time() - self._myLastRequestTimestamp < self.MIN_SECONDS_BETWEEN_REQUESTS : time.sleep(self.MIN_SECONDS_BETWEEN_REQUESTS - (time.time() - self._myLastRequestTimestamp)) return self.scrape(theReference) else : self._myCurrentHtml = self.getHtml(self.GOOGLE_URL + self.GOOGLE_SBI_URL + theReference) self._myLastRequestTimestamp = time.time() def getHtml(self, theUrl) : try : myHtml = subprocess.check_output(["curl", "-L", "-A", self.AGENT_ID, theUrl], stderr=subprocess.STDOUT) return myHtml except : print "Curl error. Will sleep for 10 seconds" time.sleep(10) return self.getHtml(theUrl) def getSimilarImages(self) : myPattern = re.compile("\" href\=\"\/imgres\?imgurl\=(.*?)(\&|\%3F)") myImages = myPattern.findall(self._myCurrentHtml) myImagesUrls = [] for myImage in myImages : myImagesUrls.append(myImage[0]) return myImagesUrls def getLinkToSimilarImagesPage(self) : myPattern = re.compile("\<a href\=\"([^\"]+[.]?)\"\>Visually similar images\<\/a\>") myPageUrl = myPattern.findall(self._myCurrentHtml) myPageUrl = str(myPageUrl[0]).replace("&", "&") myPageUrl += "&biw=1600&bih=825" # always keep this return self.GOOGLE_URL + myPageUrl
E-Z Fynd. Maybe a google killer. Nonetheless a next-gen approach to semantic web search. And lightspeed fast.
(via The Awesomer)