aboutsummaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/utils.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/utils/utils.py b/utils/utils.py
index f8cb8ef6..1cabbdc8 100644
--- a/utils/utils.py
+++ b/utils/utils.py
@@ -177,3 +177,19 @@ def process_footnote_backlinks(soup):
tag.string == "\u21A9"): # U+21A9: LEFTWARDS ARROW WITH HOOK
fn_a_tag["class"] = "footnotes-backlink"
fn_a_tag.string = "\u21A9\uFE0E" # U+FE0E: VARIATION SELECTOR-15
+
+
+def postprocess_html_file(htmlfilepath):
+ """Perform a series of postprocessing to an HTML file."""
+ with open(htmlfilepath, "r+", encoding="utf-8") as htmlfileobj:
+ soup = bs4.BeautifulSoup(htmlfileobj.read(), "lxml")
+
+ # a series of postprocessing (extensible)
+ process_image_sizes(soup)
+ link_img_tags(soup)
+ process_footnote_backlinks(soup)
+
+ # write back
+ htmlfileobj.seek(0)
+ htmlfileobj.write(str(soup))
+ htmlfileobj.truncate()