Top Banner
Saurabh Sahni Developer, hacker, evangelist Build your Own Search Service Yahoo! HackU IIIT Hyderabad | 22 nd Jan 2010
50

BOSS: Yahoo HackU IIIT Hyderabad

Oct 19, 2014

Download

Education

This presentation provides an introduction Yahoo! BOSS API
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: BOSS: Yahoo HackU IIIT Hyderabad

Saurabh Sahni

Developer, hacker, evangelist

Build your Own Search Service

Yahoo! HackU IIIT Hyderabad | 22nd Jan 2010

Page 2: BOSS: Yahoo HackU IIIT Hyderabad

•  About BOSS API – What?

– Why? – Features

•  What can be built with the BOSS API? •  How to use it

– BOSS API – Code example – BOSS Mashup framework

Outline

Page 3: BOSS: Yahoo HackU IIIT Hyderabad

About BOSS API

Page 4: BOSS: Yahoo HackU IIIT Hyderabad

•  Open Yahoo’s core search features via web services to let 3rd parties revolutionize Search

What?

http://developer.yahoo.com/search/boss

Page 5: BOSS: Yahoo HackU IIIT Hyderabad

Usage

Opening the search technology stack

CRAWL

EXTRACT

SPAM <-> Gold

Analyze

Index

Rank Assist

Index

Web Map

Retrieve

Page 6: BOSS: Yahoo HackU IIIT Hyderabad

Usage

Opening the search technology stack

CRAWL

EXTRACT

SPAM <-> Gold

Analyze

Index

Rank Assist

Index

Web Map

Retrieve

WEB API

Your App here

Page 7: BOSS: Yahoo HackU IIIT Hyderabad

Why?

•  Removes entry barriers

•  Asset to Innovate –  Develop new relevance models –  Change presentation style

•  Search anywhere –  Improve Vertical Quality with Web comprehensiveness

Page 8: BOSS: Yahoo HackU IIIT Hyderabad

• No branding or attribution

• Ability to change presentation style • Ability to re-order results and blend-in additional

content

• Access to multiple verticals (web search, image, news)

• Keyword suggestions, spell checks • Semantic data, in-links, abstracts • Ability to monetize

BOSS API features

Page 9: BOSS: Yahoo HackU IIIT Hyderabad

What can be built with the BOSS API?

Page 10: BOSS: Yahoo HackU IIIT Hyderabad

middlespot.com

10 

Page 11: BOSS: Yahoo HackU IIIT Hyderabad

Inquisitor: Browser Extenstion

11 

Page 12: BOSS: Yahoo HackU IIIT Hyderabad

Cluuz: http://cluuz.com

Page 13: BOSS: Yahoo HackU IIIT Hyderabad

Keyword finder - http://keywordfinder.org/

Page 14: BOSS: Yahoo HackU IIIT Hyderabad

askBOSS: http://ask-boss.appspot.com/

Page 15: BOSS: Yahoo HackU IIIT Hyderabad

askBOSS: http://ask-boss.appspot.com/

Page 16: BOSS: Yahoo HackU IIIT Hyderabad

askBOSS: http://ask-boss.appspot.com/

Page 17: BOSS: Yahoo HackU IIIT Hyderabad

Webmeme: http://www.webmeme.in

17 

Page 18: BOSS: Yahoo HackU IIIT Hyderabad

How to use it?

Page 19: BOSS: Yahoo HackU IIIT Hyderabad

Get Started

•  Register for an application id http://developer.yahoo.com/wsregapp/

Page 20: BOSS: Yahoo HackU IIIT Hyderabad

•  Documentation http://developer.yahoo.com/search/boss/boss_guide/

•  Code samples: Javascript, PHP and Python http://www.saurabhsahni.com/boss-examples.zip

Get Started…

Page 21: BOSS: Yahoo HackU IIIT Hyderabad

•  {query}: term to look for (url-encoded) •  {vert} := {web, news, images, spelling}

•  @ required – appid

•  @ optional – start, count, lang, region, format, callback,

sites, view

BOSS Search API Interface

http://boss.yahooapis.com/ysearch/{vert}/v1/{query}

Page 22: BOSS: Yahoo HackU IIIT Hyderabad

(Source: http://en.wikipedia.org/wiki/File:Slumdog_Millionaire_poster.jpg)

Page 23: BOSS: Yahoo HackU IIIT Hyderabad

BOSS API

•  Search for avatar: –  http://boss.yahooapis.com/ysearch/web/v1/avatar?appid=xyz&format=xml

Page 24: BOSS: Yahoo HackU IIIT Hyderabad

BOSS API: XML response

h"p://boss.yahooapis.com/ysearch/web/v1/avatar?appid=xyz&format=xml 

Page 25: BOSS: Yahoo HackU IIIT Hyderabad

Site Restrict Search

•  Search for avatar on selected movie sites – Add param

sites=indiatimes.com,movies.yahoo.com,imdb.com

–  http://boss.yahooapis.com/ysearch/web/v1/avatar?appid=xyz&sites=imdb.com%2Cmovies.yahoo.com&format=xml

Page 26: BOSS: Yahoo HackU IIIT Hyderabad

Site Restrict Search

Page 27: BOSS: Yahoo HackU IIIT Hyderabad

Search images

•  http://boss.yahooapis.com/ysearch/images/v1/avatar?dimensions=large

Page 28: BOSS: Yahoo HackU IIIT Hyderabad

http://boss.yahooapis.com/ysearch/images/v1/ avatar

Page 29: BOSS: Yahoo HackU IIIT Hyderabad

Search News

•  http://boss.yahooapis.com/ysearch/news/v1/avatar?age=15d

Page 30: BOSS: Yahoo HackU IIIT Hyderabad

Code Example Movie Search

Page 31: BOSS: Yahoo HackU IIIT Hyderabad
Page 32: BOSS: Yahoo HackU IIIT Hyderabad

Movie Search Code Example

Page 33: BOSS: Yahoo HackU IIIT Hyderabad

http://www.saurabhsahni.com/boss-examples.zip

Page 34: BOSS: Yahoo HackU IIIT Hyderabad

More with BOSS API

Page 35: BOSS: Yahoo HackU IIIT Hyderabad

Add parameter view=keyterms –  http://boss.yahooapis.com/ysearch/web/v1/avatar?

appid=xyz&view=keyterms&format=xml

Related keywords

Page 36: BOSS: Yahoo HackU IIIT Hyderabad

http://boss.yahooapis.com/ysearch/web/v1/avatar &appid=xyz&view=keyterms&format=xml

Page 37: BOSS: Yahoo HackU IIIT Hyderabad

Semantic Data

•  Access structured data acquired through SearchMonkey

Page 38: BOSS: Yahoo HackU IIIT Hyderabad

Semantic Data

view=searchmonkey_feed view=searchmonkey_rdf

http://developer.yahoo.com/search/boss/stuctureddata.html

Page 39: BOSS: Yahoo HackU IIIT Hyderabad

•  Add parameter abstract=long – get up to 300 characters instead of 130

Long abstracts

Page 40: BOSS: Yahoo HackU IIIT Hyderabad

http://boss.yahooapis.com/ysearch/spelling/v1/avataar?format=xml

Response

Spell Check 

Page 41: BOSS: Yahoo HackU IIIT Hyderabad

•  Get page inlinks –  http://boss.yahooapis.com/ysearch/se_inlink/v1/

{URL}?appid={APPID}

•  Page data: collection of subpages in a domain –  http://boss.yahooapis.com/ysearch/se_pagedata/v1/

{URL}?appid={APPID}

Site Explorer

Page 42: BOSS: Yahoo HackU IIIT Hyderabad

•  Python (v2.5+) library

•  BOSS Search SDK plus …

•  SQL for remixing arbitrary XML/JSON sources

BOSS Mashup Framework

http://developer.yahoo.com/search/boss/mashup.html

Page 43: BOSS: Yahoo HackU IIIT Hyderabad

•  Enhanced version of BMF to GAE platform

•  http://zooie.wordpress.com/2008/08/04/yahoo-boss-google-app-engine-integrated/

•  Enables quick deployment of BOSS applications online

BMF + Google App Engine

Page 44: BOSS: Yahoo HackU IIIT Hyderabad

•  http://mashable.com/boss/ •  http://delicious.com/tag/bossmashup

•  Add yours by tagging it with “bossmashup” on

Del.icio.us!

More BOSS Implementations

Page 45: BOSS: Yahoo HackU IIIT Hyderabad

One more thing… One more thing…

Page 46: BOSS: Yahoo HackU IIIT Hyderabad

•  The biggest dataset available on web •  Very useful for Web-mining research

experiments – Natural language processing – Semantic extraction

– Related keywords – Similarity detection – Clustering algorithms – Spelling corrections

BOSS in Academic Research

Page 47: BOSS: Yahoo HackU IIIT Hyderabad

Learn more at: http://developer.yahoo.com/search/boss/

Slides at: http://www.slideshare.net/saurabhsahni/

Questions?

Page 48: BOSS: Yahoo HackU IIIT Hyderabad

Appendix

Page 49: BOSS: Yahoo HackU IIIT Hyderabad

BOSS Mashup Framework simplifies aggregating and presenting multiple data sources

Search UI Templates in BOSS Mashup Framework

Page 50: BOSS: Yahoo HackU IIIT Hyderabad

•  select, group, sort, union, joins, udfs, where •  Text normalization and duplicate removal

•  All-in-memory storage and retrieval operations

•  Ability to join lists of tables via an arbitrary predicate function (map-like)

•  Search UI template framework •  Single search function provides total access to

BOSS REST API

BMF Features