通过GetElementsByTagName从响应xml中检索值

时间:2013-09-10 05:08:13

标签: xml perl

  Getting the  linkedin user profile

     my $profile_xml = $li->request(
                       request_url         => 'http://api.linkedin.com/v1/people/~:(id,first-name,last-name,positions,industry,distance)',
                       access_token        => $access_token->{token},
                       access_token_secret => $access_token->{secret},

);

我得到了结果,但我想分别获取id,first-name,last-name。如何使用GetElementByTheTagName来检索值。

2 个答案:

答案 0 :(得分:0)

如果您能够像这样管理xml内容:

 $str = '<id>bYdSs9C</id><first-name>Jack</first-name> <last-name>Rudloph</last-name>';

我们可以用它来获取字段

while ($str =~ /<.*?>(.*?)<\/.*?>/g) {
        print $1, "\n";
}

答案 1 :(得分:0)

这里我展示了如何从响应中收到的xml解析链接的配置文件值,而不是GetElementbyTheTagname。

  my $parser = XML::Parser->new( Style => 'Tree' );
  my $tree   = $parser->parse( $profile_xml );
  print Dumper( $tree );

  my $UID = $tree->[1]->[4]->[2],"\n";
  print "User ID:$UID";
  print"</br>";

这是我们解析收到的响应值的方法。