ナビゲーションをスキップする

コンテンツナビ
  • H2O Space. Co.,Ltd.
  • aquanotes Shop.
  • ちゃんとWeb
  • H2O Space. BLOG
  • aquanotesβ place
  • Recently Ajax

Home > サンプルプログラム > 『Yahoo! Japan 校正支援Webサービス』を使った校正サービスの作り方

『Yahoo! Japan 校正支援Webサービス』を使った校正サービスの作り方

図:サンプルを実行したところ(クリックで実行)

日本語は、同音異義語や送り仮名の間違いなど、勢いづいて書いているとなかなか見つけられない間違いをよくします。

そこで、そんな間違いを指摘してくれる「校正支援」をYahoo! JapanがWebサービスとして提供しているので、早速使ってみました。

まずは、次のサイトからアプリケーションIDを登録します。

» Yahoo!デベロッパーネットワーク - テキスト解析 - 校正支援

そして、JavaScriptを作り込んでいくわけですが、XMLの解析が必要なので「JKL.ParseXML」と定番の「Prototype.js」を組み込んでおきましょう。

» Prototype JavaScript framework: Easy Ajax and DOM manipulation for dynamic web applications
» [ajax] JKL.ParseXML/ajax通信処理ライブラリ

JavaScriptから直接外部の URLを呼び出すことがセキュリティ上できないので、PHPで橋渡しプログラムを作ります。「kousei.engine.php」などというファイル名で保存します。


<?php
  header("Content-Type: text/xml; charset=utf-8");
// パラメータを受信する
  $message = stripslashes($_GET['message']);

readfile('http://jlp.yahooapis.jp/KouseiService/V1/kousei?appid=h2o_ajax&sentence='.$message);
  ?>


これで準備完了です。

HTMLを準備して・・



<p>以下のテキストエリアに、間違えた日本語(小形飛行機など)を記入して「校正チェックする」ボタンをクリックしてみてください。</p>
<form id="formMain" action="#" method="post">
<div><textarea id="message" name="message" cols="50" rows="3"></textarea><br />
<input type="button" id="btnCheck" value="校正チェックする" /></div>
<div id="areaErrorMessage">
</div>
</form>

<head>要素で、次のようなスクリプトを組み込んでいきます。


<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/jkl-parsexml.js"></script>
<script type="text/javascript">
// ボタンをクリックした時のイベントを定義します
window.onload = function() {
$('btnCheck').onclick = function() {
// 作ったPHPを呼び出す
var http = new JKL.ParseXML('kousei.engine.php?message=' + encodeURI($('message').value));
var data = http.parse();

// 間違いがない場合
if (data.ResultSet.Result == undefined) {
var message = '<p>間違いは見つかりませんでした!</p>';
} else {
var message = '<p>次の日本語間違いが見つかりました。参考にして修正してください。</p><ul>';

// 1件の場合
if (data.ResultSet.Result.length == undefined) {
var r = data.ResultSet.Result;
message += '<li>' + r.Surface + '→' + r.ShitekiWord + '【' + r.ShitekiInfo + '】' + '</li>';
} else {
// 複数件の場合
for (var i=0; i<data.ResultSet.Result.length; i++) {
var r = data.ResultSet.Result[i];
message += '<li>' + r.Surface + '→' + r.ShitekiWord + '【' + r.ShitekiInfo + '】' + '</li>';
}
}
message += '</ul>';
}

// 結果画面に反映する
$('areaErrorMessage').innerHTML = message;
}
}
</script>

これで完成です。作ったスクリプトはこちら

使い方次第で非常に面白い使い方ができそうです。是非お試しください!

» Yahoo!デベロッパーネットワーク - テキスト解析 - 校正支援

Comments:0

Comment Form
Remember personal info

Trackback+Pingback:0

TrackBack URL for this entry
http://www.h2o-ajax.com/archives/77/trackback
Listed below are links to weblogs that reference
『Yahoo! Japan 校正支援Webサービス』を使った校正サービスの作り方 from Recently Ajax

Home > サンプルプログラム > 『Yahoo! Japan 校正支援Webサービス』を使った校正サービスの作り方

Search
Feeds
Meta

Page Top