#453 - Un motore di ricerca con Google e ASP
Nello script #392 Cristian Civera ci ha fatto vedere come è semplice implementare Web Service con ASP.NET, nel caso specifico sfruttando le API di Google per aggiungere un motore di ricerca al nostro sito.
Ovviamente anche con Classic ASP la cosa non è complicatissima, anche se bisogna lavorare un attimo manualmente.
Perchè lo script funzioni, inoltre, è necessario che sia installato il Soap Toolkit 1.0, che potete scaricare direttamente da MSDN.
Il resto è codice, peraltro di facile comprensione.
<%
' variabili di ricerca
GoogleKey = "chiave"
SearchStr = Request("q")
StartNum = CInt(Request.QueryString("start"))
PageSize = 10
Set SoapRequest = Server.CreateObject("MSSOAP.SoapClient")
' Inizializzazione di SoapClient con il WSDL salvato in locale
' dall'URL http://api.google.com/GoogleSearch.wsdl
SoapRequest.mssoapinit Server.MapPath("GoogleSearch.wsdl")
' Richiamo il metodo doGoogleSearch delle API di Google
Set Results = SoapRequest.doGoogleSearch (GoogleKey, SearchStr, StartNum, PageSize, False, "", False, "", "", "")
' Informazioni sulla ricerca
EstimatedTotalResultsCount = Results.Item(3).Text
searchTime = Results.Item(7).Text
endIndex = Results.Item(11).Text
startIndex = Results.Item(17).Text
estimateIsExact = Results.Item(19).Text
' risultati totali
For j = 0 To Results.Item(9).childNodes.length - 1
if Results.Item(9).childNodes.Item(j).NodeName = "item" Then
' recuperiamo i valori per posizione
DocSnippet = Results.Item(9).childNodes.Item(j).childNodes.Item(5).Text
DocCatDesc = Results.Item(9).childNodes.Item(j).childNodes.Item(13).Text
DocURL = Results.Item(9).childNodes.Item(j).childNodes.Item(15).Text
DocTitle = Results.Item(9).childNodes.Item(j).childNodes.Item(17).Text
' costruzione output
Risultati = Risultati & _
"<li><a href="""&DocURL&""">"&DocTitle&"</a><br>" & _
DocSnippet & "</li>"
End If
Next
Set Results = Nothing
Set SoapRequest = Nothing
%>
Risultati per la ricerca di '<%=SearchStr%>' - da
<b><%=startIndex%></b> a <b><%=endIndex%></b>
su un totale di
<b><%=FormatNumber(EstimatedTotalResultsCount, 0)%></b>.
Ricerca effettuata in
<b><%=FormatNumber(searchTime, 2)%></b> secondi<br />
<ul><%=Risultati%></ul>
Vai alla pagina: <%
'calcolo pagine totali
TotalPages = (EstimatedTotalResultsCount)\(PageSize)+1
' fix per numero di pagine
if Fix(EstimatedTotalResultsCount/PageSize) = EstimatedTotalResultsCount/PageSize then TotalPages = TotalPages -1
for i = 1 to TotalPages
%>
&start=
"><%=i%></a>
<%
next
%><br />
Per vedere all'opera lo script, basta andare su
http://www.aspitalia.com/liste/usag/esempi.aspx?ID=453







Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!
ho visto lo script per far funzionare la ricerca in asp con il motore Google.Ho provato sul mio pc ma non funziona, in quanto mi dà un errore perchè ...
Continua »»» | Rispondi »»»