jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/376278 )
Change subject: [Bugfix] Deal with fake entities in ItemClaimFilter
......................................................................
[Bugfix] Deal with fake entities in ItemClaimFilter
Bug: T175151
Change-Id: Ib1b949a2c884b8e76be5c9607066917feddbece5
---
M pywikibot/pagegenerators.py
1 file changed, 17 insertions(+), 4 deletions(-)
Approvals:
Dalba: Looks good to me, but someone else must approve
jenkins-bot: Verified
Xqt: Looks good to me, approved
diff --git a/pywikibot/pagegenerators.py b/pywikibot/pagegenerators.py
index f4cddd9..1216f84 100644
--- a/pywikibot/pagegenerators.py
+++ b/pywikibot/pagegenerators.py
@@ -1577,10 +1577,23 @@
@rtype: bool
"""
if not isinstance(page, pywikibot.page.WikibasePage):
- try:
- page = pywikibot.ItemPage.fromPage(page)
- except pywikibot.NoPage:
- return False
+ if isinstance(page.site, pywikibot.site.DataSite): # T175151
+ on_repo = page.namespace() in (
+ page.site.item_namespace, page.site.property_namespace)
+ else:
+ on_repo = False
+ if on_repo:
+ if page.namespace() == page.site.property_namespace:
+ cls = pywikibot.PropertyPage
+ else:
+ cls = pywikibot.ItemPage
+ page = cls(page.site, page.title(withNamespace=False))
+ else:
+ try:
+ page = pywikibot.ItemPage.fromPage(page)
+ except pywikibot.NoPage:
+ return False
+
for page_claim in page.get()['claims'].get(prop, []):
if page_claim.target_equals(claim):
if not qualifiers:
--
To view, visit
https://gerrit.wikimedia.org/r/376278
To unsubscribe, visit
https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Ib1b949a2c884b8e76be5c9607066917feddbece5
Gerrit-PatchSet: 1
Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Owner: Matěj Suchánek <matejsuchanek97(a)gmail.com>
Gerrit-Reviewer: Dalba <dalba.wiki(a)gmail.com>
Gerrit-Reviewer: John Vandenberg <jayvdb(a)gmail.com>
Gerrit-Reviewer: Magul <tomasz.magulski(a)gmail.com>
Gerrit-Reviewer: Matěj Suchánek <matejsuchanek97(a)gmail.com>
Gerrit-Reviewer: Xqt <info(a)gno.de>
Gerrit-Reviewer: jenkins-bot <>