https://bugzilla.wikimedia.org/show_bug.cgi?id=55158
Web browser: --- Bug ID: 55158 Summary: getFileVersionHistory doesn't work if information is hidden Product: Pywikibot Version: unspecified Hardware: All OS: All Status: NEW Severity: normal Priority: Unprioritized Component: General Assignee: Pywikipedia-bugs@lists.wikimedia.org Reporter: legoktm.wikipedia@gmail.com Classification: Unclassified Mobile Platform: ---
Originally from: http://sourceforge.net/p/pywikipediabot/bugs/1550/ Reported by: stefan2wiki Created on: 2012-12-14 01:38:42 Subject: getFileVersionHistory doesn't work if information is hidden Original description: Take a file where some information is hidden, for example this one: https://commons.wikimedia.org/wiki/File:Catania%5C_Piazza%5C_Quattro%5C_Cant... In this case, the edit summary for the first revision is missing.
Try this code:
import wikipedia site = wikipedia.getSite(u'commons', u'commons') page = wikipedia.ImagePage(site, u'File:Catania Piazza Quattro Canti.jpg') history = page.getFileVersionHistory()
I get an error message:
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "wikipedia.py", line 4194, in getFileVersionHistory result.append((i['timestamp'], i['user'], u"%s×%s" % (i['width'], i['height']), i['size'], i['comment'])) KeyError: 'comment'
There is no i['comment'] because the comment is hidden (deleted).
Result: The script crashes when running getFileVersionHistory. It would be better if getFileVersionHistory at least returns what's available, instead of returning nothing at all. For example, if you use i.get('comment') instead of i['comment'], then getFileVersionHistory returns None if there is no comment. That seems much better than crashing.
Some version information: Pywikipedia (r10715 (wikipedia.py), 2012/11/13, 20:56:05) Python 2.7.3 (default, Aug 1 2012, 05:16:07) [GCC 4.6.3] config-settings: use_api = True use_api_login = True unicode test: ok
https://bugzilla.wikimedia.org/show_bug.cgi?id=55158
Kunal Mehta (Legoktm) legoktm.wikipedia@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://sourceforge.net/p/p | |ywikipediabot/bugs/1550
https://bugzilla.wikimedia.org/show_bug.cgi?id=55158
John Mark Vandenberg jayvdb@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testme Severity|normal |major
--- Comment #1 from John Mark Vandenberg jayvdb@gmail.com --- Need to determine if this problem exists on core.
https://bugzilla.wikimedia.org/show_bug.cgi?id=55158
Mpaa mpaa.wiki@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mpaa.wiki@gmail.com
--- Comment #2 from Mpaa mpaa.wiki@gmail.com --- (In reply to John Mark Vandenberg from comment #1)
Need to determine if this problem exists on core.
In core: history = page.getFileVersionHistory() returns a list without crashing.
When trying to fetch the hidden comment, the result is:
history[2]['comment']
Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'comment
To note that history returns a "commenthidden" key in this case:
history[2]['commenthidden']
u''
{ "timestamp": "2007-02-14T13:01:57Z", "user": "Messina", "commenthidden": "", "url": "https://upload.wikimedia.org/wikipedia/commons/archive/3/3b/20110813064325%2...", "descriptionurl": "https://commons.wikimedia.org/wiki/File:Catania_Piazza_Quattro_Canti.jpg" }
https://bugzilla.wikimedia.org/show_bug.cgi?id=55158
Mpaa mpaa.wiki@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|unspecified |compat (1.0)
pywikipedia-bugs@lists.wikimedia.org