ASP RSS Parser, Read Reader

Depositphotos 4651719 s

Ngayong weekend, nakadikit ako sa aking laptop na naghahanap sa net para sa mga web-based na RSS feed reader. Ang dahilan ay gusto kong magsulat ng isang asp RSS feed reader na magpapakita ng feed upang ang nilalaman ay awtomatikong ma-scrap sa isang HTML na email. Kaya para sa mga taong gustong magreserba ng bahagi ng kanilang email newsletter para sa kanilang mga artikulo sa Blog o Publication, madali itong maisama. Dahil hindi aktwal na ipinapakita ng JavaScript ang nilalaman hanggang sa naglo-load at naipatupad ng kliyente ang script, hindi naging kapaki-pakinabang ang karamihan sa mga JavaScript RSS browser. Kailangan ko ng server-side RSS feed reader.

Nagsimula ako sa pamamagitan ng pagsulat ng aking sariling parser sa ASP gamit ang object na MSXML. Nagawa kong mai-parse ang tungkol sa 75% ng mga RSS feed na ginagawa ito, ngunit ang ilan sa mga maluwag na pagtutukoy ng XML sa mga RSS feed ay napatunayan na napakahirap i-program. Maaari mo itong makita sa aksyon dito. Maaari mong ipasa ang max na bilang ng mga item (ni), ang bilang ng mga character na pinutol sa salita (nc), pati na rin ang URL. Maaari mo ring makita ang aktwal na feed na may variable ng pag-debug dito.

Maraming mga RSS feed ay talagang medyo 'marumi' at nangangailangan ng pag-parse ng teksto sa XML file na may string manipulation code (ugh!). Siyempre, nasa aming RSS 'kabataan' pa rin kami sa net kaya hindi na ako nagulat. Magbasa nang higit pa tungkol sa mga detalye ng RSS dito.

Sa wakas, nakatagpo ako ng isang maliit na hiyas. Nakakita ako ng libreng klase ng ASP na ida-download. Medyo mabagal, ngunit wala akong nakitang feed na hindi nito mabasa. Mayroon akong isang static na bersyon dito at isang dynamic na bersyon dito.

Ang isang pares na tala sa script. Kailangan kong limasin ang ilang mga HTML tag sa naibalik na paglalarawan. Ginawa ko iyon sa isang maliit na function ng paglilinis na nakita ko:

Pag-andar ngHHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Gawin Habang nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") Kung nPos2> 0 Kung gayon ang strText = Kaliwa (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Ang Ibang Exit Ay Nagtatapos Kung nPos1 = InStr (strText, ">") Loop DeleteHTML = strText End Function

Nagdagdag din ako ng isa pang maayos na maliit na code: Minsan, maaaring gusto kong magpakita ng higit pa o mas kaunting paglalarawan. Gayunpaman, kung lilimitahan ko lang ang bilang ng mga character, maaari kong putulin ang paglalarawan sa gitna ng salita. Ayokong gawin yun!

Pag-andar ng Cutoff (strText, intChars) dim intLength dim j intLength = len (strText) kung intChars> intLength pagkatapos para sa j = intChars sa 0 hakbang -1 kung kalagitnaan (strText, j, 1) = "" pagkatapos ay lumabas para sa susunod kung j> 0 pagkatapos strText = pakaliwa (strText, j-1) & "..." iba pa strText = strText magtatapos kung magtatapos kung Cutoff = strText End Function

(Nagkaroon ako ng ilang mga problema sa pagpapakita ng tama ng aking code sa entry na ito ... ipaalam sa akin kung mayroon kang mga problema sa alinman sa mga pagpapaandar na ito!)

Napansin ko ang ilang higit pang mga tool sa net pati na rin. Meron isang
. NET bersyon, maraming mga bersyon ng PHP, isang toneladang mga bersyon ng JavaScript.

Upang tapusin, inaasahan kong ang mga pagtutukoy ng RSS ay patuloy na pinong at ang mga tunay na feed ay sumusunod sa mga pamantayan ng XML sa lahat ng mga kaso. Ang mga libreng application tulad ng TypePad, WordPress, atbp ay kailangang pinuhin ang kanilang pagpapaandar sa RSS. Ang mga karagdagang blog tulad ng MySpace, Xanga, LiveJournal, atbp. Ay kailangang mapabuti ang pagpapaandar ng RSS. RSS AY malakas…Chris Baggott Sumulat ng isang magandang piraso sa Email kumpara sa RSS. Sa palagay ko ang pagsasama-sama ng kanilang pag-andar ay maaaring dagdagan ang epekto ng pareho!

Ano sa tingin ninyo?

Ang site na ito ay gumagamit ng Akismet upang mabawasan ang spam. Alamin kung paano naproseso ang data ng iyong komento.