Last modified: 2014-09-09 07:22:20 UTC
Originally from: http://sourceforge.net/p/pywikipediabot/bugs/1663/ Reported by: gerardm Created on: 2013-08-30 08:03:50.007000 Subject: Harvest_template.py aborts when the value is empty Original description: When a template has no value (null) the bot should not abort but preferably write to an error log for later processing.
- **Group**: confirmed --> rewrite
This is still happening in core(rewrite) too. The backtrace looks like Adding Pxx --> None ERROR: AttributeError: 'NoneType' object has no attribute 'getID' Traceback (most recent call last): File "scripts/harvest_template.py", line 66, in run self.processPage(page) File "scripts/harvest_template.py", line 161, in processPage item.addClaim(claim) File "...pywikibot/page.py", line 2744, in addClaim self.repo.addClaim(self, claim, bot=bot, **kwargs) File "...pywikibot/site.py", line 570, in callee return fn(self, *args, **kwargs) File "...pywikibot/site.py", line 3714, in addClaim params['value'] = json.dumps(claim._formatDataValue()) File "...pywikibot/page.py", line 3056, in _formatDataValue 'numeric-id': self.getTarget().getID(numeric=True)} AttributeError: 'NoneType' object has no attribute 'getID' https://git.wikimedia.org/commit/pywikibot%2Fcore.git/3183452cd1dfaf354c5de4afbd3d9d8e5cf31979 fixed the problem with: if not field or not value: continue The compat harvest code needs a lot of work before it is usable for testing even, so I am not going to try to backport this just yet. Assigning to myself to work on soonish.