2013-11-24 10 views
8

नीचे के साथ एक वेबसाइट के HTML स्रोत प्राप्त करने के लिए कैसे है कि एक बाहरी वेबपेज से डोम आईडी से कुछ तत्व हो जाता है PhantomJS का एक उदाहरण है ... मैं यह कैसे करु?PhantomJS

+0

उपयोग करने के लिए आप HTML स्रोत चाहते हैं, तो जैसे [http मॉड्यूल] (http://nodejs.org/docs/v0.5.2/ कुछ का उपयोग करें api/http.html # http.request) बल्कि ब्राउज़र के माध्यम से पृष्ठ चला रहा है (जो जेएस निष्पादित करेगा और इसके साथ डोम को मैंगल करेगा)। – Quentin

+0

मुझे एक उदाहरण दिखा सकता है? – MOB

उत्तर

10

आपको बस इतना करना है 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

यह एचटीएमएल को डोम से देता है (जिसे ब्राउज़र द्वारा जावास्क्रिप्ट के साथ संसाधित किया गया है और कुछ डिग्री सिंटैक्स सुधार हुआ है) सर्वर –

+2

द्वारा प्रदत्त कच्चे अप्रसन्न एचटीएमएल के विपरीत यह PhantomJS जैसे टूल का उपयोग करने का बिंदु है। यदि आप कच्चे डेटा को कर्ल या वेजेट जैसे निचले स्तर के टूल का उपयोग करना चाहते हैं। –