También sería hacer un arreglo dinámico en Perl, que me diga si encontró 20 URL que se detenga el llenado del arreglo.
ESTE ES EL SCRIPT DEL CRAWLING:
Using perl Syntax Highlighting
- use LWP::UserAgent;
- use HTML::LinkExtor;
- my @urls = ('http://127.0.0.1/');
- my %visited;
- my $browser = LWP::UserAgent->new();
- $browser->timeout(5);
- while (@urls) {
- my $url = shift @urls;
- next if $visited{$url};
- my $request = HTTP::Request->new(GET => $url);
- my $response = $browser->request($request);
- if ($response->is_error()) {print $response->status_line, "\n";}
- my $contents = $response->content();
- $visited{$url} = 1;
- my ($page_parser) = HTML::LinkExtor->new(undef, $url);
- $page_parser->parse($contents)->eof;
- my @links = $page_parser->links;
- foreach my $link (@links) {
- next if $$link[2] !~ /127.0.0.1/;
- print "$$link[2]\n";
- push @urls, $$link[2];
- }
- sleep 1;
- }
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Gracias...