我正在使用VBA打开网页,需要收集某些具有特定类别的元素的值。
With CreateObject("internetexplorer.application")
.Visible = True
.Navigate "http://www.google.com"
While .ReadyState <> 4 Or .Busy
DoEvents
Wend
Set r = .document.getelementsbyclassname("gssb_f")
' REST OF CODE
End With
以上不起作用。
我也在努力为InternetExplorer.Application
对象找到所有可用属性和方法的库。它存在吗?
答案 0 :(得分:1)
您现在可以使用.querySelectorAll
的{{1}}方法来应用的CSS选择器
document
“。”表示className。此方法返回一个.gssb_f
,您可以遍历返回的nodeList
的{{1}}。
语法:
.Length
答案 1 :(得分:0)
在VBA编辑器中,您应该尝试添加对Microsoft Internet Controls&#39;的引用。 点击&#39;工具&#39; &GT; &#39;参考文献&#39; &GT;检查“Microsoft Internet Controls&#39; &GT;单击“确定”。
我猜这应该有效。
-Nin
答案 2 :(得分:0)
我只是为此寻找解决方法而且只能找到这个。我发布了@davidbeyonchen想法的一个例子,万一其他人有这个问题。我只搜索了一个项目,但可以修改为包含多个项目。
For Each elem In .Document.all
If elem.className = "gssb_f" Then
Set r = elem
Exit For
End If
Next