मैं निम्नलिखित वेबपेज डाउनलोड करने की आवश्यकता भरी हुई है: http://m.10bet.com/#leage_panel#10096साइट scraping: प्रतीक्षा कर रहा है जब तक साइट को पूरी तरह से
यह एक sportsbetting पेज है और मैं उद्धरण की जरूरत है। तो, पहली जगह में यह बहुत आसान लगता है। हालांकि, यहां क्या होता है (यदि आप इस उदाहरण के साथ जांच कर सकते हैं अपने ब्राउज़र के डेवलपर उपकरण।): यूआरएल
- ओपन
- हालांकि, उद्धरण जेसन में निहित है लेकिन वे इस तरह से परेशान हैं कि उन्हें सीधे AJAX कॉल से सीधे पार्स करना संभव नहीं है। इसके अतिरिक्त वेबपृष्ठ की जावास्क्रिप्ट भी obpuscated है। तो अनुरोध से उद्धरण सीधे पढ़ने का कोई मौका नहीं है।
इसके बजाय, मुझे जावास्क्रिप्ट का मूल्यांकन करने में सक्षम एक हेडलेस ब्राउज़र का उपयोग करने की आवश्यकता होगी। जावा के लिए HTMLUnit अपर्याप्त है क्योंकि यह मजबूत जावास्क्रिप्ट कार्यक्षमता प्रदान नहीं करता है। इसलिए कैसरजेएस के साथ संयोजन में फैंटॉमजेएस मेरी वर्तमान पसंद है। मैं निम्नलिखित स्क्रिप्ट के साथ कैस्परजेएस लागू करता हूं:
var casper = require('casper').create();
casper.start('http://m.10bet.com/#leage_panel#10096', function() {
var url = 'http://m.10bet.com/#leage_panel#10096';
this.download(url, '10bet.html');
});
casper.run(function() {
this.echo('Done.').exit();
});
हालांकि, यह स्क्रिप्ट पूरा पृष्ठ लोड नहीं करती है। बस प्रारंभिक पृष्ठ। ब्राउजर में प्रस्तुत किए गए पूरे वेबपृष्ठ को मैं कैसे लोड करूं?
मैं उन उपकरणों से परिचित नहीं हूं, लेकिन क्या आप अपना कोड 'domready' ईवेंट में संलग्न कर सकते हैं? ऐसा हो सकता है। – halfer