【发布时间】:2017-01-09 18:26:17
【问题描述】:
我想使用 VBA 在以下链接中加载更多结果: http://www.flashscore.com/soccer/england/premier-league/results/
页面的第一次加载只显示了总结果的一半,但我想加载页面中的所有数据。
我想我必须点击“显示更多匹配”链接,但我不知道该怎么做。
谁能帮我出主意?
如果我有更多游戏要加载,并且在第一次点击加载后,更多游戏仍然是隐藏的游戏,我如何才能看到所有游戏?
链接源代码为:
<a href="#" onclick="loadMoreGames(); return false;">Show more matches</a>
您可以在下面找到链接的屏幕截图:
【问题讨论】:
-
使用
getElementsByTagName("a")获取页面上所有链接的集合,然后循环检查innerText是否有“显示更多匹配项” - 在匹配元素上调用click -
我的一条建议:
Do Until InStr(ie.document.getElementById("preload").getAttribute("Style"), "display: none;") <> 0: DoEvents: Loop该网站使用各种元素来告知加载状态。IE.ReadyState或IE.Busy通常会失败。
标签: vba excel internet-explorer dom web-scraping