VBA代码无法读取iframe中的完整html
我正在excel中编写一个VBA代码来打开一个网页,读取该网页的DOM浏览器中的所有HTML内容,并将其存储在excel中的一个单元格中 我在下面粘贴我的代码;此代码跳过主HTML的iframe中的HTML内容。(基本上它跳过主HTML中的辅助HTML)。但是我需要从DOM浏览器查看完整的HTML。有人能帮我吗VBA代码无法读取iframe中的完整html,html,excel,vba,dom,iframe,Html,Excel,Vba,Dom,Iframe,我正在excel中编写一个VBA代码来打开一个网页,读取该网页的DOM浏览器中的所有HTML内容,并将其存储在excel中的一个单元格中 我在下面粘贴我的代码;此代码跳过主HTML的iframe中的HTML内容。(基本上它跳过主HTML中的辅助HTML)。但是我需要从DOM浏览器查看完整的HTML。有人能帮我吗 Sub WebPage_SourceCode() Dim IEapp As InternetExplorer Dim WebUrl As String Dim D
Sub WebPage_SourceCode()
Dim IEapp As InternetExplorer
Dim WebUrl As String
Dim Doc As HTMLDocument
Dim Elements As IHTMLElementCollection
Set IEapp = New InternetExplorer
WebUrl = "https://abcd.com/"
With IEapp
.Silent = True
.Visible = True
.Navigate WebUrl
Do While .Busy = True Or .READYSTATE <> 4
DoEvents
Loop
End With
pagesource = IEapp.Document.body.innerHTML
Cells(1, 1) = pagesource
End Sub
下面是指向HTML部分的链接。VBA跳过iframe中的HTML(以红色边框突出显示)。VBA读取iframe前后的任何代码
文档是从不同的src加载的。尝试使用/IE 指向该src链接并获取响应文本 src
请使用代码片段工具在中添加html代码。不是像你想象的那样。因为我不能从那张图片上复制,所以我的答案很简短。我的问题是,你为什么要把文档读到一个单元格?你已经可以访问DOM了,你能不能直接从页面上检索你需要的任何东西?@Zac问得好。Lol.而且,他们可能会使用相同的原产地政策。如果不知道原始URL,很难说。@QHarr:喊得好!谢谢你的提示@QHarr。我已经学习了这个src,并为这个src显式地编写了一个代码,它按照我的要求工作得非常好。非常感谢您的完美解释。:)
Set Doc = IEapp.Document
Set Elements = Doc.getElementsByTagName("iframe")
i = 1
For Each element In Elements
Cells(i, 1) = element.className
Cells(i, 2) = element.innerHTML
Cells(i, 3) = element.outerHTML
i = i + 1
Next