ASP RSS-parser, feedlezer

Depositphotos 4651719 s

Dit weekend zat ik aan mijn laptop gekluisterd op het internet te zoeken naar webgebaseerde RSS-feedlezers. De reden is dat ik een asp RSS-feedlezer wilde schrijven die de feed zou weergeven zodat de inhoud automatisch in een HTML-e-mail kon worden geschraapt. Dus voor mensen die een deel van hun e-mailnieuwsbrief willen reserveren voor hun blog- of publicatieartikelen, kan het gemakkelijk worden opgenomen. Omdat JavaScript de inhoud niet daadwerkelijk weergeeft totdat de client het script laadt en uitvoert, was de overvloed aan JavaScript RSS-browsers niet nuttig. Ik had een server-side RSS-feedlezer nodig.

Ik begon met het schrijven van mijn eigen parser in ASP met behulp van het MSXML-object. Ik kon hiermee ongeveer 75% van de RSS-feeds ontleden, maar sommige losse XML-specificaties op RSS-feeds bleken erg moeilijk te programmeren. Je kunt het in actie zien CDL Super Session.. U kunt het maximale aantal items (ni), het aantal tekens dat bij het woord (nc) wordt afgesneden, en de URL doorgeven. U kunt ook de daadwerkelijke feed zien met een debug-variabele CDL Super Session..

Veel RSS-feeds zijn echt behoorlijk 'vies' en vereisen het ontleden van de tekst in het XML-bestand met string-manipulatiecode (ugh!). Natuurlijk zijn we nog steeds in onze RSS 'jeugd' op het net, dus het verbaast me niet. Lees meer over RSS-specificaties CDL Super Session..

Eindelijk kwam ik een klein juweeltje tegen. Ik heb een gratis ASP-klasse gevonden om te downloaden. Het is een beetje traag, maar ik heb geen feed gevonden die het niet kon lezen. Ik heb hier een statische versie en hier een dynamische versie.

Een paar opmerkingen over het script. Ik moest enkele HTML-tags wissen in de geretourneerde beschrijvingen. Ik deed dat met een kleine opruimfunctie die ik vond:

Functie RemoveHTML (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-functie

Ik heb ook nog een leuk stukje code toegevoegd: soms wil ik misschien meer of minder een beschrijving weergeven. Als ik echter gewoon het aantal tekens beperk, kan ik de beschrijving in het midden van het woord afsnijden. dat wil ik niet doen!

Functie Cutoff (strText, intChars) dim intLength dim j intLength = len (strText) if intChars> intLength dan voor j = intChars tot 0 step -1 if mid (strText, j, 1) = "" dan exit voor volgende als j> 0 then strText = left (strText, j-1) & "..." else strText = strText end if end if Cutoff = strText End-functie

(Ik had wat problemen met het correct weergeven van mijn code in dit item ... laat het me weten als je problemen hebt met een van deze functies!)

Ik heb ook heel wat meer tools op het net opgemerkt. Er is een
. NET versie, veel PHP-versies, een heleboel JavaScript-versies.

Tot slot hoop ik dat de RSS-specificaties steeds verder worden verfijnd en dat de daadwerkelijke feeds in alle gevallen voldoen aan XML-standaarden. Gratis applicaties zoals TypePad, WordPress, etc. moeten hun RSS-functionaliteit verfijnen. Extra blogs zoals MySpace, Xanga, LiveJournal, enz. Moeten hun RSS-functionaliteit verbeteren. RSS IS krachtig ...Chris Baggott schreef een leuk stuk over E-mail vs. RSS. Ik denk dat het combineren van hun functionaliteit de impact van beide kan vergroten!

Wat denk je?

Deze site gebruikt Akismet om spam te verminderen. Ontdek hoe uw reactiegegevens worden verwerkt.