YANO's digital garage

Copyright ©YANO All rights reserved. https://www.bravotouring.com/~yano/

Last-modified: 2024-04-17 (水)


[一語一絵/IT系]

検索語ランキング / 2008-11-21 (金)

最近"アースソフト"とか"PT1"を検索して飛んでくる人が多いみたいだ。

google検索:アースソフト PT1
[External]googleで"アースソフト PT1"を検索

[External]googleで"アースソフト PT1"を検索してみると、[External]本家に続く6番目に表示されていたよ。

8月に発売情報を書いただけなのに、申し訳ない事だ。この夏、"名古屋港花火大会"絡みでショボイ携帯投稿ページに1000/日以上のアクセスが集中したのを思い出したよ。

騙された人、ご愁傷様です。

そういえば、[External]Analogの検索語句レポートは大文字小文字を同一視できないのを思い出したので、その辺をごにょごにょする事に。

awk[External]Analogの吐き出したHTMLページから「検索語句レポート」を抽出し、sedで"検索語"と"数"をピックアップ。perluc関数で"検索語"を大文字に揃えて連想配列で集計し、降順に出力するという処理がこれだ。

# 検索語ランキング抽出
$AWK '
        /検索語<\/th>/ {on=1;next;}
        /その他/ {on=0;}
        { if (on) {print;}
}'     /usr/share/analog/index.html \
| $SED -e 's/<\/td><td class="xl">/\t/g' -e 's/.*"R">//g' -e 's/<\/td>.*//g' \
| $PERL -e '
        my @n;
        while ( <STDIN> ) {
                chomp;
                @a=split(/\t/);
                $word = uc $a[1];
                $n{$word} += $a[0];
        }
        foreach (sort { $n{$b} <=> $n{$a} } keys %n){
                print "$_\t$n{$_}\n";
        }
' > $TMPFILE

# 上位10傑
head -10 $TMPFILE       \
| $SED -e 's/^\([^\t]*\)\t\(.*\)$/<li>\1 \(\2\)<\/li>/' > $RANKLIST

rm -f $TMPFILE
headでTop10だけ取り出し、sedを使って<li>行としてHTMLを吐き出す後処理を加え、[External]Analog起動のcronシェルに追加。

吐き出したファイルは[External]rNoteでskinとして取り込むようにしといたので、今後はカウンタの下あたりに先週~前日の検索語ランキングが表示されるはずだ。