たつをの ChangeLog : 2008-11-19

私が使っているさくらの500円レンタルサーバのディスク容量が、11月19日(つまり今日)から、今までの1Gから3Gに増えるとの話だったので[2008-11-15-2]、さっそく見てみたらちゃんと増えてる!

やったね!

数日前の様子:
ディスク使用量

今日の様子:
ディスク使用量

1024MBから3GBへ!
いえーい!



ref.
- [を] さくらの500円レンタルサーバのディスク容量が1Gから3Gに![2008-11-15-2]

Yahoo!デベロッパーネットワークの「ルビ振りAPI」の簡単な解説とサンプルプログラムの紹介を、先日の記事[2008-10-11-2]で行いました。
今回は、別なサンプルプログラムとして、漢字混じりの日本語文を平仮名だけの文に変換するプログラムを紹介します。

- Yahoo!デベロッパーネットワーク - テキスト解析 - ルビ振り
http://developer.yahoo.co.jp/jlp/FuriganaService/V1/furigana.html
ルビ振りWebサービス
漢字かな交じり文に、ひらがなとローマ字のふりがな(ルビ)を付けます。

で、詳細ははぶいていきなりコードです。

言語は Perl です。
XML::Simple の性質上、若干バッドノウハウが混じっています。
すいません。

yomibun.pl
#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple;
use XML::Simple;
use URI::Escape;
use Encode;
use utf8;
use open ':utf8';
binmode STDIN, ":utf8";
binmode STDOUT, ":utf8";

my $appid = "YahooDemo";

while (<>) {
    chomp;
    next unless $_;
    my $r_ref = yapi({sentence => $_});
    my $yomibun = "";
    foreach my $w (@$r_ref) {
        my $c = $w->{Furigana} || $w->{Surface};
        $c = " " if ref($c) eq "HASH"; # space
        $yomibun .= $c;
    }
    $yomibun =~ tr/ァ-ン/ぁ-ん/;
    print "$yomibun\n";
}

sub yapi {
    my ($args_ref) = @_;
    my $s = URI::Escape::uri_escape_utf8($args_ref->{sentence}) || "";
    my $g = $args_ref->{grade} || 1;
    return [] unless $s;
    my $url = "http://jlp.yahooapis.jp/FuriganaService/V1/furigana?"
        ."appid=$appid&grade=$g&sentence=$s";
    my $response = get($url);
    return [] unless $response;
    my $xmlsimple = XML::Simple->new(ForceArray => [ 'Word' ]);
    my $xml = $xmlsimple->XMLin($response);
    return [] unless $xml->{Result};
    return $xml->{Result}->{WordList}->{Word};
}
$appid は自分で取得したものを使ってくださいね。
(http://e.developer.yahoo.co.jp/webservices/register_application)

基本は Furigana の文字列を繋げていくのですが、Furigana がない Word は代わりに Surface を使います。

なお、カタカナ語は、ひらがなのルビが付かないので、内部でカタカナひらがな変換(tr/ァ-ン/ぁ-ん/)をしています。

実行例です。
% cat a.txt 
これはマネー本で、Perl の教科書ではない。
祇園精舎の鐘の声 諸行無常の響きあり
% ./yomibun.cgi a.txt 
これはまねーぼんで、Perl のきょうかしょではない。
ぎおんしょうじゃのかねのこえ しょぎょうむじょうのひびきあり

もちろん、形態素解析APIを使っても良いのですが(「読み」の部分を取ってくる)、せっかく専用のルビ振りAPIがあるのでそれを使うことをオススメします。

あと、APIに、文章渡すとそのまま平仮名文がかえってくるオプションがあれば手軽でいいのになあ、とも思いますっ!

テキスト解析シリーズAPIの解説記事


- ルビ振りAPI
-- [を] ルビ振りAPIで「ふりがな」を付けよう![2008-10-11-2]

- 日本語形態素解析
-- [を] Yahoo!デベロッパーネットワークにテキスト解析APIが登場![2007-06-18-1]
-- [を] Yahoo!日本語形態素解析APIをコマンドラインから使うサンプルプログラム[2008-04-05-5]

- 日本語係り受け解析
-- [を] ヤフーの日本語係り受け解析APIとサンプルプログラム「なんちゃって文章要約」[2008-08-21-1]

- かな漢字変換、構成支援
-- [を] Yahoo! API の「校正支援」と「かな漢字変換」のサンプルプログラムを作ったよ[2008-07-11-1]

うちの近くにあるマクロビオティックなカフェ。
1Fがカフェで2Fがマクロビ教室みたい。
よく知らないんだけど、マクロビ界では結構有名みたい。
そういう事情はおいておいて、ここんとこ、休日のランチに必ず寄っているお気に入りのカフェです。
私の「休日カフェ」ローテーション入りです。

マクロビオティック マルシェ

マクロビオティック マルシェ | マルシェ恵比寿店
http://www.macrobiotic-marche.jp/fs/add/default.asp?mart_id=marche&page_num=526
場所:渋谷区恵比寿4-24-5 恵比寿パークテラス 1F
営業時間:10:00-19:00 (日曜・祝日10:00-18:00)

最近、日替わりランチ(1200円)で食べたものいろいろ:

(1) こうふうベジバーグきのこソース、栗入り雑穀玄米ごはん、ローズマリー風煮しめ、切干大根のサラダ、お味噌汁
マクロビ

(2) オムライス、スチーム野菜ハーブソルト風味、レタスのサラダ、赤レンズ豆のスープ
マクロビ

(3) 押麦入り玄米ごはん、酢豚風テンペ、ブロッコリーとカリフラワーのサラダ、青菜の梅肉和え、ねぎとふのりのスープ
マクロビ

後述しますがメインディッシュ(太字)はともかく、つけあわせ、サラダ、汁物がものすごく美味しいです。強烈さはなく、安心する味です。良い素材の味、というか。

あとこちらは、日替わりメニューではなく固定メニューのベジタブルカレー (1000円)。
肉のかわりにテンペ。これは良いカレーです。
マクロビ

穀物コーヒーと黒ゴマのプリン。
デザートは牛乳や卵を使っていないので素材の味がダイレクトです。
かぼちゃのプリンも食べたのですが、裏ごししたカボチャ+α、といった感じ。これはこれであり。
おいしいです。
マクロビ

§

ランチメニューのメインディッシュは、毎日バリエーション豊かなんだけど、ほぼどれも肉や卵などを使った料理のベジタリアン版なのです。
そうなると、やはり肉などの強烈なうまみと比べちゃうわけで、不利かなあと。
素材を焼いただけのをそのままだして生姜醤油で食べるみたいな、バーベキュー的な料理の方が絶対おいしいと思うんだけどな。
特にテンペは薄く切ってフライパンで焼いて醤油で食べるのが一番おいしいじゃん(って、人によりますが)。
納豆もいろいろ料理法があるけど、ネギと醤油でまぜて食べるのが一番だったりするし。

まあ、マクロビなので、味とかよりも他の目的があるわけで、これはこれでよいと思います。
以上を踏まえて、あっさりしたものを食べてリフレッシュしたい人にはおすすめ。

たつをの ChangeLog
Powered by chalow