私はスクリプトをナビゲートして、すべてのコンテンツを取得したいと思うウェブページをたくさん持っています。私はリンクがすべてのページの18番目のリンクであることを知っています。私はテストとして、次のコードは一度だけ、画面のこすりリンクをたどるする必要があります。 Perl、Mechanizeを使用してウェブページをナビゲートする
use strict;
use WWW::Mechanize;
my $start = "http://*some-webpage*";
my $mech = WWW::Mechanize->new(autocheck => 1);
$mech->get($start);
open(Output, ">mech_test.txt") or die $!;
$mech->follow_link(url_regex => qr//, n => 18);
print Output $mech->response()->content();
close(Output);
は、残念ながら、私がアクセスしようとしているリンクは、HREFタグには何もありません。ページのソースにリンクを表示すると次のようになります。
<a href="" onclick="return _doClick('CA256D6E001A7020.80376e858b0791b1ca256d7300098304/$Body/0.155A', this, null)">Next >></a>
私は、これはjavascriptので、Mechanizeのは、このリンクをたどることができます方法はありません信じています。これを回避するためのアイデアですか?
これは非常に頻繁に繰り返される質問です。 http://stackoverflow.com/search?q=%5Bperl%5D+mechanize+%5Bjavascript%5D http://stackoverflow.com/questions/4767562/is-there-a-way-to-execute-javascript-in- perl http://stackoverflow.com/questions/3769015/how-can-i-handle-javascript-in-a-perl-web-crawler http://stackoverflow.com/questions/6683611/tricking-browser-into- calling-javascript-events – daxim