2010-05-05 Wed

柏餅(かしわもち)

今日はこどもの日なので柏もちを食べました。


from overlast using Panasonic DMC-FX100

おいしいなぁ。親が頻繁に和菓子屋さんで買ってきてくれたなぁ。

近所に個人経営の和菓子屋さんは少なそうだけど、散歩する度に探してみよう。。

東京 社用の手みやげ 贈って喜ばれる極上の和菓子

[Amazonで詳細を見る]

東京あんこ案内 手作りあんの美味しいお店44

[Amazonで詳細を見る]

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

ブログに「Google Buzz」の Buzz ボタンを設置しました

このブログに、「Google Buzz」の Buzz ボタンを設置しました。記事タイトルの真下あたりに「Buzz」と表示されると思います。

昨日、今日とボタンを追加しまくっているので酷い状況になってますが、整頓をしているところなので、そのうち綺麗に並ぶと思います。

なんで Google Buzz なのかというと、このブログを読んでいる人は Google 大好きな人が多そうだからボタンを設置して様子を見たくなったのです。

Buzz のボタンを表示するためのコードは以下から取得できます。

- バズ - ウィジェット
-- http://www.google.com/buzz/api/admin/configPostWidget

Google Buzz も好みの表示内容になるように、設定と確認を繰り返してコードを生成できるようになっています。



僕が最後の最後に取得したコードは以下のようなコードでした。

<a title="Post on Google Buzz" class="google-buzz-button" href="http://www.google.com/buzz/post" data-button-style="link" data-url="http://diary.overlasting.net/<TMPL_VAR name=url>"></a>
<script type="text/javascript" src="http://www.google.com/buzz/api/button.js"></script>


あとは、このコードをテンプレートに貼付けるだけ。簡単!

Google Buzz のボタンは日本ではあんまり人気なさげですが、確実に使われるだろうし、徐々に改良もされていくのでは、、、ないでしょうか。

記事の上部がボタンで埋まってきましたね。そろそろボタンの追加はやめようかな。

関連リンク


- Google バズ
-- http://www.google.com/buzz

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

はてなブックマークの新着記事リストと人気記事リストを取得

ブログに「はてなブックマークの新着記事リストと人気記事リスト」を表示したいと思ったのですが、はてなが提供しているリストは求めているものとは違いました。

なので、今日のところは簡単 Perl プログラミングで対処します。書いたプログラムは、さくらのレンタルサーバで定期的に実行して、最新のリストを生成し続けるようにします。

[2010-04-24-1] で、さくらのレンタルサーバで Perl の実行環境を作る手順をまとめました。以下では、その手順を経たあとの環境を使っています。

まず、はてなブックマークから任意のURLに関する新着記事を取得するプログラムを書きます。

このプログラムは、最初に以下のような任意のURLに関する、はてなブックマークの新着エントリーの RSS を取得します。

- diary.overlasting.net の新着エントリー - はてなブックマーク
-- http://b.hatena.ne.jp/entrylist?sort=eid&url=http%3A%2F%2Fdiary.overlasting.net

その後、RSS からタイトルと URL を抜き出して、リストを作成して、テンプレートにリストを流し込んで、JavaScript を出力します。

#!/home/『ユーザ名』/perl5/perlbrew/bin/perl                                                                                                      
use strict;
use warnings;
use utf8;

use lib qw('/home/『ユーザ名』/perl5/lib/perl5/');

use CGI;
my $cgi = CGI->new();
use Encode;
use HTML::Template::Pro;
use LWP::Simple;	
use XML::Simple;
$XML::Simple::PREFERRED_PARSER = 'XML::Parser';

my $xmls = new XML::Simple();
my $content = get('http://b.hatena.ne.jp/entrylist?sort=eid&url=http%3A%2F%2F『任意のURL』&mode=rss');

my $hash_ref = $xmls->XMLin($content, ForceArray => 1);

my @new_arr = ();
my $count = 12;
foreach my $e (@{$hash_ref->{item}}) {
    my $title = Encode::decode_utf8($e->{title}->[0]);
    my $link = $e->{link}->[0];
    my $code = '<img src="http://b.hatena.ne.jp/entry/image/'.$link.'">&nbsp;<a href="'.$link.'" target="_brank">'.$title.'</a>';
    push @new_arr, {"code" => $code};
    $count--;
    unless ($count > 0) {
        last;
    }
}

my $t_new = << "__NEW__";
document.writeln('<div>
<div>
<TMPL_LOOP NAME=new>
<TMPL_VAR NAME=code><br />
</TMPL_LOOP>
</div>
</div>');
__NEW__

my $template = join("", $t_new);
my $t = HTML::Template::Pro->new(scalarref => \$template,
                                 associate => $cgi,
                                 die_on_bad_params => 0);
$t->param("new" => \@new_arr);
my $out = $t->output();
$out =~ s|\n||g;
$out = Encode->encode_utf8($out) if utf8::is_utf8($out);

print $out."\n";


shで実行可能なプログラムを書いて、その中でbashを呼んで必要な変数を全部読み込むか、「source ~/.bashrc」するなどします。
その後に実行したいスクリプトを記述します。
シェルがbashを呼び出せれば、予定外のトラブルが起きずにプログラムを実行できると思います

- test.sh
#!/usr/local/bin/bash                                                                                                                     
環境変数の設定を書く

実行したいプログラムなどを書く


test.sh をつくったら、実行権限755に変更します。

chmod 755 ./test.sh


その後、このshファイル(test.shのような)を cron に登録します。

あとは動作確認をしておしまい。

このようにして JavaScript ファイルを 1 時間に一回生成してあげるて、そのファイルをテンプレートで読み込むようにすれば、以下のようなリストを表示できます。



こういうリストは自動で勝手に生成されるのが良いすね。

関連リンク


- ブログの人気記事を貼り付ける:はてなブックマークのヘルプ
-- http://b.hatena.ne.jp/help/widget
- 自分のブログに「○○users」を表示する:はてなブックマークのヘルプ
-- http://b.hatena.ne.jp/help/count

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

ブログに「Facebook」の Like ボタンを設置しました

このブログに、Facebook の Like ボタンを設置しました。記事タイトルの真下あたりに「Like」または「いいね!」表示されると思います。

日本では Facebook を知っている人はまだまだ多くないです。少なくとも僕の母は mixi と gree を知っていても Facebook を知らない状態です。ですが英語圏では圧倒的なシェアを誇る SNS です。今後の発展を考えると注目しつづけなきゃいけません。

Like ボタンを設置するために必要なコードは以下のページで取得できました。

- Like Button - Facebook開発者
-- http://developers.facebook.com/docs/reference/plugins/like

ページ下部のフォームでアバウトに見た目を確認しながら作業します。



Like ボタンで「いいね」と言って欲しいアドレスを入力したり、テンプレートにコピペしたときに調整した URL を入れたりします。あとは幅とか、ボタンを押した人を表示するか、とかです。最後にGet Code ボタンを押すと ifreme なコードを取得できます。

出来上がった Like ボタンのコードはstyleのwidthとheightの値が最適ではなかったので、何度か調整とページの再構成を繰り返しました。

最終的に以下のようなコードになりました。

<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fdiary.overlasting.net%2Fsample.html&amp;layout=button_count&amp;show_faces=false&amp;width=50&amp;action=like&amp;font=arial&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:75px; height:20px"></iframe>


上記のコードをテンプレートの任意の箇所に貼付けると、このブログ用の Like ボタンを設置できました。

関連リンク


- Facebook
-- http://www.facebook.com/

- Facebookの”like”ボタンは立ち上げから24時間で10億回押されるって
-- http://jp.techcrunch.com/archives/20100421facebook-like-button/

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

関連エントリ

[2010-04-16-2] 情報検索の教科書「Information Retrieval: Implementing and Evaluating Search Engines」
[-] 1