Revision: 5184 Author: wikipedian Date: 2008-04-06 22:08:15 +0000 (Sun, 06 Apr 2008)
Log Message: ----------- applied changes from patch [ 1931272 ] (translations)
Modified Paths: -------------- trunk/pywikipedia/interwiki.py
Modified: trunk/pywikipedia/interwiki.py =================================================================== --- trunk/pywikipedia/interwiki.py 2008-04-06 13:14:44 UTC (rev 5183) +++ trunk/pywikipedia/interwiki.py 2008-04-06 22:08:15 UTC (rev 5184) @@ -264,6 +264,32 @@ '&pagegenerators_help;': pagegenerators.parameterHelp }
+class XmlDumpLmoLinkPageGenerator: + """ + Generator which will yield Pages that might contain selflinks. + These pages will be retrieved from a local XML dump file + (cur table). + """ + def __init__(self, xmlFilename): + """ + Arguments: + * xmlFilename - The dump's path, either absolute or relative + """ + + self.xmlFilename = xmlFilename + + def __iter__(self): + import xmlreader + mysite = wikipedia.getSite() + dump = xmlreader.XmlDump(self.xmlFilename) + r = re.compile(r'\d') + for entry in dump.parse(): + if not r.search(entry.title): + selflinkR = re.compile(r'[[lmo:') + if selflinkR.search(entry.text): + yield wikipedia.Page(mysite, entry.title) + + class SaveError(wikipedia.Error): """ An attempt to save a page with changed interwiki has failed. @@ -282,14 +308,21 @@ msg = { 'af': (u'robot ', u'Bygevoeg', u'Verwyder', u'Verander'), 'ar': (u'روبوت ', u'إضافة', u'إزالة', u'تعديل'), + 'az': (u'Bot redaktəsi ', u'əlavə edilir', u'çıxardılır', u'dəyişdirilir'), 'bat-smg': (u'robots ', u'Pridedama', u'Trėnama', u'Keitama'), + 'bcl': (u'robot ', u'minadugang', u'minahali', u'minamodifikar'), 'be': (u'робат ', u'Дадаем', u'Выдаляем', u'Мяняем'), 'be-x-old': (u'робат ', u'дадаў', u'выдаліў', u'зьмяніў'), 'bg': (u'Робот ', u'Добавяне', u'Изтриване', u'Промяна'), 'bn': (u'রোবট ', u'যোগ করছে', u'মুছে ফেলছে', u'পরিবর্তন সাধন করছে'), + 'bpy': (u'রোবট ', u'তিলকরের', u'থেইকরের', u'বদালার'), 'br': (u'Robot ', u'ouzhpennet', u'tennet', u'kemmet'), 'ca': (u'Robot ', u'afegeix', u'esborra', u'modifica'), + 'ceb': (u'robot ', u'Gidugang', u'Gitangtang', u'Gimodipikar'), + 'crh': (u'robot ', u'ekley', u'çetleştire', u'deñiştire'), 'cs': (u'robot ', u'přidal', u'odebral', u'změnil'), + 'cv': (u'робот ', u'хушрĕ', u'кăларса пăрахрĕ', u'улăштарчĕ'), + 'cy': (u'robot ', u'Ychwanegu', u'Tynnu', u'Newid'), 'csb':(u'robot ', u'dodôwô', u'rëmô', u'pòprôwiô'), 'da': (u'robot ', u'Tilføjer', u'Fjerner', u'Ændrer'), 'de': (u'Bot: ', u'Ergänze', u'Entferne', u'Ändere'), @@ -301,12 +334,15 @@ 'eu': (u'robota ', u'Erantsia', u'Ezabatua', u'Aldatua'), 'fa': (u'ربات ', u'افزودن', u'حذف', u'اصلاح'), 'fi': (u'Botti ', u'lisäsi', u'poisti', u'muokkasi'), + 'fiu-vro': (u'robot ', u'manopandminõ', u'ärqvõtminõ', u'tävvendämine'), 'fr': (u'robot ', u'Ajoute', u'Retire', u'Modifie'), 'frp': (u'robot ', u'Apond', u'Retire', u'Modifie'), 'fur': (u'Robot: ', u'o zonti', u'o cambii', u'o gjavi'), 'gl': (u'bot ', u'Engadido', u'Eliminado', u'Modificado'), + 'gn': (u'bot ', u'ojoapy', u'oñembogue', u'oñemoambue'), 'he': (u'בוט ', u'מוסיף', u'מסיר', u'משנה'), 'hr': (u'robot', u'Dodaje', u'Uklanja', u'Mijenja'), + 'hsb': (u'bot ', u'přidał', u'wotstronił', u'změnił'), 'ht': (u'wobo ', u'Ajoute', u'Anlve', u'Modifye'), 'hu': (u'Robot: ', u'következő hozzáadása', u'következő eltávolítása', u'következő módosítása'), 'ia': (u'Robot: ', u'Addition de', u'Elimination de', u'Modification de'), @@ -319,11 +355,17 @@ 'ko': (u'로봇이 ', u'더함', u'지움', u'바꿈'), 'kk': (u'Боттың ', u'үстегені', u'аластағаны', u'түзеткені'), 'ksh': (u'Bot: ', u'dobëijedonn', u'erußjenumme', u'ußjewääßelt'), - 'la': (u'robotum ', u'addit', u'abdit', u'mutat'), + 'ku': (u'robot ', u'serzêde kirin', u'jêbirin', u'guhêrandin'), + 'la': (u'bot ', u'addit', u'abdit', u'mutat'), 'lb': (u'Bot ', u'Derbäi setzen', u'Ewech huelen', u'Änneren'), 'lmo': (u'Robot ', u'jontant', u'trant via', u'modifiant'), + 'ln': (u'bot ', u'ebakisí', u'elongólí', u'ebongolí'), 'lt': (u'robotas ', u'Pridedama', u'Šalinama', u'Keičiama'), 'lv': (u'robots ', u'pievieno', u'izņem', u'izmaina'), + 'mk': (u'Бот ', u'Додава', u'Брише', u'Менува'), + 'ml': (u'യന്ത്രം ', u'ചേര്ക്കുന്നു', u'നീക്കുന്നു', u'പുതുക്കുന്നു'), + 'mn': (u'робот ', u'Нэмж байна', u'Арилгаж байна', u'Өөрчилж байна'), + 'mr': (u'सांगकाम्या ', u'वाढविले', u'काढले', u'बदलले'), 'mzn': (u'Rebot ', u'Biyeshten', u'Bayten', u'Hekărden'), 'nds': (u'IW-Bot: ', u'dorto', u'rut', u'ännert'), 'nds-nl': (u'bot', u'derbie', u'derof', u'aanders'), @@ -340,13 +382,16 @@ 'ru': (u'робот ', u'добавил', u'удалил', u'изменил'), 'sk': (u'robot ', u'Pridal', u'Odobral',u'Zmenil' ), 'sl': (u'robot ', u'Dodajanje', u'Odstranjevanje', u'Spreminjanje'), + 'sq': (u'robot ', u'Futje', u'Largim', u'Ndryshim'), 'sr': (u'Бот', u'Додаје', u'Брише', u'Мења'), 'su': (u'bot ', u'Nambih', u'Miceun', u'Ngarobih'), 'sv': (u'robot ', u'Lägger till', u'Tar bort', u'Ändrar'), 'sw': (u'roboti ', u'Nyongeza', u'Ondoa', u'Badiliko'), 'ta': (u'தானியங்கி',u'இணைப்பு',u'அழிப்பு',u'மாற்றல்'), + 'te': (u'యంత్రము ', u'కలుపుతున్నది', u'తొలగిస్తున్నది', u'మార్పులు చేస్తున్నది'), 'tet': (u'bot ', u'tau tan', u'hasai', u'filak'), 'tg': (u'робот ', u'илова карда истодааст', u'дигаргуни карда истодааст', u'ҳaвз карда истодааст'), + 'tl': (u'robot ', u'dinagdag', u'tinanggal', u'binago'), 'to': (u'mīsini', u'ʻoku tānaki', u'ʻoku toʻo', u'ʻoku liliu'), 'tr': (u'Bot değişikliği', u'Ekleniyor', u'Kaldırılıyor', u'Değiştiriliyor'), 'th': (u'โรบอต ', u'เพิ่ม', u'ลบ', u'แก้ไข'), @@ -354,6 +399,7 @@ 'uz': (u'Bot', u'Qoʻshdi', u'Tuzatdi', u'Oʻchirdi'), 'vi': (u'robot ', u'Thêm', u'Dời', u'Thay'), 'vo': (u'bot ', u'läükon', u'moükon', u'votükon'), + 'yi': (u'באט ', u'צוגעלייגט', u'אראפגענומען', u'געענדערט'), 'yue': (u'機械人 ', u'加', u'減', u'改'), 'zh': (u'機器人 ', u'正在新增', u'移除', u'修改'), 'zh-classical': (u'僕 ', u'增', u'削', u'修'), @@ -1481,7 +1527,13 @@ genFactory = pagegenerators.GeneratorFactory()
for arg in wikipedia.handleArgs(): - if arg == '-noauto': + if arg.startswith('-xml'): + if len(arg) == 4: + xmlFilename = wikipedia.input(u'Please enter the XML dump's filename:') + else: + xmlFilename = arg[5:] + hintlessPageGen = XmlDumpLmoLinkPageGenerator(xmlFilename) + elif arg == '-noauto': globalvar.auto = False elif arg.startswith('-hint:'): hints.append(arg[6:])