我试图使用Perl来删除出版物列表,如下所示:
use XML::XPath;
use XML::XPath::XMLParser;
use LWP::Simple;
my $url = "https://connects.catalyst.harvard.edu/Profiles/profile/xxxxxxx/xxxxxx.rdf";
my $content = get($url);
die "Couldn't get publications!" unless defined $content;
当我在本地(Windows 7)机器上运行时,它运行正常。当我尝试在我们托管一些网站的linux服务器上运行它时,它就会死掉。我使用cpan安装了XML和LWP,所以那些应该在那里。我想知道问题是否可能是服务器上的某种安全性或权限(使其无法访问外部网站),但我甚至不知道从哪里开始。有任何想法吗?
答案 0 :(得分:4)
原来我没有安装LWP :: Protocol :: https。我通过切换找到了这个
LWP::Simple
到
LWP::UserAgent
并添加以下内容:
my $ua = LWP::UserAgent->new;
my $resp = $ua->get('https://connects.catalyst.harvard.edu/Profiles/profile/xxxxxx/xxxxxxx.rdf' );
print $resp;
然后它返回一个错误,告诉我它没有协议来访问没有LWP :: Protocol :: https的https,所以我用
安装它cpan LWP::Protocol::https
一切都很好。