def __init__(self, **kwargs):
do_all = kwargs.pop('all', False) is True
self.fixes = []
for fix, cls in all_fixes.items():
if do_all:
demand = fix not in kwargs
kwargs.pop(fix, None)
else:
demand = bool(kwargs.pop(fix, False))
if demand:
options = {}
for opt in cls.options.keys():
if opt in kwargs:
options[opt] = kwargs.pop(opt)
self.fixes.append(cls(**options))
self.fixes.sort(key=lambda fix: fix.order)
super(WikitextFixingBot, self).__init__(**kwargs)
for fix in self.fixes:
fix.site = self.site
if not self.generator:
pywikibot.output('No generator provided, making own generator...')
self.generator = pagegenerators.PreloadingGenerator(
chain.from_iterable(map(methodcaller('generator'), self.fixes)))
评论列表
文章目录