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 нельзя вызывать для неопределенного значения

Другие вопросы по тегам