Xqt added a comment.
The usual way to create a site object is like this:
>>> import pywikibot
>>> commons = pywikibot.Site('commons')
>>> meta = pywikibot.Site('meta')
Then you get the right base_url:
>>> print('Commons base_url:', commons.base_url('/w/api.php'))
Commons base_url: https://commons.wikimedia.org/w/api.php
>>> print('Meta base_url:', meta.base_url('/w/api.php'))
Meta base_url: https://meta.wikimedia.org/w/api.php
Using the url does not work:
>>> commons = pywikibot.Site(url='https://commons.wikimedia.org')
>>> commons
APISite('wikimedia', 'wikimedia')
>>> commons.family
Family("wikimedia")
>>> meta = pywikibot.Site(url='https://meta.wikimedia.org')
>>> meta
APISite('wikimedia', 'wikimedia')
>>> meta.family
Family("wikimedia")
Seems that //Family.from_url(url)// gives no result and AutoFamily is used
here. AutoFamily is good for foreign sites:
>>> mysite = pywikibot.Site(url='https://lobbypedia.de')
>>> mysite
APISite('lobbypedia', 'lobbypedia')
>>> mysite.family
Family("lobbypedia")
>>> mysite.base_url('/w/api.php')
'https://lobbypedia.de/w/api.php'
TASK DETAIL
https://phabricator.wikimedia.org/T386665
EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: Xqt
Cc: Aklapper, Tacsipacsi, pywikibot-bugs-list, mevo, PotsdamLamb, Jyoo1011,
JohnsonLee01, SHEKH, Dijkstra, Khutuck, Zkhalido, Aram, Viztor, Wenyi, Tbscho,
MayS, Mdupont, JJMC89, Dvorapa, Altostratus, Avicennasis, Hannolans, mys_721tx,
Xqt, jayvdb, Masti, Alchimista
_______________________________________________
pywikibot-bugs mailing list -- [email protected]
To unsubscribe send an email to [email protected]