nDiki : cron
スポンサード リンク
Related term
2008年2月26日 (火)
■ cron 呼び出しから D-Bus (Net::DBus) 使おうとしたら失敗していた

Twitter への書き込みを自動的に Skype ムードメッセージに設定するスクリプトを定期的に実行しようと cron に設定しておいたのだが、一向にうまくいく気配がない。
cron からのメッセージを見たら
process 22612: arguments to dbus_connection_ref() were incorrect, assertion "connection != NULL" failed in file dbus-connection.c line 2465.
This is normally a bug in some application using the D-Bus library.
org.freedesktop.DBus.Error.Spawn.ExecFailed: dbus-launch failed to autolaunch D-Bus session: Autolaunch error: X11 initialization failed.
と出ていた。 X 関連か?
cron から呼び出す際には DISPLAY=:0.0 してからこのスクリプトを呼ぶようにしたらうまく動くようになった。
- Twitter への書き込みを自動的に Skype ムードメッセージに設定... (2008-08-05)
- Twitter への書き込みを自動的に Skype ムードメッセージに設定する (2008-02-25)
- 全文検索システム Hyper Estraier をアップデート (2009-07-03)
- 23:30 Xplanet に雲をいれる (2001-05-15)
- Plagger で Twitter のあれこれをメールで通知 (2008-12-25)
2008年3月13日 (木)
■ Flickr の写真を自動的に Twitter アイコンにする

2週間ほど前にtwitterfeed で Flickr に写真をアップロードしたら自動的に Twitter にタイトルと URL をポストするようにしたのだが、これだと写ツみたいに画像そのものはポストされず今一歩なので、写真自体を自動的に Twitter アイコンにアップロードするようにしてみた。
流れは以下:
- cron で定期的に Flickr の RSS フィードをフェッチする (URI::Fetch + XML::RSS)。
- 新しい写真がアップロードされていたら(最新の写真が変化していたら)、RSS フィード中のサムネイル画像 URL を抜き出して画像をダウンロードする (URI::Fetch)。
- 正方形に crop。それからころころ Twitter アイコンを変えると誰だかわからなくなるので、決まった画像 (今のところ自分の写真)を重ねる (ImageMagick / PerlMagick)。
- Twitter にアップロードする(アップロードスクリプト)。
例えば今日 VQ1005 で撮影して Flickr にアップロードした写真を自動的に加工させたものがコレ。
なんか偽中継のような嘘臭さがあるけれど、まあだいたいアップロードした写真は自分が実際にその場にいたのだから、あながちでもないんじゃないか。
- Twitter にケータイ写真を流すのに twitterfeed を使う (2008-02-22)
- Twitter ステータスを nDiki サイドバーに表示 (2007-11-09)
- デジカメ写真管理ソフトウェア digiKam (2006-03-10)
- 今日のさえずり - 「スーのうた」が耳から離れない (2009-03-09)
- VQ1005 の画像をケータイで閲覧 (2008-03-20)
2008年3月16日 (日)
■ 今日のさえずり - 初歩的なミスだが PATH の違い

@ 2008年03月15日
- 17:09 さて、飲み会に向けてそろそろ準備して秋葉原に出かける。
- 17:21 この時間から遊びにでるのすごい久しぶり。[mb]
- 18:08 [photo] リラックマ@秋葉原 http://tinyurl.com/3ywquj
- 19:56 飲み会の途中ですが、ミーティングが始まりました。[mb]
- 22:20 後ろ髪を引かれつつ飲み会から抜けた。[mb]
- 22:26 yamakiyo が Flickr を布教。信者増えるかな?[mb]
@ 2008年03月16日
- 00:47 手で実行すると動くのに cron からだと動かないスクリプトの問題がわかった。初歩的なミスだが PATH の違い。
- 22:33 VQ1005、プロキッチン楽天市場店は売り切れたけれど、本店やYahoo!ショッピング店はまだ売っているみたい。
- 22:52 1本単位で単4形ニッケル水素電池を充電できる充電器が欲しい。
- 今日のさえずり - ここで開けないで持って帰ると泣きをみるぜ (2009-03-11)
- 今日のさえずり - 首なし犬 (2008-03-26)
- 近谷研 OB 飲み会 (2008-03-15)
- 今日のさえずり - VQ1005、青/寒色がキマるな (2008-03-23)
- Flickr の写真を自動的に Twitter アイコンにする (2008-03-13)
2008年8月5日 (火)
■ Twitter への書き込みを自動的に Skype ムードメッセージに設定する for Windows

半年ぐらい前に Skype for Linux で Twitter への書き込みを自動的に Skype ムードメッセージに設定するスクリプト(記事)を作って cron で 10分毎に更新するようにした。
Windows BOX 上 Skype を使っている時も同様にできるように、Skype4COM を使うバージョンも書いてみた。 D-Bus ではなく Skype4COM を使うようにすることと、Skype4COM にはシフト JIS の文字列を渡すようにすること以外はほとんど同じ。
Skype4COM の DLL を登録し、Skype が起動している状態で以下の Perl スクリプトを実行。
#!/usr/bin/perl
use strict;
use warnings;
use Win32::OLE;
use URI::Fetch;
use XML::RSS;
use Date::Parse;
use Encode;
my $id = '自分の Twitter ID';
my $time = time;
my $fetch_response
= URI::Fetch->fetch(
"http://twitter.com/statuses/user_timeline/$id.rss?dummy=$time")
or die URI::Fetch->errstr;
my $rss = XML::RSS->new;
$rss->parse($fetch_response->content);
die 'no items' if @{$rss->{items}} == 0;
my $item = $rss->{items}->[0];
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)
= localtime(str2time($item->{pubDate}));
my $title = $item->{title};
my $mood
= sprintf("$title [%02d/%02d %02d:%02d]", $mon + 1, $mday, $hour, $min);
$mood = Encode::encode('shiftjis', $mood);
my $skype = Win32::OLE->new('Skype4COM.Skype');
$skype->Client->Start unless $skype->Client->IsRunning;
my $profile = $skype->CurrentUserProfile;
$profile->{MoodText} = $mood;
インストール済みだった ActivePerl 5.8.8.822 で動作を確認(ちなみに現時点での最新は ActivePerl 5.10.0.1003)。なお URI::Fetch、XML::RSS、Date::Parse(TimeDate) は標準では入っていないので PPM パッケージでインストール。
タスク スケジューラで10分毎に上記のスクリプトを wperl.exe で実行するように設定。 これで Windows 上でもさえずりをムードメッセージに設定できるようになった。
- Twitter への書き込みを自動的に Skype ムードメッセージに設定する (2008-02-25)
- 今日のさえずり - 時報というやつも初めて見た (2010-01-25)
- Twitter ステータスを nDiki サイドバーに表示 (2007-11-09)
- ちょっと複雑なネット用統合アドレス帳 Ripplex (2008-04-30)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
2008年11月15日 (土)
■ 今日のさえずり - オーナメントすぐもがれる

@ 2008年11月14日
- 09:14 アンパンマンの鼻と頬のハイライトってなんで正方形なの?[mb]
- 09:29 スターバックスで赤カップ版クリスマスオーナメント在庫聞いたら、隣の店舗まで取りに行ってくれるとのこと。さすがスターバックス。クリスマス ブレンド頂きながら待ってます。[mb]
- 09:50 今日は西の車窓から青い東京タワーを眺めながら帰りたい。[mb]
- 10:16 @lynmock 「役に立たないアンパンマンの被り物の作り方」を読んで返信もらった意味がわかりました(モバツイだとログ追いきれなくて)。リアルにあの曲面に正方形のハイライト出す照明あてるのって至難ですよねぇ。
- 11:13 オフィスのクリスマスツリー出して飾った。って書き忘れて zakwa に先こされた。
- 12:14 @yamakiyo ミラーレンズって。リングぼけ楽しみたいとか?
- 12:31 自分は「クロン」 [B!] F's Garage:cronの読み方 http://www.milkstand.net/.../001445.html
- 13:01 [photo] スターバックス レッドカップオーナメント http://tinyurl.com/5ph49n
- 14:16 @yamakiyo 500mm F6.3 のミラーレンズだと用途狭すぎじゃないですか? 色収差が少なかったとして何を撮るのか興味津々。
- 17:07 @zakwa 自分も最初「なんで2次元?」って思ったよ。
- 17:08 @yamakiyo 撮りたいものが撮れないのなら色収差が少なくても意味ないですね。
- 17:29 ソニッケアーのブラシがえらく変色してきている。やはり6カ月待たずして交換だな。
- 17:52 あわよくばいれたくない「ラベル屋さんHOME」インストール中。
- 20:00 今日は最後ですね。
- 20:53 残業って慣れるもんだね。ヤバイヤバイ。[mb]
- 21:10 席に座っていて青い東京タワーが見えない。[mb]
- 22:47 ようやく P3 を 3.23 から 3.40 にアップデートした。
- 23:05 urchin.js のままだったので、ga.js にする。
- 23:27 ttree 2.9 から accept を使用しているなら、ディレクトリも accept にマッチしなければならなくなった。
@ 2008年11月15日
- 10:17 電気ファンヒータ出した。[mb]
- 16:50 クリスマスツリー出した。オーナメントすぐもがれる。[mb]
- 21:28 明日は 10:00 - 11:00 でオフィス停電なのでサーバお守りしにいく。雨降るなよ(雨降ると停電延期の可能性有り)。
- 今日のさえずり - 先っちょ、あけぼの鮭フレークの瓶に漬けた (2008-11-11)
- 今日のさえずり - 今日も勢いのあるいい小便でした (2009-09-27)
- 今日のさえずり - チョップリフターって当初チューリップファイターだと思っていた (2008-12-09)
- 今日のさえずり - すかいらーくといえば、今だに「愛・おぼえていますか」 (2009-09-18)
- 全文検索システム Hyper Estraier をアップデート (2009-07-03)
2008年12月25日 (木)
■ Plagger で Twitter のあれこれをメールで通知

Twitter 上で要チェックなポストは、今年の4月から MAILPIA でケータイにメール通知するようにしていた(記事)のだが、最近メールが届かなくなってしまった。 フィードを変更してみたりメールアドレスを変えてみたりしたが駄目。 他に良さそうなフィードメール通知サービスが無さそうだったので Plagger を使うことにした。
Plagger は以前途中までインストールしようと思ったのだが、依存 Perl モジュールが多くて途中でやめてしまった。 今回は目的があってインストールするので、頑張ってインストールした。
インストールするホストに libxml2 と OpenSSL が無くて必須モジュールが入らなかったので、これを別途インストール。 Plagger は Subversion リポジトリの trunk をチェックアウトしてインストール。 依存 Perl モジュールは CPAN から。
ケータイ向けにテキスト形式のメールを送る Publish プラグインは Web で見つけたものを流用。まずは以下の3つレシピを cron で 10分毎に実行するように設定した。 メールは基本的に Gmail アカウントに送ってフィルタでケータイに転送。 うまくいっている感じ。
@ Twitter リプライをメールで通知
Plagger で Twitter にログインして replies API にアクセスするようにもできるけれどパスワードを書いておきたくないので、先月作成した CGI スクリプト(記事)経由で取得することにした。
[Twitter]
↑
[replies.atom さらし CGI スクリプト]
↑
[Plagger (cron で 10分毎)]
↓
[Gmail]
↓
[ケータイ]
@ 指定した Twitter-ers のポストのメール通知
Plagger で直接各 Twitter-ers のフィードを取ってこれるけれど、10分毎にアクセスするほどでもないので、Google リーダーに Twitter-ers のフィードをフェッチさせてタグでたばねて公開したフィード経由で取得することにした。
Plagger のレシピをいじらないで Google リーダー上で Twitter-ers を追加・削除でき、Google リーダーでもポストを読めるというのが利点。 ポストが少ない Twitter-er のフィードは Google リーダーが巡回頻度を下げるのでタイムラグが大きくなることがあるのが欠点。
[Twitter] ↑ [Google リーダー] ← [Web ブラウザ (設定・チェック)] ↑ [Plagger (cron で 10分毎)] ↓ [Gmail] ↓ [ケータイ]
@ twitter検索結果をケータイにプッシュ
外出先などで、居場所やイベントの情報を Twitter でチェックしたい時がある(役に立つかどうかは別として)。 ケータイから定期的に検索かけるなんてありえないので、メールでプッシュしておいて(気がむけば)読むぐらいにしておきたい。 キーワードの設定・管理については、操作・サーバ実装とも楽したい。
Twitter 関連ということで頻繁にケータイでアクセスして画面に出ている MovaTwitter を活用したい。 ということで MovaTwitter のクリボーに「アクセス keyword」と書くことで検索キーワードを指定できるように組んでみた。
[MovaTwitter クリボー] ← [ケータイ (キーワード書き込み)] ↑ ↑ クリボーのフィードを読んでキーワードを取得 ↑ [CGI スクリプト] → [twitter検索] ↑ [Plagger (cron で 10分毎)] ↓ [Gmail] ↓ [ケータイ]
いまさらだけれど、Plagger 便利だな。 とっかかり(インストールと概要理解)がちょっと難しいけれど、それを乗り越えてしまえば Perl なんでどうとでもなるという感じ。
- MAILPIA による Twitter チェック (2008-04-04)
- 今日のさえずり - くるぴかポッチャマ廻しにくい (2009-12-27)
- MAILPIA による Twitter リプライチェック (2008-11-18)
- 今日のさえずり - ガッツフィーリング (2009-02-28)
- Evernote 使用開始 (2009-03-03)
2009年7月3日 (金)
■ 全文検索システム Hyper Estraier をアップデート

社内 Web ページ全文検索用に設定していた Hyper Estraier だが、かなーり前からたまにクロール/インデックス作成に失敗してインデックスが壊れてしまうことがあった。で検索できないまま放置していたのだが、やはり時々検索したいというリクエストをもらったので、復旧することにした。 Hyper Estraier も 1.2.7 のままだったので、最新版に更新。 設置が 2006年6月なので3年ぶりの更新。
前回と同様ソースからのインストール。 今回は自分のホームディレクトリ以下に。 以下作業手順メモ。
@ QDBM
wget http://qdbm.sourceforge.net/qdbm-1.8.77.tar.gz tar zxvf qdbm-1.8.77.tar.gz cd qdbm-1.8.77 ./configure --enable-zlib --prefix=$HOME/local/hyperestraier-1.4.13 make check make install
@ Hyper Estraier
wget http://hyperestraier.sourceforge.net/hyperestraier-1.4.13.tar.gz tar zxvf hyperestraier-1.4.13.tar.gz cd hyperestraier-1.4.13 PKG_CONFIG_PATH=$HOME/local/hyperestraier-1.4.13/lib/pkgconfig ./configure --prefix=$HOME/local/hyperestraier-1.4.13 make make check make install
@ インデックスの作成とクロール
前回 /usr/local/var/lib/hyperestraier/estwaver に保存するようにしていたので、今回もそそれはそのままで。 クローラのルートにある _conf は作り直しの際に間違えて消してしまいそうになるので、ホームの etc においておいてシンボリックリンクをはっておく。 _conf は以前に作っておいたものを利用。
mkdir /usr/local/var/lib/hyperestraier/estwaver $HOME/local/hyperestraier-1.4.13/bin/estwaver init /usr/local/var/lib/hyperestraier/estwaver rm /usr/local/var/lib/hyperestraier/estwaver/_conf ln -s $HOME/etc/hyperestraier/_conf /usr/local/var/lib/hyperestraier/estwaver/_conf $HOME/local/hyperestraier-1.4.13/bin/estwaver crawl -revcont /usr/local/var/lib/hyperestraier/estwaver
@ 検索インタフェース CGI プログラムを配置
cd $WEBDIR/search/hyperestraier cp $HOME/local/hyperestraier-1.4.13/libexec/estseek.cgi . chmod 755 estseek.cgi cp $HOME/local/hyperestraier-1.4.13/share/hyperestraier/locale/ja/estseek.* .
で estseek.conf を編集。indexname を /home/naney/local/hyperestraier-1.4.13/estwaver/_index に。その他好みにあわせて設定を変更。
@ cron 設定
前回の設定では、クロールとインデックスの更新夜中に行うからインデックスがロックされてもいいやと直にオリジナルのインデックスを更新するようにしていたが、今回はきちんとコピーして更新するようにした。 1日1回以下のスクリプトを実行するように設定。
#!/bin/sh PREFIX=/home/naney/local/hyperestraier-1.4.13 VARDIR=/usr/local/var/lib/hyperestraier test -e $VARDIR/estwaver-copy && exit cp -a $VARDIR/estwaver $VARDIR/estwaver-copy $PREFIX/bin/estwaver crawl -revcont $VARDIR/estwaver-copy $PREFIX/bin/estcmd inform $VARDIR/estwaver-copy/_index || exit rm -rf $VARDIR/estwaver mv $VARDIR/estwaver-copy $VARDIR/estwaver
リクエストしてくれた人、検索できるようになったから使ってね。
- Hyper Estraier で社内 Web コンテンツ検索 (2006-06-01)
- Evernote 使用開始 (2009-03-03)
- Rubric でプライベート SBS を立てるも 0.140 では日本語に不具合 (2006-07-22)
- Linux で使えるデスクトップ検索ツール Beagle でローカルファイ... (2006-08-08)
- Debian GNU/Linux に Hyper Estraier 1.2... (2006-05-31)
2009年10月23日 (金)
■ さくらのレンタルサーバ プレミアム申し込んだ

www.naney.org で使っているホスティングサービスは
という点でいろいろ遊べるのだが、
- 今の相場的にはかなり高めなのにホームが容量 100MB (メールは別に 100MB)。
- Perl が10年以上前の Perl 5.005_03。自分で新しい Perl を入れようにも容量 100MB だと厳しい。5.005_03 だと Perl v5.6 系以降の文法が使えないし、使える Perl モジュールも限定されているので悲しい。
- 夜中になると analog が動いてサーバが重くなる。
- メールの送受信が遅延することがある。
などから使いづらくなってきた。 なにより容量を気にして記事を書き控えようという心理が働くのがよろしくない。 そろそろ今後を考えて他社に乗り換えようかと。
選んだのはやはり人気があって SSH も使える「さくらのレンタルサーバ」。
選んだプランは容量 10GB のプレミアム。 スタンダードでも容量 3GB でまずまずだし cron も使えるから機能的にも十分なんだけれど、1ホストあたりの収容ユーザ数により余裕があるであろう1つ上のプランにしておいた。
Web から申し込んで、風呂に入っている間に DNS 設定が反映されて SSH ログインできるように。 順次ソフトウェアのインストール・コンテンツの移行とメールの設定をしてから、naney.org をこちらに切り替える予定。
- www.naney.org をさくらのレンタルサーバへ移転 (2009-12-23)
- Plagger で Twitter のあれこれをメールで通知 (2008-12-25)
- WiKicker に JSON でのページ出力機能を追加 (2007-04-03)
- 最新の Module::Install は Perl 5.005_03 ステ? (2006-04-29)
- 専用サーバに移りたい (2005-11-13)
2009年12月23日 (水)
■ www.naney.org をさくらのレンタルサーバへ移転

naney.org メールサーバの移転に次いで、Web サーバの移転作業。
@ 静的コンテンツのアップロード
現行 Web サーバと Unison でファイル同期している Web コンテンツを、さくらのレンタルサーバへ Unison でファイル同期。
@ WiKicker のインストール
nDiki 用に DiKicker (WiKicker) を make install。
%bash $perl -MCPAN -e mkmyconfig $perl -MCPAN -e shell o conf makepl_arg PREFIX=/home/naney/local/WiKicker o conf mbuildpl_arg --install_base=/home/naney/local/WiKicker o conf commit notest install CGI::SpeedyCGI $tar zxvf WiKicker-0.420.tar.gz $cd WiKicker-0.420 $export PERL5LIB=$HOME/local/WiKicker/lib/perl5/site_perl/5.8.9 $perl Makefile.PL PREFIX=$HOME/local/WiKicker $make $make install
以前きっちり Module::Install で Makefile.PL を作っておいたおかげで、比較的スムーズにインストールできた(自画自賛)。
ちょっとはまったところは CGI::SpeedyCGI の make test を実行する(される)と SSH 接続がサーバ側から切られてしまうという現象にあったところ。 テスト用に大量にスクリプトが起動されるの検出して自動的に kick されたのだろうか。
@ .htaccess の修正
さくらのレンタルサーバでは .htaccess Options が使えないようなので削除。 ExecCGI や MultiViews が有効になっているようなので問題なし。
@ いつくかのスクリプトの修正
Perl 5.005_03 用に書いてあったスクリプトについて、Perl v5.8.9 で文字化けしないように utf8 まわりを修正。
@ cron 設定
1時間毎に実行したい処理を列挙するシェルスクリプトを1つ作って、コントロールパネルから1時間毎に実行するように設定。
現行サーバでは任意の crontab を設定できたので、1時間毎はちょっと物足りない。 おいおい負荷にならない範囲で、外部から定期的に HTTP アクセスして処理を定期的に実行できるようにもするかな。
@ DNS 設定変更
まだ動いていないスクリプトもあるけれど(大きいところだと NaneyOrgWiki (Wiki))現行サーバの解約日もせまっているので、サーバ移転させてしまうことに。
VALUE-DOMAIN で DNS サーバ設定を変更し www.naney.org でさくらのレンタルサーバにアクセスできるように A レコードを変更。
今のところ特に重い等もなく順調。 現行サーバでは深夜非常に重くなる時間帯があったのだが、それが無くなるのが嬉しい。 また容量が100MB*1から10GB*2になったので心理的にセーブしなくて良くなった。
年内に移行できて良かった良かった。
[ さくらのレンタルサーバ プレミアム ]
- さくらのレンタルサーバ プレミアム申し込んだ (2009-10-23)
- 今日のさえずり - チョコレート臭のするリップクリーム塗られた (2009-12-23)
- Debian GNU/Linux に Hyper Estraier 1.2... (2006-05-31)
- WiKicker 0.29 リリース - ビルドまわりの改良など (2006-02-13)
- Tor で hidden service (2005-02-13)
2010年2月9日 (火)
■ Twilog で tweet をセカンダリロギング

一昨日の夜から Twilog を使い始めてみた。あ、これいいね。
「Twitter のつぶやきをブログ形式で保存するサービス」というのにひっかかって今まで使わないでいたのがちょっともったいない。 自分の tweet は「RSS から cron で一定時間毎に取得して nDiki 用のマークアップ付きテキストファイルに自動変換」(記事)して「手動で取捨選択・編集して1~数日分で1記事化」しているんだけれど、プレーンな形式では残していないので保存用に CSV 形式で取得できるのは非常にありがたい。定期的にダウンロードして保存したい。
ちなみに多くの人が言っているように他人の「その人のその日の tweets を順番に並べただけのまとめ記事」ってとてもつまんない(nDiki でもやっているけど)。 でも本人にとっては見返してみると記憶が蘇えってきて結構楽しいし、またきちんと検索できればパーソナルナレッジベースとしても非常に便利。 だからどんどんやればいいと思うよ。
[ Twitter 関連サービス ]
- twitterfeed から FriendFeed へ (2009-07-17)
- Twitter + Cachbook で小遣い帳 (2010-01-22)
- FriendFeed から twitterfeed へ (2009-07-28)
- MAILPIA による Twitter チェック (2008-04-04)
- クリッピングに便利な CMS 「Tumblr」を使ってみる (2007-04-13)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.027452s / load averages: 0.33, 0.29, 0.26
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)






■ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。
■ Google Buzz はよろしければ Naney の Google プロフィールからどうぞ。