getElementsByTagName不返回任何标签(.length函数返回0)

时间:2019-07-15 16:36:23

标签: excel vba getelementsbytagname

我正在尝试使用VBA和IE自动化从包含XML的网页中提取一个值。当前,该程序打开IE浏览器,将XML代码复制到窗口中,然后单击按钮以对XML进行计算。然后,它将在同一窗口中使用结果XML代码加载一个新页面。我正在尝试通过解析来获取价值。

我能够提取某些标签的值,包括a和span标签。 span标签返回的值接近我所需的值,但是我无法提取出确切的值。

代码:

'browser previously defined, it is on the page with the xml

Dim oHTML As HTMLDocument
Dim elements As IHTMLElementCollection

Set  oHTML = browser.document

Set elements = oHTML.getElementsByTagName("total_tax_amount")

Debug.Print elements.Length 

'above returns 0, there are about 20 of those elements in the document

期望它返回20-25个元素,但是返回0。 该图显示了网站上html标记在total_tax_amount第一位置的样子。

enter image description here

1 个答案:

答案 0 :(得分:0)

Set elements = oHTML.all

str = elements.Item(0).getElementsByTagName("TOTAL_TAX_AMOUNT")(i).textContent

解决了这个问题,如果将来有人遇到这个问题。