2017-09-04 5 views
0

"createDocumentFromUrl()"을 사용하여 vba에서 직접 웹 페이지의 "HTMLDocument"를 가져올 수 있습니까? 나는 그 문서를 다룰 때 많은 노력을 기울 였지만 찾아 내지 못했습니다. 이 일을 돕는 손을 뻗기를 바라는 누군가가 있기를 바랍니다. 미리 감사드립니다. 여기 createDocumentFromUrl을 사용하여 html 요소를 가져올 수 없습니다.

는 지금까지 확실히 잘하지 않은 시도한 것입니다 :

Sub HtmlScraper() 
    Dim odoc As Object 
    Set odoc = New HTMLDocument 

    odoc.Open createDocumentFromUrl("http://www.stackoverflow.com", "null") 
    MsgBox odoc.body.innerHTML 
End Sub 
나뿐만 아니라이 같은 노력

하지만 운 :

Sub htmlparser() 
    Dim odoc As HTMLDocument, hdoc As HTMLDocument 

    Set odoc = New HTMLDocument 
    Set hdoc = New HTMLDocument 

    Set hdoc = odoc.createDocumentFromUrl("http://www.stackoverflow.com", Null, False) 
    MsgBox hdoc.body.outerHTML 
End Sub 
+0

또한 새 문서의 '.readystate'및 '.busy'속성을 확인하십시오. –

답변

1

이, 그것은 수도 나를 위해 일한 사이트가 되십시오.

Sub test() 

Dim d As MSHTML.HTMLDocument 
Set d = New MSHTML.HTMLDocument 
Dim d2 As MSHTML.HTMLDocument 

set d2=d.createDocumentFromUrl("www.bbc.co.uk", "null") 

While d.readyState <> "complete" 
    DoEvents 
Wend 

End Sub 
+0

실행시 오류가 발생하지 않았지만 html 파일을 가져 오는 방법 때문에 작동하고있는 것으로 보입니다. 나는이 경우에 요소를 얻기 위해 debug.print 또는 msgbox를 사용하는 곳과 방법을 의미 했습니까? 감사. – SIM

+0

당신이 인터넷 검색을 했습니까? 아니면 문서 객체에서 인텔리 센스를 사용 했습니까? –

+0

이 줄을 추가하십시오. MsgBox d2.body.outerHTML 또는 MsgBox d2.body.innerHTML – SIM

관련 문제