ASP RSS Parser, Feed Reader

Depositphotos 4651719 s

I helgen har jag limmats på min bärbara dator som söker på nätet efter webbaserade RSS-läsare. Anledningen är att jag ville skriva en RSS-RSS-läsare som skulle visa flödet så att innehållet automatiskt kunde skrapas in i ett HTML-e-postmeddelande. Så för folk som vill reservera en del av sitt nyhetsbrev via e-post för sina blogg- eller publikationsartiklar kan det enkelt införlivas. Eftersom JavaScript faktiskt inte visar innehållet förrän klienten laddar och kör skriptet, var överflödet av JavaScript RSS-webbläsare inte användbara. Jag behövde en RSS-feedläsare på serversidan.

Jag började med att skriva min egen parser i ASP med MSXML-objektet. Jag kunde analysera cirka 75% av RSS-feeds som gjorde detta, men några av de lösa XML-specifikationerna på RSS-feeds visade sig vara mycket svåra att programmera. Du kan se det i aktion här. Du kan skicka maximalt antal objekt (ni), antalet tecken avskurna vid ordet (nc) samt URL. Du kan också se det faktiska flödet med en felsökningsvariabel här.

Många RSS-feeds är egentligen ganska "smutsiga" och kräver att man analyserar texten i XML-filen med strängmanipulationskod (ugh!). Naturligtvis är vi fortfarande i vår RSS-"ungdom" på nätet så jag är inte förvånad. Läs mer om RSS-specifikationer här.

Slutligen kom jag över en liten pärla. Jag hittade en gratis ASP-klass att ladda ner. Det är lite långsamt, men jag har inte hittat ett flöde som det inte kunde läsa. Jag har en statisk version här och en dynamisk version här.

Ett par anteckningar om manuset. Jag behövde rensa bort några HTML-taggar i de returnerade beskrivningarna. Jag gjorde det med en liten rengöringsfunktion som jag hittade:

Funktion Ta bortHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Gör medan nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") Om nPos2> 0 Då strText = Vänster (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Annars avsluta Avsluta om nPos1 = InStr (strText, ">") Loop Ta bortHTML = strText End Function

Jag lade också till en annan snygg liten kod: Ibland kanske jag vill visa mer eller mindre av en beskrivning. Men om jag helt enkelt begränsar antalet tecken kan jag klippa av beskrivningen mitt i ordet. Jag vill inte göra det!

Funktion Cutoff (strText, intChars) dim intLength dim j intLength = len (strText) if intChars> intLength then for j = intChars to 0 step -1 if mid (strText, j, 1) = "" then exit for next if j> 0 sedan strText = vänster (strText, j-1) & "..." annars strText = strText slut om slut om Cutoff = strText slutfunktion

(Jag hade några problem med att visa min kod korrekt i denna post ... låt mig veta om du har problem med någon av dessa funktioner!)

Jag har lagt märke till en hel del fler verktyg på nätet också. Det finns en
. NET version, många PHP-versioner, massor av JavaScript-versioner.

För att avsluta hoppas jag att RSS-specifikationer fortsätter att förfinas och att de faktiska feedsna i alla fall uppfyller XML-standarder. Gratisapplikationer som TypePad, WordPress etc. måste förfina sina RSS-funktioner. Ytterligare bloggar som MySpace, Xanga, LiveJournal etc. behöver förbättra sin RSS-funktionalitet. RSS ÄR kraftfull ...Chris Baggott skrev en fin bit på E-post vs. RSS. Jag tror att kombinera deras funktionalitet kan öka effekterna av båda!

Vad tror du?

Den här sidan använder Akismet för att minska spam. Läs om hur din kommentardata behandlas.