Revision: 8316
Author: xqt
Date: 2010-06-24 07:47:20 +0000 (Thu, 24 Jun 2010)
Log Message:
-----------
use pagegenerators for filtering namespaces. (Bug #3020101)
Modified Paths:
--------------
trunk/pywikipedia/fixing_redirects.py
Modified: trunk/pywikipedia/fixing_redirects.py
===================================================================
--- trunk/pywikipedia/fixing_redirects.py 2010-06-24 06:39:09 UTC (rev
8315)
+++ trunk/pywikipedia/fixing_redirects.py 2010-06-24 07:47:20 UTC (rev
8316)
@@ -16,6 +16,8 @@
#
# This script based on disambredir.py and solve_disambiguation.py
#
+# (C) Pywikipedia team, 2004-2010
+#
# Distributed under the terms of the MIT license.
#
__version__='$Id$'
@@ -185,9 +187,7 @@
wikipedia.output('Error: unable to put %s' % page.aslink())
def main():
- start = '!'
featured = False
- namespace = None
gen = None
# This factory is responsible for processing command line arguments
@@ -198,33 +198,22 @@
for arg in wikipedia.handleArgs():
if arg == '-featured':
featured = True
- elif arg.startswith('-namespace'):
- if len(arg) == 10:
- namespace = int(wikipedia.input(u'Which namespace should be
processed?'))
- else:
- namespace = int(arg[11:])
else:
genFactory.handleArg(arg)
- gen = genFactory.getCombinedGenerator()
-
mysite = wikipedia.getSite()
if mysite.sitename() == 'wikipedia:nl':
wikipedia.output(u'\03{lightred}There is consensus on the Dutch
Wikipedia that bots should not be used to fix redirects.\03{default}')
sys.exit()
- linktrail = mysite.linktrail()
if featured:
featuredList = wikipedia.translate(mysite, featured_articles)
ref = wikipedia.Page(wikipedia.getSite(), featuredList)
gen = pagegenerators.ReferringPageGenerator(ref)
- generator = pagegenerators.NamespaceFilterPageGenerator(gen, [0])
- for page in generator:
- workon(page)
- elif namespace is not None:
- for page in pagegenerators.AllpagesPageGenerator(start=start,
namespace=namespace, includeredirects=False):
- workon(page)
- elif gen:
+ gen = pagegenerators.NamespaceFilterPageGenerator(gen, [0])
+ if not gen:
+ gen = genFactory.getCombinedGenerator()
+ if gen:
for page in pagegenerators.PreloadingGenerator(gen):
workon(page)
else:
_______________________________________________
Pywikipedia-svn mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn