X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=videosite%2FVimeoGrabber.pm;h=ba76cff9aff0032c82d0c6372429ff02a003249c;hb=8f82d425fa17990e24c78232e69b20f07e386ef5;hp=4371e532033d8b4dfe15a5c48e89568691b1a940;hpb=c6634af7d0de7dbd5e508ee21ce5a6f7ae002fa5;p=videosite.git diff --git a/videosite/VimeoGrabber.pm b/videosite/VimeoGrabber.pm index 4371e53..ba76cff 100644 --- a/videosite/VimeoGrabber.pm +++ b/videosite/VimeoGrabber.pm @@ -8,7 +8,7 @@ package videosite::VimeoGrabber; use videosite::GrabberBase; @ISA = qw(videosite::GrabberBase); -use LWP::Simple qw(!get); +use LWP::UserAgent; use XML::Simple; use Digest::MD5 qw(md5_hex); use Data::Dumper; @@ -41,6 +41,7 @@ sub _parse { my $dlpath; my $timestamp; my $hash; + my $ua = LWP::UserAgent->new(agent => 'Mozilla'); $url =~ m|$pattern|; $url = $1; @@ -53,11 +54,14 @@ sub _parse { $metadata->{'DLURL'} = undef; # Get the XML file containing the video metadata - unless(defined($content = LWP::Simple::get(sprintf('http://www.vimeo.com/moogaloop/load/clip:%s/local?context=default&context_id=undefined', $2)))) { + $content = $ua->get(sprintf('http://www.vimeo.com/moogaloop/load/clip:%s', $2)); + unless ($content->is_success()) { $self->error('Could not download XML metadata'); return undef; } + $content = $content->decoded_content(); + unless(defined($t = $p->XMLin($content, KeepRoot => 1))) { $self->error('Could not parse XML metadata'); return undef;