« Utilisateur:RimBot/count-quotes.py » : différence entre les versions
Contenu supprimé Contenu ajouté
mAucun résumé des modifications |
mise à jour pour la dernière version de pywikibot |
||
Ligne 46 :
"""
import
import sys, re, string, time, locale, operator
msg = {
'fr': (u'<h1 style="border-bottom:none;margin-top:0;margin-bottom:0.8em;text-align:center;"> %d citations dans %d articles ',
u'<small>(Le nombre d\'articles n\'inclut que les articles qui
u'==
u'{| class="wikitable"\n|+\'\'\'Nombre de citations par article\'\'\'\n! align="center" | Article\n! align="center" | Nombre de citations\n',
u'|- align="center" \n| \'\'\'Moyenne\'\'\' || %0.2f\n',
Ligne 59 :
u'<small>(Ce tableau recense le nombre de citations qui figurent dans plusieurs articles. Ainsi, si le premier champ vaut N et le second M, cela signifie que M citations figurent en N exemplaires (dans N articles))</small>\n\n',
u'{| class="wikitable" style="width: 40%%"\n|+\'\'\'Nombre d\'exemplaires de la citation\'\'\'\n! align="center" | Article\n! align="center" | Nombre de citations\n',
u'Mise
'is': (u'<h1 style="border-bottom:none;margin-top:0;margin-bottom:0.8em;text-align:center;"> %d tilvitnanir
u'<small>(
u'== Eftir greinum ==\n\n',
u'{| class="wikitable"\n|+\'\'\'
u'|- align="center" \n| \'\'\'
u'<small>
u'==
u'<small>(
u'{| class="wikitable" style="width: 40%%"\n|+\'\'\'
u'Updated statistics'),
'en': (u'<h1 style="border-bottom:none;margin-top:0;margin-bottom:0.8em;text-align:center;"> %d quotes in %d articles ',
Ligne 117 :
def outputq(s, newline = True):
if not globalvar.quiet:
def debug(s):
if globalvar.debug:
def error(s):
# Output errors to ... stdout, because pywikipedia uses stderr for "normal"
# output. *sigh*
def parse_templates(text):
Ligne 279 :
try:
text = page.get()
except
return
text = prepare_text(text)
if not
pattern = '[' + re.escape(globalvar.quote_template[0].upper()) + re.escape(globalvar.quote_template[0].lower()) + ']' + re.escape(globalvar.quote_template[1:])
else:
Ligne 396 :
# locale.setlocale(locale.LC_ALL, "fr_FR@euro")
# for l in sorted(acount.items(), lambda x,y: locale.strcoll(x[0].title().lower(), y[0].title().lower())):
#
# Sort by number of quotes (return list of tuples, not dict)
Ligne 454 :
# Parse options
for arg in
if arg.startswith('-ref'):
if len(arg) == 4:
self.__refpagetitle =
else:
self.__refpagetitle = arg[5:]
elif arg.startswith('-cat'):
if len(arg) == 4:
self.__catname =
else:
self.__catname = arg[5:]
Ligne 469 :
elif arg.startswith('-links'):
if len(arg) == 6:
self.__linkpagetitle =
else:
self.__linkpagetitle = arg[7:]
elif arg.startswith('-file:'):
if len(arg) == 5:
self.__textfile =
else:
self.__textfile = arg[6:]
Ligne 481 :
elif arg.startswith('-start:'):
if len(arg) == 6:
self.__start =
else:
self.__start = arg[7:]
elif arg.startswith('-number:'):
if len(arg) == 7:
self.__number = int(
else:
self.__number = int(arg[8:])
elif arg.startswith('-output:'):
if len(arg) == 7:
self.__output =
else:
self.__output = arg[8:]
elif arg.startswith('-outputprefix:'):
if len(arg) == 12:
self.__outputprefix =
else:
self.__outputprefix = arg[13:]
elif arg.startswith('-outputquotes:'):
if len(arg) == 12:
self.__outputquotes =
else:
self.__outputquotes = arg[13:]
elif arg.startswith('-outputarticles:'):
if len(arg) == 14:
self.__outputarticles =
else:
self.__outputarticles = arg[15:]
elif arg.startswith('-template:'):
if len(arg) == 9:
globalvar.quote_template =
else:
globalvar.quote_template = arg[10:]
elif arg.startswith('-arg:'):
if len(arg) == 4:
globalvar.quote_arg =
else:
globalvar.quote_arg = arg[5:]
Ligne 537 :
elif self.__refpagetitle:
refpage =
pagegen = pagegenerators.ReferringPageGenerator(refpage)
elif self.__linkpagetitle:
linkpage =
pagegen = pagegenerators.LinkedPageGenerator(linkpage)
elif self.__catname:
cat = catlib.Category(
if self.__start:
Ligne 558 :
if not self.__start:
self.__start = '!'
namespace =
start =
pagegen = pagegenerators.AllpagesPageGenerator(start, namespace, includeredirects=False)
return pagegen
Ligne 567 :
def main(self):
# Parse command line options
self.parse()
# ensure that we don't try to change main page
globalvar.mainpagename = pywikibot.Page(pywikibot.Link("Main Page", site)).title(withNamespace=False)
▲ try:
▲ site = wikipedia.getSite()
▲ except:
if site.language() in msg:
Ligne 592 ⟶ 587 :
for p in self.__pagetitles:
try:
pages.append(
except
generator = pagegenerators.PreloadingGenerator(iter(pages))
else:
Ligne 604 ⟶ 599 :
if self.__output:
try:
outputpage =
if outputpage.exists():
oldtext = outputpage.get()
Ligne 616 ⟶ 611 :
error(u'Getting/Modifying page %s failed, generated output was:\n%s' % (outputpage, output))
else:
nquotespage = None
Ligne 625 ⟶ 620 :
else:
pname = "NUMBEROFQUOTES"
nquotespage =
if self.__outputarticles:
Ligne 631 ⟶ 626 :
else:
pname = "NUMBEROFARTICLES"
narticlespage =
else:
if self.__outputquotes:
nquotespage =
if self.__outputarticles:
narticlespage =
if nquotespage:
Ligne 654 ⟶ 649 :
Main().main()
finally:
</source>
|