in reply to Re: problem with xml::xpath.pm
in thread problem with xml::xpath.pm

Hi, i readed one question in perlmonks, that question is extract some part of xml data and create word document. for that question they suggested xml::xpath is best so i written like that.

#!/usr/bin/perl use warnings; use strict; use XML::XPath; # use XML::XPath::XMLParser; $file="data.xml"; my $xp = XML::XPath->new(filename => $file); open(INFO3, "+>$file.doc"); # print INFO3 "Perl Xpath\n\n"; print INFO3 "Data INFORMATION:\n\n"; foreach my $data ($xp->find('data')->get_nodelist){ print INFO3 "number:"; print INFO3 $data->find('info')->string_value."\n"; print INFO3 "information:"; } print "Converted XML file into WORD file\n\n"; print $file." WORD document generated"; close(INFO3);
but this is not excuted ,it gives errors like as above said.i dnt know what i sholud do now ,i tried to install and i placed xpath.pm and xmlparser.pm in the perl library but still problem like "can't find xml/xpath/xmlparser.pm in strawberry/per/lib".

Replies are listed 'Best First'.
Re^3: problem with xml::xpath.pm
by runrig (Abbot) on Oct 14, 2011 at 15:36 UTC
    i readed one question in perlmonks, that question is extract some part of xml data and create word document. for that question they suggested xml::xpath is best

    Well, perhaps "they" were wrong (where is this question?). XML::LibXML should already be installed, so read some other questions and answers (and maybe the documentation), and just use XML::LibXML

      I googled "Can't locate XML/XPath.pm" and found this so I tried to rip/replace XML::XPath with XML::LibXML and poof* H:\programmer\perl>perl find-hostname.pl Can't locate object method "find" via package "XML::LibXML" at find-hostname.pl line 9.
      use XML::LibXML; my $file = 'y:\tmp\open\HP1.xml'; my $xp = XML::LibXML->new(filename=>$file); # An XML::XPath nodeset is an object which contains the result of # smacking an XML document with an XPath expression; we'll do just # this, and then query the nodeset to see what we get. my $nodeset = $xp->find('//IPHostname');
      so I don't think the 2 libraries are equiv. :)
        I did not say that the APIs were exactly the same. I did suggest reading some documentation. Googling for some examples might be useful also.
Re^3: problem with xml::xpath.pm
by Anonymous Monk on Oct 14, 2011 at 07:21 UTC

    it gives errors like as above said.i dnt know what i sholud do now ,i tried to insta....

    :) Yes you do, you should install the module by using cpan or running Makefile.PL as explained in Re^3: problem with xml::xpath.pm