Analitzador ASP RSS, lector de feeds

Depositphotos 4651719 s

Aquest cap de setmana he estat enganxat al meu ordinador portàtil buscant lectors de feeds RSS basats en la xarxa. La raó és que volia escriure un lector de feed RSS asp que mostri el feed de manera que el contingut es pogués rascar automàticament en un correu electrònic HTML. Per tant, per a la gent que vulgui reservar una part del seu butlletí per correu electrònic als articles del seu bloc o publicació, es podria incorporar fàcilment. Com que JavaScript no mostra el contingut fins que el client carrega i executa l'script, la gran quantitat de navegadors RSS JavaScript no van ser útils. Necessitava un lector de feeds RSS del servidor.

Vaig començar escrivint el meu propi analitzador en ASP mitjançant l'objecte MSXML. Vaig poder analitzar aproximadament el 75% dels canals RSS que feien això, però algunes de les especificacions XML soltes dels canals RSS van resultar ser molt difícils de programar. Es pot veure en acció aquí. Podeu passar el nombre màxim d’elements (ni), el nombre de caràcters tallats a la paraula (nc), així com l’URL. També podeu veure el feed real amb una variable de depuració aquí.

Molts canals RSS són realment bastant "bruts" i requereixen analitzar el text del fitxer XML amb un codi de manipulació de cadenes (uf!). Per descomptat, encara estem a la nostra xarxa juvenil a la xarxa, així que no em sorprèn. Llegiu més sobre les especificacions RSS aquí.

Finalment, em vaig trobar amb una petita joia. He trobat una classe ASP gratuïta per descarregar. És una mica lent, però no he trobat cap feed que no hagi pogut llegir. Aquí tinc una versió estàtica i una versió dinàmica aquí.

Un parell de notes sobre el guió. Vaig haver d’esborrar algunes etiquetes HTML a les descripcions retornades. Ho vaig fer amb una petita funció de neteja que vaig trobar:

Funció RemoveHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Feu-ho mentre nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") Si nPos2> 0 Llavors strText = Left (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Altres Sortir Feu finalitzar si nPos1 = InStr (strText, ">") Eliminar bucleHTML = Funció de finalització de strText

També he afegit un altre petit codi de codi: de vegades, potser voldria mostrar més o menys una descripció. Tanmateix, si simplement limito el nombre de caràcters, podria tallar la descripció al centre de la paraula. No vull fer-ho!

Funció Tall (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 llavors strText = left (strText, j-1) & "..." else strText = strText end if end if Cutoff = strText Funció final

(He tingut alguns problemes amb la visualització correcta del meu codi en aquesta entrada ... feu-me saber si teniu problemes amb alguna d'aquestes funcions!)

També he notat moltes eines més a la xarxa. Hi ha un
. NET versió, moltes versions de PHP, un munt de versions de JavaScript.

Per concloure, espero que les especificacions RSS es continuïn refinant i que els feeds reals compleixin els estàndards XML en tots els casos. Les aplicacions gratuïtes com TypePad, WordPress, etc. necessiten refinar la seva funcionalitat RSS. Blocs addicionals com MySpace, Xanga, LiveJournal, etc. necessiten millorar la seva funcionalitat RSS. RSS és potent ...Chris Baggott va escriure una bona obra a Email vs. RSS. Crec que la combinació de la seva funcionalitat podria augmentar l’impacte de totes dues coses.

Què et sembla?

Aquest lloc utilitza Akismet per reduir el correu no desitjat. Esbrineu com es processa el vostre comentari.