Skip to content
Extraits de code Groupes Projets
Valider 52e305cb rédigé par Alexandre Morignot's avatar Alexandre Morignot
Parcourir les fichiers

add support for Dailymotion

parent a66b5e4b
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
package dailymotion;
use Inline Python => 'DATA';
sub get {
my $id = shift;
my $content = weboob_get($id);
# weboob returns duration in h:mm:s format
my ($h, $m, $s) = ($content->{'duration'} =~ /(.):(..):(..)/);
$content->{'duration'} = $h * 3600 + $m * 60 + $s;
return %{$content};
}
1;
__DATA__
__Python__
from weboob.core import Weboob
from weboob.capabilities.video import CapVideo
def weboob_get(id):
w = Weboob()
backends = w.load_backends(CapVideo)
video = backends['dailymotion'].get_video(id)
return {'title': video.title,
'author': video.author,
'url': video.url,
'duration': video.duration}
......@@ -5,6 +5,7 @@ use youtube;
use soundcloud;
use mixcloud;
use zippy;
use dailymotion;
use lib "$FindBin::Bin/lib/";
use utils::print;
......@@ -42,6 +43,13 @@ sub parse {
eval { %content = zippy::get($url) };
$content{'site'} = 'zippyshare';
}
elsif ($msg =~ m#(?:^|[^!])https?://www.dailymotion.com/video/([a-z0-9]+)#) {
eval { %content = dailymotion::get($1) };
print $1."\n";
$content{'site'} = 'dailymotion';
$content{'url'} = 'https://www.dailymotion.com/video/' . $1;
}
# something goes wrong ?
if ($@) {
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter