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

PlayBot::sites::parser: strict & warnings

parent 1abb7c35
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
package PlayBot::sites::parser; package PlayBot::sites::parser;
use strict;
use warnings;
use PlayBot::sites::youtube; use PlayBot::sites::youtube;
use PlayBot::sites::soundcloud; use PlayBot::sites::soundcloud;
use PlayBot::sites::mixcloud; use PlayBot::sites::mixcloud;
...@@ -31,6 +34,10 @@ sub parse { ...@@ -31,6 +34,10 @@ sub parse {
elsif ($msg =~ m#(^|[^!])https?://soundcloud.com/([a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+)(?:\?.+)?#) { elsif ($msg =~ m#(^|[^!])https?://soundcloud.com/([a-zA-Z0-9_-]+/[a-zA-Z0-9_-]+)(?:\?.+)?#) {
my $url = 'https://www.soundcloud.com/'.$2; my $url = 'https://www.soundcloud.com/'.$2;
eval { %content = PlayBot::sites::soundcloud::get($url) }; eval { %content = PlayBot::sites::soundcloud::get($url) };
use Data::Dumper;
print Dumper(\%content);
$content{'site'} = 'soundcloud'; $content{'site'} = 'soundcloud';
} }
elsif ($msg =~ m#(^|[^!])https?://www.mixcloud.com/([a-zA-Z0-9-_]+/[a-zA-Z0-9-_]+)#) { elsif ($msg =~ m#(^|[^!])https?://www.mixcloud.com/([a-zA-Z0-9-_]+/[a-zA-Z0-9-_]+)#) {
...@@ -64,42 +71,37 @@ sub parse { ...@@ -64,42 +71,37 @@ sub parse {
# we assume it's a new content # we assume it's a new content
my $new = 1; my $new = 1;
if ($debug) { # insertion de la vidéo dans la bdd
$log->debug($content{'url'}); eval {
} my $sth = $dbh->prepare('
else { INSERT INTO playbot (type, url, sender, title, duration)
# insertion de la vidéo dans la bdd VALUES (?,?,?,?,?)
eval { ');
my $sth = $dbh->prepare(' $log->error("Couldn't prepare querie; aborting") unless (defined $sth);
INSERT INTO playbot (type, url, sender, title, duration)
VALUES (?,?,?,?,?) $sth->execute($content{'site'}, $content{'url'},
'); $content{'author'}, $content{'title'}, $content{'duration'});
$log->error("Couldn't prepare querie; aborting") unless (defined $sth); };
if ($@) {
$sth->execute($content{'site'}, $content{'url'}, # seems to be already present in database
$content{'author'}, $content{'title'}, $content{'duration'}); $new = 0;
};
if ($@) { my $sth = $dbh->prepare('
# seems to be already present in database UPDATE playbot playbot SET
$new = 0; sender = ?,
title = ?,
my $sth = $dbh->prepare(' duration = ?
UPDATE playbot playbot SET WHERE url = ?
sender = ?, ');
title = ?, $log->error("Couldn't prepare querie; aborting") unless (defined $sth);
duration = ?
WHERE url = ? $sth->execute(
'); $content{'author'},
$log->error("Couldn't prepare querie; aborting") unless (defined $sth); $content{'title'},
$content{'duration'},
$sth->execute( $content{'url'},
$content{'author'}, );
$content{'title'}, }
$content{'duration'},
$content{'url'},
);
}
}
# sélection de l'id de la vidéo insérée # sélection de l'id de la vidéo insérée
my $sth = $dbh->prepare('SELECT id FROM playbot WHERE url = ?'); my $sth = $dbh->prepare('SELECT id FROM playbot WHERE url = ?');
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter