EXCEL VBA 获取指定URL网页的源码资源

VBA 获取网页的全部源码内容_20191201091118.png

获取网页的完整源码只是获取网络资源的一种,只是返回数据的格式有所不同,以及做出一定的处理!首先要有提取网络资源的Function:

'-----------------------------------------------
'|获取网络数据
'-----------------------------------------------
'|注意:当使用Body提取整个页面时必须使用StrConv转换成字符串
'|      HTML.body.innerHTML = StrConv(.responsebody, vbUnicode)
'-----------------------------------------------
Function getWebData(ByVal URL As String, Optional ByVal Method As String = "GET", Optional ByVal ReturnType As String = "Text", Optional ByVal Async As Boolean = False, Optional ByVal Username As String = "", Optional ByVal Password As String = "")
    
    On Error Resume Next
    
    '处理变量
    Method = IIf(UCase(Method) = "GET", "GET", "POST")
    
    '创建对象
    Dim xmlHttp As Object
    Set xmlHttp = CreateObject("Microsoft.XMLHTTP")    ' "Msxml2.ServerXMLHTTP"
    
    '发送请求
    xmlHttp.Open Method, URL, Async, Username, Password
    xmlHttp.Send
    
    '等待响应
    Do While xmlHttp.ReadyState <> 4
        DoEvents
    Loop
    
    '得到请求数据
    If xmlHttp.ReadyState = 4 Then
    
        '根据要求返回不同结果
        Select Case UCase(ReturnType)
            Case "TEXT"
                getWebData = xmlHttp.responsetext
            Case "BODY"
                getWebData = xmlHttp.responsebody
            Case "STREAM"
                getWebData = xmlHttp.responseStream
            Case "XML"
                getWebData = xmlHttp.responseXML
            Case Else
                getWebData = xmlHttp.responsetext
        End Select
        
    Else
        getWebData = "调用失败,错误代码:" & xmlHttp.Status    '返回错误结果
    End If
    
    '销毁对象
    Set xmlHttp = Nothing
    
End Function

第二步,就是提取数据,要使用 'responsebody' 的类型,由于该类型返回的不是字符串还需要做出处理转换成字符串,具体的方法如下:

'提取整个页面的HTML
MsgBox openTXT(StrConv(getWebData("http://data.eastmoney.com/stock/tradedetail.html", "get", "body"), vbUnicode))
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 11,325评论 0 10
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,907评论 1 32
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 11,015评论 0 9
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,902评论 0 4
  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,760评论 0 38

友情链接更多精彩内容