jenkins-bot submitted this change.

View Change


Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
[IMPR] Simplify takesettings

- set self.settingsData to None on top of the method. It is no longer
necessary to set them to None later except we got an empty list.
- remove inner try/exeption and use page.text property which catch the
NoPage exception and returns an empty string instead.
- return after a wrong setting message has been printed.
- remove comment which repeats the printed message.

Change-Id: Ia37362980d35cf26d4bccf35e1731e79f76eaeef
---
M scripts/checkimages.py
1 file changed, 50 insertions(+), 36 deletions(-)

diff --git a/scripts/checkimages.py b/scripts/checkimages.py
index 3eb9d17..b105b16 100755
--- a/scripts/checkimages.py
+++ b/scripts/checkimages.py
@@ -1057,45 +1057,43 @@

def takesettings(self) -> None:
"""Function to take the settings from the wiki."""
+ self.settings_data = None
+
settings_page = i18n.translate(self.site, PAGE_WITH_SETTINGS)
-
if not settings_page:
- self.settings_data = None
- else:
- page = pywikibot.Page(self.site, settings_page)
- self.settings_data = []
- try:
- testo = page.get()
-
- for number, m in enumerate(SETTINGS_REGEX.finditer(testo),
- start=1):
- name = str(m[1])
- find_tipe = str(m[2])
- find = str(m[3])
- imagechanges = str(m[4])
- summary = str(m[5])
- head = str(m[6])
- text = str(m[7])
- mexcatched = str(m[8])
- tupla = [number, name, find_tipe, find, imagechanges,
- summary, head, text, mexcatched]
- self.settings_data += [tupla]
-
- if not self.settings_data:
- pywikibot.info(
- "You've set wrongly your settings, please take a "
- 'look to the relative page. (run without them)')
- self.settings_data = None
- except NoPageError:
- pywikibot.info("The settings' page doesn't exist!")
- self.settings_data = None
-
- # Real-Time page loaded
- if self.settings_data:
- pywikibot.info('>> Loaded the real-time page... <<')
- else:
- self.settings_data = None
pywikibot.info('>> No additional settings found! <<')
+ return
+
+ page = pywikibot.Page(self.site, settings_page)
+ page_text = page.text
+ if not page_text:
+ pywikibot.info(
+ 'Either the settings page does not exist or is empty!')
+ return
+
+ self.settings_data = []
+ for number, m in enumerate(SETTINGS_REGEX.finditer(page_text),
+ start=1):
+ name = str(m[1])
+ find_tipe = str(m[2])
+ find = str(m[3])
+ imagechanges = str(m[4])
+ summary = str(m[5])
+ head = str(m[6])
+ text = str(m[7])
+ mexcatched = str(m[8])
+ settings = [number, name, find_tipe, find, imagechanges, summary,
+ head, text, mexcatched]
+ self.settings_data.append(settings)
+
+ if not self.settings_data:
+ pywikibot.info(
+ "You've set wrongly your settings, please take a look to the "
+ 'relative page. (run without them)')
+ self.settings_data = None
+ return
+
+ pywikibot.info('>> Loaded the real-time page... <<')

def load_licenses(self) -> set[pywikibot.Page]:
"""Load the list of the licenses.

To view, visit change 281610. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Ia37362980d35cf26d4bccf35e1731e79f76eaeef
Gerrit-Change-Number: 281610
Gerrit-PatchSet: 8
Gerrit-Owner: Xqt <info@gno.de>
Gerrit-Reviewer: John Vandenberg <jayvdb@gmail.com>
Gerrit-Reviewer: Magul <tomasz.magulski@gmail.com>
Gerrit-Reviewer: Xqt <info@gno.de>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged