2009-05-08 16 views
6

किसी को भी VB.NET या C# के लिए एक HTML पार्सर पता है? मुझे पता है .NET में एक्सएमएल रीडर और एक्सएमएलवाइटर जैसे एक्सएमएल समर्थन हैं। क्या कोई HTMLWriter या HTMLReader है?एचटीएमएल पार्सर

आखिरकार जो मैं चाहता हूं वह एक पुस्तकालय है जो एक HTML फ़ाइल को पार्स करेगा और टैगों के आधार पर ईवेंट उठाएगा। ऐसा करने के लिए कोई भी पुस्तकालय के बारे में जानता है?

+0

मैं नहीं कर सकते विश्वास है बीसीएल does not एक उचित तटस्थ नाम स्थान/विधानसभा में एक उचित HTML पार्सर है (उन यूआई विधानसभाओं में से कुछ को बिना छुए) । जेएसओएन और एक्सएमएल कक्षाओं का एक टन मिला। – nawfal

उत्तर

5

HTML Agility Pack यदि आप HTML को पार्स करना चाहते हैं तो यह जाने का तरीका है (यह टैग सूप पर भी अच्छा काम करता है)। सैद्धांतिक रूप से, बीसीएल में शामिल एक्सएमएल पार्सर वैध एक्सएचटीएमएल को पार्स करने में सक्षम होना चाहिए, लेकिन एचटीएमएल एजिलिटी पैक एक सामान्य समाधान है जो सामान्य एचटीएमएल, एक्सएचटीएमएल और दोनों के गंदे रूपों को संभाल सकता है।

टैग ढूंढते समय ईवेंट बढ़ाना कुछ है जो आपको स्वयं को लागू करना होगा, लेकिन यह HtmlReader कक्षा का उपयोग करके काफी छोटा होना चाहिए।

+0

मैंने इसे उत्पादन कोड में उपयोग किया है और बहुत खुश हूं। – mkelley33

+0

मैं इसे उत्पादन में भी उपयोग करता हूं - अच्छी तरह से काम करता है! – Dror

1

मैंने इस एचटीएमएलएसर को बहुत समय पहले लिखा था और मैंने इसे गिटहब पर एक ओपन सोर्स प्रोजेक्ट के रूप में रिलीज़ किया था। यह सामान्य HTML पार्सिंग टूल से तेज़ है क्योंकि यह डोम नहीं बनाता है। यह वही करता है जो आपने प्रत्येक टैग के लिए "ईवेंट" के लिए कहा और उठाया।

https://github.com/calbucci/CalbucciLib.HtmlParser

मैं सिर्फ NuGet के लिए यह कहा:

https://www.nuget.org/packages/CalbucciLib.HtmlParser/

+0

क्या यह पार्स एचटीएमएल 5 टैग भी करता है? जैसे

और आदि? – Icemanind

+0

हां, यह करता है। यह अज्ञात टैग का भी समर्थन करता है। –

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