मैं विकिपीडिया लेख का पहला पैराग्राफ प्राप्त करना चाहता हूं।विकिपीडिया के एपीआई का उपयोग करके विकिपीडिया सामग्री कैसे प्राप्त करें?
ऐसा करने के लिए एपीआई क्वेरी क्या है?
मैं विकिपीडिया लेख का पहला पैराग्राफ प्राप्त करना चाहता हूं।विकिपीडिया के एपीआई का उपयोग करके विकिपीडिया सामग्री कैसे प्राप्त करें?
ऐसा करने के लिए एपीआई क्वेरी क्या है?
देखें MediaWiki docs
इन पर इस धारा के प्रमुख मानकों हैं।
prop=revisions&rvprop=content&rvsection=0
rvsection = 0 केवल मुख्य अनुभाग को वापस करने के लिए निर्दिष्ट करता है।
इस उदाहरण को देखें।
एचटीएमएल पाने के लिए आपको इसी तरह उपयोग कर सकते हैं क्रिया का उपयोग = पार्स http://en.wikipedia.org/w/api.php?action=parse§ion=0&prop=text&page=pizza
ध्यान दें, कि आप किसी भी टेम्पलेट्स या Infoboxes निकाल देते करना होगा।
यदि आपको बड़ी संख्या में लेखों के लिए ऐसा करने की आवश्यकता है, तो वेबसाइट को सीधे पूछताछ करने के बजाय, विकिपीडिया डेटाबेस डंप डाउनलोड करने पर विचार करें और उसके बाद JWPL जैसे एपीआई के माध्यम से इसे एक्सेस करें।
अन्य प्रस्तावित समाधानों के लिए Is there a clean wikipedia API just for retrieve content summary? देखें। इस उद्देश्य के लिए विशेष रूप से डिजाइन प्रश्नों के साथ इस्तेमाल किया जा सकता है कि
वास्तव में एक बहुत अच्छा प्रोपextracts कहा जाता है: यहाँ है कि मैं सुझाव दिया है। निष्कर्ष आपको लेख निष्कर्ष (संक्षिप्त लेख पाठ) प्राप्त करने की अनुमति देते हैं। exintro नामक एक पैरामीटर है जिसका प्रयोग को शून्य सेक्शन (छवियों या इन्फोबॉक्स जैसी कोई अतिरिक्त संपत्ति) में टेक्स्ट पुनर्प्राप्त नहीं किया जा सकता है। आप भी इस तरह के पात्रों की एक निश्चित संख्या (exchars) द्वारा के रूप में या वाक्य की एक निश्चित संख्या से (exsentences)
यहाँ है एक नमूना क्वेरीhttp://en.wikipedia.org/w/api.php?action=query&prop=extracts&format=json&exintro=&titles=Stack%20Overflow और एपीआई अधिक विस्तृत रूप से अर्क प्राप्त कर सकते हैं इस क्वेरी के साथ अधिक प्रयोग करने के लिए sandboxhttp://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&prop=extracts&format=json&exintro=&titles=Stack%20Overflow।
कृपया ध्यान दें कि यदि आप पहले पैराग्राफ को चाहते हैं तो विशेष रूप से आपको पहले टैग प्राप्त करने की आवश्यकता है। हालांकि इस एपीआई कॉल में छवियों की तरह कोई अतिरिक्त संपत्ति नहीं है। यदि आप इस परिचय सारांश से संतुष्ट हैं तो आप php's strip_tag जैसे फ़ंक्शन को चलाकर टेक्स्ट पुनर्प्राप्त कर सकते हैं जो HTML टैग को हटा देता है।
आप सीधे विकिपीडिया डेटाबेस डाउनलोड कर सकते हैं और Wiki Parser के साथ सभी पृष्ठों को XML में पार्स कर सकते हैं, जो एक स्टैंडअलोन एप्लिकेशन है। पहला अनुच्छेद परिणामी एक्सएमएल में एक अलग नोड है।
वैकल्पिक रूप से, आप अपने सादे-पाठ आउटपुट से पहला अनुच्छेद निकाल सकते हैं।
आप https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=&titles=java जैसे पृष्ठों से पूछताछ करके विकिपीडिया में आलेख की शुरुआत प्राप्त कर सकते हैं। आपको बस जेसन फ़ाइल को पार्स करने की ज़रूरत है और नतीजा सादा पाठ है जिसे लिंक और संदर्भों को हटाने सहित साफ किया गया है।
मैं इसे इस तरह से कार्य करें:
https://en.wikipedia.org/w/api.php?action=opensearch&search=bee&limit=1&format=json
प्रतिक्रिया आपको मिल डेटा के साथ एक सरणी है, पार्स करने के लिए आसान:
[
"bee",
[
"Bee"
],
[
"Bees are flying insects closely related to wasps and ants, known for their role in pollination and, in the case of the best-known bee species, the European honey bee, for producing honey and beeswax."
],
[
"https://en.wikipedia.org/wiki/Bee"
]
]
प्राप्त करने के लिए सिर्फ पहले पैराग्राफ limit=1
क्या है आप की जरूरत है।
<script>
function dowiki(place) {
var URL = 'https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=';
URL += "&titles=" + place;
URL += "&rvprop=content";
URL += "&callback=?";
$.getJSON(URL, function (data) {
var obj = data.query.pages;
var ob = Object.keys(obj)[0];
console.log(obj[ob]["extract"]);
try{
document.getElementById('Label11').textContent = obj[ob]["extract"];
}
catch (err) {
document.getElementById('Label11').textContent = err.message;
}
});
}
</script>
अपने उत्तर में कुछ पाठ विवरण जोड़ने पर विचार करें :) (यानी दूसरों की तुलना में यह क्या लाता है) –
आप ऐसा करने के लिए JQuery का उपयोग कर सकते हैं। पहले उचित पैरामीटर के साथ यूआरएल बनाएँ। मानकों का क्या अर्थ है यह समझने के लिए यह link देखें। फिर लेख पुनर्प्राप्त करने के लिए $.ajax()
विधि का उपयोग करें। ध्यान दें कि विकिपीडिया क्रॉस मूल अनुरोध की अनुमति नहीं देता है। यही कारण है कि हम अनुरोध में dataType : jsonp
का उपयोग कर रहे हैं।
var wikiURL = "https://en.wikipedia.org/w/api.php";
wikiURL += '?' + $.param({
'action' : 'opensearch',
'search' : 'your_search_term',
'prop' : 'revisions',
'rvprop' : 'content',
'format' : 'json',
'limit' : 10
});
$.ajax({
url: wikiURL,
dataType: 'jsonp',
success: function(data) {
console.log(data);
}
});
क्या मुझे इसके मूल्य प्राप्त करने के बाद कार्रवाई = पार्स क्वेरी भेजनी है? – bbnn
मैं इसका एक साफ पाठ प्राप्त करना चाहता हूं, क्या मुझे अपने आप पार्सर लिखना चाहिए? या ऐसा करने के लिए कुछ एपीआई क्वेरी हैं? धन्यवाद – bbnn
इसलिए मुझे यहां से अपना खुद का पार्सर लिखना है, बहुत बहुत धन्यवाद! – bbnn