Usare le api di google con php per creare un suggeritore di parole
Posted on 05. May, 2006 by Administrator in php, tutorials
Obiettivo
In questo articolo vedremo come sia possibile creare un suggeritore di parole tramite google.
Limitazioni
Abbiamo solo due limitazioni: non deve essere per fini commerciali e possiamo fare al massimo 1000 ricerche al giorno.
La chiave da google
Per poter usufruire delle API di google dobbiamo registrarci al sito di google e ottenere una chiave che ci servirà per le ricerche.
La procedura e' facile e veloce e soprattutto gratuita.L'indirizzo e':
http://api.google.com/createkey
La libreria opensource Nusoap
una volta ottenuta la chiave dobbiamo scaricare la libreria che ci servirà per comunicare tramite soap
con il motore di ricerca di google. Questa libreria opensource chiamata nusoap è disponibile all'indirizzo
http://dietrich.ganx4.com/nusoap/
Articolo
Appena abbiamo finito il download, vediamo cosa fare per utilizzare il tutto. Innanzitutto occorre mettere il file
"nusoap.php" che abbiamo scaricato in precedenza, nella stessa directory in cui metteremo lo script di ricerca.
Per utilizzare la libreria occorre richiamarla includendola nel nostro script:
include 'nusoap.php';
dopodiche' dobbiamo istanziare un oggetto della classe "soapclient".
$soapclient = new soapclient("http://api.google.com/GoogleSearch.wsdl","wsdl");
preparare il messaggio xml da inviare al web service di google impostando i vari parametri
$params = array( 'key' => 'qui la chiave ottenuta da google',
'phrase' => 'frase da verificare'
);
madare effettivamente il messaggio e ricevere come risposta un array di risultati
$result = $soapclient->call("doSpellingSuggestion", $params);
vedere il risultato
if ($result[0]) echo "forse cercavi ".$result;
Codice completo
<?php
include 'nusoap.php';
$query=$_POST['query']; //query proveniente da un form
$soapclient = new soapclient("http://api.google.com/GoogleSearch.wsdl","wsdl");
$params = array('key' => 'qui la chiave ottenuta da google',
'phrase' => '$query'
);
$result = $soapclient->call("doSpellingSuggestion", $params);
if ($result[0]) echo "forse cercavi ".$result;
?>





Leave a reply