There are more potentially unused pages, but these are unlikely to become relevant or reusable in the near future, so remove them.
59 lines
1.5 KiB
Python
59 lines
1.5 KiB
Python
from datetime import datetime, timezone
|
|
from os.path import getmtime
|
|
from pathlib import Path
|
|
|
|
base = "https://hakurei.app"
|
|
|
|
pages = [
|
|
["/", 0.5],
|
|
["/LICENSE.txt", 0.0],
|
|
["/build", 0.5],
|
|
["/camera-privacy-policy", 0.0],
|
|
["/contact", 0.5],
|
|
["/faq", 1.0],
|
|
["/features", 1.0],
|
|
["/hiring", 0.2],
|
|
["/humans.txt", 0.0],
|
|
["/pdfviewer-privacy-policy", 0.0],
|
|
["/install/", 0.5],
|
|
["/install/cli", 0.5],
|
|
["/install/web", 0.5],
|
|
["/source", 0.5],
|
|
["/usage", 1.0]
|
|
]
|
|
|
|
base_mtime = getmtime("static-tmp")
|
|
entries = []
|
|
|
|
for page in pages:
|
|
path = page[0]
|
|
if path[-1] != '/' and "." not in path:
|
|
path += ".html"
|
|
|
|
loc = base + path
|
|
filepath = "static-production" + path
|
|
if path[-1] == '/':
|
|
filepath += "index.html"
|
|
|
|
mtime = getmtime(filepath)
|
|
if mtime > base_mtime:
|
|
print(loc)
|
|
lastmod = datetime.fromtimestamp(mtime, timezone.utc).strftime("%Y-%m-%dT%H:%M:%S%:z")
|
|
priority = page[1]
|
|
entries.append(f"""
|
|
<url>
|
|
<loc>{loc}</loc>
|
|
<lastmod>{lastmod}</lastmod>
|
|
<priority>{priority}</priority>
|
|
</url>""")
|
|
|
|
sitemap = f"""<?xml version="1.0" encoding="UTF-8"?>
|
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">{"".join(entries)}
|
|
</urlset>
|
|
"""
|
|
|
|
with open("static-tmp/sitemap.xml", "w") as f:
|
|
f.write(sitemap)
|