Thanks a lot!
Am 15.09.2010 13:32, schrieb xqt@svn.wikimedia.org:
Revision: 8561 Author: xqt Date: 2010-09-15 11:32:15 +0000 (Wed, 15 Sep 2010)
Log Message:
expandtemplates parameter for Page.get() - Fully resolve templates within page content submitted by DrTrogom. Thanks.
Modified Paths:
trunk/pywikipedia/wikipedia.py
Modified: trunk/pywikipedia/wikipedia.py
--- trunk/pywikipedia/wikipedia.py 2010-09-15 10:11:05 UTC (rev 8560) +++ trunk/pywikipedia/wikipedia.py 2010-09-15 11:32:15 UTC (rev 8561) @@ -585,7 +585,7 @@ return self.autoFormat()[0] is not None
def get(self, force=False, get_redirect=False, throttle=True,
sysop=False, change_edit_time=True):
sysop=False, change_edit_time=True, expandtemplates=False): """Return the wiki-text of the page. This will retrieve the page from the server if it has not been
@@ -604,6 +604,8 @@ If change_edit_time is False, do not check this version for changes before saving. This should be used only if the page has been loaded previously.
If expandtemplates is True, all templates in the page content are
fully resolved too (if API is used). """ # NOTE: The following few NoPage exceptions could already be thrown at
@@ -622,7 +624,7 @@ if self.site().isInterwikiLink(self.title()): raise NoPage('%s is not a local page on %s!' % (self.aslink(), self.site()))
if force:
if force or expandtemplates: # When forcing, we retry the page no matter what. Old exceptions # and contents do not apply any more. for attr in ['_redirarg', '_getexception', '_contents']:
@@ -640,7 +642,8 @@ # Make sure we did try to get the contents once if not hasattr(self, '_contents'): try:
self._contents = self._getEditPage(get_redirect = get_redirect, throttle = throttle, sysop = sysop)
self._contents = self._getEditPage(get_redirect=get_redirect, throttle=throttle, sysop=sysop,
expandtemplates = expandtemplates) hn = self.section() if hn: m = re.search("=+ *%s *=+" % hn, self._contents)
@@ -669,7 +672,7 @@ return self._contents
def _getEditPage(self, get_redirect=False, throttle=True, sysop=False,
oldid=None, change_edit_time=True):
oldid=None, change_edit_time=True, expandtemplates=False): """Get the contents of the Page via API query Do not use this directly, use get() instead.
@@ -677,6 +680,8 @@ Arguments: oldid - Retrieve an old revision (by id), not the current one get_redirect - Get the contents, even if it is a redirect page
expandtemplates - Fully resolve templates within page content
(if API is used) This method returns the raw wiki text as a unicode string. """
@@ -694,6 +699,8 @@ } if oldid: params['rvstartid'] = oldid
if expandtemplates:
params[u'rvexpandtemplates'] = u'' if throttle: get_throttle()
Pywikipedia-svn mailing list Pywikipedia-svn@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn