Google AJAX API from Excel?
Thsi code gets the number of results for a search at google.
Public Sub GoogleSearch()
'Use and input box for typing in the search words
Dim szSearchWords As String
Dim szResults As String
Dim ie As Object 'InternetExplorer
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
With Sheets("Sheet1")
RowCount = 2
Do While .Range("B" & RowCount) < ""
szSearchWords = .Range("B" & RowCount).Value
'Get keywords and validate by adding + for spaces between
szSearchWords = Replace$(szSearchWords, " ", "+")
ie.Navigate "http://www.google.com/search?hl=en&q=" & _
szSearchWords & "&meta="
'Loop until the page is fully loaded
Const READYSTATE_COMPLETE = 4
Do Until ie.ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
Set Results = ie.document.getelementsbytagname("P")
For Each itm In Results
If InStr(UCase(itm.innertext), "RESULTS") Then
MsgBox (itm.innertext)
'really item 3, but arrays staarts at 0
NumberofResults = itm.Children.Item(2).innertext
.Range("C" & RowCount) = NumberofResults
Exit For
End If
Next itm
RowCount = RowCount + 1
Loop
End With
'Explicitly clear memory
Set ie = Nothing
End Sub
"Martin Schneider" wrote:
Hi!
I'd like to access Google search from Excel to determine page rankings -
can anyone point me in the right direction, please?
I tried direct HTML access, but Google seems to detect and block this
after a few requests, so I'd like to use the AJAX API.
Thanks and best regards
Martin
|