如何在使用 python 将 HTML 内容作为电子邮件发送时保留 HTML 内部链接?

How to retain HTML internal links while sending HTML content as email using python?

我正在尝试使用 Python 将 .html 内容作为邮件 body 发送,除了 html 文件中存在的内部链接外,一切正常。当我在浏览器中打开文件时,内部链接按预期工作,但在邮件 body 中,这些链接没有导航到相应的 headers(如内容的 Table)。我正在使用 MIMEText() 通过 UTF-8 解析 html 内容(我不确定这可能是问题所在)

我尝试使用宏复制 outlook 内部页面链接,但它不适用于此用例

from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

msg = MIMEMultipart()

report_file = open('C:\Users\thiru\python_test_engine\reports\goals-wbr.html', encoding="utf8")
html = report_file.read()

part = MIMEText(html, 'html')
msg.attach(part)

#s is smtplib object
s.sendmail(msg['From'], msg['To'], msg.as_string())
<ul>
    <li><a href="#00-team-update">team update</a></li>
    <li><a href="#01-group-1">group 1</a></li>
    <li><a href="#02-group-A">group A</a></li>
    </ul>

    <h2><a id="#00-team-update">team update</a></h2>
<h4 class="Green" style="color:black" bgcolor="#00FF00">

来自 HTML 文件的内部链接作为超链接导入邮件 body,但链接在邮件中不起作用

添加 name 属性而不是 id 解决了这个问题。