Analyseur RSS ASP, lecteur de flux

Depositphotos 4651719 s

Ce week-end, j'ai été collé à mon ordinateur portable à la recherche de lecteurs de flux RSS sur le Web. La raison en est que je voulais écrire un lecteur de flux RSS asp qui afficherait le flux afin que le contenu puisse être automatiquement récupéré dans un e-mail HTML. Donc, pour les gens qui souhaitent réserver une partie de leur bulletin électronique pour leurs articles de blog ou de publication, il pourrait être facilement intégré. Étant donné que JavaScript n'affiche pas le contenu tant que le client n'a pas chargé et exécuté le script, la pléthore de navigateurs RSS JavaScript n'était pas utile. J'avais besoin d'un lecteur de flux RSS côté serveur.

J'ai commencé par écrire mon propre analyseur en ASP en utilisant l'objet MSXML. J'ai pu analyser environ 75% des flux RSS en faisant cela, mais certaines des spécifications XML lâches sur les flux RSS se sont avérées très difficiles à programmer. Vous pouvez le voir en action ici. Vous pouvez passer le nombre maximum d'éléments (ni), le nombre de caractères coupés au mot (nc), ainsi que l'URL. Vous pouvez également voir le flux réel avec une variable de débogage ici.

De nombreux flux RSS sont vraiment assez «sales» et nécessitent l'analyse du texte dans le fichier XML avec du code de manipulation de chaîne (ugh!). Bien sûr, nous sommes toujours dans notre «jeunesse» RSS sur le net donc je ne suis pas surpris. En savoir plus sur les spécifications RSS ici.

Enfin, je suis tombé sur un petit bijou. J'ai trouvé une classe ASP gratuite à télécharger. C'est un peu lent, mais je n'ai pas trouvé de flux qu'il n'a pas pu lire. J'ai une version statique ici et une version dynamique ici.

Quelques notes sur le scénario. J'ai eu besoin d'effacer certaines balises HTML dans les descriptions renvoyées. Je l'ai fait avec une petite fonction de nettoyage que j'ai trouvée:

Fonction 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 Function

J'ai également ajouté un autre petit bout de code intéressant: parfois, je pourrais vouloir afficher plus ou moins une description. Cependant, si je limite simplement le nombre de caractères, alors je pourrais couper la description au milieu du mot. Je ne veux pas faire ça!

Function Cutoff (strText, intChars) dim intLength dim j intLength = len (strText) if intChars> intLength puis pour j = intChars à 0 step -1 si mid (strText, j, 1) = "" puis quitter pour suivant si j> 0 then strText = left (strText, j-1) & "..." else strText = strText end if end if Cutoff = strText End Function

(J'ai eu quelques problèmes pour afficher correctement mon code dans cette entrée… faites-moi savoir si vous rencontrez des problèmes avec l'une de ces fonctions!)

J'ai également remarqué un certain nombre d'outils supplémentaires sur le net. Il y a un
.NET version, de nombreuses versions de PHP, une tonne de versions de JavaScript.

Pour conclure, j'espère que les spécifications RSS continueront d'être affinées et que les flux réels seront conformes aux normes XML dans tous les cas. Les applications gratuites comme TypePad, WordPress, etc. doivent affiner leurs fonctionnalités RSS. Des blogs supplémentaires comme MySpace, Xanga, LiveJournal, etc. doivent améliorer leur fonctionnalité RSS. RSS EST puissant…Chris Baggot a écrit un bel article sur Email vs RSS. Je pense que combiner leurs fonctionnalités pourrait augmenter l'impact des deux!

Que pensez-vous?

Ce site utilise Akismet pour réduire les spams. Découvrez comment sont traitées les données de vos commentaires..