我有一堆網頁我想通過腳本導航並抓取所有內容。我知道鏈接是每頁上的第18個鏈接。我有以下代碼爲一個測試,只需按照鏈接一次,屏幕抓取:Perl,使用機械化導航網頁
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,沒有辦法機械化可以按照這個鏈接。任何想法來解決這個問題?
這是一個非常頻繁重複的問題。 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 2012-03-22 11:43:15