Difference between revisions 14143077 and 14153660 on frwiktionary[[Catégorie:JackBot]] <source lang=python> #!/usr/bin/env python # coding: utf-8 # Ce script formate les pages du Wiktionnaire, tous les jours après minuit depuis le Toolserver : # 1) Retire certains doublons. # 2) Ajoute les clés de tris, prononciations vides, et certains liens vers les conjugaisons. # 3) Met à jour les liens vers les traductions (modèles trad, trad+, trad-, trad-début et trad-fin), et les classe par ordre alphabétique. # 4) Ajoute les codes langues appropriés dans les modèles du Wiktionnaire du namespace 0 et paragraphes appropriés. # 5) Complète les flexions de verbes à vérifier. # 6) Traduit les importations de en.wikt. # 7) Gère des modèles {{voir}} en début de page.⏎ # 8) Ajoute les anagrammes # Importation des modules import catlib, pagegenerators, os, codecs, urllib, re, collections, socket from wikipedia import * # Déclaration language = "fr" (contracted; show full)Modele[775] = u'argot militaire' Modele[776] = u'combat' Modele[777] = u'sports de combat' Modele[778] = u'capoeira' Modele[779] = u'aïkido' Modele[780] = u'argot polytechnicien' Modele[781] = u'élatif' Modele[782] = u'auxiliaire'⏎ limit4 = 784 # ébauches Modele[784] = u'ébauche-déf' Modele[785] = u'ébauche-étym' Modele[786] = u'ébauche-pron' Modele[787] = u'ébauche-étym-nom-scientifique' Modele[788] = u'ébauche-exe' Modele[789] = u'ébauche-pron' (contracted; show full) ''' #print (PageEnd.encode(config.console_encoding, 'replace')[0:1000]) #print (PageTemp[0:position].encode(config.console_encoding, 'replace')) # Comparaison avec chaque modèle connu dans Modele[p] for p in range(1,limit6): if Modele[p] == PageTemp[0:position]: #print (Modele[p].encode(config.console_encoding, 'replace')) # Si on est dans un modèle spécial, le traiter, sinon par catégorie de génériques if not codelangue and (p < limit1 or p >= limit3): PageEnd = u'{{formater|Code langue manquant dans ' + Modele[p] + u'}}\n' + PageBegin summary = u'Page à formater manuellement' sauvegarde(page,PageEnd, summary) return if Modele[p] == u'term' or Modele[p] == u'terme' or Modele[p] == u'régio' or Modele[p] == u'région': ModeleT = PageTemp[PageTemp.find("|")+1:PageTemp.find("}}")] for p2 in range(1,limit6): if Modele[p2] == ModeleT or Modele[p2] == ModeleT[0:1].lower() + ModeleT[1:len(ModeleT)]: if EstCodeLangue == "false": PageEnd = PageEnd + Modele[p2] + "|nocat=1}}" else: PageEnd = PageEnd + Modele[p2] + "|" + codelangue + "}}" PageTemp = PageTemp[PageTemp.find("}}")+2:len(PageTemp)] break break elif Modele[p] == u'pron' or Modele[p] == u'dénominal de' or Modele[p] == u'déverbal de' or Modele[p] == u'superlatif de' or Modele[p] == u'déverbal' or Modele[p] == u'superlatif': if codelangue != u'conv': # Trie des lettres de l'API if Modele[p] == u'pron': PageTemp2 = PageTemp[position+1:PageTemp.find("}}")]⏎ while PageTemp2.find(u'\'') != -1 and PageTemp2.find(u'\'') < PageTemp2.find(u'}}') and (PageTemp2.find(u'\'') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u'\'')] + u'ˈ' + PageTemp[PageTemp.find(u'\'')+1:len(PageTemp)] while PageTemp2.find(u'ˈˈˈ') != -1 and PageTemp2.find(u'ˈˈˈ') < PageTemp2.find(u'}}') and (PageTemp2.find(u'ˈˈˈ') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u'ˈˈˈ')] + u'\'\'\'' + PageTemp[PageTemp.find(u'ˈˈˈ')+3:len(PageTemp)] while PageTemp2.find(u'ε') != -1 and PageTemp2.find(u'ε') < PageTemp2.find(u'}}') and (PageTemp2.find(u'ε') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u'ε')] + u'ɛ' + PageTemp[PageTemp.find(u'ε')+1:len(PageTemp)] while PageTemp2.find(u'ε̃') != -1 and PageTemp2.find(u'ε̃') < PageTemp2.find(u'}}') and (PageTemp2.find(u'ε̃') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u'ε̃')] + u'ɛ̃' + PageTemp[PageTemp.find(u'ε̃')+1:len(PageTemp)] while PageTemp2.find(u':') != -1 and PageTemp2.find(u':') < PageTemp2.find(u'}}'): PageTemp = PageTemp[0:PageTemp.find(u':')] + u'ː' + PageTemp[PageTemp.find(u':')+1:len(PageTemp)] while PageTemp.find(u'g') != -1 and PageTemp.find(u'g') < PageTemp.find(u'}}' and (PageTemp2.find(u':') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u':')] + u'ː' + PageTemp[PageTemp.find(u':')+1:len(PageTemp)] while PageTemp2.find(u'g') != -1 and PageTemp2.find(u'g') < PageTemp2.find(u'}}') and (PageTemp2.find(u'g') < PageTemp2.find(u'|') or PageTemp2.find(u'|') == -1): PageTemp = PageTemp[0:PageTemp.find(u'g')] + u'ɡ' + PageTemp[PageTemp.find(u'g')+1:len(PageTemp)] if PageTemp[0:8] == u'pron||}}': PageEnd = PageEnd + PageTemp[0:PageTemp.find("}}")] + codelangue + "}}" PageTemp = PageTemp[PageTemp.find("}}")+2:len(PageTemp)] break elif PageTemp[position:position+3] == u'|}}' or PageTemp[position:position+4] == u'| }}': (contracted; show full) PageTemp = PageTemp[PageTemp.find("}}")+2:len(PageTemp)] break elif Modele[p] == u'préciser' or Modele[p] == u'?' or Modele[p] == u'doute' or Modele[p] == u'vérifier': if codelangue != "" and codelangue is not None: if PageTemp[position:position+2] == u'}}' or PageTemp[position:position+4] == u'fr}}': PageEnd = PageEnd + PageTemp[0:position] + "||" + codelangue + "}}" PageTemp = PageTemp[PageTemp.find("}}")+2:len(PageTemp)] break⏎ else: while PageTemp.find(u'{{') < PageTemp.find(u'}}') and PageTemp.find(u'{{') != -1: # On saute les différents modèles inclus PageEnd = PageEnd + PageTemp[0:PageTemp.find(u'}}')+2] PageTemp = PageTemp[PageTemp.find(u'}}')+2:len(PageTemp)] if PageTemp.find("|") > PageTemp.find(u'}}') or PageTemp.find(u'|') == -1: position = PageTemp.find("}}") (contracted; show full)TraitementRecherche = crawlerSearch(u'chinois') TraitementUtilisateur = crawlerUser(u'Utilisateur:JackBot') TraitementRedirections = crawlerRedirects() TraitementTout = crawlerAll(u'') while 1: TraitementRC = crawlerRC() ''' </source> All content in the above text box is licensed under the Creative Commons Attribution-ShareAlike license Version 4 and was originally sourced from https://fr.wiktionary.org/w/index.php?diff=prev&oldid=14153660.
![]() ![]() This site is not affiliated with or endorsed in any way by the Wikimedia Foundation or any of its affiliates. In fact, we fucking despise them.
|