2011-05-07 9 views
7

मैं सिर्फ सामग्री प्राप्त करना चाहता हूं (कोई लिंक नहीं, कोई श्रेणियां नहीं, कोई छवि नहीं ... केवल टेक्स्ट)विकिपीडिया पेज (विकिपीडिया एपीआई के माध्यम से) के HTML सामग्री टेक्स्ट को कैसे प्राप्त करें?

उत्तर

10

विकिपीडिया API से "केवल टेक्स्ट" प्राप्त करने का कोई तरीका नहीं है। आप या तो पेज के एचटीएमएल को डाउनलोड कर सकते हैं (यदि आप api.php की बजाय index.php के माध्यम से ऐसा करते हैं, तो सभी त्वचा सामग्री डाउनलोड करने से बचने के लिए action=render का उपयोग करें) या विकीटेक्स्ट (जिसे आप एपीआई के माध्यम से कर सकते हैं या action=raw से गुजरकर index.php); इसके बाद आपको उन बिट्स को हटाने के लिए खुद को पार्स करना होगा जिन्हें आप रखना नहीं चाहते हैं।

एचटीएमएल आउटपुट में, मीडियाविकि आमतौर पर विभिन्न इंटरफ़ेस तत्वों को कक्षाओं को जोड़ने के बारे में अच्छा होता है जिन्हें आप फ़िल्टर करना चाहते हैं; टेम्पलेट्स और ऐसे उपयोगकर्ताओं द्वारा बनाए गए शायद कम हैं (उदा। hack for table sorting बस कुछ पाठ display:none अवधि, कोई कक्षा में नहीं डालता है)।

एपीआई के माध्यम से विकीटेक्स्ट प्राप्त करने के लिए, prop=revisions का उपयोग करें। प्रस्तुत एचटीएमएल प्राप्त करने के लिए, action=parse का उपयोग करें।

+0

ठीक है, लेकिन इसलिए मुझे पेज के शीर्ष पर विकिपीडिया सलाह भी मिलती है। इस तरह "इस आलेख को सत्यापन के लिए अतिरिक्त उद्धरण की आवश्यकता है।" .... "बस पाठ" कैसे प्राप्त करें? तीसरी लाइब्रेरी या एपीआई सेवा नहीं है? – Leonardo

+0

@ लियोनार्डो: कोई एपीआई सेवा नहीं है; मुझे किसी तीसरे पक्ष की पुस्तकालय की जानकारी नहीं है। उस विशेष मामले में, आप wikitext से टेम्पलेट {{refimprove}} को बाहर निकाल सकते हैं, या आप HTML स्रोत से वर्ग 'मेटाडेटा' के साथ कुछ भी पट्टी कर सकते हैं। – Anomie

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