excel vba抓取网页数据(可以,只能用IE实现,引用MicrosoftInternetControls就可以)

优采云 发布时间: 2021-09-13 19:18

  excel vba抓取网页数据(可以,只能用IE实现,引用MicrosoftInternetControls就可以)

  是的,只能用IE来实现。您可以通过引用 Microsoft Internet Controls 在 VBA 中操作网页上的内容。

  Dim mShellwindows As New ShellWindows

Dim IE As InternetExplorer

For Each IE In mShellwindows '搜索页面

If IE.LocationURL = [URL] Then Exit For

Next

With IE.Document '在文本框填写内容

.all("[id_or_name]").Value = Sheet1.Cells(1, 1).Value

End With

  基本原理如上代码所示。

  [URL]是你要填写数据的页面,先用IE浏览器打开这个页面。

  [id_or_name] 是你要填写的控件的id或者name,这个需要提前从页面中获取。

  至于其他个性化定制内容,需要自己写~如果不想发图就问吧!

  顺便说一句

  Sub getPageInfo()

With CreateObject("internetexplorer.application")

.Visible = True

.Navigate [URL]

While .ReadyState 4 Or .Busy

DoEvents

Wend

Set dmt = .Document

For i = 0 To dmt.all.Length - 1

Set htMent = dmt.all(i)

With ActiveSheet

.Cells(i + 2, "A") = htMent.tagName

.Cells(i + 2, "B") = TypeName(htMent)

.Cells(i + 2, "C") = htMent.ID

.Cells(i + 2, "D") = htMent.Name

.Cells(i + 2, "E") = htMent.Value

.Cells(i + 2, "F") = htMent.Text

.Cells(i + 2, "G") = htMent.innerText

End With

Next i

Set r = Nothing

.Quit

End With

MsgBox "获取页面信息成功!"

End Sub

  这是抓取页面内容的代码...如果要登录,必须先打开页面。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线