2013-11-24 4 views
8
아래

와 웹 사이트의 HTML 소스를받는 방법 외부 웹 페이지에서 DOM ID로 몇 가지 요소를 얻을 수 PhantomJS의 예입니다 ... 어떻게해야합니까?PhantomJS

+0

을 사용하는 것입니다 api/http.html # http.request) 브라우저를 통해 페이지를 실행하는 것이 좋습니다. 그러면 JS가 실행되고 DOM이 제대로 처리됩니다. – Quentin

+0

예를 보여 줄 수 있습니까? – MOB

답변

10

당신이 할 일은 당신이 HTML 소스를 원한다면 [가 http 모듈 (http://nodejs.org/docs/v0.5.2/ 같은 것을 사용 page.content

var page = require('webpage').create(); 
page.onError = function(msg, trace) { 
    //prevent js errors from showing in page.content 
    return; 
}; 
page.open('http://www.httpuseragent.org', function() { 
    console.log(page.content); //page source 
    phantom.exit(); 
}); 
+4

이것은 dom에서 html을 제공합니다 (자바 스크립트를 사용하여 브라우저에서 처리하고 어느 정도의 구문 수정을 거쳤습니다). 서버가 처리하지 않은 원시 HTML과 반대가됩니다. –

+2

PhantomJS와 같은 도구를 사용하는 것이 중요합니다. 원시 데이터를 사용하려면 컬 또는 wget과 같은 더 낮은 레벨의 도구를 사용하십시오. –