查看: 7  |  回复: 0
  VB6 代码管家-解析HTML,提取网页纯文本
楼主
发表于 2024年12月8日 22:37
Private Sub Command1_Click()
    Dim htmlDoc As Object
    Set htmlDoc = CreateObject("HTMLFILE")
    htmlDoc.designMode = "on"
    htmlDoc.Write GetData("http://tieba.baidu.com/", "GBK")
    '将HTML代码写入到"HTMLFILE"对像里,此时的htmlDoc可以像操作Webbrowser一样操作
    Text1.Text = htmlDoc.body.innerText
    '过滤HTML标签并提取网页文字
End Sub

Public Function GetData(ByVal Url As String, ByVal CodeBase As String) As Variant
    Dim XMLHTTP As Object
    Set XMLHTTP = CreateObject("Microsoft.XMLHTTP")
    XMLHTTP.Open "Get", Url, True
    XMLHTTP.send
    '--------------------------------------发送数据
    While XMLHTTP.ReadyState <> 4
        DoEvents
    Wend
    '--------------------------------------函数返回
    GetData = XMLHTTP.ResponseBody
    If CStr(GetData) <> "" Then GetData = BytesToBstr(GetData, CodeBase)
    Set XMLHTTP = Nothing
End Function

Public Function BytesToBstr(strBody, CodeBase) '编码转换("UTF-8"或者"GB2312"或者"GBK")
    Dim ObjStream
    Set ObjStream = CreateObject("Adodb.Stream")
    With ObjStream
        .Type = 1
        .Mode = 3
        .Open
        .Write strBody
        .Position = 0
        .Type = 2
        .Charset = CodeBase
        BytesToBstr = .ReadText
        .Close
    End With
    Set ObjStream = Nothing
End Function


您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2024 MaNongKu.com