javascript - 使用 VBA 遍历 DIV 元素

标签 javascript html css vb.net vba

我在循环遍历 div 元素时遇到问题,我不知道该怎么做。该代码非常有效。

本质上,我可以访问一个网站,并想通过链接从该网站下载内容。我的代码查找并找到元素 X 并继续单击该元素。

问题是,元素 X 重复了很多次,因此例如 .getElementByClassName("AssetLinkText") 在 HTML 代码中重复了几次,导致提取下载第一个“AssetLinkText”。

我认为解决方案是通过 HTML 进行搜索,即针对每个循环并查找带有内部文本“下载完整证券列表”的标签。但是,我不确定如何执行此操作。

Sub anotherAttempt()

'DECLARE VARIABLES
Dim browser As InternetExplorer
Dim document As HTMLDocument
Set browser = New InternetExplorer
Dim div

'MAKE VIS AND NAV
browser.Visible = True
browser.Navigate "https://etf.deutscheam.com/GBR/ENG/ETF/LU1221100792/-/DAX-UCITS-ETF-(DR)-Income"

'MULTITHREAD
Do While browser.Busy And Not browser.readyState = READYSTATE_COMPLETE
      DoEvents
Loop

'PERFORM ACTIONS
Set document = browser.document
Dim anchorElement As HTMLAnchorElement
Set anchorElement = document.getElementsByClassName("AssetLinkText")
'CHECK FOR HOLDINGS LINK
anchorElement.Click

End Sub

最佳答案

这对我有用。

Dim divs As Object
Dim div As Object

// get all div element in DOM
Set divs = IE.document.getElementsByTagName("div")

// loop through all div elements
For Each div In divs
    // do things here
    // e.g. div.innerHTML = "hello"
Next div

关于javascript - 使用 VBA 遍历 DIV 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39448831/

相关文章:

javascript - 根据屏幕尺寸的视口(viewport)值

html - 如何设置图片后面的文字滚动

html - 在始终显示的 Bootstrap 导航栏中创建全宽搜索输入

css - 延迟 CSS3 动画

javascript - 如何使用webpack代理devserver路径重写?

javascript - 标签(片段标识符)VS Javascript History API

javascript - 以特定 Angular 在对 Angular 线上滑动元素

javascript - Google JavaScript API v3 - 街景服务 - 关闭建筑内部

javascript - 如何使用 Vue.js 对表格列进行排序?

html - 如何修复降低标题高度的动画?