מנתח RSS ASP, קורא עדכונים

4651719 ש

בסוף השבוע דבקתי במחשב הנייד שלי המחפש ברשת קוראי עדכוני RSS מבוססי רשת. הסיבה היא שרציתי לכתוב קורא עדכוני RSS של ASP שיציג את העדכון כך שהתוכן יכול להיגרד אוטומטית לדוא"ל HTML. כך שאנשים שרוצים לשריין חלק מניוזלטר הדוא"ל שלהם למאמרי הבלוג או הפרסום שלהם, ניתן לשלב אותו בקלות. מכיוון ש- JavaScript לא מציג בפועל את התוכן עד שהלקוח טוען ומבצע את הסקריפט, שפע דפדפני ה- RSS של JavaScript לא היו שימושיים. הייתי זקוק לקורא עדכוני RSS בצד השרת.

התחלתי בכתיבת מנתח משלי ב- ASP באמצעות אובייקט MSXML. הצלחתי לנתח כ- 75% מהעדכוני RSS שעשו זאת, אך חלק ממפרטי ה- XML ​​הרופפים בעדכוני RSS הוכיחו את עצמם כקשים מאוד לתכנות. אתה יכול לראות את זה בפעולה כאן. ניתן להעביר את המספר המרבי של פריטים (ni), את מספר התווים המנותקים במילה (nc), כמו גם את כתובת ה- URL. אתה יכול גם לראות את הפיד בפועל עם משתנה ניפוי באגים כאן.

עדכוני RSS רבים הם ממש 'מלוכלכים' ודורשים לנתח את הטקסט בקובץ ה- XML ​​באמצעות קוד מניפולציה במחרוזות (אוף!). כמובן, אנחנו עדיין ב"צעירות "ה- RSS שלנו ברשת ולכן אני לא מופתע. קרא עוד על מפרטי RSS כאן.

לבסוף נתקלתי בפנינה קטנה. מצאתי שיעור ASP בחינם להורדה. זה קצת איטי, אבל לא מצאתי עדכון שהוא לא היה מסוגל לקרוא. יש לי כאן גרסה סטטית וגרסה דינמית.

הערות זוגיות על התסריט. הייתי צריך לפנות כמה תגי HTML בתיאורים שהוחזרו. עשיתי את זה עם פונקציית ניקוי קטנה שמצאתי:

פונקציה הסר HTML (strText) עמעום nPos1 עמום nPos2 nPos1 = InStr (strText, ">") האם בזמן nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") אם nPos2> 0 ואז strText = שמאל (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) אחר יציאה Do End אם nPos1 = InStr (strText, ">") לולאה הסר HTML = strText סוף פונקציה

הוספתי גם מעט קוד מסודר נוסף: לפעמים, אולי ארצה להציג תיאור פחות או יותר. עם זאת, אם אני פשוט מגביל את מספר התווים, אזי עלול לנתק את התיאור באמצע המילה. אני לא רוצה לעשות את זה!

פונקציית ניתוק (strText, intChars) עמום intLength עמום j intLength = len (strText) אם intChars> intLength אז עבור j = intChars ל 0 שלב -1 אם באמצע (strText, j, 1) = "" ואז צא לשלב הבא אם j> 0 ואז strText = שמאל (strText, j-1) & "..." אחרת strText = strText סוף אם סוף אם Cutoff = strText סוף פונקציה

(היו לי כמה בעיות בהצגת הקוד שלי כהלכה בערך זה ... הודע לי אם יש לך בעיות באחת מהפונקציות האלה!)

שמתי לב לא מעט כלים נוספים גם ברשת. יש
NET. גרסה, גרסאות PHP רבות, המון גרסאות JavaScript.

לסיום, אני מקווה שמפרטי RSS ימשיכו להיות מעודנים והפידים בפועל תואמים לתקני XML בכל המקרים. יישומים בחינם כמו TypePad, WordPress וכו 'צריכים לשכלל את הפונקציונליות שלהם ב- RSS. בלוגים נוספים כמו MySpace, Xanga, LiveJournal וכו 'צריכים לשפר את הפונקציונליות שלהם ב- RSS. RSS הוא חזק ...כריס בגט כתב קטע נחמד באימייל לעומת RSS. אני חושב ששילוב הפונקציונליות שלהם יכול להגביר את ההשפעה של שניהם!

מה אתה חושב?

אתר זה משתמש Akismet כדי להפחית דואר זבל. למד כיצד הנתונים שלך מעובדים.