diff options
Diffstat (limited to 'utils/utils.py')
-rw-r--r-- | utils/utils.py | 16 |
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() |