Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Grabbing XML from PerlMonks

by patgas (Friar)
on Sep 08, 2001 at 00:42 UTC ( [id://111012]=perlquestion: print w/replies, xml ) Need Help??

patgas has asked for the wisdom of the Perl Monks concerning the following question:

I was putting together a little code to grab the XML from User Nodes Info XML Generator, and I only seem to be getting a newline back from that node. I've tried substituting Newest Nodes XML Generator, which works, and Node Query XML Generator, which doesn't. I'm completely stumped. Can anyone offer me a little advice?

#!/usr/bin/perl -w use strict; use HTTP::Cookies; use LWP::UserAgent; use URI::URL; my $user = 'USER_NAME_HERE'; my $password = 'PASSWORD_HERE'; my $agent = new LWP::UserAgent(); my $cookie = new HTTP::Cookies( file => 'cookies.dat', autosave => 1 ); $agent->cookie_jar( $cookie ); my $url = new URI::URL 'http://perlmonks.org/index.pl'; $url->query_form( op => 'login', node_id => '109', lastnode_id => '131', user => $user, passwd => $password ); my $request = new HTTP::Request 'GET', $url->as_string(); my $result = $agent->request( $request ); die "Error logging in: $result->code $result->message" if ( !$result->is_success ); $url = new URI::URL 'http://perlmonks.org/index.pl'; $url->query_form( node => "User Nodes Info XML Generator" ); $request = new HTTP::Request 'GET', $url->as_string(); $result = $agent->request( $request ); die "Error receiving results: $result->code $result->message" if ( !$result->is_success ); print '->', $result->content, '<-';

"We're experiencing some Godzilla-related turbulence..."

Replies are listed 'Best First'.
Re: Grabbing XML from PerlMonks
by chromatic (Archbishop) on Sep 08, 2001 at 02:59 UTC
    LWP::UserAgent doesn't appear to set a cookie without a FQDN. Unfortunately, perlmonks.org isn't fully qualified. Use www.perlmonks.org or perlmonks.org. with the trailing dot. (If you look at HTTP::Cookies::add_cookie_header(), you'll see that it expects there to be two dots in the domain name.)

    Adding the trailing dot fixed it on my machine.

      I had gotten as far as realizing that the cookie wasn't being set, and I had started looking at HTTP::Cookies before I left work, but I didn't catch this. That fixed it perfectly, thanks!

      "We're experiencing some Godzilla-related turbulence..."

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (None)
    As of 2024-04-25 02:05 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      No recent polls found