gh-82530: Create blank function instead of invalid import for email example (#97529)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
This commit is contained in:
Stanley 2022-09-25 21:06:11 -07:00 committed by GitHub
parent 05c92759b6
commit 2b428a1fae
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 5 deletions

View File

@ -8,8 +8,15 @@ import webbrowser
from email import policy from email import policy
from email.parser import BytesParser from email.parser import BytesParser
# An imaginary module that would make this work and be safe.
from imaginary import magic_html_parser def magic_html_parser(html_text, partfiles):
"""Return safety-sanitized html linked to partfiles.
Rewrite the href="cid:...." attributes to point to the filenames in partfiles.
Though not trivial, this should be possible using html.parser.
"""
raise NotImplementedError("Add the magic needed")
# In a real program you'd get the filename from the arguments. # In a real program you'd get the filename from the arguments.
with open('outgoing.msg', 'rb') as fp: with open('outgoing.msg', 'rb') as fp:
@ -62,9 +69,6 @@ else:
print("Don't know how to display {}".format(richest.get_content_type())) print("Don't know how to display {}".format(richest.get_content_type()))
sys.exit() sys.exit()
with tempfile.NamedTemporaryFile(mode='w', delete=False) as f: with tempfile.NamedTemporaryFile(mode='w', delete=False) as f:
# The magic_html_parser has to rewrite the href="cid:...." attributes to
# point to the filenames in partfiles. It also has to do a safety-sanitize
# of the html. It could be written using html.parser.
f.write(magic_html_parser(body.get_content(), partfiles)) f.write(magic_html_parser(body.get_content(), partfiles))
webbrowser.open(f.name) webbrowser.open(f.name)
os.remove(f.name) os.remove(f.name)