欢迎访问宙启技术站
智能推送

使用email.mime.audioMIMEAudio()编写Python脚本发送包含音频文件的电子邮件

发布时间:2023-12-25 18:46:19

发送包含音频文件的电子邮件可以使用Python的email模块和email.mime.audio模块中的MIMEAudio类。MIMEAudio类用于创建音频附件,并可以将其添加到电子邮件中。

以下是一个示例代码,演示了如何使用email.mime.audio.MIMEAudio类发送包含音频文件的电子邮件。

import smtplib
import os
import email
import email.mime.audio

def send_audio_email(sender_email, sender_password, receiver_email, audio_filename):
    # 创建电子邮件对象
    msg = email.MIMEMultipart.MIMEMultipart()

    # 设置发件人、收件人和主题
    msg['From'] = sender_email
    msg['To'] = receiver_email
    msg['Subject'] = '包含音频文件的邮件'

    # 读取音频文件并创建音频附件对象
    with open(audio_filename, 'rb') as file:
        audio_data = file.read()
    audio_part = email.mime.audio.MIMEAudio(audio_data, 'mp3')
    audio_part.add_header('Content-Disposition', 'attachment', filename=os.path.basename(audio_filename))

    # 将音频附件添加到电子邮件中
    msg.attach(audio_part)

    # 发送邮件
    try:
        server = smtplib.SMTP('smtp.gmail.com', 587)
        server.starttls()
        server.login(sender_email, sender_password)
        server.sendmail(sender_email, receiver_email, msg.as_string())
        server.quit()
        print('邮件发送成功!')
    except Exception as e:
        print('邮件发送失败:', str(e))

# 设置发件人和收件人的电子邮件地址
sender_email = 'your_email@gmail.com'
sender_password = 'your_password'
receiver_email = 'recipient_email@gmail.com'

# 设置音频文件路径
audio_filename = 'audio.mp3'

# 发送包含音频文件的电子邮件
send_audio_email(sender_email, sender_password, receiver_email, audio_filename)

在上述示例代码中,我们首先导入了必要的模块和类。然后,我们定义了一个名为send_audio_email的函数,该函数接受发件人的电子邮件地址、发件人的密码、收件人的电子邮件地址以及音频文件的文件名作为参数。函数的主要任务是创建邮件对象,读取音频文件并创建音频附件对象,将附件添加到电子邮件中,然后使用SMTP服务器发送邮件。

在使用该代码发送电子邮件时,请确保替换sender_emailsender_passwordreceiver_emailaudio_filename变量为正确的值。此外,还需要确保您的电子邮件提供商允许使用SMTP服务,并提供正确的SMTP服务器和端口。

在运行代码后,如果一切正常,您将看到输出消息显示邮件发送成功。收件人将收到一封包含音频文件附件的电子邮件。

此示例代码只是发送包含音频文件的电子邮件的一种方法,您可以根据自己的需求进行修改和扩展。