X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=videosite%2FDailyMotionGrabber.pm;h=5e4f10ed1092b075821b229a53b68ce71e48136e;hb=bd9a8a86176b546d3336587a8f28f9c25299f5f6;hp=12c76a0aae0aca9ba5bf4044f23d4db7e5563d08;hpb=2d702fc2114f4e3da947d138a84b3a6aef28308c;p=videosite.git diff --git a/videosite/DailyMotionGrabber.pm b/videosite/DailyMotionGrabber.pm index 12c76a0..5e4f10e 100644 --- a/videosite/DailyMotionGrabber.pm +++ b/videosite/DailyMotionGrabber.pm @@ -1,3 +1,8 @@ +# Grabber for dailymotion.com +# +# (c) 2007 by Ralf Ertzinger +# licensed under GNU GPL v2 + package DailyMotionGrabber; use GrabberBase; @@ -18,6 +23,8 @@ sub new { bless($self, $class); + $self->_prepare_parameters(); + return $self; } @@ -38,7 +45,7 @@ sub _parse { $metadata->{'URL'} = $url; $metadata->{'ID'} = $2; $metadata->{'TYPE'} = 'video'; - $metadata->{'SOURCE'} = 'dailymotion'; + $metadata->{'SOURCE'} = $self->{'NAME'}; $metadata->{'TITLE'} = undef; $metadata->{'DLURL'} = undef; @@ -58,14 +65,19 @@ sub _parse { if ('meta' eq $e->[0]) { if ('title' eq $e->[1]->{'name'}) { $metadata->{'TITLE'} = $e->[1]->{'content'}; + $metadata->{'TITLE'} =~ s/^Dailymotion\s*:\s*//; } } } # Look for the download URL foreach $e (@text) { - if ($e->[0] =~ m|\.add_variable("url", "([^\"]+)")|) { + if ($e->[0] =~ m|\.addVariable\("video", "([^\"]+)"|) { $metadata->{'DLURL'} = $1; + $metadata->{'DLURL'} =~ s/%(..)/chr(hex($1))/ge; + $metadata->{'DLURL'} =~ s/\@\@spark.*//g; + $metadata->{'DLURL'} = 'http://www.dailymotion.com' . $metadata->{'DLURL'}; + } }