jenkins-bot has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/945901 )

Change subject: [IMPR] Add https scheme if missing in url asked by 
generate_family_file.py
......................................................................

[IMPR] Add https scheme if missing in url asked by generate_family_file.py

Change-Id: I824ae409ddbbb8b585636f8376f0abc8f1890f20
---
M pywikibot/scripts/generate_family_file.py
1 file changed, 22 insertions(+), 4 deletions(-)

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




diff --git a/pywikibot/scripts/generate_family_file.py 
b/pywikibot/scripts/generate_family_file.py
index f6afdd5..e26a566 100755
--- a/pywikibot/scripts/generate_family_file.py
+++ b/pywikibot/scripts/generate_family_file.py
@@ -28,6 +28,8 @@
 .. versionchanged:: 8.1
    [s]trict can be given for <dointerwiki> parameter to ensure that
    sites are from the given domain.
+.. versionchanged:: 8.4
+   If the url scheme is missing, ``https```will be used.
 """
 #
 # (C) Pywikibot team, 2010-2023
@@ -41,7 +43,7 @@
 import sys
 from contextlib import suppress
 from typing import Optional
-from urllib.parse import urlparse
+from urllib.parse import urlparse, urlunparse
 

 # see pywikibot.family.py
@@ -99,9 +101,15 @@
         """Ask for parameters if necessary."""
         if self.base_url is None:
             with suppress(KeyboardInterrupt):
-                self.base_url = input('Please insert URL to wiki: ')
-            if not self.base_url:
+                url = input('Please insert URL to wiki: ')
+            if not url:
                 return False
+            url = urlparse(url, 'https')
+            if not url.netloc and url.path:
+                self.base_url = urlunparse((url.scheme, url.path, url.netloc,
+                                            *url[3:]))
+            else:
+                self.base_url = urlunparse(url)

         if self.name is None:
             with suppress(KeyboardInterrupt):
@@ -120,12 +128,13 @@
         """Get wiki from base_url."""
         import pywikibot
         from pywikibot.exceptions import FatalServerError
-        print('Generating family file from ' + self.base_url)
+        pywikibot.info('Generating family file from ' + self.base_url)
         for verify in (True, False):
             try:
                 w = self.Wiki(self.base_url, verify=verify)
             except FatalServerError:
                 pywikibot.exception()
+                pywikibot.info()
                 if not pywikibot.bot.input_yn(
                     'Retry with disabled ssl certificate validation',
                     default=self.verify, automatic_quit=False,

--
To view, visit https://gerrit.wikimedia.org/r/c/pywikibot/core/+/945901
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I824ae409ddbbb8b585636f8376f0abc8f1890f20
Gerrit-Change-Number: 945901
Gerrit-PatchSet: 1
Gerrit-Owner: Xqt <[email protected]>
Gerrit-Reviewer: Xqt <[email protected]>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged
_______________________________________________
Pywikibot-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to