ASP RSS parser, čitač feedova

Depositphotos 4651719 s

Ovog sam vikenda zalijepljen za svoj laptop tražeći na mreži čitače RSS feedova zasnovanih na internetu. Razlog je taj što sam želio napisati asp čitač RSS feedova koji će prikazivati ​​feed kako bi se sadržaj mogao automatski strugati u HTML e-poštu. Dakle, za ljude koji žele rezervirati dio svog biltena e-pošte za svoje članke na blogu ili publikaciji, mogao bi se lako ugraditi. Budući da JavaScript zapravo ne prikazuje sadržaj dok se klijent ne učita i izvrši skriptu, mnoštvo JavaScript preglednika RSS nije bilo korisno. Trebao sam čitač RSS feeda na strani poslužitelja.

Počeo sam s pisanjem vlastitog parsera u ASP pomoću objekta MSXML. Uspio sam raščlaniti oko 75% RSS feedova radeći to, ali neke labave XML specifikacije RSS feedova pokazalo se vrlo teškim za programiranje. Možete to vidjeti na djelu ovdje. Možete proslijediti maksimalan broj stavki (ni), broj odsječenih znakova na riječi (nc), kao i URL. Također možete vidjeti stvarni feed s varijablom za uklanjanje pogrešaka ovdje.

Mnogi RSS feedovi zaista su prilično 'prljavi' i zahtijevaju raščlanjivanje teksta u XML datoteci s kodom za manipulaciju nizom (uf!). Naravno, još uvijek smo u našoj RSS mladosti na mreži, tako da nisam iznenađen. Pročitajte više o RSS specifikacijama ovdje.

Napokon sam naišao na mali dragulj. Pronašao sam besplatni ASP tečaj za preuzimanje. Pomalo je sporo, ali nisam pronašao feed koji nije mogao pročitati. Ovdje imam statičnu verziju, a ovdje dinamičku.

Nekoliko napomena o scenariju. Morao sam očistiti neke HTML oznake u vraćenim opisima. Učinio sam to s malo funkcije čišćenja koje sam pronašao:

Funkcija Remove HTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Do while nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") If nPos2> 0 then strText = Left (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Else Exit Do End If nPos1 = InStr (strText, ">") Loop RemoveHTML = strText End Function

Dodao sam i još jedan zgodan mali kôd: Ponekad bih mogao prikazati više ili manje opisa. Međutim, ako jednostavno ograničim broj znakova, mogao bih prekinuti opis usred riječi. Ne želim to raditi!

Isječak funkcije (strText, intChars) dim intLength dim j intLength = len (strText) ako je intChars> intLength onda za j = intChars do 0 korak -1 ako je sredina (strText, j, 1) = "", a zatim izađite za sljedeći ako j> 0 zatim strText = lijevo (strText, j-1) & "..." else strText = strText end if end if Cutoff = strText End Funkcija

(Imao sam problema s ispravnim prikazom koda u ovom unosu ... javite mi ako imate problema s bilo kojom od ovih funkcija!)

Primijetio sam još dosta alata i na mreži. Tamo je
NET. verzija, mnoge PHP verzije, tona JavaScript verzija.

Da zaključim, nadam se da će se RSS specifikacije i dalje usavršavati i da su stvarni feedovi u svim slučajevima u skladu s XML standardima. Besplatni programi poput TypePad, WordPress itd. Trebaju poboljšati svoju RSS funkcionalnost. Dodatni blogovi poput MySpace, Xanga, LiveJournal itd. Trebaju poboljšati svoju RSS funkcionalnost. RSS JE moćan ...Chris Baggott napisao lijep članak o E-mailu u odnosu na RSS. Mislim da bi kombiniranje njihove funkcionalnosti moglo povećati utjecaj oba!

Što vi mislite?

Ova web stranica koristi Akismet za smanjenje neželjene pošte. Saznajte kako se podaci vašeg komentara obrađuju.