[Devel] r392 - scripts

svn at agendadulibre.org svn at agendadulibre.org
Dim 28 Sep 21:35:40 CEST 2008


Author: thomas
Date: Sun Sep 28 21:35:38 2008
New Revision: 392

Log:
Conversion UTF-8.
Plus de GULLs listés.



Modified:
   scripts/extract-gulls.py

Modified: scripts/extract-gulls.py
==============================================================================
--- scripts/extract-gulls.py	(original)
+++ scripts/extract-gulls.py	Sun Sep 28 21:35:38 2008
@@ -1,5 +1,5 @@
 #!/usr/bin/python
-# -*- coding: iso-8859-1 -*-
+# -*- coding: utf-8 -*-
 
 # Copyright (C) 2005 Thomas Petazzoni <thomas.petazzoni at enix.org>
 #
@@ -53,15 +53,15 @@
     'GULLIVER': 'Rennes',
     'Linux Azur': 'Antibes',
     'ARU2L': 'Rodez',
-    'Sequanux': 'Besançon',
+    'Sequanux': 'Besançon',
     'ABUL': 'Bordeaux',
     'Giroll': 'Bordeaux',
     'Association pour le Logiciel Libre': 'Montpellier',
     'ACTUX': 'Rennes',
     'Allibis': 'Biscarosse',
     'CLX' : 'Lille',
-    'Chtinux (anciennement Campux)' : 'Lille',
-    'gullUTC': 'Compiègne',
+    'Chtinux' : 'Lille',
+    'gullUTC': 'Compiègne',
     'LinuxArverne': 'Clermont-Ferrand',
     'Euskalug': 'Biarritz',
     'RotomaLUG': 'Rouen',
@@ -71,7 +71,7 @@
     'PauLLA': 'Pau',
     'LOLICA': 'Reims',
     'G3L': 'Valence',
-    'ILARD': 'Charleville-Mézières',
+    'ILARD': 'Charleville-Mézières',
     'Mets tes       chaussettes': 'Chauny',
     'ADELLA': 'Carcasonne',
     'AXUL': 'Aix-en-Provence',
@@ -80,36 +80,36 @@
     'CALVIX': 'Caen',
     'D-Lug': 'Douvres',
     'Logiciel     libre Linux': 'Cognac',
-    'LinAC': 'Angoulême',
+    'LinAC': 'Angoulême',
     'ROCHELUG': 'La Rochelle',
     'Berryx': 'Bourges',
     'COAGUL': 'Dijon',
-    'Ubuntu       Dijon': 'Dijon',
+    'Ubuntu Dijon': 'Dijon',
     'BreizhTux': 'Saint-Brieuc',
     'P:L:O:U:G': 'Ploubazlanec',
     'GMULL': 'Mareuil',
-    'Montélimar-tilc': 'Montélimard',
+    u'Montélimar-tilc': 'Montélimar',
     'Eurix': 'Evreux',
     'Finix': 'Brest',
     'Linux Quimper': 'Quimper',
-    'Libellug': 'Alès',
-    'Libres-Ailé(e)s': 'Arrigas',
+    'Libellug': 'Alès',
+    u'Libres-Ailé(e)s': 'Arrigas',
     'GNUsquetaires': 'Auch',
     'Association pour le       Logiciel Libre': 'Montpellier',
     'TROLL': 'Bains-sur-Oust',
     'LUG Touraine': 'Tours',
-    'Club GNU/Linux ENSIMAG /       Département Télécommunications': 'Grenoble',
+    'Club GNU/Linux ENSIMAG': 'Grenoble',
     'GUILDE': 'Grenoble',
     'Landinux': 'Labrit',
     'Solix': 'Romorantin',
-    'ALOLISE': 'Saint-Étienne',
+    'ALOLISE': 'Saint-Étienne',
     'CERIO': 'Orvault',
     'N at utile': 'Saint-Nazaire',
-    'LiLoLiPo': 'Pont-Château',
-    'Cenabumix': 'Orléans',
+    'LiLoLiPo': 'Pont-Château',
+    'Cenabumix': 'Orléans',
     'Masclat Linux     Users Group': 'Masclat',
     'AGeNUx': 'Agen',
-    'Sparnatux': 'Épernay',
+    'Sparnatux': 'Épernay',
     'MayLUG': 'Loiron',
     'Mirabellug': 'Nancy',
     'Rhizomes': 'Vannes',
@@ -118,7 +118,31 @@
     'Mozenix': 'Sarreguemines',
     'LinuxCambresis': 'Proville',
     'Val-Libre': 'Valenciennes',
-    'EPP-LUG': 'Amiens'
+    'EPP-LUG': 'Amiens',
+    'Root66': "Saint-Cyr-l'École",
+    'Alpinux': 'Chambéry',
+    'Ornix': 'Alençon',
+    'Oisux': 'Beauvais',
+    'Argentix': 'Argentan',
+    'GULLH': 'Le Havre',
+    'LinuX Maine': 'Le Mans',
+    '@rrobe': 'Saint-Germain-sur-Morin',
+    'FERTILL': 'Ferté-sous-Jouarre',
+    'ICAUNUX': 'Auxerre',
+    'Linux-Tarn': 'Castres',
+    'Liness': 'Évry',
+    'AviGNU': 'Avignon',
+    'CIEL': 'La Ciotat',
+    'Logiciel libre Linux': 'Cognac',
+    'Masclat Linux Users Group': 'Masclat',
+    "L'annexe informatique": 'Perpignan',
+    'Flammekueche Connection': 'Strasbourg',
+    'ALDIL': 'Lyon',
+    'CAGULL': 'Villefranche-sur-Saône',
+    'GPL': 'Lyon',
+    'AGU3L': 'Gruffy',
+    'HERLUG': 'Noirmoutier',
+    'Alternatives 87': 'Limoges',
     }
 
 class GULLParser(HTMLParser.HTMLParser):
@@ -187,7 +211,7 @@
 
                 print "insert into lugs (region, department, city, name, url) values ('%s', '%s', '%s', '%s', '%s');" \
                       % (str(depts2region[str(self.currentDepartement)]), self.currentDepartement, city,
-                         re.escape(self.currentLugName), self.currentLugLink)
+                         re.escape(self.currentLugName).encode('utf-8'), self.currentLugLink)
             self.currentLugLink = None
             self.currentLugName = None
 
@@ -201,8 +225,11 @@
 
         if self.inLug and self.inLugLink and self.currentLugName is None:
             # Hack a little ;-)
+            data = unicode(data, "iso-8859-15")
             data = data.replace("\n", " ")
-            data = data.replace("/ Département Télécommunications", "")
+            data = re.sub(" +", " ", data)
+            data = data.strip()
+            data = data.replace(u" / Département Télécommunications", "")
             data = data.replace(" (ou GIF)", "")
             data = re.sub(" \(.*LAGRANGE\)", "", data)
             data = data.replace(" (Ciotaden et Linux)", "")


Plus d'informations sur la liste de diffusion Devel