我试图在perl中使用LWP,我按照链接中给出的示例进行了操作:http://www.perl.com/pub/2002/08/20/perlandlwp.html,
但我有错误:
“www.google.com”未由LWP :: Simple模块
导出在/System/Library/Perl/Extras/5.12/LWP/Simple.pm第23行导入错误后无法继续
这是我的代码:
#!/usr/bin/perl -w
use LWP::Simple
$url = 'www.google.com';
$content = get $url;
我在这里做错了吗?
答案 0 :(得分:2)
您的use
语句后需要使用分号,并且您的网址需要指定协议。
#!/usr/bin/perl
use LWP::Simple;
use strict;
use warnings;
my $url = 'http://www.google.com';
my $content = get $url;
答案 1 :(得分:0)
是。您在use LWP::Simple
之后错过了分号。
答案 2 :(得分:0)
如果您使用strict
,它会告诉您必须声明$url
。但是,如果您声明了这两个变量,那么您仍然会遇到错误。
所以,这不是USUW的简单案例。
因为在import语句之后没有放置分号,perl会将字符串'www.google.com'
分配给autovariable $url
。然后,因为它是一个可以传递的表达式,所以它将该值作为LWP::Simple
的导出参数传递。
模块期望将任何作为参数传递给其导入过程的值是模块(或导出器)知道如何导出的符号。
所以它告诉你,你输入的字符串是什么,它不是模块导出的东西。
所以,你只需要习惯这种类型的消息,指出你的import语句有问题。