#!/usr/bin/perl # file show_all_reviews.pl # Shows all reviews in the browser use LWP; #-------------------------------------------------------------------------------------- # Collect the review from a given address and a given cuisine # Returns the response content sub collectReview { my $address = shift; my $cuisine = shift; #print "Address = ".$address."\n"; $address =~ s/^\s*//; # ltrim $address =~ s/\s*$//; # rtrim #print "Address = ".$address."\n"; # Create the request my $url = $address."?cuisine=".$cuisine; my $agent = LWP::UserAgent->new(); my $request = HTTP::Request->new(GET => $url); my $response = $agent->request($request); $response->is_success or next; # used to avoid quit when url is wrong #$response->is_success or die "$url: ",$response->message,"\n"; return $response->content(); } #-------------------------------------------------------------------------------------- my @reviewAddresses; my @reviews; my $vectorSize; my $url = "http://243d.cyberloft.com/cgi-bin/peer_urls.pl"; my $agent = LWP::UserAgent->new; my $request = HTTP::Request->new(GET => $url); my @cuisinesArray = ("Indian", "Italian", "American"); # Get the list of urls to be queried for cuisines. my $response = $agent->request($request); $response->is_success or die "$url: ",$response->message,"\n"; # Copy each address to the vector... @reviewAddresses = split("\n",$response->content()); $vectorSize = @reviewAddresses; print "Connection: close\n"; print "Content-type: text/html\n\n"; print ""; print " Review Collector "; print "\n"; print "

Collection performed by Roberto Silveira Silva Filho's script ...

\n"; print "

\n"; foreach $cuis (@cuisinesArray) { print "

Quering for $cuis cuisine...

\n"; print "\n"; print "
\n"; #print $reviewAddresses[0]."\n\n"; for ($i=0; $i<$vectorSize; $i++) { #print "Calling collectReview...\n"; my $addr = $reviewAddresses[$i]; my $reviewCollected = collectReview($addr, $cuis); print "\n"; print "\n"; print "\n"; print "\n"; } print "

Address

Review

Address: $addr$reviewCollected
\n"; } print "


\n\n"; #print "vectorSize = $vectorSize"; #print "\n\n Response: \n\n"; #print $response->content; #print "\n\n Vector: \n\n"; #print $reviewAddresses[0]."\n"; #print $reviewAddresses[1]."\n";