14. social amazon amee answers appdb apple arxiv auth avatars aws basecamp batlas bbc bible bit bizrate blackcountryhistory boston brazil britishmuseum brooklyn bungie christies comicvine couprecoup craigslist darkhelmet delicious digg digitalnz dopplr dostopsi edu ericssonlabs esme etsy eyefi facebook fantasysports fcc filemd5 finance fitbit flickr folderscrape foursquare friendfeed gdacs geo github google gov gowalla greader greenbookings guardian hackernews hatena ign imdb infochimps instapaper intuit ip kiva lastfm limewirestore livedoor local longurl maps mediawikiapi meetup meme mendeley microsoft misc mixi movies mozillalabs museumoflondon music mybloglog mynewsdesk ncbi nestoria netflix newegg nextbus ngmoco nmm nmsi noaa npr nyt openaustralia opencalais opencontext openid opensocial paypal pidgets pikchur plos pubsubhubbub query recovery rss rtm salesforce seafoodwatch search sears seomoz shelfari shipping shopping shoppingcart simplegeo slideshare socialgraph socialmention sparql spotify sunlight tarpipe test text themoviedb thetvdb timeout tinysong tumblr tvrage twfy twitter ukparliament ukpostcode upcoming urbanesia usgs victoriaandalbert vimeo weather wesabe whitepages wordpress worldbank wufoo wunderground yahoo yahoojp yap yelp ymail youtube yql yui zillow data
15.
Notas del editor
Everyone has an API these days; Google, Amazon, Twitter, Microsoft, Facebook, Yahoo, and a billion others. All of them are different, though, so you end up having to write your own wrappers for each. and. every. one.
YQL is different. YQL is the API for APIs. It turns the Internet into your database. Want Google search results? Use YQL. Want a piece of text translated? Use YQL. Want to find a list of all the locations in a webpage? Use YQL. Want to get all the headers in a webpage? Use YQL. YQL acts as middle-man between you and thousands of APIs (and growing). It searches, it translates, it geocodes! It would even make coffee, if you gave it an API for that.
YQL uses a SQL-like query language, allowing you to create simple queries from one API or really easily chain queries together. All of this, using one language, against one endpoint that gives you everything on the Internet. But how do you test your queries? To the console!
This is the console. You can enter queries here…
We can do simple things like ‘Search flickr for 10 cat pictures’. http://www.flickr.com/search/?q=cat&w=all&m=&s=
By selecting from flickr.photos.search where the text is cat. But what if we want to do something more complex?
Let’s start by finding tweets about Egypt… (select * from twitter.search where q='egypt')
And now, let’s make them all Spanish… select * from google.translate where q in (select text from twitter.search where q='egypt') and target="es";) That’s pretty cool. What else can we do?
And now, let’s wrap a UI around that… And we have a hack! ( http://isithackday.com/hacks/twitter-translate-form.php?search=egypt&amount=20&language=es )
Search Google, Bing, and Yahoo, all at once! (select * from query.multi where queries=' select Title,Description,Url,DisplayUrl from microsoft.bing.web(20) where query="cat"; select title,clickurl,abstract,dispurl from search.web(20) where query="cat"; select titleNoFormatting,url,content,visibleUrl from google.search(20) where q="cat"')
Give it a UI… that’s a hack! ( http://icant.co.uk/goohoobi/index.php?search=cat&style= )
Grab all the links from the CNN homepage. (select * from html where url=' http://cnn.com/' and xpath='//a')
Hundreds of APIs… all in one place. Accessible to your app…