Почему я получаю разные результаты в методах getelement при использовании метода get и ie.navigate?
Я долго искал ответ на этот вопрос. Ниже у меня есть две части кода, которые загружают HTML-сайт в память. Тот же результат. Но методы de getelements, например, getelementsbyclassname, не работают, когда я использую метод Get. Я хотел использовать более быстрый метод "Get", но из-за этого другого результата я не смог. В первой строке кода getElementsByClassName работает, но во второй части ничего не остается.
Я действительно не мог понять, почему, я застрял на некоторое время. Я надеюсь, что здесь вы можете помочь встретиться. Заранее спасибо.
<i>Dim IE As New SHDocVw.InternetExplorer
Dim HTMLDoc As New MSHTML.HTMLDocument
Dim URL As String
Dim Element1 As MSHTML.IHTMLElement, Element2 As MSHTML.IHTMLElement,
Element3 As MSHTML.IHTMLElement
Dim Elementen As MSHTML.IHTMLElementCollection
URL = "https://www.google.nl/?gfe_rd=cr&dcr=0&ei=KXNcWsHNJ9OB4gTcjqvwCA"
IE.Visible = True
IE.navigate URL
Do While IE.readyState <> READYSTATE_COMPLETE
DoEvents
Loop
Set HTMLDoc = IE.document
Set Element1 = HTMLDoc.getElementsByClassName("gsfi")(0)
Set Element2 = HTMLDoc.getElementById("lst-ib")
Debug.Print Element1.className, Element2.className
Dim XMLPage As New MSXML2.XMLHTTP60
Dim HTMLDoc As New MSHTML.HTMLDocument
Dim URL As String
Dim Element1 As MSHTML.IHTMLElement
Dim Element2 As MSHTML.IHTMLElement
URL = "https://www.google.nl/?gfe_rd=cr&dcr=0&ei=KXNcWsHNJ9OB4gTcjqvwCA"
XMLPage.Open "Get", URL, False
XMLPage.send
HTMLDoc.body.innerHTML = XMLPage.responseText
Set Element1 = HTMLDoc.getElementsByClassName("gsfi")(0)
Set Element2 = HTMLDoc.getElementById("lst-ib")
Debug.Print Element2.className</i>