ToC                                             1. Introduction                                             2. Definition ...
Hello World (“もしかして”)                                                 なぜWeb APIを使うのか?  http://google.com/complete/search?o...
定義は難しい                                                 たとえばWikipediaは:2. Definition (tentative)                        「We...
Amazon                                                                    Amazon Webサービス                                  ...
はてな                                                      その他のWeb API    はてなウェブサービス                                        ...
マッシュアップとは                                                  マッシュアップの例    Web APIを組み合わせて便利なもの・面白いものを作る                      ...
京大でも何かしませんか?                                                      図書館系Web API    Web APIを利用して便利なサービスが提供できないか?             ...
妄想1:所蔵図書館マップ(京大版)                                                   妄想2:OPACに表紙画像を      ISBNを入れてぽちっ→KULINEを検索して所蔵館がGoogle ...
妄想5:URLの横に「人気度」を                                           妄想6:Web APIを提供してみる    はてなブックマーク(などSBM)を利用して,図書館で提供する           ...
発展     4大Webサービス完全攻略(4774124966)     PHP5で作るWebサービス(4861371000)     RESTful Webサービス(9784873113531)     ProgrammableWeb    ...
Upcoming SlideShare
Loading in...5
×

20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)

718

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
718
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)

  1. 1. ToC 1. Introduction 2. Definition (tentative) 3. Examplesデータベースからデータだけをいただく方法 main 4. MashUps(Web API入門) 5. Applications to library services 6. References 6 Refe ences hayashiyutaka@gmail.com 2008.03.27(木) 18:30~ ku-libraians勉強会 #98 2008/03/27 ku-librarians勉強会 #98 2 Web APIとは? Web Application Programming Interface というとなんだか難しそうだが1. Introduction Webサイトからデータだけをかんたんに取得するためのしくみ RSSもWeb APIのひとつ 2008/03/27 ku-librarians勉強会 #98 4 1
  2. 2. Hello World (“もしかして”) なぜWeb APIを使うのか? http://google.com/complete/search?output=toolbar&q=addres 1. 処理の自動化 ISBNでKULINE検索→所蔵館をコピペ……を100回 2. インタフェースへの不満 KULINEの検索結果は見やすいとは言えない <toplevel> 一般に万人に使いやすいインタフェースを設計するのは無理 <CompleteSuggestion> じゃあ自分で作れば? <suggestion data “address” /> data= address 3. メタサーチ(一種のマッシュアップ) <num_queries int=“1890000000” /> Z39.50やスクリーン・スクレイピングは高コスト </CompleteSuggestion> XMLゲートウェイ(Web APIの一種)へ ... <spelling_suggestion data=“<b><i>address</i></b>” /> 4. データの再利用 </toplevel> データプロバイダは流通しやすいフォーマット・単位を採用すべき データベースとしてのWeb(→Web2.0, Semantic Web) 2008/03/27 ku-librarians勉強会 #98 5 2008/03/27 ku-librarians勉強会 #98 6『今後の図書館システムの方向性について』 id:naoya says: 今後の図書館システムの方向性について はてなCTO伊藤直也は「なぜそんなこと(注:Web APIの提供)を 国大図協:学術情報委員会図書館システム検討WG (2007.03) するのか」という問いに対して… http://www.soc.nii.ac.jp/anul/j/projects/si/systemwg_repo rt.pdf これから先のインターネットでは,トラフィックをいかに集めたかと いうことよりも,インターネット上でどれだけデータを広めることが できたか,ということが価値を持ち始めるのではないか,という, 第5章「W b2 0と今後の図書館システムの展開」 第5章「Web2.0と今後の図書館システムの展開」 はてななりの視点があったりします. 村田 輝,村上晋司 APIについて触れている p.29「3)開放型OPAC」が特に 外部のWebサービスとの連携・協調やユーザーへのデータの開放 などにより,OPACの中で完結しない,開かれたサービスを実現する … 『4大Webサービス完全攻略』 p.110 2008/03/27 ku-librarians勉強会 #98 7 2008/03/27 ku-librarians勉強会 #98 8 2
  3. 3. 定義は難しい たとえばWikipediaは:2. Definition (tentative) 「Webサービス(ウェブサービス)とは、HTTPなどのインターネット 関連技術を応用して、SOAPと呼ばれるXML形式のプロトコルを 用いメッセ ジの送受信を行う技術、またはそれを適用したサ 用いメッセージの送受信を行う技術、またはそれを適用したサー ビス。W3Cにおいては、Webサービスとは、さまざまなプラット フォーム上で動作する異なるソフトウェア同士が相互運用するた めの標準的な手段を提供するものと説明されている。」 (Webサービス – Wikipedia) 2008/03/27 ku-librarians勉強会 #98 10分かりにくいのでこう考えてみる Terminology Webページ 「○○はWeb APIを提供している」 URLとHTMLの交換 「○○はWebサービスである」 人間が見るもの ○○=Google,Yahoo!,はてな,Amazon,… デザインつき こってり 「Webサービス」と「Web上のサービス」の違い いらない部分がいっぱいついてくる KULINEは「Web上のサ ビス」だが「Webサ ビス」ではない KULINEは「Web上のサービス」だが「Webサービス」ではない いわゆるオンラインサービスは「Webサービス」ではない Web API URLとXML(など)の交換 コンピュータ(プログラム)が見るもの 肝心なデータのみ あっさり 必要な部分だけ(あるいはいらない部分は簡単に除去できる) 2008/03/27 ku-librarians勉強会 #98 11 2008/03/27 ku-librarians勉強会 #98 12 3
  4. 4. Amazon Amazon Webサービス http://www.amazon.co.jp/gp/feature.html?docId=451209 http://www.ajaxtower.jp/ecs/ 分かりやすい解説 3. Examples 検索条件=ASINやタイトルなどいろいろ 取得できる情報(一部) 商品の詳細情報 商品の画像 レビュー ランキング 関連商品(「この商品を買った人はこんな商品も買っています」) 2008/03/27 ku-librarians勉強会 #98 14Google Yahoo! Google Code Yahoo!デベロッパーネットワーク http://code.google.com/intl/ja/more/ http://developer.yahoo.co.jp/ 多すぎる! Ajax Search Yahoo! Book Search Viewability (Mar 2008) 検索 Maps ウェブ検索 Calendar C l d 関連検索ワード Chart 地図情報 Documents Visualization (Mar 2008) テキスト解析 Google Ajax 日本語形態素解析 Picasa 校正支援 YouTube Flickr Ajax Language (24 Mar 2008) Yahoo! pipes 2008/03/27 ku-librarians勉強会 #98 15 2008/03/27 ku-librarians勉強会 #98 16 4
  5. 5. はてな その他のWeb API はてなウェブサービス 最寄り駅 http://www.hatena.ne.jp/info/webservices http://map.simpleapi.net/ 路線/駅名/最寄り駅 ブックマーク件数(XML-RPC) http://express.heartrails.com/ キーワード お天気 ダイアリー http://weather.livedoor.com/weather_hacks/webservice.ht p フォトライフ ml 人力検索 はてな? 京大理学研究科出身の近藤氏が2001年に設立 「人力検索」からスタート この春オフィスを烏丸御池に移転(スタッフ募集中) 2008/03/27 ku-librarians勉強会 #98 17 2008/03/27 ku-librarians勉強会 #98 18メリット&デメリット メリット サインアップすれば誰でも無料で使える(ものが多い) 簡単に使える とりあえずブラウザがあればWeb APIを実行できる 有名言語で有名APIを利用するモジュールは豊富 4. MashUps イチから実装するのも難しくない デメリット サービス保障はない 突然提供が中止されることも API提供元のダウン時に備える必要あり 利用制限があることも(1日のリクエスト上限) 2008/03/27 ku-librarians勉強会 #98 19 5
  6. 6. マッシュアップとは マッシュアップの例 Web APIを組み合わせて便利なもの・面白いものを作る Buzz Japan! http://jpn-now.net/ はてなブックマーク Google Mapsをベースにして,その上に種々のデータをプ livedoorクリップ ロットするものが多い YouTube Yahoo!ブックマーク マッシュアップエディタ 楽天(ランキング) 楽天(ラ キ グ) Yahoo! pipes Flickr Googleニュース Yahooニュース Amazonベストセラー Yahoo!検索ランキング などなど 2008/03/27 ku-librarians勉強会 #98 21 2008/03/27 ku-librarians勉強会 #98 22マッシュアップの例 Yahoogle! Yahoo! x Google http://enjoy.yahoogle.jp/ Qoogle Google Suggest x Yahoo! x Hatena::Bookmark 5. Applications to library services http://qooqle.jp/ Amazlet Amazonインタフェース改造 http://www.amazlet.com/ Weather Bonk Google Maps x 天気? http://www.weatherbonk.com/ 2008/03/27 ku-librarians勉強会 #98 23 6
  7. 7. 京大でも何かしませんか? 図書館系Web API Web APIを利用して便利なサービスが提供できないか? OCLC: Worldcat Affiliate 世間で実現されてることを図書館でもやりたいというだけ xISBN, xISSN JSTOR: XMLゲートウェイ http://www.jstor.org/about/xml-gateway.html SRW/SRU(CQL)→XML(DC) orded by relevancy Serials Solutions: 360 LINK XML API RICOH: LIMEDIO v.7 OPAC NII: JuNii+ APIというかふつーにXML+XSLT NDL: PORTA Ex Libris: MetaLib X-Server? 2008/03/27 ku-librarians勉強会 #98 25 2008/03/27 ku-librarians勉強会 #98 26図書館系マッシュアップ 使えそうなWeb API 所蔵図書館マップ Google Book Search Book Viewability API http://myrmecoleon.sytes.net/map/ Amazon Webサービス ISBNで3つのOPACを検索→所蔵館をG.Mapにプロット OCLC Google Maps Ajaxなネット書店横断検索 SBM http://myrmecoleon.sytes.net/search/bookstore.php p y y p p 宮崎大学OPAC + JuNii2 http://opac.lib.miyazaki-u.ac.jp:8080/ Amazon→OPACを検索 2008/03/27 ku-librarians勉強会 #98 27 2008/03/27 ku-librarians勉強会 #98 28 7
  8. 8. 妄想1:所蔵図書館マップ(京大版) 妄想2:OPACに表紙画像を ISBNを入れてぽちっ→KULINEを検索して所蔵館がGoogle Amazon Webサービス Maps上にプロットされる ISBNやタイトルなどで検索して画像のURLを取得する Ex LibrisのPrimoでやってた しくみ 1. ISBNでKULINEを検索する GBS Viewability API 2. 検索結果から所蔵情報を抜き出す 2008/3/13:APIリリース このスクリーン・スクレイピングがとてつもなく面倒くさい 同時に早くも実装した北米図書館が 特にKULINEのような汚いソースでは 2008/3/19:Ex Librisが自社製品に実装したとリリース KULINEがWeb APIを提供していれば楽勝 Primo, SFX, Aleph, Voyager 3. 所蔵館の経緯度(geocode)を取得 ISBNのほかにOCLC, LCCNで検索できるのが面白い あらかじめデータベースを作っておく 4. Google Maps上にプロットする 2008/03/27 ku-librarians勉強会 #98 29 2008/03/27 ku-librarians勉強会 #98 30妄想3:Amazon→OPAC 妄想4:自分好みのリゾルバを作る Amazonの商品ページにOPACへのリンクをはる 360LINK XML APIを利用すると,EJのURLなどリゾルバで http://kengo.preston-net.com/archives/002031.shtml 表示されているデータを取得できる サンプルをデモ しくみ(Firefox + Greasemonkey) http://staff.kulib.kyoto-u.ac.jp/catalog/labs/issn2url.html 1. Amazonの商品ページからISBNを抜き出す 2. 処理 ALはデザインをいじりにくい リンクを表示させるだけなら簡単だが所蔵有無をチェックするのが 面倒(OPACがWeb APIを提供していたら楽勝) リゾルバを開かなくてもURLが分かる 3. <a>タグを埋め込む データを動的に取得する=LocalDBに持たなくていい 2008/03/27 ku-librarians勉強会 #98 31 2008/03/27 ku-librarians勉強会 #98 32 8
  9. 9. 妄想5:URLの横に「人気度」を 妄想6:Web APIを提供してみる はてなブックマーク(などSBM)を利用して,図書館で提供する 新着情報をRSSで出力する リンク集にブックマーク数=人気度を表示する http://ss.cc.affrc.go.jp/ric/home.html RSSリーダーで読める 世間での人気度 スタッフのおすすめ度 Web APIを実装したOPACを導入する RICOH LIMEDIO v.7 XOOPSでSBMなパスファインダー(進行中) 図書館カレンダーをGoogleカレンダーで http://d.hatena.ne.jp/kunimiya/20080217/p2 Web小委員会で2008年度に実験する? 2008/03/27 ku-librarians勉強会 #98 33 2008/03/27 ku-librarians勉強会 #98 34 入門 いまさら聞けない「マッシュアップ」超入門 - @IT http://www.atmarkit.co.jp/fwcr/rensai/imasara10/imasara 10_1.html6. References MASHUPEDIA(2008/3/31閉鎖) http://www.mashupedia.jp/ Web2.0 Book (ISBN:4844322265) 俺流amazonの作り方―Amazon Webサービス最新活用テ クニック(9784756146755) インタフェースを改造するということ 2008/03/27 ku-librarians勉強会 #98 36 9
  10. 10. 発展 4大Webサービス完全攻略(4774124966) PHP5で作るWebサービス(4861371000) RESTful Webサービス(9784873113531) ProgrammableWeb http://www.programmableweb.com/ はてなブックマーク – タグ webapi http://b.hatena.ne.jp/t/webapi キーワード SOA, ROA, SaaS, SOAP, Webサービス, REST(ful), XMLゲート ウェイ, OpenSearch, RSS, Atom, AtomPP, JSON, SRW, SRU, CQL, OAI-PMH, OpenURL, XML-RPC, Ajax 2008/03/27 ku-librarians勉強会 #98 37 10

×