NAME

WebService::GoogleHack README

VERSION

0.15

SYNOPSIS

GoogleHack is a set of Perl modules that does a variety of text processing using the World Wide Web as a source of information.

The module GoogleHack.pm acts as the "driver" module for all the sub-modules such as Search, Spelling, Text, and Rate.

Basic Features

Advanced Features

IMPLEMENTATION DETAILS

GoogleHack is made up of 5 PERL modules:

  1. GoogleHack.pm
  2. Rate.pm
  3. Search.pm
  4. Text.pm
  5. Spelling.pm

GoogleHack.pm
GoogleHack.pm ties together all the functionality of the Rate, Search,Text and Spelling modules. Hence, by just creating an object of type GoogleHack, the user will be able to call all the functions of the other modules. In addition to acting as a single interface to the other modules, GoogleHack.pm also provides the functions to find the set of related words.

Google Hack supports two methods for finding sets of related words. These are known as Algorithm 1 and Algorithm 2 (http://search.cpan.org/~prath/WebService-GoogleHack-0.11/GoogleHack/GoogleHack.pm#PACKAGE_METHODS). These algorithms are implemented in the module GoogleHack.pm. You can see an example program that calls these algorithms here
(http://search.cpan.org/~prath/WebService-GoogleHack-0.11/GoogleHack/Examples/WordCluster.pl)

Rate.pm
Rate.pm is the sub-module of GoogleHack that implements all the sentiment classification and relatedness measures of GoogleHack. Functions include,

Though the functions in this module can be accessed directly, it is advised to use the GoogleHack module to interact with this module.

Search.pm
Search.pm is the sub-module of GoogleHack that implements the feature that interacts with the Google search engine. Though the search functions in this module can be accessed directly, it is advised to use the GoogleHack module to interact with this module.

Spelling.pm
Spelling.pm is the sub-module of GoogleHack that implements the spelling suggestion feature of Google. Though the spelling suggestion functions in this module can be accessed directly, it is advised to use the GoogleHack module to interact with this module.

Text.pm
Text.pm is the sub-module of GoogleHack that implements the text processing functions. Basic features include,

These features are used by some of the other modules of GoogleHack.

DEPENDENCIES

This module requires these other modules and libraries:

To use this package, you need to have a Google API ID, and the GoogleSearch.WSDL File. You can register for this service and download the required materials @ http://www.google.com/apis/

Other packages that you will need:

(See INSTALL file more more information on how to install these packages)

Additional Package if using Sentiment Classification functions:

DEMONSTRATION

To use the GoogleHack package include the following command at the beginning of your program:

use WebService::GoogleHack;

This command creates a new instance of GoogleHack called "google":

$google = new WebService::GoogleHack;

$PATHCONFIG="";

$PATHREVIEW="";

This command initializes the "key" and "Google WSDL" file path:

$google->initConfig("$PATHCONFIG");

$correction=$google->phraseSpelling("dulut");

$results=$google->Search("duluth");

print $google->{'searchTime'};

print $google->{'snippet'}->[0];;

$results=$google->measureSemanticRelatedness("knife","cut");

$google->predictSemanticOrientation("$PATHREVIEW","excellent","poor");

my @terms=();

push(@terms,"gun");

push(@terms,"pistol");

$results=$google->wordClusterInPage(\@terms,10,25,1,"results.txt","true" );

print "\n Algorithm 1 Results \n$results";

push(@terms,"machine gun");

$results=$google->Algorithm2(\@terms,10,15,10,1,1,35,"results.txt","true ");

print "\n Algorithm 2 Results \n$results";

$google->predictWordSentiment("$PATHREVIEW","excellent","bad");

print "\n Word Sentiment Results \n$results";

DOCUMENTATION

POD style documentation is included in all modules and scripts You can look @ `perldoc GoogleHack` for more information about the specifics of each module. The description of each method in the modules is also given.

SUPPORT & CREDITS

Questions about how to use this library should If you have any questions or suggestions you e mail Pratheepan Raveendranathan (rave0029@d.umn.edu) or Ted Pedersen (tpederse@d.umn.edu).

Design - Ted Pedersen Pratheepan Raveendranathan

Implementation - Pratheepan Raveendranathan

Documentation - Ted Pedersen Pratheepan Raveendranathan

You can visit the developers web site @

Ted Pedersen - http://www.d.umn.edu/~tpederse Pratheepan Raveendranathan

COPYRIGHT AND LICENCE

Copyright (c) 2005 by Pratheepan Raveendranathan, Ted Pedersen

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to

The Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.