gpt4 book ai didi

html - 使用 vba 抓取多页网页表

转载 作者:行者123 更新时间:2023-12-04 10:33:44 28 4
gpt4 key购买 nike

我正在尝试使用 vba 将表格的第二页保存在 excel 中,但我无法使用 click 属性,请问您可以帮帮我吗?我在网上到处搜索都没有结果。谢谢。

Sub BrowseSiteTableObjectX()
Dim IE As New SHDocVw.InternetExplorer
Dim Docm As MSHTML.HTMLDocument
Dim HTMLAtab As MSHTML.IHTMLElement
Dim HTMLArow As MSHTML.IHTMLElement
Dim iRow As Long

With IE
.navigate "https://www.nasdaq.com/market-activity/stocks/screener"
Do While .Busy Or .readyState <> 4
DoEvents
Loop
End With

Set Docm = IE.document

Docm.getElementsByClassName("symbol-screener__pagination")(0).getElementsByClassName("next")(0).Click

Set Docm = IE.document

Set HTMLAtab = Docm.getElementsByClassName("symbol-screener__table")(0)

For Each HTMLArow In HTMLAtab.getElementsByClassName("symbol-screener__row")
iRow = iRow + 1
Cells(iRow, 1) = HTMLArow.getElementsByClassName("symbol-screener__cell symbol-screener__cell--ticker")(0).innerText
Cells(iRow, 2) = HTMLArow.getElementsByClassName("symbol-screener__cell symbol-screener__cell--company")(0).innerText
DoEvents
Next HTMLArow

IE.Quit
Set IE = Nothing
Set Docm = Nothing
End Sub

最佳答案

看看这是否有帮助,在这篇文章中,我概述了处理页面上元素的多种方法。您需要考虑“单击”下一步按钮时发生的情况。它可能是提交表单,运行页面 javascript,

Excel VBA Submitting data via IE on an online MS Forms not working

看看这些想法是否有帮助。您可能会发现 ExecScript 是最好的,因为 Next 按钮可能会链接回页面上的脚本以加载下一组数据。只需要查看您的 Chrome 开发工具,看看会发生什么。

祝你好运!

关于html - 使用 vba 抓取多页网页表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60289285/

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