【发布时间】:2017-10-18 08:28:01
【问题描述】:
我正处于一个项目的尾声,偶然发现了我的最后一个障碍。我在一个 Excel 表格中有一组电影,我正在 BoxOfficeMojo.com 中查找并从中抓取大量数据。
我的问题可以用电影《唱》来概括。当我搜索该标题时,我被定向到此网页:http://www.boxofficemojo.com/search/?q=sing。现在我必须导航到电影特定页面的代码如下:
'open title page in box office
Set Doc = objIE.Document
Set oResult = Doc.getElementById("body").getElementsByTagName("a")
For Each Element In oResult
If Element.outerHTML Like "*/movies/?id=*" Then
Set myLink = Element
Exit For
End If
Next Element
objIE.Navigate myLink
该代码仅导航到第一个电影链接,这不是我想要的。如果“终身总收入”列没有说“n/a”,我只想点击一个链接。理想情况下,这样的事情会起作用(IF 函数中的新代码):
'open title page in box office
Set Doc = objIE.Document
Set oResult = Doc.getElementById("body").getElementsByTagName("a")
For Each Element In oResult
If Element.outerHTML Like "*/movies/?id=*" And Element.Offset(0, 2).innerText <> "n/a" Then
Set myLink = Element
Exit For
End If
Next Element
objIE.Navigate myLink
但这不起作用。关于我如何做到这一点的任何想法?谢谢!
【问题讨论】:
标签: html excel vba web-scraping