import pywikibot
from pywikibot import pagegenerators
import time

lang = 'de'
family = 'wikipedia'
touch_categories = [ 'Kategorie:Wikipedia:GND in Wikipedia vorhanden, fehlt jedoch in Wikidata' ] # list of categories, may be empty; including Category: namespace prefix
touch_backlinks = [] # list of pages, may be empty; including namespace prefixes

wikipedia_site = pywikibot.Site(lang, family)
waitTime = 5
pages = []

for touch_category in touch_categories:
    for page in pagegenerators.CategorizedPageGenerator(pywikibot.Category(wikipedia_site, touch_category)):

for touch_backlink in touch_backlinks:
    backlink_page = pywikibot.Page(wikipedia_site, touch_backlink)
    backlinks = backlink_page.backlinks(follow_redirects=False, filter_redirects=False, total=None, content=False)
    for page in backlinks:
for page in pages:        
    print('Touched "{}" (in {}.{})'.format(page.title(), lang, family))

print('All done, task finished')
TranslationError                          Traceback (most recent call last)
<ipython-input-1-4a45b2afbd5d> in <module>()
     24 for page in pages:
---> 25     page.touch(quiet=True)
     26     print('Touched "{}" (in {}.{})'.format(page.title(), lang, family))
     27     time.sleep(waitTime)

/srv/paws/pwb/pywikibot/ in touch(self, callback, botflag, **kwargs)
   1423             # ensure always get the page text and not to change it.
   1424             del self.text
-> 1425             summary = i18n.twtranslate(, 'pywikibot-touch')
   1426   , watch='nochange',
   1427                       minor=False, botflag=botflag, force=True,

/srv/paws/pwb/pywikibot/tools/ in wrapper(*__args, **__kw)
   1736                              cls, depth)
   1737                     del __kw[old_arg]
-> 1738             return obj(*__args, **__kw)
   1740         if not __debug__:

/srv/paws/pwb/pywikibot/ in twtranslate(source, twtitle, parameters, fallback, only_plural)
    756             'outdated submodule. See {}/i18n'
    757             .format('English' if 'en' in langs else "'{}'".format(lang),
--> 758                     twtitle, __url__)))
    759     # send the language code back via the given mutable list parameter
    760     if source_needed:

TranslationError: No English translation has been defined for TranslateWiki key
"pywikibot-touch". It can happen due to lack of i18n submodule or
files or an outdated submodule. See