javascript - 您可以在使用 Python 发送的电子邮件中使用 JavaScript 吗?

标签 javascript python html css email

<分区>

您可以在使用 Python 发送的电子邮件中使用 JavaScript 吗?

我的目标是在电子邮件中发送一个工作时钟。

我正在尝试使用 Python 来完成此操作。我正在使用 IDLE 和 Python 库 stmplib、email 和 html2text 来发送电子邮件。我的代码看起来像下面显示的代码。我省略了一些不重要的细节(样式和脚本)。

me = "my.email@gmail.com"
you = "my.email@gmail.com"

msg = MIMEMultipart('alternative')
msg['Subject'] = "Clock"
msg['From'] = me
msg['To'] = you

html = """\
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Clock</title>
        <style></style>
    </head>
    <body>
        <div class="clock">
            <p class="clockhour">HH</p>
            <p class="clocksym1">:</p>
            <p class="clockminute">MM</p>
            <p class="clocksym2">:</p>
            <p class="clocksecond">SS</p>
        </div>
        <script type="text/javascript"></script>
    </body>
</html>
"""

text = html2text(html)

part1 = MIMEText(text, 'plain')
part2 = MIMEText(html, 'html')

msg.attach(part1)
msg.attach(part2)

s = SMTP('smtp.gmail.com:587')
s.ehlo()
s.starttls()
s.login("my.email@gmail.com", "my password")

s.sendmail(me, you, msg.as_string())
s.quit()

此代码中 HTML 的完整版本为我提供了一个正常运行的时钟,但如果我尝试使用 Gmail 将其发送给自己,我会收到不同的结果。

查看 HTML:

enter image description here

在 Gmail 中:

enter image description here

这表明,部分 CSS 已加载,但其他部分(如字体或字体大小)未加载。它还显示 JavaScript 未加载。 (通常在浏览器中查看 HTML 代码会给出一个正常运行的时钟,而在电子邮件中则不会。)

有没有办法用这个时钟发送电子邮件?

最佳答案

简短回答:不可以。您不能将 JavaScript 用于电子邮件模板。


棘手的方法:您可以处理相关文件并使用服务器端语言在模板文件中获取解析值。

Example:

clock.js
// code for js

template.php
// echo the value
// The value is rendered in html and works in email template too.

但是这种情况不适合您,因为您正在尝试实现倒计时时钟。这仅适用于静态值。

但是,链接到外部页面内容将帮助您显示计时器。


对于您的情况,您可以尝试使用 http://motionmailapp.com/

希望这对您有所帮助!

关于javascript - 您可以在使用 Python 发送的电子邮件中使用 JavaScript 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47115583/

相关文章:

javascript - Flash 横幅周围的超链接

php - 跨源请求只支持协议(protocol)方案,怎么办?

javascript - 如何在 jquery 中使用 "For"而不是 "each"函数

python - Numpy:从 3D 数组中减去 Numpy argmin

python - 使用 nohup (LINUX) 访问后台工作的进度 - 获取前台

python - PyCharm 代码补全在控制台中有效,但在编辑器中无效

javascript - 行删除不起作用

javascript - 如何将用户名附加到我的 ../profile/<username> URL 中,以便每个用户都有一个唯一的页面。 -平均 - Jade

javascript - 当我打印我的网站时,有什么方法可以使我的谷歌地图相同

javascript - 如何在函数内显示带有超链接的 JavaScript 图像