2017-05-07 13 views
0

나는 컬렉션으로 링크 집합을 검색하는 데 어려움을 겪고 있습니다. 다른 모든 페이지 요소는 정상적인 get 명령에 응답합니다 (단, 이들을 제외하고). 여기서 HTML과 자바 스크립트에 대한 지식은 배당금을 지불합니다. 내 자신의 추측은 오류가 javascript 명령 인 href와 관련이 있거나 숨겨진 "clear"또는 "clearfix"클래스 뒤에 숨겨져있는 것인가? 내 최종 목표는 자바 스크립트 href 내에서 링크를 다 쓸 수있게하는 것입니다.HTML Anchor Elm 님이 VBA에 숨겨졌습니다

도움을 주시면 감사하겠습니다. 감사합니다

Public Function getNewsMAIN() 

Dim strURL As String: strURL = _ 
    "http://www.londonstockexchange.com/exchange/prices-and-markets/stocks/exchange-insight/company-news.html?fourWayKey=GB00BYN59130GBGBXSTMM" 
Dim HTMLDoc As New HTMLDocument 

Dim oXMLHTTP As Object 
    Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP.6.0") 
     oXMLHTTP.Open "GET", strURL, False 
     oXMLHTTP.send 
    If oXMLHTTP.Status = 200 Then 
     HTMLDoc.body.innerHTML = oXMLHTTP.responseText 
    Else: End If 

'//Various attempts at cornering the links 
Dim myLinks As IHTMLElementCollection 
Dim myLink As IHTMLElement 
    Set myLinks = HTMLDoc.getElementsByTagName("a") '("ul") ("li") 
    Set myLinks = HTMLDoc.getElementsByClassName("newsArchive") '("newsContainer") 
    Set myLink = HTMLDoc.getElementById("newsArchive") 

End Function 

해당 HTML. 링크

<li class="newsContainer"></li> 

내에 포함 된 페이지 당 40있다.

Sample HTML

답변

1

그 링크는 메인 페이지가로드 된 후 페이지에로드 된 추가 콘텐츠의 일부, 그래서 그들은 MSXML 내용의 일부가되지 않습니다. 이런 식으로 페이지에서 컨텐트를 얻으려면 IE를 자동화하여 페이지를로드 한 다음 전체 페이지가 렌더링되면 링크를 수집하는 것이 가장 좋습니다.