ASP RSS Parser, โปรแกรมอ่านฟีด

ฝากรูป 4651719 วิ

สุดสัปดาห์นี้ฉันติดอยู่กับแล็ปท็อปของฉันเพื่อค้นหาเน็ตสำหรับโปรแกรมอ่านฟีด RSS บนเว็บ เหตุผลก็คือฉันต้องการเขียนโปรแกรมอ่านฟีด RSS ของ asp ที่จะแสดงฟีดเพื่อให้สามารถคัดลอกเนื้อหาไปยังอีเมล HTML โดยอัตโนมัติ ดังนั้นสำหรับผู้ที่ต้องการจองส่วนหนึ่งของจดหมายข่าวทางอีเมลสำหรับบทความในบล็อกหรือสิ่งพิมพ์ของพวกเขาก็สามารถรวมเข้าด้วยกันได้อย่างง่ายดาย เนื่องจาก JavaScript ไม่ได้แสดงเนื้อหาจริงจนกว่าไคลเอ็นต์จะโหลดและเรียกใช้สคริปต์เบราว์เซอร์ JavaScript RSS จึงไม่มีประโยชน์ ฉันต้องการโปรแกรมอ่านฟีด RSS ฝั่งเซิร์ฟเวอร์

ฉันเริ่มต้นด้วยการเขียน parser ของตัวเองใน ASP โดยใช้อ็อบเจกต์ MSXML ฉันสามารถแยกวิเคราะห์ฟีด RSS ได้ประมาณ 75% ที่ทำสิ่งนี้ แต่ข้อกำหนด XML บางส่วนที่หลวม ๆ บนฟีด RSS พิสูจน์แล้วว่าเป็นเรื่องยากในการเขียนโปรแกรม คุณสามารถเห็นได้ในการดำเนินการ โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม. คุณสามารถส่งผ่านจำนวนรายการสูงสุด (ni) จำนวนอักขระที่ถูกตัดออกที่คำ (nc) รวมทั้ง URL คุณยังสามารถดูฟีดจริงที่มีตัวแปรการดีบัก โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม.

ฟีด RSS จำนวนมากค่อนข้าง 'สกปรก' และต้องการการแยกวิเคราะห์ข้อความในไฟล์ XML ด้วยรหัสการจัดการสตริง (ฮึ!) แน่นอนว่าเรายังอยู่ใน '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 = Left (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Else Exit Do End ถ้า nPos1 = InStr (strText, ">") Loop RemoveHTML = strText End Function

ฉันยังได้เพิ่มโค้ดเล็ก ๆ น้อย ๆ ที่เรียบร้อย: บางครั้งฉันอาจต้องการแสดงคำอธิบายมากขึ้นหรือน้อยลง อย่างไรก็ตามหากฉัน จำกัด จำนวนอักขระเพียงอย่างเดียวฉันอาจตัดคำอธิบายตรงกลางคำออก ฉันไม่อยากทำแบบนั้น!

ฟังก์ชั่น Cutoff (strText, intChars) dim intLength dim j intLength = len (strText) ถ้า intChars> intLength แล้วสำหรับ j = intChars ถึง 0 ขั้นตอน -1 ถ้า mid (strText, j, 1) = "" จากนั้นออกสำหรับถัดไปถ้า j> 0 จากนั้น strText = left (strText, j-1) & "... " else strText = strText end if end if Cutoff = strText End Function

(ฉันมีปัญหาในการแสดงรหัสของฉันอย่างถูกต้องในรายการนี้ ... โปรดแจ้งให้เราทราบหากคุณมีปัญหากับฟังก์ชันเหล่านี้!)

ฉันสังเกตเห็นเครื่องมืออื่น ๆ บนเน็ตเช่นกัน มี
NET. เวอร์ชัน PHP หลายเวอร์ชัน JavaScript จำนวนมาก

สรุปได้ว่าฉันหวังว่าข้อกำหนด RSS จะได้รับการปรับปรุงอย่างต่อเนื่องและฟีดจริงจะสอดคล้องกับมาตรฐาน XML ในทุกกรณี แอปพลิเคชันฟรีเช่น TypePad, WordPress และอื่น ๆ จำเป็นต้องปรับแต่งฟังก์ชัน RSS บล็อกเพิ่มเติมเช่น MySpace, Xanga, LiveJournal และอื่น ๆ จำเป็นต้องปรับปรุงการทำงานของ RSS RSS ทรงพลัง ...คริสแบ็กกอตต์ เขียนบทความดีๆบนอีเมลกับ RSS ฉันคิดว่าการรวมฟังก์ชันการทำงานเข้าด้วยกันสามารถเพิ่มผลกระทบของทั้งสองอย่างได้!

คุณคิดอย่างไร?

ไซต์นี้ใช้ Akismet เพื่อลดสแปม เรียนรู้วิธีการประมวลผลข้อมูลความคิดเห็นของคุณ.