Excel VBA网页抓取
我是Excel VBA编程新手,需要一些帮助来debugging我的代码,以便从亚马逊网站上抓取一些数据。
在我的工作表1上,我列出了产品的名称,并试图使用此代码完成URL到产品页面,然后将产品的销售排名通过类ID或另一个HTML标签。
但是,我不断收到错误:
用户定义types未定义
我无法弄清楚错误在哪里。
代码如下:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = Range("azAsin").Row And Target.Column = Range("azAsin").Column Then Dim IE As New InternetExplorer IE.Visible = True IE.Navigate "https://www.amazon.com/dp/" & Range("azAsin").Value Do DoEvents Loop Until IE.readyState = READYSTATE_COMPLETE Dim pap As HTMLDocument Set pap = IE.document Dim sDoc As String sDoc = Doc.getElementsById("SalesRank") MsgBox sDoc End If End Sub
尝试这个:
Dim ie As Object Set ie = CreateObject("InternetExplorer.Application") ie.Visible = True '... Dim objRank as Object Set objRank = ie.Document.getElementById("SalesRank") Dim rank As String If Not objRank Is Nothing Then rank = objRank.innerText