Files
nlnieuws/www/mkAll.py
Peter Kleiweg 2906a7b4b1 verbose
2026-04-14 13:30:03 +02:00

71 lines
1.9 KiB
Python
Executable File

#!/usr/bin/env python3
import sys
import re
import subprocess
head = '''<!doctype html>
<html>
<head>
<title>{} {} week {}</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="icon" href="favicon.ico" type="image/ico" />
<link rel="stylesheet" href="style.css" />
<link rel="stylesheet" type="text/css" href="tooltip.css" />
<script type="text/javascript" src="tooltip.js"></script>
</head>
<body>
<div class="title">
<h1>{} {} week {}</h1>
terugkijkend over vier weken
</div>
<div class="main">
'''
tail=''' </div>
</body>
</html>
'''
namen = {
'algemeen': 'Algemeen',
'VRT': 'Vlaanderen',
'groningen': 'Groningen',
'AT5': 'Amsterdam',
'Tzum': 'Literatuur'
}
verbose=False
if sys.argv[1] == '-v':
verbose=True
sys.argv = sys.argv[:1] + sys.argv[2:]
ep=sys.argv[1]
if not re.match('^2[0-9][0-9][0-9]-[0-5][0-9]$', ep):
print("Ongeldig patroon '", ep, "', moet yyyy-ww zijn")
sys.exit(1)
jaar=ep[:4]
week=ep[5:].lstrip('0')
for base in ('algemeen', 'VRT', 'groningen', 'AT5', 'Tzum'):
name = namen[base]
with open(name + '.html', 'wt', encoding='utf-8') as fp:
fp.write(head.format(name, jaar, week, name, jaar, week))
fp.flush()
for part in ('nieuwe-namen', 'nieuwe-woorden', 'personen', 'overige-namen', 'locaties', 'organisaties'):
if verbose:
print(base, part)
if part == 'locaties':
fp.write('</div>\n<div class="main next">\n')
fp.flush()
top = ''
if part.startswith('nieuwe'):
top = '.t20'
subprocess.run(
['./top2html.py', '../data/{}-{}-{}-4{}'.format(base, part, ep, top)],
stdout = fp,
check = False)
fp.write(tail)