Я написал скрипт в vba, который может нажимать на определенную ссылку (Draw a map
) веб-страницы.Когда щелчок сделан, открывается новая вкладка, содержащая информацию, которую я хотел бы получить.Мой скрипт может сделать все это без ошибок.После запуска скрипта он удаляет заголовок, видимый как Make a Google Map from a GPS file
, с новой вкладки.
Мой вопрос: есть ли альтернативный способ перейти на новую вкладку, кроме использования поиска с жестким кодом, например If IE.LocationURL Like "*" & "output_geocoder" Then
?
Это мой сценарий:
Sub FetchInfo()
Const url As String = "http://www.gpsvisualizer.com/geocoder/"
Dim IE As New InternetExplorer, Html As HTMLDocument, R&
Dim winShell As New Shell
With IE
.Visible = True
.navigate url
While .Busy = True Or .readyState < 4: DoEvents: Wend
Set Html = .document
End With
Html.querySelector("input[value$='map']").Click
For Each IE In winShell.Windows
If IE.LocationURL Like "*" & "output_geocoder" Then
IE.Visible = True
While IE.Busy = True Or IE.readyState < 4: DoEvents: Wend
Set Html = IE.document
Exit For
End If
Next
Set post = Html.querySelector("h1")
MsgBox post.innerText
IE.Quit
End Sub
Чтобы выполнить вышеуказанный сценарий, добавьте следующую ссылку в библиотеку:
Microsoft Shell Controls And Automation
Microsoft Internet Controls
Microsoft HTML Object Library
Кстати, с этим сценарием все в порядке.Я только хотел бы узнать какой-нибудь лучший способ сделать то же самое.