Analizador RSS ASP, lector de feeds

Depositphotos 4651719 s

Esta fin de semana estiven pegado ao meu portátil buscando na rede por lectores de fontes RSS baseados na web. A razón é que quería escribir un lector de fontes RSS asp que amosase a fonte para que o contido se puidese rascar automaticamente nun correo electrónico HTML. Así, para as persoas que queiran reservar unha parte do seu boletín de correo electrónico para os seus artigos de blog ou publicación, podería incorporarse facilmente. Dado que JavaScript non mostra o contido ata que o cliente carga e executa o script, a infinidade de navegadores RSS JavaScript non foron útiles. Necesitaba un lector de fontes RSS do lado do servidor.

Comecei escribindo o meu propio analizador en ASP usando o obxecto MSXML. Puiden analizar aproximadamente o 75% das fontes RSS facendo isto, pero algunhas das especificacións XML soltas nas fontes RSS resultaron moi difíciles de programar. Podes velo en acción aquí. Pode pasar o número máximo de elementos (ni), o número de caracteres cortados na palabra (nc), así como a URL. Tamén podes ver o feed real cunha variable de depuración aquí.

Moitas fontes RSS están realmente "sucias" e requiren analizar o texto do ficheiro XML cun código de manipulación de cadeas (uf!). Por suposto, seguimos na rede "xuventude" na rede, polo que non me estraña. Lea máis sobre as especificacións RSS aquí.

Finalmente, atopei unha pequena xoia. Atopei unha clase ASP gratuíta para descargar. É un pouco lento, pero non atopei un feed que non soubese ler. Aquí teño unha versión estática e aquí unha versión dinámica.

Un par de notas sobre o guión. Necesitei borrar algunhas etiquetas HTML nas descricións devoltas. Fíxeno cunha pequena función de limpeza que atopei:

Función EliminarHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Fai Mentres nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") Se nPos2> 0 Entón strText = Left (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Out Saír Do End Se nPos1 = InStr (strText, ">") Eliminar BucleHTML = StrText Función End

Tamén engadín outro pequeno código: ás veces, quizais desexe mostrar máis ou menos unha descrición. Non obstante, se limito o número de caracteres, entón podería cortar a descrición no medio da palabra. Non quero facelo.

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

(Tiven algúns problemas para amosar o meu código correctamente nesta entrada ... avísame se tes problemas con algunha destas funcións!)

Tamén notei bastantes ferramentas máis na rede. Existe unha
. Net versión, moitas versións de PHP, unha chea de versións de JavaScript.

Para finalizar, espero que as especificacións RSS continúen perfeccionándose e que os feeds reais cumpran os estándares XML en todos os casos. As aplicacións gratuítas como TypePad, WordPress, etc. precisan mellorar a súa funcionalidade RSS. Os blogs adicionais como MySpace, Xanga, LiveJournal, etc. necesitan mellorar a súa funcionalidade RSS. RSS É poderoso ...Chris Baggott escribiu unha boa peza en Email vs. RSS. Creo que a combinación da súa funcionalidade pode aumentar o impacto de ambas.

¿Que pensas?

Este sitio usa Akismet para reducir o spam. Aprende a procesar os teus datos de comentarios.