VBA网抓需要设置浏览器或者VBA吗

 我来答
百度网友51266d27
2018-03-28 · TA获得超过6934个赞
知道大有可为答主
回答量:3718
采纳率:55%
帮助的人:507万
展开全部

试试下面的代码。网页抓取示例代码很多,但是方法不多:

Sub fly()
    Dim S, H, DB, str, arr, arrdata(1 To 100000, 1 To 9)
    Set H = CreateObject("htmlfile")
    Set XML = CreateObject("MSXML2.XMLHTTP")
    With XML
        .Open "GET", "http://aviation-safety.net/database/", False
        .send
        S = Split(Split(.responsetext, "<font")(1), "<p />")(0)
        H.body.innerhtml = S
    End With
    Set DB = H.all.tags("a")
    For i = 0 To DB.Length - 1
        str = str + "," + DB(i).innerText
    Next i
     arr = Split(str, ",")
    With XML
        For p = 1 To UBound(arr) - 1
            DoEvents
            .Open "GET", "http://aviation-safety.net/database/dblist.php?Year=" & arr(p), False
            .send
            H.body.innerhtml = .responsetext
            Set DB = H.all.tags("TABLE")(0).Rows
            For i = 1 To DB.Length - 1
                n = n + 1
                For j = 0 To DB(i).Cells.Length - 1
                    arrdata(n, j + 1) = DB(i).Cells(j).innerText
                Next
            Next i
        Next p
    End With
    [a2].Resize(n, 9) = arrdata
End Sub
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式