Wikipedia APIを利用してみよう
概要を説明する前に、まずためしに任意のキーワードを入力して結果を取得してみましょう。
SimpleAPI「WikipediaAPI」とは?
キーワードを指定すると、その言葉に関するwikipediaの記述をダイジェストとして返します。コンテンツ内に百科事典機能を持つサイトを簡単に作ることが出来ます。SimpleAPIシリーズの特徴でもあるJavascriptやHTML出力も用意しています。
Wikipedia自身にもキーワードに関する情報をXMLで出力する機能は付いているものの、完全一致するキーワードのみである点や、データがwiki記法で記述されており使いにくい、レスポンスが遅い、といった問題がありました。SimpleAPIのWikipedia APIではこれらの問題を解決しています。
また、「APIは難しそう」という点を解消するために簡単に利用できるようにしています。たとえば、PHPで構築されたサイトに実際に組み込む(サンプル)場合、PHP初心者でも非常に短いスクリプト(ZIP形式)で実装できます。
組み込み利用にあたっては、なるべく1分あたり30リクエスト以下でお願いします。また、下記仕様と「利用上の注意」をよくご覧のうえサイトに組み込んでください。また、最新情報は、SimpleAPI 開発日記でご覧いただけます。
SimpleAPIシリーズのコンセプトは?
SimpleAPIは、複雑化しがちな現在のWeb業界において、ウェブサイト作成初心者でも利用しやすいAPIを続々提供することを目標としています。とくにWebプログラミング言語やXMLやJSONを利用せずに利用できる画像方式やHTML、iframeを利用した簡易APIを今後とも続々提供していく予定です。
第1弾としてはサムネイル作成API、第2弾としては最寄り駅APIがあります。
簡単な使い方
▽一番簡単な使い方 : キーワードを指定してXMLを取得
http://wikipedia.simpleapi.net/api?keyword=TCP/IP
SimpleAPI WikipediaAPI 各言語版モジュール、利用事例、紹介記事
- Perl版 by Yappo氏 WebService::SimpleAPI::Wikipedia
- PHP版 by tsuruoka氏 Services_SimpleAPI_Wikipedia
- ruby版 by ma2氏 SimpleWikipediaAPIをrubyから使う
- WikipediaAPIを利用した事例があればご連絡ください。
SimpleAPI Wikipedia 入力仕様
APIのURI : http://wikipedia.simpleapi.net/api
パラメータは、GETあるいはPOSTで指定します。文字コードは入力は現在UTF-8のみ。出力はUTF-8固定。
- keyword : キーワード。エイリアスとして、qも指定可能
- output : 出力方式(xml,rss,json,html,javascript,php,tsvを指定可能。デフォルトはxml)
- callback : 出力形式がJSONP時の名称を指定可能
- lang : 現在未実装。現在は日本語(ja)のみ。
- search : 現在未実装につき1のみ。(0.その特定キーワードのみを取り出す、1.前方一致、2.後方一致、3.前後方一致、4.FULLTEXT)
SimpleAPI WikipediaAPI 出力仕様
まずは出力サンプルをご覧ください。(出力サンプル1 , 出力サンプル2 , 出力サンプル3)。どの出力形式でも、情報内容は下記のとおりです。詳細は実際の出力を利用して
- language : 言語名
- id : Wikipedia内の管理コード
- url : Wikipediaにリンクする際のURL
- title : キーワードのタイトル
- body : 本文のダイジェスト
- length : 本文の長さ
- redirect : 別キーワードへのリダイレクトがあるかどうか。あれば1、なければ0。
- strict : そのキーワードと完全一致する場合には1。完全一致しない場合は0。
- datetime : 更新日付
今後の予定
- 全文検索に対応する
- 英語版など他言語wikipediaへの対応。日本語以外も利用可能にする(langageオプション)
- Wikipediaおよびwiki記述形式による問題を吸収(Wikipediaでは、iPodがIPodとして呼び出さなければならない、など)
- リダイレクト時に一部バグがある(1行目が表示されていないことがある)ため、その修正
- wiki記法変換をより高精度化 現在、wiki記法からの変換には処理高速化のために独自のパーサーを利用しておりそのバグを修正予定。
利用上の注意
- このサービスは無保証です。いかなる損害も保証いたしかねます。
- 広告掲載している商用サイト、非商用サイト、どちらにも利用可能です。
- アダルトサイトや非合法サイト、その境界線上のサイトでは利用できません。また、非合法活動や迷惑行為するのに利用することはできません。
- データの更新頻度については、Wikipediaのデータベース・ダンプの更新頻度から遅れを伴うことがあります(なるべくその期間を短縮するようにします)。
- 強引なクローリングは、システムの速度低下やサービス停止につながるため、記事を大量にダウンロードするクローラーを利用しないでください。その場合、アクセスを遮断する場合があります。
- 著作権に関しては、GFDL1.2またはそれ以上のバージョンの下で配布してください(詳しくはWikipedia:著作権を参照)。Wikipedia日本語版の規約同様、「GFDLを完全に履行できない場合は、データがウィキペディアに由来することを明記し、ウィキペディアの個々のページにリンクバックすることで、GFDLの要求する著者と履歴の提示にかえることができます」。
- 1分のリクエストを30件以下としてください。1日1万リクエスト以上予測される場合、あらかじめご相談ください。
- APIはアップグレードすることがあります。なるべく下位互換を保つようにします。もし下位互換は保証されない大規模な変更がある場合、移行期間として、旧バージョン、新バージョンの併存期間を設けます。
- サービス提供者はサービスを中断、終了する権利、サービス利用を停止する権利を保有します。