in reply to Re: wsdl api in perl
in thread wsdl api in perl

Actually I was given a google api example
#!/usr/bin/perl -w use SOAP::Lite; my $query = "perl"; my $googleSearch = SOAP::Lite -> service("http://api.google.com/Google +Search.wsdl"); my $result = $googleSearch -> doGoogleSearch( "iwnUXUtHj3bteg5FWfBJDwui3SPeB+iy", # password to access googl +e $query, 0, # Fisrt result 10, # Number of results "false", # Filter '', # Restriction "false", # Secure Search '', # lr 'latin1', # ie 'latin1' # oe ); print $result->{resultElements}->[0]->{title}; print "\n"; print $result->{resultElements}->[0]->{URL}; print "\n";
I want to create google search on my web site which is developed using perl/CGI.
So as far as I understand the result of calling this api should be generated HTML with google links, java scripts, etc. Im I right?

Replies are listed 'Best First'.
Re^3: wsdl api in perl
by roman (Monk) on Feb 12, 2008 at 08:47 UTC

    Fortunately this WSDL is rpc/encoded so SOAP::Lite converts the response SOAP document into reasonable perl structure.

    As you found the result of doGoogleSearch call is a reference to a hash with keys ( "searchTime", "endIndex", "searchComments", "documentFiltering", "searchTips", "estimatedTotalResultsCount", "searchQuery", "startIndex", "resultElements", "directoryCategories", "estimateIsExact"). The hash can be analyzed the way you did. Actually the hash reference is an object - it is blessed into GoogleSearchResult package - but this package is empty, so there is no object api available.