根据在Unix上使用Perl传递的模式从给定URL获取文件

根据在Unix上使用Perl传递的模式从给定URL获取文件,perl,Perl,我被告知一个给定的URL包含几个xml和文本文件,我需要下载给定目录中以AAA开头的所有xml文件(即AAA*.xml) 访问该URL的凭据已提供给我 请不要让xml文件的大小以GB为单位 我已经用下面的代码实现了同样的功能- use strict; use warnings; use LWP; my $browser = LWP::UserAgent->new; my $username ='scott'; my $password='tiger'; # Create HTTP re

我被告知一个给定的URL包含几个xml和文本文件,我需要下载给定目录中以AAA开头的所有xml文件(即AAA*.xml)

访问该URL的凭据已提供给我

请不要让xml文件的大小以GB为单位

我已经用下面的代码实现了同样的功能-

use strict;
use warnings;
use LWP;
my $browser = LWP::UserAgent->new;
my $username ='scott';
my $password='tiger';

 # Create HTTP request object
  my $req =  HTTP::Request->new( GET => "https://url.com/");
 # Authenticate the user
  $req->authorization_basic( $username , $password);
  my   $res = $browser->request( $req , ':content_file' => '/fold/AAA1.xml');

  print $res->status_line, "\n";
它打印200 OK状态,但我无法获取文件。有什么建议吗


Man

如果服务器不允许您接收文件夹列表(即没有“选项+索引”的Apache),您将无法获得文件集合。
但是,有了该列表,您可以使用/AAA.*/之类的regexpr对其进行过滤,并且使用,很容易获取它

它是一个安全的URL,当我在web浏览器上手动提供相同的URL时,身份验证会失败。因此,您可能需要使用WWW::mechanize模块进行机械化