2013-02-28 90 views
1

我有一个网站,我需要从中下载文件。该网站需要我拥有的数字证书。我有一个网站提供的p12文件,这个文件很容易导入到允许访问该网站的Windows中。我想要做的是从网站下载一堆csv文件并解析它们。使用Perl从网站下载需要p12证书的文件

我找到了Net :: SSLeay和Crypt :: SSLeay软件包。我也看到LWP :: Useragent提到了SSL,但我不确定这是否足以满足我所要做的。

所以基本上我需要知道从哪里开始,哪些软件包最容易用于此目的。
我正在与草莓的Perl 5.16.2

回答

1

提供您已在P12转换成PEM格式,你可以使用:

use Mojo::UserAgent; 
my $url = 'https://some.site.com/path/to/file.zip'; 
my $ua = Mojo::UserAgent->new(max_redirects=>5, 
           cert=>'client_cert.crt.pem', 
           key=>'client_cert.key.pem'); 
$ua->get($url)->res->content->asset->move_to('downloaded_file.zip'); 

如果您使用的草莓perl的,你需要先安装魔:: UserAgent的模块,像这样:

c:\> cpan -i Mojo::UserAgent 
1

Windows 7从这篇文章看起来对我来说,OpenSSL的支持自2006年以来64位的Linux:

http://www.mail-archive.com/[email protected]/msg47285.html

这可能是可以对安装Windows 64bit How do you compile OpenSSL for x64?

因此,将其安装在Linux上是绝对可能的。请给我们你得到的错误。

问候,

+0

对不起,我拿出了与OpenSSL有关的问题的一部分,直到我确信我甚至需要它来完成我想要做的事情。 – 2013-02-28 17:01:48

+0

或者,安装cygwin并使用其openssl实用程序。 – ysth 2013-02-28 19:04:40

+0

openssl实用程序与草莓perl捆绑在一起,只是尝试从命令提示符运行“openssl” – kmx 2013-02-28 20:07:33