我正在尝试从网站收集数据,一旦源为字符串形式,这些数据应该是可管理的。环顾四周,我收集了一些可能的解决方案,但都遇到了问题:
- 使用 InternetExplorer.Application 打开 url 然后访问内部 HTML
- 网内
- 使用 Shell 命令运行 wget
以下是我遇到的问题:
- 当我将 innerHTML 存储到一个字符串中时,它不是整个源,只是一小部分
- ActiveX 不允许创建 Inet 对象(错误 429)
- 我已将 htm 放入计算机上的文件夹中,如何将其放入 VBA 中的字符串中?
代码 1:
Sub getData() Dim url As String, ie As Object, state As Integer Dim text As Variant, startS As Integer, endS As Integer
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = 0
url = "http://www.eoddata.com/stockquote/NASDAQ/AAPL.htm"
ie.Navigate url
state = 0
Do Until state = 4
DoEvents
state = ie.readyState
Loop
text = ie.Document.Body.innerHTML
startS = InStr(ie.Document.Body.innerHTML, "7/26/2012")
endS = InStr(ie.Document.Body.innerHTML, "7/25/2012")
text = Mid(ie.Document.Body.innerHTML, startS, endS - startS)
MsgBox text