電子書籍の厳選無料作品が豊富!

以下のようなリンク先の画像の縦横のピクセルサイズを取得することは可能でしょうか。

http://www.hogehoge.com/images/sample.gif

登録式の検索エンジンで登録バナーサイズの判定をしたいと思っております。
もし出来るということであれば具体的なソースも教えて頂ければ幸いです。

どうぞ宜しくお願い致します。

A 回答 (3件)

簡単なのはGDモジュールですかね。




#!/usr/bin/perl
use strict;
use LWP::Simple;
use GD;

my $buff = &get("http://okwave.jp/images/logo/logo.jpg");
die "取得に失敗" unless $buff;

my $img = GD::Image->new($buff);
printf("use GD::Image; width => %s; height %s\n", $img->width, $img->height);

この回答への補足

画面が真っ白になるのはサーバーに LWP::Simple がインストールされていないことが原因でした。
契約サーバーにお願いして LWP::Simple 及び Image::Size をインストールしてもらい、
以下のようにして上手く出来るようになりました。

use Image::Size;
use LWP::Simple;
$size = get $sitebanner;
($size_x, $size_y) = imgsize(\$size);
if (($size_x > 120) || ($size_y > 60)){&error("バナーが規定のサイズを超えています。");}
}

この度は、ご回答を頂き誠にありがとうございました。

補足日時:2011/01/10 10:29
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お教え頂いた方法ですと、なぜか画面が真っ白になってしまいました。

せっかく教えて頂いたのに申し訳ございません。

お礼日時:2011/01/08 20:43

かぶった

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

以下のようにしてみましたが、上手く出来ませんでした。

use LWP;
use HTTP::Request;
use GD;

my $url = '$sitebanner';
my $ua = LWP::UserAgent->new;
$ua->agent('Mozilla/5.0');

my $req = HTTP::Request->new( GET => $url ) or die "$!:$url";
my $res = $ua->request($req) or die "$!$url";

my $image = GD::Image->new( $res->content ) or die "$!:$url";

if (($image->width > 120) or ($image->height > 60)){&error("バナーが規定のサイズを超えています。");}

サイズを超えている画像でも素通りしてしまいます。

お礼日時:2011/01/08 20:47

use LWP;


use HTTP::Request;
use GD;

my $url = 'http://cmm001.goo.ne.jp/img/logo/goo.gif';
my $ua = LWP::UserAgent->new;
$ua->agent('Mozilla/5.0');

my $req = HTTP::Request->new( GET => $url ) or die "$!:$url";
my $res = $ua->request($req) or die "$!$url";

my $image = GD::Image->new( $res->content ) or die "$!:$url";
print 'Width : ', $image->width, "\n";
print 'Hegith : ', $image->height, "\n";
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!