[Devel] r395 - scripts

svn at agendadulibre.org svn at agendadulibre.org
Lun 29 Sep 09:58:29 CEST 2008


Author: thomas
Date: Mon Sep 29 09:58:29 2008
New Revision: 395

Log:

 * extract-gulls.py:

  - Toutes les chaînes de lugname2city sont maintenant des chaînes Unicode.

  - À la place de re.escape(), on fait l'escaping des guillemets
    simples à la main, car re.escape() échappe tous les caractères
    non-alphanumériques, y compris les caractères accentués, et c'est
    pas bien.



Modified:
   scripts/extract-gulls.py

Modified: scripts/extract-gulls.py
==============================================================================
--- scripts/extract-gulls.py	(original)
+++ scripts/extract-gulls.py	Mon Sep 29 09:58:29 2008
@@ -46,103 +46,101 @@
 '971' : 23, '972' : 25, '973' : 24, '974' : 26 }
 
 lugname2city = {
-    'Linux Alpes': 'Digne',
-    'Toulibre': 'Toulouse',
-    'CULTe'   : 'Ramonville-Saint-Agne',
-    'Linux-Nantes': 'Nantes',
-    'GULLIVER': 'Rennes',
-    'Linux Azur': 'Antibes',
-    'ARU2L': 'Rodez',
-    'Sequanux': 'Besançon',
-    'ABUL': 'Bordeaux',
-    'Giroll': 'Bordeaux',
-    'Association pour le Logiciel Libre': 'Montpellier',
-    'ACTUX': 'Rennes',
-    'Allibis': 'Biscarosse',
-    'CLX' : 'Lille',
-    'Chtinux' : 'Lille',
-    'gullUTC': 'Compiègne',
-    'LinuxArverne': 'Clermont-Ferrand',
-    'Euskalug': 'Biarritz',
-    'RotomaLUG': 'Rouen',
-    'PARINUX': 'Paris',
-    'Club Lolut': 'Belfort',
-    'LUG68': 'Mulhouse',
-    'PauLLA': 'Pau',
-    'LOLICA': 'Reims',
-    'G3L': 'Valence',
-    'ILARD': 'Charleville-Mézières',
-    'Mets tes chaussettes': 'Chauny',
-    'ADELLA': 'Carcasonne',
-    'AXUL': 'Aix-en-Provence',
-    'CIEL (Ciotaden et     Linux)': 'La Ciotat',
-    'PLUG': 'Marseille',
-    'CALVIX': 'Caen',
-    'D-Lug': 'Douvres',
-    'Logiciel     libre Linux': 'Cognac',
-    'LinAC': 'Angoulême',
-    'ROCHELUG': 'La Rochelle',
-    'Berryx': 'Bourges',
-    'COAGUL': 'Dijon',
-    'Ubuntu Dijon': 'Dijon',
-    'BreizhTux': 'Saint-Brieuc',
-    'P:L:O:U:G': 'Ploubazlanec',
-    'GMULL': 'Mareuil',
-    u'Montélimar-tilc': 'Montélimar',
-    'Eurix': 'Evreux',
-    'Finix': 'Brest',
-    'Linux Quimper': 'Quimper',
-    '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': 'Grenoble',
-    'GUILDE': 'Grenoble',
-    'Landinux': 'Labrit',
-    'Solix': 'Romorantin',
-    'ALOLISE': 'Saint-Étienne',
-    'CERIO': 'Orvault',
-    'N at utile': 'Saint-Nazaire',
-    'LiLoLiPo': 'Pont-Château',
-    'Cenabumix': 'Orléans',
-    'Masclat Linux     Users Group': 'Masclat',
-    'AGeNUx': 'Agen',
-    'Sparnatux': 'Épernay',
-    'MayLUG': 'Loiron',
-    'Mirabellug': 'Nancy',
-    'Rhizomes': 'Vannes',
-    'Tuxbihan': 'Ploemeur',
-    'GRAOULUG': 'Metz',
-    'Mozenix': 'Sarreguemines',
-    'LinuxCambresis': 'Proville',
-    'Val-Libre': 'Valenciennes',
-    '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',
+    u'Linux Alpes': u'Digne',
+    u'Toulibre': u'Toulouse',
+    u'CULTe'   : u'Ramonville-Saint-Agne',
+    u'Linux-Nantes': u'Nantes',
+    u'GULLIVER': u'Rennes',
+    u'Linux Azur': u'Antibes',
+    u'ARU2L': u'Rodez',
+    u'Sequanux': u'Besançon',
+    u'ABUL': u'Bordeaux',
+    u'Giroll': u'Bordeaux',
+    u'Association pour le Logiciel Libre': u'Montpellier',
+    u'ACTUX': u'Rennes',
+    u'Allibis': u'Biscarosse',
+    u'CLX' : u'Lille',
+    u'Chtinux' : u'Lille',
+    u'gullUTC': u'Compiègne',
+    u'LinuxArverne': u'Clermont-Ferrand',
+    u'Euskalug': u'Biarritz',
+    u'RotomaLUG': u'Rouen',
+    u'PARINUX': u'Paris',
+    u'Club Lolut': u'Belfort',
+    u'LUG68': u'Mulhouse',
+    u'PauLLA': u'Pau',
+    u'LOLICA': u'Reims',
+    u'G3L': u'Valence',
+    u'ILARD': u'Charleville-Mézières',
+    u'Mets tes chaussettes': u'Chauny',
+    u'ADELLA': u'Carcasonne',
+    u'AXUL': u'Aix-en-Provence',
+    u'PLUG': u'Marseille',
+    u'CALVIX': u'Caen',
+    u'D-Lug': u'Douvres',
+    u'Logiciel     libre Linux': u'Cognac',
+    u'LinAC': u'Angoulême',
+    u'ROCHELUG': u'La Rochelle',
+    u'Berryx': u'Bourges',
+    u'COAGUL': u'Dijon',
+    u'Ubuntu Dijon': u'Dijon',
+    u'BreizhTux': u'Saint-Brieuc',
+    u'P:L:O:U:G': u'Ploubazlanec',
+    u'GMULL': u'Mareuil',
+    u'Montélimar-tilc': u'Montélimar',
+    u'Eurix': u'Evreux',
+    u'Finix': u'Brest',
+    u'Linux Quimper': u'Quimper',
+    u'Libellug': u'Alès',
+    u'Libres-Ailé(e)s': u'Arrigas',
+    u'GNUsquetaires': u'Auch',
+    u'TROLL': u'Bains-sur-Oust',
+    u'LUG Touraine': u'Tours',
+    u'Club GNU/Linux ENSIMAG': u'Grenoble',
+    u'GUILDE': u'Grenoble',
+    u'Landinux': u'Labrit',
+    u'Solix': u'Romorantin',
+    u'ALOLISE': u'Saint-Étienne',
+    u'CERIO': u'Orvault',
+    u'N at utile': u'Saint-Nazaire',
+    u'LiLoLiPo': u'Pont-Château',
+    u'Cenabumix': u'Orléans',
+    u'Masclat Linux Users Group': u'Masclat',
+    u'AGeNUx': u'Agen',
+    u'Sparnatux': u'Épernay',
+    u'MayLUG': u'Loiron',
+    u'Mirabellug': u'Nancy',
+    u'Rhizomes': u'Vannes',
+    u'Tuxbihan': u'Ploemeur',
+    u'GRAOULUG': u'Metz',
+    u'Mozenix': u'Sarreguemines',
+    u'LinuxCambresis': u'Proville',
+    u'Val-Libre': u'Valenciennes',
+    u'EPP-LUG': u'Amiens',
+    u'Root66': u"Saint-Cyr-l'École",
+    u'Alpinux': u'Chambéry',
+    u'Ornix': u'Alençon',
+    u'Oisux': u'Beauvais',
+    u'Argentix': u'Argentan',
+    u'GULLH': u'Le Havre',
+    u'LinuX Maine': u'Le Mans',
+    u'@rrobe': u'Saint-Germain-sur-Morin',
+    u'FERTILL': u'Ferté-sous-Jouarre',
+    u'ICAUNUX': u'Auxerre',
+    u'Linux-Tarn': u'Castres',
+    u'Liness': u'Évry',
+    u'AviGNU': u'Avignon',
+    u'CIEL': u'La Ciotat',
+    u'Logiciel libre Linux': u'Cognac',
+    u'Masclat Linux Users Group': u'Masclat',
+    u"L'annexe informatique": u'Perpignan',
+    u'Flammekueche Connection': u'Strasbourg',
+    u'ALDIL': u'Lyon',
+    u'CAGULL': u'Villefranche-sur-Saône',
+    u'GPL': u'Lyon',
+    u'AGU3L': u'Gruffy',
+    u'HERLUG': u'Noirmoutier',
+    u'Alternatives 87': u'Limoges',
     }
 
 class GULLParser(HTMLParser.HTMLParser):
@@ -210,8 +208,12 @@
                     city = ""
 
                 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).encode('utf-8'), self.currentLugLink)
+                      % (str(depts2region[str(self.currentDepartement)]),
+                         self.currentDepartement,
+                         city.replace("'", r"\'").encode('utf-8'),
+                         self.currentLugName.replace("'", r"\'").encode('utf-8'),
+                         self.currentLugLink)
+
             self.currentLugLink = None
             self.currentLugName = None
 


Plus d'informations sur la liste de diffusion Devel