定期的にGoogleのPageRankを調査していたのだがなぜか4/10位から全ページが0になってしまいました。気持ち悪いのでperlのスクリプトを作って調べてみました。
以前古いページがmetaにキーワード満載だったので過剰SEOのキーワードスパムとGoogleに判定されたらしくwebサイトの全ページがインデックスから削除されていました。心配なので時おりrubyのスクリプトで定期的にページのランクをチェックしてましたが何故か急にPR0になってしまいました。
同じアルゴリズムを使っていると思われる以下のツールでも同じ。
Google ToolbarのPageRank表示では普通に3とかでていますし、検索しても問題なくサイトが表示されます。SEOといってもほとんどなにもしていませんし、変なところにリンクを張っているわけでもないはずです。
で、上のツールにhttp://www.yahoo.co.jpと入れてみると。。。なんと0に。
ということで、デバッグログを表示させてみると、なにやらエラーがでています。
Your client does not have permission to get URL
他のSEOサイトなんかでも0になってしまうところがあるようです。以下のツールとサイトでは大丈夫のようです。
- perlのwww::Google::PageRank
- checkpagerank
google toolbarに表示されるPRは少し古いものらしく、スクリプトからは日々変化するものが見えていたようなのですが、見れなくなってしまったようですね。
ということでtoolbarと同じページのランクの値をgprank.rbと同じ形式で表示するperlスクリプト。これでいちおうページ内のランクを調べることが出来るようになりました。ただしインデックス外でも0になります。
- getpr.pl (getpr.pl.txt => getpr.plにリネームして使ってください)
perl -MCPAN -eshell
cpan> install WWW::Google::PageRank
使い方
スクリプトの第一引数はベースURL、以後そこからの相対URL。1URLだけも可
perl getpr.pl http://example.com/ index.html archive.html ....
階層以下の自サイト内の全htmlページのランク表示
perl getpr.pl http://example.com/ `find . -name \*.html | sed -e 's/^.\///'`