jenkins-bot has submitted this change and it was merged.
Change subject: Use PreloadingGenerator when retrieving redirects from special
page
......................................................................
Use PreloadingGenerator when retrieving redirects from special page
Improve loading performance for redirects from special page.
Other generators are time consuming and preloading pages does
not give better performance.
Change-Id: I5570523c977578ad6db61425b3115e09de54fc5d
---
M scripts/redirect.py
1 file changed, 18 insertions(+), 8 deletions(-)
Approvals:
John Vandenberg: Looks good to me, approved
XZise: Looks good to me, but someone else must approve
jenkins-bot: Verified
diff --git a/scripts/redirect.py b/scripts/redirect.py
index 078a0b7..b8e299c 100755
--- a/scripts/redirect.py
+++ b/scripts/redirect.py
@@ -71,8 +71,8 @@
#
# (C) Daniel Herding, 2004
# (C) Purodha Blissenbach, 2009
-# (C) xqt, 2009-2014
-# (C) Pywikibot team, 2004-2014
+# (C) xqt, 2009-2015
+# (C) Pywikibot team, 2004-2015
#
# Distributed under the terms of the MIT license.
#
@@ -82,9 +82,13 @@
#
import re
+import sys
import datetime
import pywikibot
from pywikibot import i18n, xmlreader, Bot
+
+if sys.version_info[0] > 2:
+ basestring = (str, )
def space_to_underscore(link):
@@ -292,8 +296,8 @@
else:
# retrieve information from broken redirect special page
pywikibot.output(u'Retrieving special page...')
- for redir_name in self.site.broken_redirects():
- yield redir_name.title()
+ for page in self.site.preloadpages(self.site.broken_redirects()):
+ yield page
def retrieve_double_redirects(self):
if self.use_move_log:
@@ -326,8 +330,8 @@
else:
# retrieve information from double redirect special page
pywikibot.output(u'Retrieving special page...')
- for redir_name in self.site.double_redirects():
- yield redir_name.title()
+ for page in self.site.preloadpages(self.site.double_redirects()):
+ yield page
def get_moved_pages_redirects(self):
"""Generate redirects to recently-moved pages."""
@@ -424,7 +428,10 @@
return lastmove.new_title()
def delete_1_broken_redirect(self, redir_name):
- redir_page = pywikibot.Page(self.site, redir_name)
+ if isinstance(redir_name, basestring):
+ redir_page = pywikibot.Page(self.site, redir_name)
+ else:
+ redir_page = redir_name
# Show the title of the page we're working on.
# Highlight the title in purple.
pywikibot.output(u"\n\n>>> \03{lightpurple}%s\03{default} <<<"
@@ -531,7 +538,10 @@
self.fix_1_double_redirect(redir_name)
def fix_1_double_redirect(self, redir_name):
- redir = pywikibot.Page(self.site, redir_name)
+ if isinstance(redir_name, basestring):
+ redir = pywikibot.Page(self.site, redir_name)
+ else:
+ redir = redir_name
# Show the title of the page we're working on.
# Highlight the title in purple.
pywikibot.output(u"\n\n>>> \03{lightpurple}%s\03{default} <<<"
--
To view, visit https://gerrit.wikimedia.org/r/187695
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I5570523c977578ad6db61425b3115e09de54fc5d
Gerrit-PatchSet: 7
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: John Vandenberg <[email protected]>
Gerrit-Reviewer: Ladsgroup <[email protected]>
Gerrit-Reviewer: Merlijn van Deen <[email protected]>
Gerrit-Reviewer: Ricordisamoa <[email protected]>
Gerrit-Reviewer: Russell Blau <[email protected]>
Gerrit-Reviewer: XZise <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
Pywikibot-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikibot-commits