gpt4 book ai didi

excel - 将 HTML 导出到具有不同结果的文本文件

转载 作者:行者123 更新时间:2023-12-04 22:30:44 24 4
gpt4 key购买 nike

我有两个代码..应该将 html 文件导出到文本文件

Sub Demo1()
Dim http As New XMLHTTP60
Dim html As New HTMLDocument

With http
.Open "GET", "https://www.google.com.eg/", False
.send
html.body.innerHTML = .responseText

WriteTxtFile html.body.innerHTML
End With
End Sub

Sub WriteTxtFile(ByVal aString As String, Optional ByVal filePath As String = "C:\Users\Future\Desktop\Output.txt")
Dim fso As Object
Dim fileout As Object

Set fso = CreateObject("Scripting.FileSystemObject")
Set fileout = fso.CreateTextFile(filePath, True, True)
fileout.write aString
fileout.Close
End Sub

Sub Demo2()
Dim ie As Object
Dim f As Integer

Set ie = CreateObject("InternetExplorer.Application")

With ie
.Visible = True
.navigate ("https://www.google.com.eg/")

Do: DoEvents: Loop Until .readyState = 4

f = FreeFile()
Open ThisWorkbook.Path & "\Sample.txt" For Output As #f
Print #f, .document.body.innerHTML
Close #f

.Quit
End With
End Sub

Demo1 和 Demo2 都是代码 .. 它们导致“Sample.txt”和“Output.txt”
但是我发现那些 html 文档是不同的结果
你能帮我澄清什么是正确的..以及为什么它们不同?

感谢先进的帮助

最佳答案

Xmlhttp 不提供网页的所有呈现内容。特别是通过 JavaScript 执行呈现的任何内容。不执行任何脚本。

另一方面,Internet Explorer 将呈现页面(前提是浏览器版本和 JavaScript 语法受支持。例如,您将遇到 ec6 - 最新 Ecmascript 的问题,因为旧版浏览器不支持此功能。我相信 Edge对于 Windows 10。您可以检查兼容性表以了解完全支持和不支持的内容)。

如果您熟悉浏览器的开发工具,您可以探索网页的不同部分是如何呈现的。您可以学习调试脚本并查看对 DOM 和页面样式进行了哪些更改。例如,页面通常会发出 XHR 请求以更新页面上的内容。想玩玩看here .

因此,在此基础上,我怀疑第一个 html 文档的内容可能与第二个文档的内容更少,整体 DOM 结构不同。

要测试由于写入文本文件方法导致的差异,您需要将 Apple 与 Apple 进行比较,即在写入之前使用相同的抓取访问方法和语法来检索页面内容。

如果您想要更深入的解释,请提供差异。

探索页面更新:

  • Firefox Network Tab
  • Internet Explorer Network Inspector
  • Chrome Network Tab
  • 关于excel - 将 HTML 导出到具有不同结果的文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53133015/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com