我在Windows XP上运行Perl,我需要从URL http://marinetraffic2.aegean.gr/ais/getkml.aspx下载文件.
我该怎么做?我曾尝试使用WWW :: Mechanize,但我无法理解它.
这是我使用的代码:
my $url = 'marinetraffic2.aegean.gr/ais/getkml.aspx';
my $mech = WWW::Mechanize->new;
$mech->get($url);
Run Code Online (Sandbox Code Playgroud)
Dav*_*oss 62
我会使用LWP :: Simple.
#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple;
my $url = 'http://marinetraffic2.aegean.gr/ais/getkml.aspx';
my $file = 'data.kml';
getstore($url, $file);
Run Code Online (Sandbox Code Playgroud)
小智 19
我使用File :: Fetch,因为这是一个核心Perl模块(我不需要安装任何其他软件包),并将尝试多种不同的方式来下载文件,具体取决于系统上安装的内容.
use File::Fetch;
my $url = 'http://www.example.com/file.txt';
my $ff = File::Fetch->new(uri => $url);
my $file = $ff->fetch() or die $ff->error;
Run Code Online (Sandbox Code Playgroud)
请注意,如果安装了LWP,该模块实际上会尝试使用LWP ...
use WWW::Mechanize;
my $url = 'marinetraffic2.aegean.gr/ais/getkml.aspx';
my $local_file_name = 'getkml.aspx';
my $mech = WWW::Mechanize->new;
$mech->get( $url, ":content_file" => $local_file_name );
Run Code Online (Sandbox Code Playgroud)
这实际上围绕着LWP::UserAgent->get.
更多详细信息可以在WWW::Mechanize 文档页面找到。