dumpwiki.py copy ./static to ../archive/static and points to it on templates

master
Castro0o 5 years ago
parent 5a9751ca28
commit 2cfa36b9d9

@ -1,6 +1,7 @@
import os, json, sys import os, json, sys
from mwclient import Site from mwclient import Site
from jinja2 import Template from jinja2 import Template
from shutil import copy
import html5lib import html5lib
from functions import Colors from functions import Colors
import argparse import argparse
@ -29,6 +30,16 @@ print(args)
site = Site(host=args.host, path=args.path) site = Site(host=args.host, path=args.path)
wd = os.path.dirname(os.path.abspath(__file__)) # working directory wd = os.path.dirname(os.path.abspath(__file__)) # working directory
wd_name = os.path.split(wd)[-1] # name of dir running script wd_name = os.path.split(wd)[-1] # name of dir running script
# copy static/ to ../archive/static
repo_static_path = './static'
archive_static_path = os.path.join(args.output, repo_static_path)
os.makedirs(archive_static_path, exist_ok=True) # create static/ dir in archive
for static_file in os.listdir(path='./static'):
copy(src=os.path.join(repo_static_path, static_file),
dst=os.path.join(archive_static_path, static_file))
with open('login.txt', 'r') as login: # read login user & pwd with open('login.txt', 'r') as login: # read login user & pwd
loginlines = login.read() loginlines = login.read()
user, pwd = loginlines.split('\n') user, pwd = loginlines.split('\n')
@ -116,8 +127,7 @@ def dumppage(p, template, rewrite_images=True):
htmlsrc = rewritelinks(htmlsrc) htmlsrc = rewritelinks(htmlsrc)
if rewrite_images: if rewrite_images:
htmlsrc = rewriteimgs(htmlsrc) htmlsrc = rewriteimgs(htmlsrc)
# TODO: ANdre structure of archive: from ./archive/0 to: ./archive ./0 html = template.render(page=p, body=htmlsrc, staticpath='.')
html = template.render(page=p, body=htmlsrc, staticpath=f'../{wd_name}')
with open(os.path.join(args.output, filenameforpage(p)), 'w') as f: with open(os.path.join(args.output, filenameforpage(p)), 'w') as f:
f.write(html) f.write(html)
# print(html, file=f) # print(html, file=f)
@ -132,7 +142,7 @@ for cat in publish.members():
template = Template(templatefile.read()) template = Template(templatefile.read())
except FileNotFoundError: except FileNotFoundError:
with open('templates/default.html') as templatefile: with open('templates/default.html') as templatefile:
template = Template(templatefile.read()) template = Template(templatefile.read())
for p in cat.members(): for p in cat.members():
print(p) print(p)
dumppage(p, template, rewrite_images=not args.skipimages) dumppage(p, template, rewrite_images=not args.skipimages)
@ -141,7 +151,7 @@ for cat in publish.members():
else: else:
print("Dumping page {}".format(cat.page_title)) print("Dumping page {}".format(cat.page_title))
with open('templates/default.html') as templatefile: with open('templates/default.html') as templatefile:
template = Template(templatefile.read()) template = Template(templatefile.read())
dumppage(cat, template, rewrite_images=not args.skipimages) dumppage(cat, template, rewrite_images=not args.skipimages)

Loading…
Cancel
Save