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>
Как я могу использовать мех, чтобы выбрать опцию? URL-адрес соответствующего веб-сайта: " http://genome.ucsc.edu/cgi-bin/hgBlat?command=start".
1 ответ
Вы должны всегда use strict
в верхней части каждой написанной вами Perl-программы, особенно перед тем, как обратиться за помощью к вашему коду. Это немедленно выявило бы проблему
Ваш WWW::Mechanize
объект находится в $browser
, но вы позвонили $mech->select
, $mech
не был определен, поэтому вы получаете сообщение об ошибке, в котором говорится, что select
нельзя вызывать для неопределенного значения