Как получить HTML-таблицу из документа, используя WWW::Mechanize::Firefox

Я не понимаю, как получить доступ к таблице HTML из документа.

Я играю по этой ссылке: Scotia Bank Jobs

Идея состоит в том, чтобы нажать кнопку "Следующая страница" несколько раз и собрать все маленькие таблицы HTML в одну.

Когда я открываю ссылку с WWW::Mechanize::Firefox Я могу получить весь документ (и таблицу HTML первой страницы) с

 my $cont= $mech->content( format => 'html' );

После этого я нажимаю кнопку "Следующая страница" с

my $id="search_result_next_page_link"; 
$mech->click({ xpath => qq{//*[\@id="$id"]}, synchronize => 0 }); 

Я могу нажать кнопку много раз, и в документе изменяется таблица, но я не могу использовать $mech->content больше, потому что URL-адрес тот же, а содержимое не меняется.

Я пытался что-то вроде:

my $tt= $mech->xpath('/html/body/form/div[4]/div/main/div/div[3]/section/div/div/table/text()');
print $tt;

но он печатает "0".

У меня такое ощущение, что я очень близок, есть идеи, как получить таблицу HTML после каждого клика????

1 ответ

Наконец-то.... мне пришлось беспокоить автора WWW::Mechanize::Firefox модуль и он предоставил решение, как получить HTML-код этой таблицы. Сценарий должен быть примерно таким:

@tt= $mech->selector('.tableSearchResults'); $HTMLtable= $tt[0]->{innerHTML};

Не забывайте, вам нужно ждать после каждого клика (или создавать цикл, ожидая появления элемента).

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