XPath का उपयोग करके CSS क्लास द्वारा तत्वों को ढूंढना
वेब स्क्रैपिंग में, HTML तत्वों को उनके CSS क्लास के आधार पर ढूंढना अक्सर आवश्यक होता है। XPath, XML और HTML दस्तावेज़ों को नेविगेट करने के लिए एक शक्तिशाली उपकरण, इसे प्राप्त करने का एक तरीका प्रदान करता है।
एक div तत्व वाले HTML पृष्ठ पर विचार करें जिसमें "टेस्ट" नामक एक वर्ग है। इस तत्व को खोजने के लिए निम्नलिखित XPath क्वेरी का उपयोग किया जा सकता है:
//*[contains(@class, 'Test')]
यह क्वेरी उन सभी तत्वों का चयन करती है जिनमें "टेस्ट" वर्ग शामिल है , चाहे वे दस्तावेज़ ट्री में कहीं भी दिखाई दें।
प्रदर्शन को अनुकूलित करने के लिए, आप खोज को विशिष्ट तत्व प्रकारों, जैसे divs तक सीमित कर सकते हैं। उदाहरण के लिए, निम्नलिखित क्वेरी खोज को "टेस्ट" वर्ग वाले divs तक सीमित कर देगी:
//div[contains(@class, 'Test')]
हालाँकि, यदि आपके पास है "टेस्टवैल्यू" या "न्यूटेस्ट" जैसी कक्षाओं वाले तत्व, उपरोक्त क्वेरी भी उनसे मेल खाएगी। अधिक सटीक मिलान सुनिश्चित करने के लिए, आप "टेस्ट" वर्ग के पहले और बाद में रिक्त स्थान वाली एक संयोजित स्ट्रिंग का उपयोग कर सकते हैं, जैसा कि @Tomalak द्वारा सुझाया गया है:
//div[contains(concat(' ', @class, ' '), ' Test ')]
यह क्वेरी केवल उन divs से मेल खाएगी जिनमें एक अलग वर्ग मान के रूप में "टेस्ट" शब्द है।
किसी को हटाने के लिए व्हाइटस्पेस समस्याएँ, आप नॉर्मलाइज़-स्पेस फ़ंक्शन का उपयोग करके रिक्त स्थान को सामान्य भी कर सकते हैं, जैसा कि @Terry द्वारा सुझाया गया है:
//div[contains(concat(' ', normalize-space(@class), ' '), ' Test ')]
अंत में, इन प्रश्नों में तारांकन चिह्न (*) को उस वास्तविक तत्व नाम से बदलना महत्वपूर्ण है जिसे आप मिलान करना चाहते हैं, जब तक कि आप सभी तत्वों को खोजना नहीं चाहते दस्तावेज़। इससे क्वेरी की दक्षता में सुधार होगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3