[Pywikipedia-l] SVN: [6072] branches/rewrite/pywikibot/site.py
russblau at svn.wikimedia.org
russblau at svn.wikimedia.org
Thu Nov 6 16:31:26 UTC 2008
Revision: 6072
Author: russblau
Date: 2008-11-06 16:31:26 +0000 (Thu, 06 Nov 2008)
Log Message:
-----------
add loadimageinfo() method
Modified Paths:
--------------
branches/rewrite/pywikibot/site.py
Modified: branches/rewrite/pywikibot/site.py
===================================================================
--- branches/rewrite/pywikibot/site.py 2008-11-06 08:56:13 UTC (rev 6071)
+++ branches/rewrite/pywikibot/site.py 2008-11-06 16:31:26 UTC (rev 6072)
@@ -894,6 +894,29 @@
% (page, pageitem['title']))
api.update_page(page, pageitem)
+ def loadimageinfo(self, page, history=False):
+ """Load image info from api and save in page attributes
+
+ @param history: if true, return the image's version history
+
+ """
+ title = page.title(withSection=False)
+ query = api.PropertyGenerator("imageinfo", site=self,
+ titles=title.encode(self.encoding()),
+ iiprop=["timestamp", "user", "comment",
+ "url", "size", "sha1", "mime",
+ "metadata", "archivename"])
+ if history:
+ query.request["iilimit"] = "max"
+ for pageitem in query:
+ if pageitem['title'] != title:
+ raise Error(
+ u"loadpageinfo: Query on %s returned data on '%s'"
+ % (page, pageitem['title']))
+ api.update_page(page, pageitem)
+ if history:
+ return pageitem['imageinfo']
+
def page_exists(self, page):
"""Return True if and only if page is an existing page on site."""
if not hasattr(page, "_pageid"):
More information about the Pywikipedia-l
mailing list