تجزیه کننده RSS ASP ، Feed Reader

Depositphotos 4651719 s

آخر این هفته من به لپ تاپ خود چسبیده ام که در اینترنت برای خوانندگان خوراک RSS تحت وب جستجو می کند. دلیل این امر این است که من می خواستم یک خواننده RSS asp بنویسم که خوراک را نمایش می دهد تا محتوای آن به طور خودکار در یک ایمیل HTML ریخته شود. بنابراین برای افرادی که می خواهند بخشی از خبرنامه ایمیل خود را برای مقالات خود در بلاگ یا انتشارات رزرو کنند ، می تواند به راحتی درج شود. از آنجا که جاوا اسکریپت در واقع محتوا را نمایش نمی دهد تا زمانی که مشتری اسکریپت را بارگذاری و اجرا کند ، تعداد زیادی از مرورگرهای RSS جاوا اسکریپت مفید نبودند. من به یک خواننده خوراک RSS سمت سرور نیاز داشتم.

من با نوشتن تجزیه کننده خودم در ASP با استفاده از شی MSXML شروع کردم. من قادر به تجزیه و تحلیل حدود 75٪ از منابع خبری RSS با این کار بودم ، اما برنامه نویسی برخی از مشخصات شل XML در منابع RSS بسیار دشوار بود. شما می توانید آن را در عمل ببینید اینجا کلیک نمایید. می توانید حداکثر تعداد موارد (ni) ، تعداد نویسه های قطع شده در کلمه (nc) و همچنین URL را منتقل کنید. همچنین می توانید فید واقعی را با یک متغیر اشکال زدایی مشاهده کنید اینجا کلیک نمایید.

بسیاری از منابع خبری RSS کاملاً "کثیف" هستند و نیاز به تجزیه متن در فایل XML با کد دستکاری رشته دارند (وای!). البته ، ما هنوز در شبکه "RSS" RSS هستیم ، بنابراین تعجب نمی کنم. درباره مشخصات RSS بیشتر بخوانید اینجا کلیک نمایید.

سرانجام با گوهر کوچکی روبرو شدم. من یک کلاس ASP رایگان برای بارگیری پیدا کردم. کمی کند است ، اما من مطلبی را پیدا نکرده ام که قادر به خواندن آن نباشد. من یک نسخه استاتیک اینجا و یک نسخه پویا اینجا دارم.

یک زن و شوهر در مورد فیلم نامه یادداشت می کنند. لازم بود برخی از برچسب های HTML را در توضیحات برگردانده شده پاک کنم. من این کار را با کمی عملکرد پاکسازی کردم:

عملکرد removeHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText، ">") Do while nPos1> 0 nPos2 = InStr (nPos1 + 1، strText، ">") اگر nPos2> 0 سپس strText = چپ (strText، nPos1) - 1) & Mid (strText، nPos2 + 1) در صورت عدم انجام nPos1 = InStr (strText ، ">") خروج دیگر انجام شود اگر حلقه حذف شود HTML = strText عملکرد پایان

من همچنین کمی کد شسته و رفته دیگر اضافه کردم: گاهی اوقات ، ممکن است بخواهم توضیحات را کم و بیش نشان دهم. با این حال ، اگر من به سادگی تعداد نویسه ها را محدود کنم ، ممکن است توصیف را در وسط کلمه قطع کنم. من نمی خواهم چنین کاری کنم!

قطع عملکرد (strText ، intChars) int intlength کم j intLength = len (strText) اگر intChars> intLength سپس برای j = intChars تا 0 مرحله -1 اگر اواسط باشد (strText ، j ، 1) = "" سپس اگر j> برای بعدی خارج شوید 0 سپس strText = چپ (strText ، j-1) و "..." else strText = strText اگر انتهای باشد اگر Cutoff = strText عملکرد پایان یابد

(من در نمایش صحیح کد خود در این مطلب با مشکلی روبرو شدم ... اگر با هر یک از این عملکردها مشکلی دارید به من اطلاع دهید!)

من همچنین به ابزارهای بیشتری در شبکه نیز پی بردم. وجود دارد
دات نت نسخه ، بسیاری از نسخه های PHP ، تعداد زیادی نسخه JavaScript.

برای نتیجه گیری ، امیدوارم که مشخصات RSS همچنان اصلاح شود و خبرهای واقعی در همه موارد با استانداردهای XML مطابقت داشته باشند. برنامه های رایگان مانند TypePad ، WordPress و غیره باید عملکرد RSS خود را اصلاح کنند. وبلاگهای اضافی مانند MySpace، Xanga، LiveJournal و غیره باید عملکرد RSS خود را بهبود بخشند. RSS قدرتمند استکریس باگوت یک قطعه خوب در ایمیل در مقابل RSS نوشت. من فکر می کنم ترکیب عملکرد آنها می تواند تأثیر هر دو را افزایش دهد!

شما چه فکر میکنید؟

این سایت از Akismet برای کاهش هرزنامه استفاده می کند. بدانید که چگونه نظر شما پردازش می شود.