Analyzátor RSS RSS, čítačka informačných kanálov

Depositphotos 4651719 s

Tento víkend som bol prilepený k svojmu notebooku a hľadal na internete webové čítačky informačných kanálov RSS. Dôvod je ten, že som chcel napísať asp RSS feed reader, ktorý by zobrazoval feed tak, aby mohol byť obsah automaticky zošrotovaný do HTML emailu. Pre ľudí, ktorí si chcú vyhradiť časť svojho e-mailového bulletinu pre svoje články v blogoch alebo publikáciách, by sa dal ľahko zapracovať. Pretože JavaScript v skutočnosti nezobrazuje obsah, kým klient nenačíta a nevykoná skript, nepreberné množstvo prehľadávačov RSS typu JavaScript nebolo užitočné. Potreboval som čítačku informačných kanálov RSS na strane servera.

Začal som napísaním vlastného syntaktického analyzátora v ASP pomocou objektu MSXML. Podarilo sa mi pri tom analyzovať asi 75% informačných kanálov RSS, ale niektoré voľné špecifikácie XML na informačných kanáloch RSS sa ukázali ako veľmi ťažko programovateľné. Môžete to vidieť v akcii tu. Môžete zadať maximálny počet položiek (ni), počet znakov odrezaných pri slove (nc) a adresu URL. Môžete tiež vidieť skutočný informačný kanál s premennou ladenia tu.

Mnoho informačných kanálov RSS je skutočne dosť „špinavých“ a vyžaduje syntaktickú analýzu textu v súbore XML pomocou kódu na manipuláciu s reťazcami (fuj!). Samozrejme, že sme stále v našej „mladosti“ v sieti RSS, takže sa nečudujem. Prečítajte si viac informácií o špecifikáciách RSS tu.

Nakoniec som narazil na malý skvost. Našiel som bezplatnú triedu ASP na stiahnutie. Je to trochu pomalé, ale nenašiel som zdroj, ktorý by nebol schopný prečítať. Mám tu statickú verziu a dynamickú verziu.

Pár poznámok k scenáru. V vrátených popisoch som musel vyčistiť niektoré značky HTML. Urobil som to s malou funkciou vyčistenia, ktorú som našiel:

Funkcia RemoveHTML (strText) Dim nPos1 Dim nPos2 nPos1 = InStr (strText, ">") Robte While nPos1> 0 nPos2 = InStr (nPos1 + 1, strText, ">") Ak nPos2> 0 Potom strText = Vľavo (strText, nPos1 - 1) & Mid (strText, nPos2 + 1) Else Exit Do End If nPos1 = InStr (strText, ">") Loop RemoveHTML = strText End Function

Tiež som pridal ďalší úhľadný kúsok kódu: Niekedy možno budem chcieť zobraziť viac-menej popis. Ak však jednoducho obmedzím počet znakov, mohol by som popis uprostred slova odrezať. Nechcem to robiť!

Funkčné obmedzenie (strText, intChars) dim intLength dim j intLength = len (strText), ak intChars> intLength potom pre j = intChars na 0 krok -1, ak je stredná (strText, j, 1) = "", potom odíďte na ďalší, ak j> 0 potom strText = vľavo (strText, j-1) & "..." iné strText = strText koniec ak koniec ak Cutoff = strText Koniec Funkcia

(Mal som problémy so správnym zobrazením môjho kódu v tejto položke ... dajte mi vedieť, ak máte problémy s niektorou z týchto funkcií!)

Aj na nete som si všimol pomerne veľa ďalších nástrojov. Existuje
. NET verzia, veľa verzií PHP, množstvo verzií JavaScriptu.

Na záver dúfam, že sa špecifikácie RSS budú naďalej zdokonaľovať a skutočné kanály budú vo všetkých prípadoch vyhovovať štandardom XML. Bezplatné aplikácie ako TypePad, WordPress atď. Musia vylepšiť svoje funkcie RSS. Ďalšie blogy ako MySpace, Xanga, LiveJournal atď. Musia vylepšiť svoje funkcie RSS. RSS JE výkonný…Chris Baggott napísal pekný článok na e-mail vs. RSS. Myslím si, že kombinácia ich funkčnosti by mohla zvýšiť vplyv oboch!

Čo si myslíte?

Táto stránka používa Akismet na zníženie spamu. Zistite, ako sa spracúvajú údaje vašich komentárov.