WWW :: Mechanize-从下拉列表中选择

时间:2016-08-11 17:24:27

标签: html perl www-mechanize

我正在尝试使用WWW :: Mechanize从下拉菜单中选择一个选项。这是我现在的代码(只有从下拉菜单中选择的部分):

use warnings;
use WWW::Mechanize;
my $url = 'http://genome.ucsc.edu/cgi-bin/hgBlat?command=start';
my $browser = WWW::Mechanize->new();
  $browser->get($url);
    $browser->select('db', 'hg38');
    $browser->submit();

选择不起作用。

以下是我手动选择所需选项的网站上的此下拉菜单的HTML:

<select name="db"> = $0
     <option selected value="hg38">Dec. 2013 (GRch38/hg38)</option>
     <option value="hg19">Feb. 2009 (GRch17/hg19)</option>
     <option value="hg18">Mar. 2006 (NCBI36/hg18)</option>
     <option value="hg17">May 2004 (NCBI35/hg17)</option>
     <option value="hg16">July 2003 (NCBI34/hg16)</option>
</select>

如何使用Mech选择选项?相关网站的网址是&#39; http://genome.ucsc.edu/cgi-bin/hgBlat?command=start&#39;。

1 个答案:

答案 0 :(得分:1)

您应该在每个编写的Perl程序的顶部 始终 use strict,尤其是在寻求代码帮助之前。它会立即揭示问题

您的WWW::Mechanize对象位于$browser,但您已拨打$mech->select$mech尚未定义,因此您收到一条错误消息,指出select无法在未定义的值上调用