The only place I see "getAttribute" is in this sub:
sub get_data { my($element, $attribute, $index) = @_; if ($index){$index=1;} my $nodeset = $xp->find("//yweather:$element"); my $node = $nodeset->get_node($index); return $node->getAttribute($attribute); }
The error message means that $node is undef at this point. That means that undef was returned from $nodeset->get_node($index). I see a lot of calls to this sub, but in every case, there's no $index passed. According to the code that's there, that makes $index undef also. That's what I can see without running it.
My guess is that the bit that says "if ($index){$index=1;}" should actually say "if (!$index){$index=1;}" (note the exclamation point). That's just a guess.
To really find out what's going on, I'd recommend running this under the Perl debugger. See perldebug for the gory details.
In reply to Re: Can't call method "getAttribute"
by kyle
in thread Can't call method "getAttribute"
by Squeakers
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |