Modulele xml din CPAN se divid in trei mari categorii:
1.interfete intre xml si structura de date a Perl;
2.module care implementeaza o interfata API pentru xml;
3.module care simplifica lucrul cu xml.
Desi utilizarea xml cunoaste o mare varietate de formate, marea majoritate a lucrului cu aceste formate se divide in doua mari grupe - extragerea datelor din documentele xml, si crearea de documente xml utilizand date din alte formate.
Module care asigura interfata de lucru cu xml.
XML::LibXML; - este utilizat in codul de mai jos
XML::Feed; -
Data: Duminica 08:11:2015
Sa presupunem ca avem fila xml:
Urmatoarea fila este scriptul Perl pentru a prelucra acest XML:
Output dupa rularea scriptului Perl:
Resurse web:
http://www.perlmonks.org/?node_id=490846
1.interfete intre xml si structura de date a Perl;
2.module care implementeaza o interfata API pentru xml;
3.module care simplifica lucrul cu xml.
Desi utilizarea xml cunoaste o mare varietate de formate, marea majoritate a lucrului cu aceste formate se divide in doua mari grupe - extragerea datelor din documentele xml, si crearea de documente xml utilizand date din alte formate.
Module care asigura interfata de lucru cu xml.
XML::LibXML; - este utilizat in codul de mai jos
XML::Feed; -
Data: Duminica 08:11:2015
Sa presupunem ca avem fila xml:
<breakfast_menu> <food> <name>Belgian Waffles</name> <price>$5.95</price> <description>Two of our famous Belgian Waffles with plenty of real maple syrup</description> <calories>650</calories> </food> <food> <name>Strawberry Belgian Waffles</name> <price>$7.95</price> <description>Light Belgian waffles covered with strawberries and whipped cream</description> <calories>900</calories> </food> <food> <name>Berry-Berry Belgian Waffles</name> <price>$8.95</price> <description>Light Belgian waffles covered with an assortment of fresh berries and whipped cream</description> <calories>900</calories> </food> <food> <name>French Toast</name> <price>$4.50</price> <description>Thick slices made from our homemade sourdough bread</description> <calories>600</calories> </food> <food> <name>Homestyle Breakfast</name> <price>$6.95</price> <description>Two eggs, bacon or sausage, toast, and our ever-popular hash browns</description> <calories>950</calories> </food> </breakfast_menu>
Urmatoarea fila este scriptul Perl pentru a prelucra acest XML:
#!/usr/bin/perl use warnings; use strict; # Incarcarea filei pe care dorim sa o prelucram my $filename = 'simple.xml'; print "Numele filei XML de incarcat: $filename.\n"; # Incarcam in aceast fila modulul XML::LibXML use XML::LibXML; # Creem un obiect $parser my $parser = XML::LibXML->new(); # Cerem obiectului $parser prin functia parse_file sa parcurga fila xml my $doc = $parser->parse_file($filename); # Parcurgem elementele si le afisam prin functia print foreach my $book($doc->findnodes('/breakfast_menu/food')){ my ($name) = $book->findnodes('./name'); my ($price) = $book->findnodes('./price'); print $name->to_literal," ", $price->to_literal, "\n"; }
Output dupa rularea scriptului Perl:
Resurse web:
http://www.perlmonks.org/?node_id=490846
Niciun comentariu:
Trimiteți un comentariu