• Acasă
  • Despre noi
  • Autori
  • Mărturii
  • Arhivă
  • Trimite Articol
  • Contact

WORLDIT

Lumea în 1 și 0.

  • Știri
    • Tehnologie
    • Tehnologie mobilă
    • Securitate
    • Developers
    • Știință
    • Benzi desenate
    • Jocuri
    • Intern
  • Tehnic
    • Browser
    • C#
    • C/C++
    • Challenge
    • HTML/CSS
    • Javascript, Ajax, jQuery
    • Open Source
    • PHP
    • Python
    • Securitate IT
    • Socializare
    • WordPress
    • Altele
  • Recenzii
  • Interviuri
  • Evenimente

Parcurgerea unui RSS folosind C# si XPath

0
  • Publicat de Cornescu Andrey
  • în C# · Tehnic
  • — 30 mart., 2010 at 4:50 pm

Acum ceva timp Andrei v-a aratat cum sa procesam informatiile dintr’un feed folosind preg_match(), exista insa metode mai usoare si mai rapide. Procesarea cu ajutarea XPath’ului nu este cea mai rapida metoda (mai rapida totusi decat preg_match) insa este pe departe cea mai usoara.

Ce este RSS?

RSS este o technlogie utilizata de milioane de utilizatori web pentru a tine evidenta articolelor de pe siturile lor favorite usor si eficient. RSS vine de la ‘Real Simple Syndication’ si aceasta practic poate fi denumit chiar „ziarul internetului”.

Un exemplu de document RSS

<?xml  version="1.0" ?>
<rss version="2.0">
 <channel>
 <!-- Informatii legate de site/rss-->
 <title>Area72 Development Blog</title>
 <description>Area72 developing with you bit by bit</description>
 <link>http://area72.ro</link>

 <!-- Obiectul care contine informatia in sine -->
 <item>
 <title>Extracting RSS Data with C# and XPath</title>
 <description></description>
 <link>http://area72.ro/general-it/extracting-rss-data-csharp.html</link>
 </item>

 <item>
 <title>Using the params modifier in C#</title>
 <description>One useful modifier.</description>
 <link>http://area72.ro/programming/using-the-params-modifier-in-csharp.html</link>
 </item>

 </channel>
</rss>

Navigarea prin XML folosind XPath

XPath sau ‘XML Path Language’ este un limbaj de interogare(semanator cu sql) insa folosit pentru selectarea nodurilor dintrun fisier XML.  La inceput poate fi un pic cam dificil de inteles dar haideti sa vedem cat de simplu este sa extragem datele din link si title.

 //Initializarea clasei document
 XPathDocument document = new XPathDocument("http://area72.ro/feed");
 //Creerea unui XPathNavigator echivalentul lui SqlCommand dar pentru XML
 XPathNavigator navigator = document.CreateNavigator();
 //XpathNodeIterator echivalentul lui SqlDataReader, o folosim pentru a citi datele
 XPathNodeIterator iterator = navigator.Select("//item/title | //item/link");
 // "//item/title | //item/link" - reprezinta query'ul

 while (iterator.MoveNext())
 {
 //printam titlul
 Console.WriteLine(iterator.Current.Value);
 iterator.MoveNext(); // mergem la urmatorul nod
 Console.WriteLine(iterator.Current.Value); //printam link'ul
 Console.WriteLine(" ");
 }

Observati parametrul de tip string „//item/title | //item/link” de la navigator.Select(),  acest query va returna nodurile title si link  ale obiectului item, cele doua slashuri din fata ( // ) selecteaza toate nodurile de la nodul curent netinand cont de adancimea lor, iar /title | /link selecteaza ‘copii’ nodului item.

Concluzie

Prin acest mic articol sper ca v’am starnit un pic interesul pentru XPath, aceasta fiind cea mai simpla metoda de a naviga printr’un xml. Pentru mai multe informatii despre query’urile Xpath puteti vizita situl W3C.

 

Articol original: area72.ro

Etichete: C++csharp rssparcurgere xmlprocesare feedprogramarerssxpath rss

— Cornescu Andrey a scris 6 articole

Contact | office@area72.ro | @twitter Fondator Area72, numele meu este Cornescu Andrei si lucrez in domeniul informaticii de aproximativ 3 ani, pasionat de ceea ce fac si mai ales dornic sa invat› dar si sa impartasesc din cunostintele mele. De asemenea deschis la intrebari si provocari :)

  • Articolul anterior Organizeaza proiectul intr-un mod extensibil
  • Articolul următor SQL UPDATE sau INSERT

  • Facebook

    WorldIT.info
  • Ultimele Atacuri Cibernetice din Romania – RO Hacked

    [wp_rss_retriever url="https://rohacked.bit-sentinel.com/feed/" excerpt="none" items="5" read_more="false" new_window="true" thumbnail="false" cache="0"] RO Hacked este registrul atacurilor cibernetice din România.
  • Caută

  • Articole Recomandate

    • Recent Posts
    • Tags
    • Număr record de participanți la DefCamp 2015, cel mai important eveniment dedicat securității cibernetice din Europe Centrala si de Estdecembrie 2, 2015
    • La DefCamp 2015 vei afla prin ce tehnici pot fi evitate măsurile de securitate ale sistemelor informatice criticeoctombrie 16, 2015
    • Ultima sansa sa rezervi bilete de tip Early Bird la DefCamp 2015septembrie 1, 2015
    • 15 sfaturi despre cum poti deveni un programator bun venite de la specialisti romaniaugust 4, 2015
    • algoritmica Android antivirus Apple Avadanei Andrei benzi desenate BitDefender blog browser C++ Chrome concurs eveniment Facebook Firefox Google google chrome hacking html5 infografic informatica internet Internet Explorer IT javascript linux Microsoft Mozilla Firefox online PHP programare retea sociala review Romania securitate Tehnologie Twitter web Windows Windows 7 Wordpress WorldIT worldit.info Yahoo! YouTube
  • mai 2022
    L Ma Mi J V S D
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031  
    « dec.    
  • Link-uri Sponsorizate

    • laptop second hand

    • Calculatoare Second Hand

    • cod voucher pc garage

  • Home
  • Tehnic
  • C#
  • Parcurgerea unui RSS folosind C# si XPath
  • Important

    • Bit Sentinel
    • Centrul de Cercetare în Securitate Informatică din România
    • DefCamp
  • Prieteni

    • BetiT.ro
    • bijuterii handmade
    • Computerica | Resurse gratuite PC
    • Descopera.org
    • Gadgeturi si IT – Giz.ro
  • Prieteni

    • PC – Config
    • RO Hacked
    • Stiri IT

Copyright © 2009-2014 WORLDIT. Toate drepturile Rezervate.
Termeni și condiții | Contact | Licența Creative Commons