我正在使用WWW :: Mechanize从网页中检索表单:
#!/usr/bin/perl
use WWW::Mechanize;
my $mechanize = WWW::Mechanize->new();
$mechanize->proxy(['http', 'ftp'], 'http://proxy/');
$mechanize->get("http://www.temp.com/");
$mechanize->form_id('signin');
网站HTML的代码如下
<form action="https://www.temp.com/session" id="signin" method="post">
但我收到了错误
There is no form with ID "signin" at SiteScraper.pl
我该怎么办?
答案 0 :(得分:0)
如果不确切知道错误,您可以尝试输出WWW :: Mechanize能够在响应中找到的任何形式:
use Data::Dumper;
print Dumper($mechanize->forms());
它应输出所有表格及其各自的属性等。
仔细检查表单是否在转储中,否则出现问题。然后检查表单的 - &gt; {attr} - &gt; {id}是否也是您所期望的。
您还可以尝试使用其他方式选择表单,例如按名称,看看是否有帮助。