2013-12-12 5 views
18

मैं एक वेबसाइट से स्कोर टेबल को पकड़ने की कोशिश कर रहा हूं। समस्या यह है कि साइट जावास्क्रिप्ट का उपयोग कर रही है जो स्पष्ट रूप से document.ready पर लोड हो जाती है।वर्क का उपयोग कर जावास्क्रिप्ट द्वारा लोड किया गया वेबकंटेंट कैसे प्राप्त करें?

इसी कारण से मुझे टेबल प्राप्त करने में सफल नहीं लगता है और मुझे बस उस पृष्ठ के शीर्ष पर बटन मिलते हैं।

इसे हल करने के तरीके पर कोई सुझाव या विचार?

+0

आप file_get_contents की कोशिश की कर रहे हैं ?? – Hackerman

+0

इसे आज़माएं: http://stackoverflow.com/a/28506533/3063226 – Heitor

उत्तर

15

curl केवल आपको पृष्ठ का मार्कअप प्राप्त करेगा। यह किसी भी अतिरिक्त संसाधन लोड नहीं करेगा या पृष्ठ को संसाधित नहीं करेगा। आप शायद इसके लिए PhantomJS जैसे कुछ देखना चाहते हैं। फैंटॉमजेएस एक हेडलेस वेबकिट ब्राउज़र है। इसका अपना एपीआई है जो आपको "स्क्रिप्ट" व्यवहार देता है। तो आप पेज लोड करने और आवश्यक डेटा को डंप करने के लिए फ़ैंटॉमजेएस को बता सकते हैं।

+0

आपके उत्तर के लिए धन्यवाद। मुझे इसे जावास्क्रिप्ट के रूप में चलाने की आवश्यकता होगी और फिर डंप को निष्पादन कमांड का उपयोग करके एक PHP चर में सहेजने की आवश्यकता होगी। क्या वो सही है? – m33ts4k0z

+0

आपको वास्तव में नहीं करना है। आप इसे सीधे कमांड लाइन से चला सकते हैं। लेकिन यदि आप इसे किसी वेबसाइट पर प्रदर्शित करने के लिए उपयोग कर रहे हैं, तो हाँ आप PHP से 'exec' का उपयोग कर सकते हैं। –

5

तुम क्या करने की कोशिश कर रहे वास्तव में क्या पर निर्भर करता है, तो आप सिर्फ JSON डेटा तालिका बनाता है कि लाने सकता है:

http://www.opap.gr/web/services/rs/betting/availableBetGames/sport/program/4100/0/sport-1.json?localeId=el_GR

+0

आपके उत्तर के लिए धन्यवाद। मैं विविन्स के जवाब को मेरे प्रश्न के उत्तर के रूप में चिह्नित करूंगा लेकिन आपका भी वास्तव में अच्छा था। मुझे आश्चर्य है कि आपको जेसन कॉल कैसे मिला? – m33ts4k0z

+1

@ m33ts4k0z: कोई समस्या नहीं। मैंने इसे क्रोम के डेवलपर टूल्स के "नेटवर्क" टैब का उपयोग करके पाया (यह अन्य ब्राउज़रों में भी संभव है)। चूंकि 'document.ready' शामिल था, मैंने अनुमान लगाया कि पृष्ठ शायद बाहरी रूप से जानकारी को लोड करता है। – Lasse

+0

@Lasse: लिंक काम नहीं कर रहा है। –

संबंधित मुद्दे

 संबंधित मुद्दे