【发布时间】:2019-02-24 20:49:04
【问题描述】:
只有在使用 getElementsByClassName 时才会出现问题
Dim HTTP As New MSXML2.XMLHTTP60
HTTP.open "POST", strWWW, False
HTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
HTTP.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
HTTP.send ("obj=" & strID)
Dim HTML As New MSHTML.HTMLDocument
HTML.body.innerHTML = HTTP.responseText
Dim eleCol As MSHTML.IHTMLElementCollection
Set eleCol = HTML.getElementsByClassName("listEvent sro") '<-- The problem is happening here.
测试在 Windows 8.1 和 Windows XP 上进行
Windows 8.1
虽然在 IDE 中一切正常, 但是编译时只是出现错误:
mshtml.dll 11.00.9600.18860
mshtml.tlb 11.0.9600.16518
该方法存在,但现在为什么它在 IDE 中有效,但在编译时无效?
Windows XP
即使在 IDE 中也没有工作,呈现 以下错误信息:
mshtml.dll 8.0.6001.23588
mshtml.tlb 8.0.6001.18702(旧版本,没有getElementsByClassName)
mshtml.tlb 11.0.9600.16518(使用此版本但不起作用)
我做错了什么?
【问题讨论】:
标签: vba web-scraping vb6 microsoft.mshtml