]> gitweb.pimeys.fr Git - today.git/commitdiff
On généralise load_channels à un load de n'importe quel fichier de conf
authorVincent Le Gallic <legallic@crans.org>
Sat, 15 Feb 2014 23:59:15 +0000 (00:59 +0100)
committerVincent Le Gallic <legallic@crans.org>
Sat, 15 Feb 2014 23:59:15 +0000 (00:59 +0100)
Va servir pour les tumblrs par exemple

serverconfig.py
youtube.py

index d066764c6f35d8cfd40bfe132334cd750133c631..c607f1fcacc020715c8851580e60d3024c977347 100644 (file)
@@ -15,3 +15,16 @@ youtube_channels_file = "youtube_channels"
 
 #: Path du directory du module de gestion des quotes DTC
 dtc_path = "/home/vincent/scripts/dtc/"
+
+def load_file(filename):
+    """Récupère le contenu d'un fichier de conf tab-séparé."""
+    with open(filename) as f:
+        # On récupère toutes les lignes, mais sans leur \n
+        items = [l.strip("\n") for l in f.readlines()]
+        # On enlève les lignes vides et celles de commentaire
+        items = [l for l in items if not (l.startswith("#") or l.strip() == "")]
+        # On splite sur les tab
+        items = [l.split("\t") for l in items]
+        # Il peut y avoir plusieurs tabulations de suite, donc on enlève les chaînes vides
+        items = [[i for i in l if not i == ''] for l in items]
+    return items
index 1f30801263a4f805428461fa940638ee3cad853d..dfee99527ca9aa8ed2c43ff38a5920b4ae6cf200 100644 (file)
@@ -37,18 +37,6 @@ def parse_youtube(username, regexp=None, length=False):
         titles = len(titles)
     return titles
 
-def load_channels():
-    """Récupère les chaînes à surveiller à partir du fichier de conf."""
-    with open(serverconfig.youtube_channels_file) as f:
-        channels = [l.strip("\n") for l in f.readlines()]
-        channels = [l for l in channels if not (l.startswith("#") or l.strip() == "")]
-        channels = [l.split("\t") for l in channels]
-        # Il peut y avoir plusieurs tabulations de suite, donc on enlève les chaînes vides
-        channels = [[i for i in l if not i == ''] for l in channels]
-        # [id, username, regexp]
-        # channels = [{"id" : l[0], "username" : l[1], "regexp" : l[2]} for l in channels]
-    return channels
-
 
 def get_parser(username, regexp=None):
     """ Renvoie un parseur de chaîne youtube prêt à être appelé """
@@ -56,5 +44,5 @@ def get_parser(username, regexp=None):
         return parse_youtube(username, regexp, length=True)
     return local_parser
 
-channels = load_channels()
+channels = serverconfig.load_file(serverconfig.youtube_channels_file)
 functions = {id : get_parser(username, regexp) for (id, username, regexp) in channels}