2015-12-15 9 views
8

मैं एक HTML पृष्ठ का स्रोत कोड प्राप्त करना चाहता हूं, लेकिन इसमें एक जेएस स्क्रिप्ट है जो डेटा को गतिशील रूप से लोड करती है और पृष्ठ पर प्राप्त सामग्री को संलग्न करती है।जेएस के लिए सामग्री लोड करने के इंतजार के बाद एक HTML पृष्ठ का विश्लेषण कैसे करें?

मैं HTML को पार्स करने के लिए jsoup का उपयोग कर रहा हूं, लेकिन यह केवल जेएस निष्पादन से पहले सामग्री लौटाता है, इसलिए मुझे गतिशील रूप से लोड डेटा प्राप्त नहीं होता है।

किसी भी ढांचे, क्ली आदि का उपयोग करके स्क्रिप्ट निष्पादन के बाद मुझे स्रोत कोड कैसे प्राप्त किया जा सकता है?

+0

कुछ document.getElementById की तरह ("elementid") outerHTML के बाद आइटम प्रदान की गई है।। – Bindrid

+0

दिखाएं कि यह जेएस स्क्रिप्ट कैसा दिखता है। –

+0

सर्वश्रेष्ठ शर्त फ़ैंटॉम के माध्यम से इसे चलाने और फ़ैंटॉम के 'पृष्ठ.content' का उपयोग करने के लिए है। –

उत्तर

0

आप इसका उपयोग कर सकते हैं;

$(window).load(); 

पृष्ठ लोड होने तक प्रतीक्षा करेगा।

एक अन्य विकल्प:

function whenAvailable(name, callback) { 
var interval = 10; // ms 
window.setTimeout(function() { 
    if (window[name]) { 
     callback(window[name]); 
    } else { 
     window.setTimeout(arguments.callee, interval); 
    } 
}, interval); 
} 

और इस तरह इसका इस्तेमाल:

whenAvailable("jsLoadFunction", function(t) { 
// do something 
}); 
संबंधित मुद्दे