; GOOGLE WE APIs
Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

GOOGLE WE APIs

VIEWS: 14 PAGES: 60

  • pg 1
									GOOGLE WEB APIs
GOOGLE WEB APIs

Questo documento spiega in dettaglio la semantica delle
chiamate di funzioni,che si possono creare usando il servizio
Google Web APIs.In questo documento troverai:

- come lavora la sintassi delle query di google;
- come creare restrizioni sulle tue queries in base a
porzioni dell'indice di google,tipo una particolare lingua;
- come interpretare le informazioni sui risultati di ricerca
ritornati dal servizio Google Web APIs;
1.1 Search requests

Search requests passa una stringa ed alcuni parametri al servizio
Google Web APIs e riceve come ritorno una lista di risultati.Search
results deriva dall'indice di google contenente oltre 2 bilioni di
pagine web.
1.2 Cache requests


Cache requests passa un URL al servizio di Google Web APIs
e riceve in ritorno il contenuto dell'URL dopo che i crawler di
google hanno visitato le ultime pagine,quando disponibile.


public byte[ ] doGetCachedPage(java.lang.String url)
1.3 Spelling requests


Spelling requests passa una stringa al servizio di Google Web
APIs e riceve in ritorno una correzione suggerita per la richiesta.


phrase public java.lang.String doSpellingSuggestion(java.lang.String)
2.0 Search Request Format
2.1 Parametri di ricerca


Questa lista che segue elenca tutte le coppie nome-valore che
possono essere usate nella ricerca e descrive come questi
parametri possono modificare il risultato della ricerca.
1. key


Distribuita da google,è richiesta per accedere ai servizi di
google.Viene usata per l'autenticazione nel login.

public void setKey(java.lang.String key)
2. q


guarda la sezione query terms.


public void setQueryString(java.lang.String q)
3. start



indica l'indice da dove far partire i risultati desiderati.


public void setStartResult(int start)
4. maxResults



numero di risultati desiderati per query.Il valore massimo
per query è 10.


public void setMaxResults(int maxResults)
5. filter


attivabile e disattivabile per filtrare il risultato della ricerca,
per le applicazioni personali è preferibile metterlo a off.



public void setFilter(boolean on)
6. restrict


restringe la ricerca ad un sottoinsieme dell'indice web di google,tipo
il paese preferito.



public void setRestrict(java.lang.String restrict)
7. safeSearch


è un valore booleano che abilita il filtraggio delle pagine a contenuto
per adulti.


public void setSafeSearch(boolean safeSearch)
8. lr



language restrict,restringe la ricerca a documenti con una o più lingue.



public void setLanguageRestricts(java.lang.String lr)
9. ie



Input Encoding,questo parametro è stato deprecato ed ignorato.
10. oe



Output Encoding,questo parametro è stato deprecato ed ignorato.
2.2 Query Terms - <q>
Default Search

  per default, Google restituisce solo pagine che includono tutti i termini
 nella stringa di richiesta. Non c‟è necessità di includere “AND" tra
 termini di ricerca. Ricorda che l'ordine dei termini nella richiesta
 inciderà sui risultati della ricerca.
Stop Words

 Google ignora le parole comuni e i caratteri come "dove" e "come",
 così come singole cifre e singole lettere. Le parole comuni che sono
 ignorate sono note come parole di arresto.
 Tuttavia, potete impedire a Google di ignorare parole di arresto
  includendoli in virgolette, qui come nella frase "dovere o non dovere"
Special Characters

 Per default, tutti i caratteri non alfanumerici che sono inclusi in una
 richiesta di ricerca sono trattati come separatori di parola. Le uniche
 eccezioni sono le seguenti: doppio apice ("), segno più (+), segno
 negativo o trattino ( - ), e ampersand (&). Il carattere di ampersand (&)
 è trattato come un altro carattere nel termine della richiesta in cui è
 incluso, mentre i restanti caratteri di eccezione corrispondono per
 esaminare caratteristiche elencate nella sezione
  sotto.
Special query terms

 Google sostiene l'uso di numerosi termini della richiesta speciali che
 permettono all‟utente di accedere a capacità aggiuntive del motore di
 ricerca Google.

 Qui di seguito elencherò tutte le possibili query speciali che è possibile
 effettuare tramite ricerca dal sito.
1. Include Query Term

 Se una parola comune è essenziale all'ottenimento dei risultati che
 volete, potete includere insieme un segno "+" davanti ad esso.



 Esempio: Star Wars Episode +I
2. Exclude Query Term

 Potete escludere una parola dalla vostra ricerca mettendo un segno
 negativo (" - ") immediatamente davanti al termine che volete
 escludere dai risultati della ricerca.



 Esempio: bass -music
3. Phrase Search

 Cercate frasi complete includendoli in virgolette o collegandoli con
 trattini. Le parole segnate in questo modo appariranno insieme in tutti i
 risultati esattamente come inserite.
 Nota: Potreste avere bisogno di utilizzare un "+" per forzare l‟inclusione
 di parole comuni in una frase.


 Esempio: "yellow pages"
4. Boolean OR Search

 La ricerca di Google sostiene l‟operatore booleano "OR". Per
 richiamare le pagine che includono la parola A o la parola B, usa un
 OR maiuscolo fra i termini.




 Esempio: vacation london OR paris
5. Site Restricted Search

 Se conosci il sito specifico che desideri cercare ma non sei
 sicuro dove l‟informazione è situata all'interno di quel sito, puoi
 usare Google per cercare soltanto all'interno di un sito
 specifico. Fai questo inserendo nella query la stringa “site:"
 seguito dal nome dell‟host.
 Nota: L'operatore di esclusione ("-") può essere applicato a
 questa query per rimuovere un sito considerato nella ricerca.
  Nota: Soltanto un termine site: per query è possibile inserire.


 Esempio: admission site:www.stanford.edu
6. Date Restricted Search

 Se desideri limitare i risultati ai documenti che sono stati pubblicati
 all'interno di un range specifico di data, allora puoi usare il termine
 “daterange: " nella query. Il termine "daterange:“ nella query
 deve essere inserito nel seguente modo: daterange:<start_date>
 -<end date>, dove “start date” indica la data giuliana di partenza del
 range, mentre “end date” la data giuliana finale del range.
 La data giuliana è calcolata dal numero di giorni trascorsi dal 1
 gennaio 4713 AC; per es. per il 1 agosto 2001 è di 2452122.


 Esempio: Star Wars daterange:2452122-2452234
7. Title Search (term)

 Se inserisci all‟inizio della query il termine "intitle:", la ricerca di Google
 limita i risultati ai documenti che contengono quella parola nel titolo.
 Non deve essere presente lo spazio tra il termine “intitle:” e la parola
 che segue.
 Nota: Mettere "intitle:" davanti ogni parola nella query è equivalente a
 mettere "allintitle:" alla parte anteriore della query.


 Esempio: intitle:Google search
8. Title Search (all)

 Iniziando una query con il termine "allintitle:" limita i risultati a
 tutti quelli che contengono nel titolo tutte le parole inserite nella
 query.



 Esempio: allintitle: Google search
9. URL Search (term)

 Se anteponi alla query il termine "inurl:", la ricerca di Google limita i
 risultati ai documenti che contengono quella parola nel URL di
 risultato. Nota che non può essere presente uno spazio fra il termine
  "inurl:" e la seguente parola.
 Nota: "inurl:" funziona soltanto sulle parole, non componenti del URL.
 In particolare, ignora la punteggiatura ed usa soltanto la prima parola
 che segue il termine "inurl:". Per trovare le parole multiple in un URL
  di risultato usa il termine “inurl” per ogni parola.
 Nota: mettendo “inurl” davanti ad ogni parola equivale a mettere
 “allinurl” all‟inizio della query.

 Esempio: inurl:Google search
10. URL Search (all)

 Avviando una richiesta con il termine " allinurl: " limita i risultati a quelli
 con tutte le parole di richiesta negli URL in risultato.
 Note: " allinurl: " funziona solo su parole, non componenti URL. In
 particolare, ignora punteggiatura. Così, "allinurl": foo/bar " limita i
 risultati a pagine con le parole “foo"e" bar" nell'URL, ma non richiede
 che essi siano separati da uno slash all'interno di quell'URL, o che
 siano adiacenti o che siano in quel particolare ordine di parola. Non c'è
 attualmente alcun modo per imporre questi vincoli.


 Esempio: allinurl: Google search
11. Text Only Search (all)

 Avviando una richiesta con il termine " allintext: " limita i risultati a
 quelli con tutte le parole di richiesta solo nel corpo del testo, ignorando
 collegamenti, URL e match con i titoli.

 Esempio: allintext: Google search
12. Link Only Search (all)

 Avviando una query con il termine " allinlinks: " limita i risultati a quelli
 con tutte le parole di richiesta nei collegamenti URL alla pagina.



 Esempio: allinlinks: Google search
13. File Type Filtering

 Il prefisso della query " filetype: " filtra i risultati restituiti includendo
 solo documenti con l'estensione specificata immediatamente dopo.
 Nota che non ci può essere uno spazio tra " filetype: " e l'estensione
 specificata.
 Nota: Più tipi di file possono essere inclusi in una ricerca filtrata
 aggiungendo più termini " filetype: " alla ricerca.


 Esempio: Google filetype:doc OR filetype:pdf
14. File Type Exclusion

  Il prefisso della query " - filetype: " filtra i risultati per escludere
 documenti con l'estensione specificata immediatamente dopo.
 Osservare là può essere no spaziale tra " - tipo file: " e l'estensione
 specificata. Nota che non ci può essere uno spazio tra " -filetype: " e
 l'estensione specificata.
 Nota: Più tipi di file possono essere inclusi in una ricerca filtrata
 aggiungendo più termini " -filetype: " alla ricerca.

 Esempio: Google -filetype:doc -filetype:pdf
15. Web Document Info

 Il prefisso di richiesta " info: " restituisce un singolo risultato per l'URL
 specificata se esiste nell'indice. Nota: Nessun altro termine della
 richiesta può essere specificato quando si utilizza questo termine della
 query speciale.

 Esempio: info:www.google.com
16. Back Links

 Il prefisso della query " link: " elenca pagine web che hanno
 collegamenti alla pagina web specificata. Nota che non ci può essere
 uno spazio tra " link: " e l‟URL della pagina web.
 Nota: Nessun altro termine della query può essere specificato quando
 si utilizza questo termine della query speciale.



 Esempio: link:www.google.com
17. Related Links

 Il prefisso della query " related: " elenca pagine web che sono simili
 alla pagina web specificata. Nota che non ci può essere uno spazio tra
 " link: " e l‟URL della pagina web.
 Nota: Nessun altro termine della query può essere specificato quando
 si utilizza questo termine della query speciale.



 Esempio: related:www.google.com
18. Cached Results Page

 Il prefisso della query "cache: " restituisce la versione cache HTML del
 documento web specificato che la ricerca Google ha trovato. Nota che
 non ci può essere uno spazio tra "cache: " e l‟URL della pagina web.
 Se includete altre parole nella richiesta, Google evidenzierà quelle
 parole all'interno del documento trovato.



 Esempio: cache:www.google.com web
2.3 Automatic Filtering -<filter>
 Il parametro <filter> fa in modo che Google filtri alcuni dei risultati per
 una data ricerca. Questo è fatto per aumentare l'esperienza di un
 utente su Google.com, ma per la vostra applicazione, potete preferire
 di eliminare la filtrazione per ottenere l'insieme completo dei risultati di
 ricerca. Una volta attivata, la filtrazione intraprende le seguenti azioni :
 - Near-Duplicate Content Filter = se più risultati della ricerca
 contengono i titoli identici e i frammenti, allora è restituito solo uno dei
 documenti.
 -Host Crowding = se più risultati provengono dallo stesso Web host,
 allora solo i primi due vengono ritornati.

 Come applicarlo:
 public void setFilter(boolean on)
2.4 Restricts -<lr> <restrict>

 Google fornisce la capacità di modellare un sottoinsieme predefinito
 dell'indice Web di Google. Questo è attivabile utilizzando i parametri lr
 e restrict.

 <lr> -language restrict

 Per cercare documenti in un determinato linguaggio,si usa il parametro
 <lr> usando una delle seguenti variabili nella tabella.
 Come applicarlo:

 public void setLanguageRestricts(java.lang.String lr) ;
2.4 Restricts -<lr> <restrict>

<restrict>- Country and topic restrict

   Google vi permette di cercare informazioni su Web all'interno di uno o
   più paesi, utilizzando un algoritmo che considera il nome del dominio
   ad alto livello del server e la posizione geografica dell'indirizzo IP del
   server.
   - public void setRestrict(java.lang.String restrict)
   La collezione automatica dei paesi attualmente supportata è
   contenuta in questa tabella.
2.4 Restricts -<lr> <restrict>

Google ha anche quattro restrizioni sui topic:



                 Topic                           <restrict> value
    US Government                                unclesam
    linux                                        linux
    macintosh                                    mac
    FreeBSD                                      bsd
2.4 Restricts -<lr> <restrict>

Combinando i parametri <lr> e <restrict>

   Le richieste con l‟uso dei parametri <lr> e <restrict> sostengono anche
   operatori booleani identificati nella tabella sotto (in ordine di
   precedenza).

   Nota: Se entrambi i parametri <lr> <restrict> sono utilizzati in una
   richiesta di ricerca, le stringhe saranno combinate insieme utilizzando
   un “AND" logico.
2.4 Restricts -<lr> <restrict>

Operatore booleano   Come usarlo       Descrizione

Booleano NOT                           Rimuove tutti i risultati definiti
                     -lang_fr          come parte della sottoraccolta
[-]                                    subito dopo l‟operatore " - ".
                                       L'esempio limita i risultati e
                                       rimuoverebbe tutti i risultati in
                                       francese.




Booleano AND                           Ritorna risultati che vengono fuori
                     linux.countryFR   dall'intersezione dei risultati
[.]                                    ritornati dalla sottoraccolta dell'uno
                                       o l'altro operatore al lato del “.".
                                       L'esempio limita il valore dei
                                       risultati che vengono fuori dal
                                       sottoargomento "linux" identificato
                                       in un ambiente francese.
2.4 Restricts -<lr> <restrict>

Booleano OR                                   Restituisce i risultati che vengono
                        lang_en|lang_fr       fuori dall OR tra l‟uno o l‟altro
[|]                                           argomento al lato dell‟operatore "|".




Parentesi [ () ]        (linux).(-            Tutti i termini all'interno delle
                                              parentesi in una stringa di
                        (conutryUK|countryU   sottoraccolta saranno valutati
                        S))                   prima che siano valutati i termini
Nota: Gli spazi non                           fuori dalle parentesi. Usa le
                                              parentesi per regolare l'ordine della
sono caratteri validi                         valutazione dei termini. L'esempio
nelle restrizioni.                            restituisce i risultati nella
                                              sottoraccolta personalizzata "linux"
                                              che non sono o negli Stati Uniti o
                                              nel regno unito.
2.5 Input e Output Encodings

 Per supportare la ricerca di documenti in più in lingue e in caratteri
 decodificati le Google API Web eseguono tutte le richieste e le
 risposte nella decodifica UTF-8. I parametri <ie> ed <oe> sono
 richiesti dal client ma i loro valori sono ignorati. I clients dovrebbero
 codificare tutti i dati di richiesta in UTF-8 e dovrebbero aspettarsi che i
 risultati fossero in UTF-8.
 N.B questi parametri sono stati deprecati.
2.6 SafeSearch - <safeSearch>

  Molti utenti Google preferiscono non avere siti per adulti inclusi nei
 loro risultati della ricerca. La caratteristica SafeSearch di Google
 protegge dai siti che contengono questo tipo di informazioni e li elimina
 dai risultati della ricerca. Mentre nessun filtro è al 100% preciso, gli usi
 del filtro di Google hanno avanzato la tecnologia esclusiva che
 controlla parole chiave e frasi, URLs ed elenchi di directory.

 Come applicarlo:
 public void setSafeSearch(boolean safeSearch);
2.7 Limitazioni

 Ci sono alcune limitazioni importanti di cui dovreste essere
 consapevoli. Alcuni di questi sono perché l'infrastruttura di Google è
 ottimizzata per utenti finali. Tuttavia, nel futuro speriamo di
 aumentare ampiamente i limiti per gli sviluppatori Google API Web.
Limitazioni

Componente                          Limite

Lunghezza della richiesta           2048 bytes

Numero massimo di lettere nella
                                    10
query
Numero massimo di termini “site:”
                                    1 (per ogni richiesta)
nella query
Numero massimo di risultati per
                                    10
query
Valore massimo per
                                    1000
<start>+<maxResults>
3. Formato dei risultati di ricerca
3.1 Risposta della ricerca
 Ogni volta che pubblicate una richiesta di ricerca al servizio di Google,
 una risposta vi viene restituita. Questa sezione descrive i significati dei
 valori restituiti con i vari metodi usati nel codice.

 <documentFiltering>- un valore booleano indica se è stato eseguita
 una filtrazione sulla ricerca. Questo sarà “true" solo se (a) avete
 richiesto filtrazione (b) e la filtrazione in effetti si è verificata.
 public void setDocumentFiltering(boolean fi);
 public boolean getDocumentFiltering();

 <searchComments>- Una stringa di testo viene visualizzata a un
 utente finale. Uno dei messaggi più comuni trovati qui è una nota da
 cui “stop words" sono state rimosse dalla ricerca automaticamente.
 (questo accade per molte parole comuni come "e" e "come“).
 public void setSearchComments(java.lang.String ct);
 public java.lang.String getSearchComments();
3.1 Risposta della ricerca

<estimatedTotalResultsCount>- il numero totale stimato dei risultati che
   esiste per una query. Nota: Il numero valutato può essere più alto o
   inferiore al numero reale di risultati che esistono.
   public void setEstimatedTotalResultsCount(int m);
   public int getEstimatedTotalResultsCount();

<estimateIsExact>- Un valore booleano che indica che la valutazione è
   realmente il valore esatto.
   public void setEstimateIsExact(boolean xt);
   public boolean getEstimateIsExact();

<resultElements>- un array di termini, ciò corrisponde alla lista reale dei
   risultati di ricerca.
   public void setResultElements(GoogleSearchResultElement[] rs);
   public GoogleSearchResultElement[] getResultElements();
3.1 Risposta della ricerca

<searchQuery>- è il valore di <q> per la richiesta di ricerca.
   public void setSearchQuery(java.lang.String q);
   public java.lang.String getSearchQuery();
<startIndex>- indica l‟indice del primo elemento del risultato della ricerca
   in <resultElement>.
   public void setStartIndex(int sn);
   public int getStartIndex();


<endIndex>- indica l‟indice del primo elemento del risultato della ricerca
   in <resultElement>.
   public void setEndIndex(int en);
   public int getEndIndex();
3.1 Risposta della ricerca
<searchTips>- Una stringa di testo visualizzata all'utente finale. Fornisce
   i suggerimenti istruttivi su come usare Google.
    public void setSearchTips(java.lang.String tt);
    public java.lang.String getSearchTips() ;
<directoryCategories>- un array di termini, corrisponde al match delle
   directory ODP per questa ricerca.
    public void setDirectoryCategories(GoogleSearchDirectoryCategory[] cats);
    public GoogleSearchDirectoryCategory[ ] getDirectoryCategories();
<searchTime>- Testo, numeri a virgola mobile che indicano il tempo
   totale del server di restituire i risultati di ricerca, misurato in secondi.
    public void setSearchTime(double tm);
    public double getSearchTime( );
3.2 Result Element
<summary>- Se il risultato di ricerca ha un elenco nell'indice di ODP, il
   sommario di ODP è pubblicato qui come stringa di testo.
   public void setSummary(java.lang.String ds);
   public java.lang.String getSummary();
<URL>- I‟ URL del risultato della ricerca, viene restituito come testo, con
  un percorso di URL assoluto.
   public void setURL(java.lang.String u);
   public java.lang.String getURL();
<snippet>- Uno snippet che mostra la query nel contesto dell‟ URL dove
   compare. Tutto è formattato in HTML e solitamente gli include i tag
   <B> all‟interno. Si noti che il termine della query non compare
   sempre nello snippet. Nota: I termini della query saranno evidenziati in
   GRASSETTO nei risultati e la line breaks sarà inclusa per lo
   spostamento del testo.
   public void setSnippet(java.lang.String s);
   public java.lang.String getSnippet();
3.2 Result Element
<title>- Il titolo dei risultati della ricerca ritorna in HTML.
   public void setTitle(java.lang.String t);
   public java.lang.String getTitle();

<cachedSize>- testo (intero+ “k”). Indica che una versione cache del
   <URL> è disponibile e la grandezza è indicata in kilobytes.
   public void setCachedSize(java.lang.String sz);
   public java.lang.String getCachedSize();




<relatedInformationPresent>- Booleano indicante che il termine
   “related:" della query è supportato da questo URL.

   public void setRelatedInformationPresent(boolean rt);
   public boolean getRelatedInformationPresent();
3.2 Result Element
<hostName>- Quando occorre filtrare, un massimo di due risultati presi
  da tutti quelli restituiti dall‟host vengono visualizzati. Quando questo
  accade, il secondo resultElement che viene da quell„host contiene il
  nome dell‟host in questo parametro.
   public void setHostName(java.lang.String hn);
   public java.lang.String getHostName();
<directoryCategory>- Vedi sotto.
   public void setDirectoryCategory(GoogleSearchDirectoryCategory cat);
   public GoogleSearchDirectoryCategory getDirectoryCategory();

<directoryTitle>- Se l‟ URL per questo resultElement è contenuto nella
   directory di ODP, il titolo che compare nella directory compare qui
   come stringa di testo. Si noti che il directoryTitle può essere differente
   dall‟ URLs <title>.
   public void setDirectoryTitle(java.lang.String dt);
   public java.lang.String getDirectoryTitle();
3.3 Directory Category

<fullViewableName>- Testo, contenente il nome della directory di ODP
   per la categoria corrente di ODP.
<specialEncoding>- Specifica lo schema di cifratura delle informazioni
    della directory.

								
To top