Ranking Saverの登録キーワードが100を超えました

Ranking Saver ( http://www.rankingsaver.jp/ )に登録されたキーワードが100を超えました。
ご利用の皆様、ありがとうございます。
今後も地道にユーザーを増やして行きたいと思います。


「Ranking Saver」
RankingSaverとは、Yahoo! Japan, Googleなどを1日に1度巡回し、ユーザーの皆様が指定したキーワードで検索した際に、各検索サイトにて何番目に表示されるかを自動で記録するシステムです。
また、記録したデータを、日別・月別のグラフで参照する事や、取得した結果をCSVファイルにダウンロードする事が可能になっています。

Yahoo!やGoogleの検索順位を保存するサイト

  • Ranking Saver -

http://www.rankingsaver.jp/

RankingSaverとは、Yahoo! Japan, Googleなどを1日に1度巡回し、ユーザーの皆様が指定したキーワードで検索した際に、各検索サイトにて何番目に表示されるかを自動で記録するシステムです。
記録したデータを、日別・月別のグラフで参照する事や、取得した結果をCSVファイルにダウンロードする事が可能になっています。

Joomla! 1.5を使ってサイトもリプレースし、βリリースに移行しました。
まだまだユーザー数も登録されているキーワードの件数も少ないので、概ね負荷関連が心配なところです。

関連する仕事をしている方は、無料ですので使ってみてください。

アメコが売ってない…

地元の自販機から一気にアメコが消えた…

しかし消え方が普通じゃない。

コールドとホットの両方を売ってた自販機の場合、
●コールド売り切れ
 ↓
●商品入替
 ↓
●ホット売り切れ
 ↓
●商品入替
という流れだ。

とうとうラインナップから消えたのかと思ったが、DyDoのページには残ってた。
まさかこれも乳製品高騰の影響なのか…

IO・DATAから手紙が3通も来た

例の故障に関する話の様で、無償点検するとのこと
よりにもよって3台も持ってるものだから、3通も連絡が来たらしい。
ユーザー登録はしてみるもんだな。

消えて困るものは入ってないが、見られて困るものは…
まあ、順次修理に出すか

ちゃんとした終電検索サイトは無いだろうか?

最近の路線案内に終電検索という機能が付いていて、便利に使っていたが、
実はこれで検索される終電が、実は終電では無い事がわかった。


今日も会議が長引いて、ぎりぎりの所で終電を検索したら、
最寄の駅まで残り10分という恐ろしい事実に遭遇。
ダッシュで駅まで行くものの、階段を昇るとそこには扉が閉まった電車が…
なんというありがちなドラマよと嘆いたものですw


と思ったら、たまたま山手線が5分遅れてて(↑の扉が閉まったのは京浜東北w)、
あきらめずに行ってみた所、終電乗換え案内に出てた終電は行ってしまっていた。
しかし、駅のホームには、終電乗り換え案内で表示された時間の次の電車(本当の終電)が…


そういえば前にも同じ様な事がと思い出し、なぜこんな事にと調べてみた。
結局、最後の連結駅までを検索すると、本当の終電が検索され最寄駅まで検索すると1本前になる。
けど、その駅では必ず終電どうしの連絡を行うので、その電車に乗れば家に帰れる。
しかもその電車は、山手線が5分遅れたという理由で5分遅れで出発していた。


よくよく考えてみた所、終電検索と言いながら通常の乗換え時間でルート検索されてたらしい。
あれに惑わされて、諦めたら負けの様だ。



結局、一通り有名な乗り換え案内で検索してみたが、どれも同じ結果だった。
どこかに、この辺りまで考慮した終電案内は無いだろうか。

とりあえず次からは時刻表をベースに終電を探す事にします。

PDFからテキスト情報を引っ張り出す

やっと出来た。
調査だけで1週間半近くもかかりました。全くもって最悪です。
ここにテキスト情報があるというのを特定するのに2日、その値を文字に戻すのに1週間…
今回はiTextというライブラリを利用して、調査をしていたのだが、開く側の情報は全然なく、
出力側のexampleしか無いiTextの中身をしげしげと眺めつつ、機能があるのか無いのかとかを
見た結果、余計な時間がかかってしまった。
まあ、自力で解凍のロジックを作る事を考えればマシなのかもしれんけど。

結論から行くと、iTextには文字を元に戻す機能は無さそうです。
あるのかもしれないけど見つからなかった。
大した作業でも無かったので、この部分は自力実装としました。
時間があったら全部を自力で組み直すか…

結果、サンプルソースにならない状況になってしまったので、大まかな手順のみ説明。
1.xrefエントリーからオブジェクトの一覧を取得
2.trailerからrootオブジェクトを取得
3.rootオブジェクトからPageTreeを取得
4.PageTreeから各Pageオブジェクトを取得
5.Pageオブジェクトから、ContentsとResourcesを取得
6.Resourceの中からFontを取得
7.Fontの中からCMapの情報を取得
8.Contentsの中から描画関連の情報を取得
9.8の中から必要な情報を引っ張りだす
となります。
リファレンスを読む際の参考にでもしてください。

ターゲットを文字列だけとした場合、ポイントになるのは、8の中でもTf, Tj, TJで終わる行
Tfの行がフォントを選択している部分で、この行を見ながら6,7で取得したフォント情報とマッチさせる。
Tj, TJの行がテキストが入っている行で、この中から(xxxx)もしくはの部分を取得
(xxxx)は、そのままxxxxで出力する。
は、16進表記で文字が指定されているので、16進の文字コードから文字を作成する必要がある。
この工程で気をつけなければならないのは、7番の工程で取得したCMapの存在。
このCMapには、文字の変換リストが用意されていて、この変換リストを使って変換をしないと、もともとの文字にはならない。

最近のPDFは基本圧縮されているので、本当は7とか8の工程で、PDFにStreamとして埋め込まれている情報を解凍してあげて、
そのうえで解析をする必要があります。

WMWifiRouter越しにウィルスがやって来た

SQLServerセキュリティホールを狙うネットワークウィルスだ。
どうやら中国から飛んで来たらしい。

問題なのは、これをノートPC側で発見したという事。
出先で、ウィルスバスターのポップアップが急に出てきたのでビックリした。


原因は、忙しくて説明をあんまり読んでなかったのがいけなかったのだが、
WMWifiRouterはデフォルト設定だと、Wifiでつながって来たPCをDMZにぶら下げてくれるらしい。

そんな状況で、数時間もつなぎっぱなしにしてたもんだから、
まあウィルスの1つも飛んで来るってもんです。

下手な設定にしてたら、スッパ抜かれてたなこれw