diff --git a/weboob/applications/webcontentedit/webcontentedit.py b/weboob/applications/webcontentedit/webcontentedit.py index b2c65298..b6c47e54 100644 --- a/weboob/applications/webcontentedit/webcontentedit.py +++ b/weboob/applications/webcontentedit/webcontentedit.py @@ -120,5 +120,5 @@ class WebContentEdit(ReplApplication): backend_names = (backend_name,) if backend_name is not None else self.enabled_backends _id = _id.encode('utf-8') - for backend, revision in self.do('iter_revisions', _id): + for backend, revision in self.do('iter_revisions', _id, max_results=self.options.count): self.format(revision) diff --git a/weboob/backends/mediawiki/backend.py b/weboob/backends/mediawiki/backend.py index 1a1157b8..a985845e 100644 --- a/weboob/backends/mediawiki/backend.py +++ b/weboob/backends/mediawiki/backend.py @@ -27,7 +27,7 @@ __all__ = ['MediawikiBackend'] class MediawikiBackend(BaseBackend, ICapContent): NAME = 'mediawiki' - MAINTAINER = 'Clément Schreiner' + MAINTAINER = u'Clément Schreiner' EMAIL = '0.6' LICENSE = 'GPLv3' DESCRIPTION = 'Mediawiki wiki software application' @@ -50,8 +50,8 @@ class MediawikiBackend(BaseBackend, ICapContent): content.content = data return content - def iter_revisions(self, _id): - for rev in self.browser.iter_wiki_revisions(_id): + def iter_revisions(self, _id, max_results=10): + for rev in self.browser.iter_wiki_revisions(_id, max_results): yield rev diff --git a/weboob/backends/mediawiki/browser.py b/weboob/backends/mediawiki/browser.py index b59da87e..4c3656ba 100644 --- a/weboob/backends/mediawiki/browser.py +++ b/weboob/backends/mediawiki/browser.py @@ -138,13 +138,15 @@ class MediawikiBrowser(BaseBrowser): data['lgtoken'] = result['login']['token'] result2 = self.API_post(data) - def iter_wiki_revisions(self, page): - '''Yield 'Revision' objects for the last 10 Revisions of the specified page.''' + def iter_wiki_revisions(self, page, nb_entries): + '''Yield 'Revision' objects for the last revisions of the specified page.''' + if not self.is_logged(): + self.login() data = {'action': 'query', 'titles': page, 'prop': 'revisions', 'rvprop': 'ids|timestamp|comment|user|flags', - 'rvlimit': '10', + 'rvlimit': str(nb_entries), } result = self.API_get(data)