Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how do i parse xml webpage in perl

hello Currently i am able to parse the xml file if it is saved in my folder from the webpage.

use strict;
use warnings;
use Data::Dumper;
use XML::Simple;

my $parser = new XML::Simple;
my $data = $parser->XMLin("config.xml");
print Dumper($data);

But it does not work if i am trying to parse it from the website.

use strict;
use warnings;
use Data::Dumper;
use XML::Simple;

my $parser = new XML::Simple;
my $data = $parser->XMLin("http://website/computers/computers_main/config.xml");
print Dumper($data);

it gives me following error "File does not exist: http://website/computers/computers_main/config.xml at test.pl line 12"

How do I parse multiple xml files from the webpage? i have to grab multiple xml form the websites and parse it. can someone please help me with this?

like image 212
Maxyie Avatar asked Dec 13 '25 15:12

Maxyie


1 Answers

Read the documentation for XML::Simple. Notice that the XMLin method can take a file handle, a string, and even an IO::Handle object. What it can't take is a URL via HTTP.

Use the Perl module LWP::Simple to fetch the XML file you need and pass that through to XMLin.

You'll have to download and install LWP::Simple via using cpan, as you did before for XML::Simple.

like image 118
David W. Avatar answered Dec 15 '25 18:12

David W.