रूबी की तरह वहाँ कुछ है nokogiri NodeJS पर? मेरा मतलब है एक उपयोगकर्ता के अनुकूल HTML- पार्सर।
मैंने Node.js मॉड्यूल पृष्ठ पर कुछ पार्सर देखे हैं, लेकिन मुझे कुछ सुंदर और ताज़ा नहीं मिल रहा है।
रूबी की तरह वहाँ कुछ है nokogiri NodeJS पर? मेरा मतलब है एक उपयोगकर्ता के अनुकूल HTML- पार्सर।
मैंने Node.js मॉड्यूल पृष्ठ पर कुछ पार्सर देखे हैं, लेकिन मुझे कुछ सुंदर और ताज़ा नहीं मिल रहा है।
जवाबों:
यदि आप DOM बनाना चाहते हैं तो आप jsdom का उपयोग कर सकते हैं ।
चीयरियो भी है , इसमें jQuery इंटरफ़ेस है और यह jsdom के पुराने संस्करणों की तुलना में बहुत तेज़ है, हालाँकि इन दिनों वे प्रदर्शन में समान हैं।
आप htmlparser2 पर एक नज़र डाल सकते हैं , जो एक स्ट्रीमिंग पार्सर है, और इसके बेंचमार्क के अनुसार, यह दूसरों की तुलना में तेज़ है, और डिफ़ॉल्ट रूप से कोई डोम नहीं है। यह एक DOM का उत्पादन भी कर सकता है, क्योंकि यह एक हैंडलर के साथ बंडल भी है जो DOM बनाता है। यह वह पार्सर है जिसका उपयोग चीयरियो द्वारा किया जाता है।
parse5 भी एक अच्छे समाधान की तरह दिखता है। यह काफी सक्रिय है (इस अद्यतन के रूप में अंतिम प्रतिबद्ध होने के बाद से 11 दिन), WHATWG-compliant, और jsdom , Angular और Polymer में इसका उपयोग किया जाता है ।
और यदि आप HTML को वेब स्क्रैपिंग के लिए पार्स करना चाहते हैं , तो आप YQL 1 का उपयोग कर सकते हैं । इसके लिए एक नोड मॉड्यूल है। YQL मुझे लगता है कि अगर आपका HTML एक स्थिर वेबसाइट से है, तो सबसे अच्छा समाधान होगा क्योंकि आप एक सेवा पर भरोसा कर रहे हैं, न कि आपका अपना कोड और प्रोसेसिंग पावर। हालांकि ध्यान दें कि यह पृष्ठ काम नहीं करेगा यदि वेबसाइट के रोबोट द्वारा बंद कर दिया गया है। YQL इसके साथ काम नहीं करेगा।
यदि आप जिस वेबसाइट को खुरचने का प्रयास कर रहे हैं, वह गतिशील है तो आपको फैंटमज जैसे हेडलेस ब्राउजर का उपयोग करना चाहिए । यदि आप फैंटमज पर विचार कर रहे हैं, तो कैस्परज पर भी एक नज़र डालें। और अगर आप के साथ नोड से casperjs नियंत्रित कर सकते हैं SpookyJS ।
इसके अलावा वहाँ प्रेत z ज़ोंबीjs है । नोड्ज में एम्बेड नहीं किए जा सकने वाले प्रेत के विपरीत, जॉम्बीज सिर्फ एक नोड मॉड्यूल है।
वहाँ एक है Nettuts + toturial बाद समाधान के लिए।
1 अगस्त 2014 के बाद से, YUI पुस्तकालय, जो कि YQL के लिए एक आवश्यकता है, अब सक्रिय रूप से बनाए नहीं रखा गया है, स्रोत
Https://github.com/tmpvar/jsdom आज़माएं - आप इसे कुछ HTML देते हैं और यह आपको DOM देता है।
आप एक्स-रे: https://github.com/lapwinglabs/x-ray पर भी नज़र डाल सकते हैं