Amazonの画像置換 #3
Posted at 2004-09-28T21:00:00+09:00 in Coding
AWSをガリガリいじってたら、通常の画像はimage/jpegなのに対して1*1のダメ画像はimage/gifなことにふと(今さら)気づいた。ので、画像置換のためのチェック方法にはContent-Typeを利用する方法もあるわけ。てかAmazon Hacksに載ってるらしいです(持ってない)。
Content-Typeがimage/jpegな場合はちゃんと画像がある(はず)なので、チェックするためのコードはこんなシンプルなものでOKなはず。
use LWP::Simple;
sub check_image {
my $url = shift;
my $header = head($url);
return 1 if $header->content_type eq "image/jpeg";
return 0;
}
とか書いたけど、ちゃんとした画像がimage/gifだったりすることもあるかもなぁ。いまいち一貫性に欠けるところがあるので信用できない(偉そう)。
Content-Lengthでチェックする場合はこんなコード。
use LWP::Simple;
sub check_image {
my $url = shift;
my $header = head($url);
return 1 if $header->content_length > 807;
return 0;
}
どっちにしても、失敗する時は失敗する気がする。しかも結構頻繁に。
そもそもAWSがきちんとしたURLを返さないのが悪い。とか、いつも思うわけで。
ちなみに、アメリカからの輸入盤CDの画像は01で取れますが、イギリスからの輸入盤CDの画像は09だったり(ドイツからの輸入版CDとかは知らない)。マメ知識。輸入版なら01に置換すれば安牌というわけではないってこった。Content-TypeかContent-Lengthでチェックしたほうが良いすね(コストかかるけど)。そもそもAWSが(以下略。
Weblog archives
by Month
- October, 2006 (9)
- September, 2006 (23)
- August, 2006 (31)
- July, 2006 (8)
- October, 2005 (13)
- September, 2005 (24)
- August, 2005 (26)
- July, 2005 (2)
- June, 2005 (2)
- May, 2005 (13)
- April, 2005 (30)
- March, 2005 (33)
- February, 2005 (13)
- January, 2005 (10)
- December, 2004 (28)
- November, 2004 (27)
- October, 2004 (25)
- September, 2004 (38)
- August, 2004 (52)
- July, 2004 (45)
- June, 2004 (41)
- May, 2004 (48)
- April, 2004 (36)
- March, 2004 (51)
- February, 2004 (55)
- January, 2004 (63)
- December, 2003 (46)
- November, 2003 (63)
- October, 2003 (92)
- September, 2003 (61)
- August, 2003 (93)
- July, 2003 (57)
- May, 2003 (5)
- April, 2003 (35)
- March, 2003 (35)
- February, 2003 (37)
- January, 2003 (62)
- December, 2002 (32)
This page was last modified on 2004-09-28T21:00:11+09:00 (in 0.347 secs).