vba迭代getelementsbyclassname()中的src元素

时间:2017-10-30 22:38:05

标签: vba excel-vba excel

我正在努力弄清楚如何遍历类名的src值。这些是图库图像,页面上的每个产品都有0到10个附加图像。我正在抓取内容,以便我们可以将这些产品作为授权分销商添加到我们的网站。供应商不以我们可以轻松导入的格式提供数据。

    Set objDescShort = doc.getelementsbyclassname("single__short-description")(0)
    Set objDescLong = doc.getelementsbyclassname("ui-tabs-panel ui-corner-bottom ui-widget-content")(0)
    Set objImgUrl = doc.getelementsbyclassname("single__gallery-main-img")(0) 'main image
    Set objImgUrl2 = doc.getelementsbyclassname("single__gallery-thumbs-img")(0) 'gallery images
    ret1 = objDescShort.innerHTML
    ret2 = objDescLong.innerHTML
    mysheet.Cells(n, 7).Value = ret1
    mysheet.Cells(n, 8).Value = ret2
    ret3 = objImgUrl.src
    mysheet.Cells(n, 9).Value = ret3
    galimg = ""
    ret4 = doc.getelementsbyclassname("single__gallery-thumbs-img")
    For Each srcElm In ret4
        galimg = srcElm.src & ", " & galimg
    Next
    mysheet.Cells(n, 10).Value = galimg

这只是我代码的一小部分。我从中提取此数据的网址为http://www.tigertoughgroup.com/products/T62130/

我很难弄清楚正确的语法是什么来获得' src'来自每个人的价值观。这个班级中的标签。

1 个答案:

答案 0 :(得分:1)

首先,由于getElementsByClassName返回元素集合,因此您需要使用关键字Set将这些对象分配给您的变量......

Set ret4 = doc.getelementsbyclassname("single__gallery-thumbs-img")

然后,您可以使用getAttribte获取src值...

srcElm.getAttribute("src")

希望这有帮助!