[ok] Choisir un film aléatoirement dans la liste des films\r
[ok] Tout dérouler ou enrouler les films actuellement affichées\r
[ok] problème avec les & dans le nom du fichier, donne ca dans la base xml -> "&" au lieu de "&"\r
-\r
-* Chargement du xml trop lent !\r
-* Ajouter des options au programme :\r
+[ok] Pomper les images (affichettes)\r
+[ok] Ajouter des options au programme :\r
- Mettre à jour un film en donnant son ID en paramètre\r
- Donner en paramètre un dossier pour les images\r
- Re synchroniser toutes les informations des films (à partir du lien mémorisé dans les films)\r
-* Pomper les images (affichettes)\r
+ \r
+* Chargement du xml trop lent ! : dans '/src/films.rb' : 'def chargerFilms'\r
* Parser les langues et sous-titres et les ajouter dans l'xml\r
-* Parser les langues et sous-titres et les ajouter dans l'xml
\ No newline at end of file
+* remplacer les scripts bats par des scripts compatibles POSIX (il faudra alors utiliser cygwin sous windows)\r
+* pouvoir supporter plusieurs 'module' de pompage simultanément et mémoriser plusieurs url (une par module) par film
\ No newline at end of file
# p1 : l'id de allocine\r
def loadURL(url, film)\r
raise\r
- end \r
+ end\r
\r
# appelé lorsque le module n'est plus utile (permet de libérer des ressource par exemple).\r
def finish\r
# UTF-8\r
$KCODE = 'u'\r
\r
-#constantes\r
+# les extensions des fichiers considérés comme des films\r
FILMS_EXTENSIONS = ['avi', 'mkv', 'rmvb', 'ogm', 'divx']\r
\r
-# la structure d'un fichier (pas utilisé)\r
+# la structure d'un fichier\r
+# actuellement pas utilisé, il était prévu au départ de renommer automatiquement les fichiers suivant ce format\r
FICHIER_PATTERN = "<title> [<codec>] [<lang-audio>] [<lang-st>] [<team>]"\r
\r
# charge les informations depuis le web ?\r
LOAD_DATA = true \r
\r
-#le nombre de connexions simultanées sur le site de films\r
+# le nombre de connexions simultanées sur le site de films\r
NB_CONN_MAX = 20\r
\r
# une aide pour l'utilisateur\r
}\r
end\r
\r
- # Lit un repertoire de manière recursive et va chercher les informations concernant le film sur le net\r
+ # Lit un repertoire de manière recursive et va chercher les informations concernant le film sur le net.\r
def pomper(r)\r
@repBase = r\r
repPrecedant = Dir::getwd\r
pomperR(fichier) \r
else\r
\r
- #CGI::escapeHTML(\r
fichier = Iconv.iconv("UTF-8", "ISO-8859-1", fichier)[0]\r
\r
# véfication de l'extension\r
Thread::start{\r
begin \r
film = Film::new(fichier, @modClasse::new)\r
- @mutexId.synchronize {\r
+ @mutexId.synchronize{\r
film.id = getNewId # on lui donne un nouvel ID\r
}\r
- film.loadData # on charge ses données\r
\r
- @mutexAjout.synchronize {\r
+ film.loadData # chargement de ses données\r
+ \r
+ @mutexAjout.synchronize{\r
ajouterFilm(film)\r
- } \r
+ }\r
rescue Exception => e\r
puts e.message\r
puts e.backtrace\r
end\r
end\r
\r
-# un module d'importation pour le site "www.allocine.fr"\r
+# Un module d'importation pour le site "www.allocine.fr".\r
class Allocine < Basemodule\r
\r
def createConnexion\r
@connexion = nil\r
end\r
\r
- # voir le parent.\r
+ # Voir le parent.\r
def rechercherFilm(titre)\r
createConnexion\r
\r
loadPath("/film/fichefilm_gen_cfilm=#{id}.html", film)\r
end\r
\r
+ # Voir le parent.\r
def loadURL(url, film)\r
loadPath(URI.parse(url).path, film)\r
end\r
\r
- # Voir le parent.\r
def loadPath(path, film)\r
createConnexion\r
\r
\r
puts "Pompage de #{film.titre} (#{film.fichiers[0]}) ..."\r
\r
- #convertit le code latin-1 en UTF8 \r
+ # convertit le code latin-1 en UTF8 \r
html = Iconv.iconv("UTF-8", "ISO-8859-1", html)[0]\r
\r
+ # pompage de l'image dans un thread séparé\r
if take?("image") && ($force || !film.possedeImage?)\r
/<img src="(.*?)" border="0" alt="" class="affichette" \/>/ =~ html\r
unless $1.nil?\r
end\r
\r
fermerConnexion\r
- end \r
+ end\r
\r
def finish\r
+ # on attend que tous les threads de pompage d'image aient terminé\r
@threadImage.join if defined? @threadImage\r
end\r
end
\ No newline at end of file
# coding: utf-8\r
# YopYop est un super programme permettant de :\r
-# - Parcourir des dossiers recursivement à la recherche de fichier video\r
-# - Parser les fichiers afin d'en retirer les infos suivantes :\r
+# - Parcourir des dossiers recursivement à la recherche de fichiers videos\r
+# - Parser les fichiers afin d'en retirer les infos suivantes : (pas encore implémenté)\r
# o le codec video\r
# o le codec son\r
# o les pistes audio\r
when '-d'\r
$repFilms = a\r
when '-m'\r
- mod = a\r
+ mod = a.capitalize\r
when '-a'\r
$repAffichette = a\r
when '-u'\r