Your skill will accomplish what the force of many cannot |
|
PerlMonks |
URI::Fetch and LWP::UserAgent strangenessby szabgab (Priest) |
on Dec 30, 2012 at 19:20 UTC ( [id://1010955]=perlquestion: print w/replies, xml ) | Need Help?? |
szabgab has asked for the wisdom of the Perl Monks concerning the following question:
In the following example I keep getting "1: Forbidden" as output, but I don't see what is the real difference between the two calls. Can anyone see it? UIR::Fetch is at 0.09 and
LWP::UserAgent is 6.04.
If I change the $source to be http://code.foo.no/feed then I keep getting "1: Bad Behavior". Very strange. Other URLs I tried work well. And just to explain why is this important, I am using XML::Feed to fetch and parse RSS and Atom feeds, and XML::Feed uses the code as it is written in the problematic case. So currently these two feeds keep giving me error. UpdateI found it. I think. Earlier, when I stepped through the code with the debugger I missed it, but now I saw the difference. The LWP::UserAgent created by URI::Fetch identifies itself as "URI::Fetch/0.09" while the default UserAgent I passed to the fetch method had the default identification string 'libwww-perl/6.04'.Apparently those two servers refuse to serve to the well known Perl user agent. Probably in an attempt to fend off certain bots. So I have to change the UserAgent in XML::Feed.
Back to
Seekers of Perl Wisdom
|
|