#!/usr/bin/perl use strict; use HTML::TreeBuilder; use LWP::UserAgent; use HTTP::Headers; use URI::Escape; my %done; my @links; my $tree; my @getlinks; my $searchtext=uri_escape("jaggy"); my $ua = LWP::UserAgent->new; $ua->agent("Mozilla/5.0"); $ua->timeout(3000000); # Create a request my $req = HTTP::Request->new(GET => "http://www.google.co.in/search?hl=en&q=$searchtext&btnG=Google+Search&meta= "); my $res = $ua->request($req); sub resiscorrect { if ($res->is_success) { $tree = HTML::TreeBuilder->new_from_content($res->content); if(defined $tree->look_down( '_tag' => 'a' )){ @getlinks=$tree->look_down( '_tag' => 'a' ); for($b=0;$b<@getlinks;$b++){ if($getlinks[$b]->attr('href') and $getlinks[$b]->attr('href')!~/google|orkut|^\/(.*)/gi ){ push(@links,$getlinks[$b]->attr('href')); } } } } else { print "got failure".$res->status_line; } } resiscorrect(); foreach (@links) { unless (exists $done{$_}) { my $searchtext = $_; resiscorrect(); unless ($_ =~ m/(.*?)\d{1,3}(?:\.\d{1,3}){3}(.*?)/) { print "$_\n"; } $done{$_} = 1; } if (exists $done{$_}) { next; } }