X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=videosite%2FYouTubeGrabber.pm;h=006ec17b1366cbe568a9b75a3dece8e8afbf2ae3;hb=89b8c37caad7b96532e77592e82ff1585991bb9a;hp=2cb55c1622128e6b51d72d3d120af9401278ee77;hpb=b0f58504e0f59d7d607d4ef7c06495180f047311;p=videosite.git diff --git a/videosite/YouTubeGrabber.pm b/videosite/YouTubeGrabber.pm index 2cb55c1..006ec17 100644 --- a/videosite/YouTubeGrabber.pm +++ b/videosite/YouTubeGrabber.pm @@ -73,14 +73,18 @@ sub _parse { if ('meta' eq $e->[0]) { if ('title' eq $e->[1]->{'name'}) { $metadata->{'TITLE'} = $e->[1]->{'content'}; + $self->debug('Title found: %s', $metadata->{'TITLE'}); } } } # Look for the download URL foreach $e (@text) { - if ($e->[0] =~ m|/watch_fullscreen\?(.*)\&fs|) { - $metadata->{'DLURL'} = 'http://www.youtube.com/get_video.php?' . $1; + if ($e->[0] =~ m|/watch_fullscreen\?(.+)\x27|) { + my %args = map { my @a = split(/=/); ($a[0], $a[1]) } split(/&/, $1); + $metadata->{'DLURL'} = sprintf('http://www.youtube.com/get_video.php?video_id=%s&t=%s', + $metadata->{'ID'}, $args{'t'}); + $self->debug('URL found: %s', $metadata->{'DLURL'}); } }