从网站获取数据的vba代码

2024-04-24

我是这个网站和 VBA 编程的新手。我遇到了一个问题,我必须从中获取数据这一页 http://www.kieskeurig.nl/zoeken/index.html?q=4960999543345。我需要有超链接网址Check Rates 10按钮。谁能帮我解决这个问题。

我已经完成了以下代码:

Sub GetData()

Dim IE As New InternetExplorer
IE.navigate "http://www.kieskeurig.nl/zoeken/index.html?q=4960999543345"
IE.Visible = False

Do
    DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE

Application.Wait (Now() + TimeValue("00:00:016")) ' For internal page refresh or loading
Dim doc As HTMLDocument 'variable for document or data which need to be extracted out of webpage
Set doc = IE.document
Dim dd As Variant
dd = doc.getElementsByClassName("lgn")(0).outerHtml
'Range("a1").Value = dd
MsgBox dd

End Sub

我在其中获取按钮的文本,但我想获得该类的值。我认为我非常接近结果,但不知何故无法达到目标......任何人都可以帮助我......

Regards,


我认为这就是您正在寻找的:

(代码根据凯尔的回答稍作修改here https://stackoverflow.com/questions/18709911/pull-data-from-website-using-vba-excel-multiple-classname)

Sub Test()
'Must have the Microsoft HTML Object Library reference enabled
Dim oHtml As HTMLDocument
Dim oElement As Object
Dim link As String

Set oHtml = New HTMLDocument

With CreateObject("WINHTTP.WinHTTPRequest.5.1")
    .Open "GET", "http://www.kieskeurig.nl/zoeken/index.html?q=4960999543345", False
    .Send
    oHtml.Body.innerHTML = .responseText
End With

If InStr(1, oHtml.getElementsByClassName("lgn")(0).innerText, "Bekijk 10 prijzen") > 0 Then
    link = Mid(oHtml.getElementsByClassName("lgn")(0).href, 7)
    Debug.Print "http://www.kieskeurig.nl" & link
End If

End Sub

此代码将 URL 打印到立即窗口。希望有帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从网站获取数据的vba代码 的相关文章

随机推荐