如何通过引用其ID来获取元素的内在文章



代码大师!

新手在这里!我试图通过引用其ID元素来创建一个用于从网站上刮擦文本的工具,但是有了一些ID,我只会得到空格和/或中断。

这是网页的源代码:

<div id="empName">
  <h2>Employee Name</h2>
  <div class="clear"></div>
  <span style="font-family:Arial; font-weight:bold">
    <div id="empID">Employee ID</div>
  </span>

这是我的VBA代码:

Option Explicit
Sub SampleCode()
Dim IE As New SHDocVw.InternetExplorer
Dim HTMLDoc As MSHTML.IHTMLDocument
Dim EmployeeName As MSHTML.IHTMLElement
Dim EmployeeID As MSHTML.IHTMLElement
Dim URL As String
URL = "www.example"
With IE
    .Visible = True
    .FullScreen = True
    .Navigate URL
End With
Do
Loop Until IE.ReadyState = READYSTATE_COMPLETE And IE.Busy <> True
Set HTMLDoc = IE.Document
Set EmployeeName = HTMLDoc.getElementById("empName")
Set EmployeeID = HTMLDoc.getElementById("empID")
Debug.Print EmployeeName.tagName, EmployeeName.innerText, EmployeeID.tagName, EmployeeID.innerText
IE.FullScreen = False
IE.Quit
Set IE = Nothing
End Sub

这是从直接窗口显示的结果:

DIV           Employee Name           DIV           

我遵循YouTube的教程,但我无法从" Empid" ID属性中获得文本。任何建议都将不胜感激。

您可以尝试等到文本填充:

timeout = Now + #0:00:05#  ' to wait up to 5 seconds
While EmployeeID.innerText = "" And Now < timeout 
    DoEvents
Wend
Debug.Print EmployeeID.innerText

最新更新