perl LWP 模块安装以及抓取xml内容

 因为最近可能要用到web 来交互,所以需要perl  LWP的模块来支持。
总的来说,安装lwp比较麻烦,尤其是我试了n次 perl -MCPAN 的方式都没有成功后。
之前都是以源码来安装的,因为看到资料说 Lwp所依赖的包很多,比较麻烦。当然,在以cpan安装没有成功之后,我不得不以老方法来安装了。

《Perl 网络编程》有比较详细的安装过程,只是它那里是很老的版本的,新版本需要的模块有
 URI
  MIME-Base64
  HTML-Parser
  libnet
  Digest-MD5
  Compress-Zlib
 
每个都装,有警告的暂且忽略了,最后安装成功。


另外因为要用到简单的xml解析。我也安装了XML::Simple 模块,最后使用这个简单的脚本就可以抓取网上的xml文件内容了。

#!/usr/bin/perl
use strict;
use LWP;
use URI::URL;
use XML::Simple;
use Data::Dumper;

my $url = "http://test.com/ssdf/xxx.xml";
my $agent = LWP::UserAgent->new;
my $req   = HTTP::Request->new(GET => $url);
my $response = $agent->request($req);
my $xs1 = XML::Simple->new();
if ($response->is_success) {
  my $c   = $response->content;
  my $doc = $xs1->XMLin($c);
  #如果xml中有utf编码,或者如ईࡉ这样的字符时,加上以下这句是十分必要的。
  binmode(STDOUT,":encoding(gb2312)");

  my $r   = Dumper($doc);
}
else {
  print $response->status_line, "/n";
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值