diff --git a/wikibot.py b/wikibot.py index 7f9ea0945dece27c23265be4922ca6963e1a7b43..c0af5b4a8b269829cbe16b0a1a1d63828902d78d 100644 --- a/wikibot.py +++ b/wikibot.py @@ -2,9 +2,10 @@ import config from xmlrpc.client import ServerProxy as Proxy, Error as wikiError import re +import datetime -# rename/move a page def move_page(original_page, new_page, delete=False): + """Moves a page, updates link to new page and flags or deletes the old one""" with Proxy(config.WIKI_API_URL) as proxy: # create new page with identical content # page_content = proxy.wiki.getPage(original_page) @@ -25,3 +26,12 @@ def move_page(original_page, new_page, delete=False): {"sum":"Moved to " + new_page + " and marked page for deletion"}) else: proxy.wiki.putPage(original_page, "", {"sum":"Moved to " + new_page}) # deletes original page + + +def find_old_pages(timedelta, namespace=""): + """Returns all pages whose rev is older than the given timedelta""" + with Proxy(config.WIKI_API_URL) as proxy: + pages = proxy.dokuwiki.getPagelist(namespace) + proxy_time = proxy.dokuwiki.getTime() + old_pages = [page for page in pages if (proxy_time - page.get('rev') > timedelta.total_seconds())] + return old_pages