User:Edoderoobot/achternaam-alias
Jump to navigation
Jump to search
import pywikibot
from pywikibot import pagegenerators as pg
def wd_sparql_query(spq):
wikidatasite=pywikibot.Site('wikidata','wikidata')
generator=pg.WikidataSPARQLPageGenerator(spq,site=wikidatasite)
for wd in generator:
if (wd.exists()):
wd.get(get_redirect=True)
yield wd
query='select ?item where {?item wdt:P31 wd:Q101352}'
lng='nl'
suffix={'nl':' (achternaam)','en':' (lastname)'}
def updateOne(wd):
if lng in wd.labels:
alias=wd.labels[lng]+suffix[lng]
newalias=[]
if (lng in wd.aliases):
if not(alias in wd.aliases[lng]):
newalias=wd.aliases[lng]
newalias.append(alias)
wd.editEntity({'aliases':{lng:newalias}},summary=f'---add alias for {lng}')
def testOne():
site=pywikibot.Site('wikidata','wikidata')
repo=site.data_repository()
wd=pywikibot.ItemPage(repo,'Q254906')
wd.get()
updateOne(wd)
def justAll():
for wd in wd_sparql_query(query):
updateOne(wd)
print('Start')
#testOne()
justAll()
print('Klaar')