[San-Diego-pm] Photo download problem
Chris Grau
chris at chrisgrau.com
Mon Aug 23 07:14:27 PDT 2010
On Sun, Aug 22, 2010 at 04:37:25PM -0700, Joel Fentin wrote:
> Chris Grau wrote:
>>> http://fentin.com/cgi-bin/temp.pl
>> [snip]
>>
>>> Wikimedia permits the downloading of photos and hotlinking. Yet I
>>> can't get it to do anything with perl. The two URLs above (same photo
>>> in each case) work in the FF browser. The third example is from my own
>>> website as test. It downloads content.
>>
>> I seem to have the opposite results when running your test code. I
>> receive an error attempting to download wikimedia's content (trimmed):
>>
>> $ HEAD http://upload.wikimedia.org/wikipedia/commons/1/19/PacificSilverFir_7645.jpg
>> 403 Forbidden
>> X-Squid-Error: ERR_ACCESS_DENIED 0
>>
>> They must be blocking LWP's user agent, because wget works fine. I
>> didn't bother testing a modified user agent string in LWP.
>
> Are you saying that it works fine in the browser because the browser
> has a different user agent?
Yes.
> And if so, are you saying that I have to spoof a user agent to get the
> photos?
Again, yes. This, for example, works:
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
$ua->agent( 'Wget/1.10.2' );
my $response = $ua->get(
'http://upload.wikimedia.org/wikipedia/commons/1/19/PacificSilverFir_7645.jpg'
);
if ( $response->is_success ) {
say $response->status_line;
say $response->content_type;
}
Resulting in:
200 OK
image/jpeg
More information about the San-Diego-pm
mailing list