#!/usr/bin/env python3 # Rewrite image urls in about section import sys from html.parser import HTMLParser import html from urllib.parse import urljoin, urlparse import re def is_absolute_url(url): if not url: return False parsed = urlparse(url) return bool(parsed.netloc or parsed.scheme) def is_relative_path(url): if not url: return False return not url.startswith("/") and not is_absolute_url(url) # def linkify(text, make_link): # url_pattern = r'(?" def handle_starttag(self, tag, attrs): self.output.append(self._build_tag(tag, attrs)) def handle_startendtag(self, tag, attrs): self.output.append(self._build_tag(tag, attrs, self_closing=True)) def handle_endtag(self, tag): self.output.append(f"") def handle_data(self, data): # data_with_links = linkify(data, # lambda url: self._build_tag("a", [('href', url)]) + html.escape(url) + "") self.output.append(data) def handle_entityref(self, name): self.output.append(f"&{name};") def handle_charref(self, name): self.output.append(f"&#{name};") def handle_comment(self, data): self.output.append(f"") html_in = sys.stdin.read() parser = LinkRewriter() parser.feed(html_in) print(parser.get_html())