DIHtmlParser چیست؟
DIHtmlParser یک مجموعه component برای parse کردن، آنالیز، استخراج اطلاعات و ساخت document های HTML، XHTML و XML برای Delphi (Embarcadero, CodeGear, Borland) است. از جمله ویژگی های مهم این مجموعه می توان به پشتیبانی کامل از Unicode، امکان خواندن و نوشتن بیش از هفتاد character set به صورت native، پشتیبانی از بیش از ۱۵۰ مورد با کمک گرفتن از DIConverters، امکان کار روی TStreams، memory buffer ها یا string ها، برگرداندن یک قطعه از HTML به اپلیکیشن در هر مرحله، امکان توسعه آسان از طریق رابط TDIHtmlParserPlugin و بسیاری موارد دیگر اشاره کرد. این ابزار می تواند ده قطعه از HTML و ۴ قطعه از Non-HTML را تشخیص دهد. از جمله قطعات HTML می توان به CData Section ها، comment ها، document type definition ها و غیره، و از جمله non-HTML ها می توان به Active Server Pages، custom tag ها و PHP اشاره کرد.
DIHtmlParser می تواند CData Section هایی را که در XML پیدا می شوند تشخیص دهد. از این section ها برای اجتناب از بلوک هایی از متن استفاده می شود که حاوی کاراکترهایی هستند که ممکن است به عنوان markup تشخیص داده شوند. همچنین محتواهای Commens به خوبی توسط این ابزار تشخیص داده می شوند و بدون علائم مربوط به comment برگردانده می شوند. تشخیص نشانه های تعریف نوع داکیومنت که syntax آن را مشخص می کنند یکی دیگر از قابلیت های این component ها است. سرعت این ابزار به ویژه هنگامی که فایل های بزرگ را parse می کند فوق العاده زیاد است. با کمک مکانیسم buffer داخلی، لازم نیست کل فایل ها داخل مموری لود شوند بلکه می تواند بخش های کوچک آن ها را یکی پس از دیگری می خواند.
DIHtmlParser می تواند در هر ثانیه تا ۵۰ هزار تگ را parse کند و از جمله ویژگی های خوب آن این است که این کار را حتی با یک پردازنده قدیمی ۱۶۶ مگاهرتز نیز به راحتی انجام می دهد. این ابزار فقط موارد لازم را parse می کند و به خاطر مکانیسم فیلترینگ فوق العاده ای که در آن گنجانده شده است می تواند تمام قطعه هایی را که اپلیکیشن request نداده است را رد کند. در ادامه لینک دانلود DIHtmlParser به همراه کرک آن ارائه شده است که می توانید آن را دریافت کنید.
ویژگی ها و قابلیت های DIHtmlParser:
- - پشتیبانی کامل از Unicode
- - خواندن بیش از ۷۰ character set به صورت native
- - قابل استفاده روی TStreams، memory buffer و string ها
- - برگرداندن یک قطعه HTML به اپلیکیشن در هر مرتبه
- - امکان تشخیص بخش های CData
- - تشخیص نشانه های Comment، script، style و غیره
- - قابلیت شناسایی نشانه های تعریف نوع داکیومنت
- - امکان parse کردن ۵۰ هزار تگ در ثانیه
- - و بسیاری موارد دیگر.