Archive for the ‘Hacking’ Category

[休日ハック]鴨川市立図書館⇔Amazon相互参照ブックマークレット

最近、よく利用している鴨川市立図書館の蔵書検索結果とAmazonを相互参照するブックマークレットを作りました。(IE6, IE7, FireFox3, Google Chromeで動作確認済)

鴨川市立図書館⇔Amazon

「ブックマークレット」という言葉に聞きなれない方のために解説すると、あるページを表示した状態でブックマークレットを選択/クリックすると、そのページの情報を元に、ちょっとした機能が使えるもののことです。

上記のリンクを、お気に入りの「リンク」に入れ、図書館の蔵書ページ(例えばこれ)やAmazonの各書のページ(例えばこれ)で、ブックマークをクリックすると、図書館のページからAmazonへ、またその逆にジャンプすることができます。

図書館にある本のレビューをAmazonでチェックしたり、Amazonで買いたいと思った本が図書館にないか確認するのに使えます。

こんなものを作っても、使うのは私一人のような気がしますが、まあせっかく作ったので公開します。w

[技術ネタ]ssh窓を開いているとファイルのアップロードが億劫になりませんか?

ssh でサーバにログインしているとき、ファイルを上げるためにFTPクライアントやWinSCP を立ち上げるのが面倒くさく感じられてしまうことありませんか?いったんネット上に上がっているファイルなら、wget やその他のツールを使って落とせばいいんですがローカルのWindowsマシンにあるファイルをサーバにあげるのが、とってもめんどくさい。

そんなあなたに、とっても便利な方法を見つけましたので、ご紹介します。

  1. Base64EnDeco をダウンロード&インストール。
  2. Windows のスタートボタンを右クリック。「エクスプローラ」を選択。
  3. プログラム→Shimsoft とたどり、Base64EnDeco へのショートカットをコピー。
  4. C:\Documents and Settings\[ユーザ名]\SendTo に 3. でコピーしたショートカットを貼り付け。エクスプローラを閉じる。
  5. 任意の(あまり大きくない)バイナリファイルを右クリック。送る→Base64EnDeco とたどると Base64EnDeco が立ち上がり、エンコード結果が表示されますので、全て選択&コピー(Ctrl+A, Ctrl+C)してください。
  6. ssh 窓で

$ cat > uudecode

としてから、クリップボードの内容を貼り付けます。最後に改行し、Ctrl+D でプロンプトに戻ります。カレントディレクトリに目的のファイルが出来ているはずです。

まだ試していませんが、メガバイト級サイズのファイルはやらないほうがいいでしょう。その場合はファイル転送用のちゃんとしたツールを使ってください。

GUIのファイル転送ツールの操作を面倒に感じる、硬派なあなたのお役に立てれば幸いです。

キャプチャツール公開その後・・・

最近、このネタばっかりですみません。

先日公開した「NHKラジオ語学番組キャプチャツール」ですが、寄せられたコメントをご覧いただければお分かりの通り、「素晴らしい」「驚異的」「おそろしいまでにすごい」とぶっちぎりの好評価をいただいております。アクセスログを見ると、延べ1000件を超えるダウンロード数となっており、コメントをいただかなくとも、結構皆さんのお役に立っているのだな、と実感しています。

2ちゃんねるの方でも似たような動きがあるようで、Wikiにまとめていらっしゃる方もいますね。友人に間違えられたのですが、2ちゃん内スレの「ネ申」さんは私ではありません。w

さて、好評に喜んでばかりもいられませんで、実は、このツール開発の動機となった中国語の勉強が全く進んでいません。(;´Д`) 「いつでも聴けるから」とついつい勉強を後回しにしてしまいます。これでは本末転倒もいいところなので、ツールの改良はほどほどにして、自分の勉強にリソースを割きたいと思います。

今後の対応を優先度の高い順に挙げると、

  • FLVキャプチャ時のエラーハンドリング改良(失敗したら再トライする)
  • 「チャロの英語実力講座」への対応
  • ドキュメントの充実
  • GUI化

になります。ただし、GUI化については、タスクスケジューラで利用される方のことも考えると、やらないかもしれません。(両方に対応できるような作りにすればいいじゃないかというツッコミはナシで。)

NHKラジオ語学番組キャプチャツールを公開!

先日来、このブログでも何度か書いている NHK ラジオ語学番組のキャプチャリングについて、必要なツールを自動化スクリプトも含めてまとめ、公開することにしました。ダウンロードはこちらから

自動化スクリプトが Ruby というのが利用者にとってちょっと面倒ですが、諸般の事情によりそうなりました。ご了承ください。

詳しい使い方は同梱の README.txt に書いてありますが、画面キャプチャ入りの解説をどなたか書いていただけると助かります。(他力本願


こんなツールを配布しなくとも、自前で mp3 に変換したものを Podcast すれば早いんですが、ご想像がつくように、それでは著作権法違反となります。 「複製の主体」が「利用者本人」であることが必要なため、今回の公開に至りました。全国の言語オタク仲間のお役に立てれば幸いです。

rtmpdump イケてるっ!

NHK語学番組ストリーミング自動録音についての続報です。

今日も飽かずにWebを徘徊していたら、rtmpdump というそのまんまのツールを見つけました! 早速、コンパイル&実行してみると、ちゃんとRTMP上に流れる.flvがダウンロードできました。それを ffmpeg で mp3 に変換してちゃんと再生できることを確認。これはウホッなツールを見つけちゃったなぁ。

あ、くれぐれもこれを使って(公開された)Podcast などはしないように。NHK に訴えられること必至です。(w

あーでもこれでやっと自分のしたいことが実現できそうです。Very Thanks to Andrej Stepanchuk! You did a really great job!

RTMPの壁・・・

一昨日お知らせした、NHKラジオ語学番組のストリーミング放送について、配信形式にちょっとした難点があり、私のしたいことができないでいます。

というのは、再生するのにホームページ上でFlash のプレーヤを使うことになっているのですが、そのプレーヤは内部的に RTMP という読み捨て型のプロトコルを使用しており、放送内容を簡単にダウンロードできないのです。

Windows ではダウンロード用のツールがあるのですが、いちいちWebブラウザから操作しなければならず、面倒。私としては Linux上で定期的にチェックし、音声ファイルに落とす、ということをやりたいのです。RTMPサーバの実装はいくつか公開されているのですが、クライアントの方は探してみた限りでは見つかりませんでした。

まあダウンロードできなくても素直にホームページで再生すればいいんですけれども、できれば取りだめしておきたいんですよねぇ。

ただ、対応プラットフォームの多いFlashプレーヤを選択したNHKの方針自体は間違っていないと思います。 RTMPの仕様は、アドビから公開するというアナウンスが、今年の1月に発表されたばかり(実際の公開はまだ)なのでFlash以外の実装がないのは仕方ないのかもしれませんが・・・。うーむ。

La Fonera ハック (OpenWRT化)

月初め頃に「La fonera をハックしたくなりました。」というエントリを書き、モノをアマゾンで購入してはいたのですが、ずっと触れずにいました。今日やっと時間まとまった時間が取れたので、思い立って開封しました。

本来であれば、LANに繋げてfonコミュニティに登録して・・・という手続きになるのでしょうが、最初からハック目的で買ったので、とりあえず、OpenWRT化。手順は Wiki にまとめましたので、参考にしたい方はどうぞ。参考にした雑誌の記事ではシリアルケーブルを自作してブートローダにアクセス、となっていましたが、半田づけ作業が面倒だったので、手持ちのパソコンだけで済む方法を取りました。

作業自体は順調に進み、サクッとOpenWRT化できました。X-WRTもインストールしたので、Webブラウザから各種設定ができます。新しいロットのせいか、陽気のせいか、発熱も心配したほどではなく、数時間使っていますが安定して使えています。

が、しかし。

終わってみると、なんか物足りないんですよね。(w これなら普通の無線LANルータじゃんって感じで。apt ライクにファームのアップデートができるのは新鮮ですけれども、もっとすごい感動が味わえるかと思ってました。

まあ KamogaWiFi プロジェクトの基礎研究と思えばいいのかな。活用方法は追々考えてみようと思います。

DNSBLサービス「スパム鯛めし」を公開

ライブドアの「スパムちゃんぷるー(β)」に対抗し、弊社でもコメントスパム・トラックバックスパム用DNSBLサービス「スパム鯛めし(β)」を公開することにしました。

ライブドアはそれなりの人手とアルゴリズムを駆使していますが、弊社は最小コストでほぼメンテナンスフリーの仕組みを使っています。

手元のスパムIPを調べたところ、ユニークIPベースで 92.8%、延べIPベースで 99.4%の高確率でスパムを検出できました。スパムちゃんぷるーやniku.2ch.netに比べ、遜色ない成績となっています。

プログラマブルでRFCクリア(たぶん ^^;)なDNSの実装にはかなり手こずりましたが、良い勉強になりました。

ご利用は商用・非商用を問わず無料です。ブログ、掲示板などでご利用いただければ幸いです。

ご使用後の感想、ご意見などぜひお寄せください。

Google Ajax Search API を利用したスパムフィルタ

昨日から Akismet を無効にして livedoor の スパムちゃんぷるー をのRBLを導入していますが、それをすりぬけてくるスパムもあります。DNSBLの性質上、統計をとってからデータベースに載せるので、新手のスパム元には対応しきれない面もあります。

で、いろいろ情報をさぐっているうちに「GoogleでIPアドレスを検索して検索にマッチしたらほとんどスパム」という判定方法を見つけ、早速実装してみました。


<?php
/*
Plugin Name: Google based spam filter
Plugin URI:
Description: 送信元のIPを Google 検索し、マッチしたらスパムとみなします。要PHP5。
Author: sino
Version: 0.0.1
Author URI: http://www.takanashi-it-factory.com/
*/
function reject_google_spam_IP($id) {
 $check_IP = $_SERVER['REMOTE_ADDR'];
 $spam     = false;
 $json = file_get_contents("http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=". $check_IP);
 $val = json_decode($json);
 if($val->responseData->results) $spam = true;
 if ($spam) {
  wp_die('Error: Your IP Address is found at google (http://www.google.com/search?q='. $check_IP .').');
 }
}
add_action('edit_post', 'reject_google_spam_IP');
?>

当初、これを元にした RBL を立ち上げようかとも思ったのですが、Webサービス使ってるんならプラグインにした方がいいと思い、こうしました。スパムちゃんぷるーフィルタと併用すればほとんどスパムフリーじゃないでしょうか。もうしばらく様子を見てみたいと思います。

Akismet 無効化&スパムちゃんぷるー導入

Akismet は優秀なスパムフィルタですが、誤検出も結構あるようで、どうしたもんかなーと思ってました。

そこへlivedoorがコメントスパム専用のDNSBLを始めたようで、こちらで紹介されているスクリプトを導入してみました。

試験的にAkismetを無効化し、スパムちゃんぷるーが有効か検証してみたいと思います。今までコメントして弾かれていた方はどうぞコメントしてみてください。(w

Recent 10 Tweets
携帯電話登録用QRコード
高梨IT製作所ヘルプデスク
  • エラーが発生しました。ご指定のフィードは現在利用できないようです。後ほど再度お試しください。
お勧め商品