jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/507838 )

Change subject: [IMPR] Derive CommonscatBot from ExistingPageBot and 
NoRedirectPageBot
......................................................................

[IMPR] Derive CommonscatBot from ExistingPageBot and NoRedirectPageBot

- Use ExistingPageBot and NoRedirectPageBot instead of skipping inside
  treat method
- use skip_page method for skipping category redirects and disambiguation pages
- use treat_page instead of treat method

Change-Id: I775b55ce7b5dedfa34c9b04d95ec52ceb7661100
---
M scripts/commonscat.py
1 file changed, 18 insertions(+), 18 deletions(-)

Approvals:
  D3r1ck01: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/scripts/commonscat.py b/scripts/commonscat.py
index 1be4a49..33ff6ea 100755
--- a/scripts/commonscat.py
+++ b/scripts/commonscat.py
@@ -64,7 +64,7 @@
 import pywikibot

 from pywikibot import i18n, pagegenerators
-from pywikibot.bot import SingleSiteBot
+from pywikibot.bot import SingleSiteBot, ExistingPageBot, NoRedirectPageBot

 from scripts.add_text import add_text

@@ -227,7 +227,7 @@
 }


-class CommonscatBot(SingleSiteBot):
+class CommonscatBot(SingleSiteBot, ExistingPageBot, NoRedirectPageBot):

     """Commons categorisation bot."""

@@ -238,22 +238,23 @@
         })
         super(CommonscatBot, self).__init__(**kwargs)

-    def treat(self, page):
+    def skip_page(self, page):
+        """Skip category redirects or disambigs."""
+        if page.isCategoryRedirect():
+            pywikibot.warning(
+                'Page {page} on {page.site} is a category redirect. '
+                'Skipping.'.format(page=page))
+            return True
+        if page.isDisambig():
+            pywikibot.warning(
+                'Page {page} on {page.site} is a disambiguation. '
+                'Skipping.'.format(page=page))
+            return True
+        return super(CommonscatBot, self).skip_page(page)
+
+    def treat_page(self):
         """Load the given page, do some changes, and save it."""
-        if not page.exists():
-            pywikibot.output('Page {} does not exist. Skipping.'
-                             .format(page.title(as_link=True)))
-        elif page.isRedirectPage():
-            pywikibot.output('Page {} is a redirect. Skipping.'
-                             .format(page.title(as_link=True)))
-        elif page.isCategoryRedirect():
-            pywikibot.output('Page {} is a category redirect. Skipping.'
-                             .format(page.title(as_link=True)))
-        elif page.isDisambig():
-            pywikibot.output('Page {} is a disambiguation. Skipping.'
-                             .format(page.title(as_link=True)))
-        else:
-            self.addCommonscat(page)
+        self.addCommonscat(self.current_page)

     @classmethod
     def getCommonscatTemplate(cls, code=None):
@@ -293,7 +294,6 @@
         category is found add it to the page.

         """
-        self.current_page = page
         # Get the right templates for this page
         primaryCommonscat, commonscatAlternatives = self.getCommonscatTemplate(
             page.site.code)

--
To view, visit https://gerrit.wikimedia.org/r/507838
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I775b55ce7b5dedfa34c9b04d95ec52ceb7661100
Gerrit-Change-Number: 507838
Gerrit-PatchSet: 3
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: D3r1ck01 <[email protected]>
Gerrit-Reviewer: Dvorapa <[email protected]>
Gerrit-Reviewer: John Vandenberg <[email protected]>
Gerrit-Reviewer: jenkins-bot (75)
_______________________________________________
Pywikibot-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikibot-commits

Reply via email to