API геокодирования больше не является «бесплатным», хотя я на самом деле считаю, что с настройкой биллингового аккаунта вы можете очистить бесплатно, если вы остаетесь в пределах определенного порога.Как новый выпуск (карты / API были обновлены), я думаю, что ожидается, что эти API будут использоваться в сочетании с реальными картами (но не указывайте меня на этом).
Обратите внимание на следующее:
1) Используйте правильное ожидание загрузки страницы и после .click
While ie.Busy Or ie.readyState < 4: DoEvents: Wend
2) Используйте .Navigate2
вместо .Navigate
3) Используйте идентификаторы как можно быстрее для выбора.Как правило, они уникальны, поэтому не требуется зацикливание
4) В этом случае требуется дополнительное время для обновления URL-адреса и масштабирования карты и т. Д. Я добавил для этого временную петлю.Я показываю один пример, поскольку ясно, что вы знаете, как выполнить цикл.
Option Explicit
Public Sub GetInfo()
Dim ie As New InternetExplorer, arr() As String, address As String, city As String, country As String
Dim addressElement As Object, t As Date, result As String
Const MAX_WAIT_SEC As Long = 10 '<==adjust time here
With ie
.Visible = True
.Navigate2 "https://www.google.com/maps"
While .Busy Or .readyState < 4: DoEvents: Wend
With .document
.querySelector("#searchboxinput").Value = "united nations headquarters,USA"
.querySelector("#searchbox-searchbutton").Click
End With
While .Busy Or .readyState < 4: DoEvents: Wend
t = Timer
Do
DoEvents
On Error Resume Next
Set addressElement = .document.querySelector(".section-info-line span.widget-pane-link")
result = addressElement.innerText
If Timer - t > MAX_WAIT_SEC Then Exit Do
On Error GoTo 0
Loop While addressElement Is Nothing
If InStr(result, ",") > 0 Then
arr = Split(result, ",")
address = arr(0)
city = arr(1)
country = arr(2)
With ActiveSheet
.Cells(1, 2).Value = Trim$(address)
.Cells(1, 3).Value = Trim$(city)
.Cells(1, 4).Value = Trim$(country)
End With
End If
Debug.Print .document.URL
.Quit
End With
End Sub
С точки зрения селекторов -
Коммерческие адреса:
.section-info-line span.widget-pane-link
И отзывы от OP re: residential:
.section-hero-header div.section-hero-header-description