mirror of https://github.com/python/cpython
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:
parent
05c92759b6
commit
2b428a1fae
|
@ -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)
|
||||||
|
|
Loading…
Reference in New Issue