2011-10-18 19 views
3

イメージを右クリックして保存した場合と同じように、イメージはhereです。これをサーバーに1日に数回保存するとします。私のデスクトップに。私はこれを行うためのperlスクリプトを使用することを決定した、ここで私がこれまでに書いたものです:イメージをfrom.asp urlに保存して保存する

use Image::Grab; 
$pic->regexp('.*\.png'); 
$pic->search_url('http://www.reuters.wallst.com/enhancements/chartapi/index_chart_api.asp?symbol=.SPX&headerType=quote&width=316&height=106&duration=3'); 
$pic->grab; 
open(IMAGE, ">index_chart_api.png") || die"index_chart_api.png: $!"; 
binmode IMAGE; # for MSDOS derivations. 
print IMAGE $pic->image; 
close IMAGE; 

をssh経由でそれを実行した後、私はこのエラーが表示されます。はラインで未定義の値の「正規表現」メソッドを呼び出すことはできません2

「$ pic-> regexp( '。*。png');」という行は、またはこの画像を取得して保存する方法(index_chart_api.png)

これに関するお手伝いをお待ちしております。

答えて

0

注画像を検索する何のHTMLがないことを意味私のブラウザでPNG画像を示しています。原則的に、そして、次のスクリプトが動作するはず:

#!/usr/bin/env perl 

use warnings; use strict; 
use LWP::Simple qw(getstore is_error); 

my $img_url = 'http://www.reuters.wallst.com/enhancements/chartapi/index_chart_api.asp?symbol=.SPX&headerType=quote&width=316&height=106&duration=3'; 

my $ret = getstore($img_url, 'test.png'); 

if (is_error($ret)) { 
    die "Error: $ret\n"; 
} 

私はNorwegian Sun in the Baltic Sea - 6 days in 5 minutesを生成するようなスクリプトを使用していました。

+0

これは魅力のように機能します。どうもありがとうございました。 – user991329

0

オブジェクトを初期化していないため、定義されていません。

use Image::Grab; 
$pic = new Image::Grab; 
$pic->regexp('.*\.png'); 

または類似のもの:URLを与えたことを

use Image::Grab; 

$pic = Image::Grab->new(
      SEARCH_URL => '', 
      REGEXP  => '.*\.png'); 
$pic->grab; 
open(IMAGE, ">image.jpg") || die "image.jpg: $!"; 
binmode IMAGE; 
print IMAGE $pic->image; 
close IMAGE; 
関連する問題