2

File::Remote のような、http で動作する (読み取り専用) perl モジュールはありますか? 何かのようなもの

$magic_module->open( SCRAPE, "http://somesite.com/");
while(<SCRAPE>)
{
  #do something     
}
4

4 に答える 4

5

はい、もちろん。使用できますLWP::Simple

use LWP::Simple;
my $content = get $url;

コンテンツが空でないかどうかを確認することを忘れないでください。

die "Can't download $url" unless defined $content;

$contentundefダウンロード中に何らかのエラーが発生した可能性があります。

于 2012-06-21T12:48:23.380 に答える
3

HTTP :: Tinyの場合:

use HTTP::Tiny qw();
my $response = HTTP::Tiny->new->get('http://example.com/');
if ($response->{success}) {
    print $response->{content};
}
于 2012-06-21T13:22:16.633 に答える
3

モジュールも使用できFile::Fetchます:

File::Fetch
    ->new(uri => 'http://google.com/robots.txt')
    ->fetch(to => \(my $file));
say($file);
于 2012-06-21T13:11:43.850 に答える
2

統一されたインターフェースでローカル、リモート (HTTP/FTP)、その他のファイルの両方を処理する場合は、IO::Allモジュールを使用します。

use IO::All;

# reading local
my $handle = io("file.txt");
while(defined(my $line = $handle->getline)){
    print $line
}

# reading remote
$handle = io("http://google.com");
while(defined(my $line = $handle->getline)){
    print $line
}
于 2012-06-21T13:00:14.983 に答える