M.C.P.C.

―むり・くり―プラスコミュニケーション(更新終了)


| トップページ |

2009年2月 5日 22:41

302リダイレクト先をGETせよ!(実際にはHEAD)

このエントリーをはてなブックマークに追加 mixiチェック

RSSをフェッチしてリストにするお仕事で数年やらせていただいている僕ですけれども、最近Feed Burnerを使って配信されるRSSのlink要素が、feedproxy.google.comなる効果測定するためのプロクシサーバが刺さっていまして、リンクしてブラウザで開く場合は302リダイレクトがかかるので(その際にブラウザ情報とかバックで記録している)まあいいとして、はてなブックマークのブックマーク数を表示させるときに使おうとすると、リアルのURLではないので、0 Usersとなってしまう。

しょうがないので、302リダイレクトの先を取得するのを作る羽目になった。

これがワンライナー。

perl -MLWP::UserAgent -le '$q=HTTP::Request->new(HEAD=>"http://~");$u=LWP::UserAgent->new;print $u->simple_request($q)->header("location");'

Twitterに投稿できるよう140文字以内に収めてみましたw

そんで、実際にプログラムに組み込んだところ、いくらFeedBurnerがGoogleになったといえども、何10件ものHEADをシーケンシャルに処理すると遅くなるわけで、耐えられない遅さになっちまいました。

キャッシュ機構組むか……で感じでシオシオです。

投稿 大野 義貴 [Perl] | |

トラックバック(0)

トラックバックURL: http://blog.dtpwiki.jp/MTOS/mt-tb.cgi/2747

コメントする