运行小样本脚本时出现以下错误:
无法通过软件包“WWW :: Mechanize :: Firefox”定位对象方法“new”(也许 你忘了在mechtest.pl第2行加载“WWW :: Mechanize :: Firefox”?)。
use WWW::Mechanize::Firefox;
my $mech = WWW::Mechanize::Firefox->new();
$mech->get('http://google.com');
$mech->eval_in_page('alert("Hello Firefox")');
my $png = $mech->content_as_png();
我安装了WWW :: Mechanize :: Firefox,我在Firefox上安装了MozRepl插件。为什么不能找到新的?
答案 0 :(得分:5)
很可能你在Windows上安装了旧版本的WWW :: Mechanize :: Firefox。那个旧版本当时(非常)命名为Fire_F_ox(注意大写字母F)。看看你的机器上是否有FireFox.pm文件。
Windows具有不区分大小写的文件系统,因此即使您请求加载文件Firefox.pm,也会很乐意加载文件FireFox.pm。
解决方案是卸载WWW :: Mechanize :: FireFox并安装WWW :: Mechanize :: Firefox。此外,对于将来的报告,如果您告诉我们Perl的版本,模块的版本以及您使用的操作系统,它会给您带来极大的帮助。
-max
答案 1 :(得分:1)
听起来像WWW :: Mechanize :: Firefox安装不正确。重新启动并确认它已正确安装(cpan,ppm等)。
答案 2 :(得分:1)
该模块需要一些依赖项,如MozRepl::RemoteObject
等。
您可能应该使用cpan或ppm(如果使用ActiveState)等重新安装