Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re: Get data from an XML file heading

by Lotus1 (Vicar)
on Feb 20, 2020 at 16:20 UTC ( #11113258=note: print w/replies, xml ) Need Help??


in reply to Get data from an XML file heading

Check out some of the XML tutorials online for explanations of attributes. Here are some examples of accessing attributes.

use warnings; use strict; use XML::LibXML; ### https://metacpan.org/pod/distribution/XML-LibXML/LibXML.pod ### https://grantm.github.io/perl-libxml-by-example/basics.html ### https://metacpan.org/pod/distribution/XML-LibXML/lib/XML/LibXML/El +ement.pod ### https://metacpan.org/pod/distribution/XML-LibXML/lib/XML/LibXML/No +de.pod my $dom = XML::LibXML->load_xml(string => <<'EOT'); <test> <result_summary total_records="594" total_pages="3" current_page="1" + records_this_page="250" download_key="xmxnxnxnxnxnxnxnxnx" time_star +t="2020-02-19 15:50:55" feed_version="1.44" /> </test> EOT ### get individual attribute by name: print "\n******* get individual attribute by name: ***********\n"; foreach my $attribute( $dom->findnodes('/test/result_summary/@total_pa +ges') ) { print "total_pages = ", $attribute->to_literal, "\n"; } ### get individual as hash refs: print "\n******* get individual attribute as hash refs: ***********\n" +; foreach my $result_sum ( $dom->findnodes('/test/result_summary') ) { print "total_pages = ", $result_sum->{total_pages}, "\n"; } ### get all attributes: print "\n******* get all attributes: ***********\n"; foreach my $attribute( $dom->findnodes('/test/result_summary/@*') ) { print $attribute->nodeName, " = ", $attribute->to_literal, "\n"; }

Output:

******* get individual attribute by name: *********** total_pages = 3 ******* get individual attribute as hash refs: *********** total_pages = 3 ******* get all attributes: *********** total_records = 594 total_pages = 3 current_page = 1 records_this_page = 250 download_key = xmxnxnxnxnxnxnxnxnx time_start = 2020-02-19 15:50:55 feed_version = 1.44

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11113258]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (8)
As of 2021-10-19 12:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My first memorable Perl project was:







    Results (76 votes). Check out past polls.

    Notices?