• 在线客服

  • 扫描二维码
    下载博学谷APP

  • 扫描二维码
    关注博学谷微信公众号

  • 意见反馈

原创 如何使用Python发送MMS消息?

发布时间:2022-02-16 15:50:21 浏览 2242 来源:博学谷 作者:小谷

    如何使用Python发送MMS消息?MMS(Multimedia Messaging Service多媒体消息服务)与文本消息基本相同,只不过嵌入了图像、视频或 PDF 文件等多媒体,可以通过文本消息发送这些多媒体。

    使用Python发送MMS消息

    与代码与发送 SMS 消息基本类似,从同一段代码入手:

    main.pydef send_mms_via_email(   number: str,   message: str,   provider: str,   sender_credentials: tuple,   subject: str = "sent using etext",   smtp_server: str = "smtp.gmail.com",   smtp_port: int = 465,):   sender_email, email_password = sender_credentials   receiver_email =f'{number}@{PROVIDERS.get(provider).get("sms")}'

    为了发送 MMS 消息,我们还需要添加三个参数:

    file_path:由于我们需要一个文件来发送多媒体消息,因此需要再添加一个参数用以表示文件的路径。

    mime_maintype:多媒体文件的主类型。

    mime_subtype:多媒体文件的子类型。

    具体的代码如下:

    main.pydef send_mms_via_email(   number: str,   message: str,   file_path: str,   mime_maintype: str,   mime_subtype: str,   provider: str,   sender_credentials: tuple,   subject: str = "sent using etext",   smtp_server: str = "smtp.gmail.com",   smtp_port: int = 465,): 

    此外,我们还需要导入发送 MMS 的工具函数:

    main.pyfrom email import encodersfrom email.mime.base import MIMEBasefrom email.mime.multipart importMIMEMultipartfrom email.mime.text import MIMETextfrom os.path import basename

    接下来,写发送电子邮件的函数。发送的邮件不需要显示主题、收件人和消息,但邮件应该包含多个部分:第一部分,消息本身;第二部分,电子邮件的附件。

    回顾移动提供商列表,你可能会注意到一些提供商不支持发送多媒体消息,或者使用同一个域名和支持 SMS 的密钥发送短消息和多媒体消息。

    例如,T-Mobile 没有 MMS 密钥,但实际上它支持 MMS 密钥,这意味着我们可以使用同一个短信域来 SMS 和 MMS。与此同时,AT&T 既有 SMS 域也有 MMS 域。因此,你需要根据发送的内容选择合适的域名。

    与上述 email_message 方法类似,但这次我们使用 MIMEMultipart。此外,我们还需要使用 email_message 添加主题、收件人和发件人。

    main.pydef send_mms_via_email(   number: str,   message: str,   file_path: str,   mime_maintype: str,   mime_subtype: str,   provider: str,   sender_credentials: tuple,   subject: str = "sent using etext",   smtp_server: str = "smtp.gmail.com"   smtp_port: int = 465,):   sender_email, email_password = sender_credentials   receiver_email =f'{number}@{PROVIDERS.get(provider).get("sms")}'   email_message = MIMEMultipart()   email_message["Subject"] = subject   email_message["From"] = sender_email   email_message["To"] = receiver_email

    接下来,我们在邮件中添加附件——普通类型(纯文本)。 

    main.pydef send_mms_via_email(   number: str,   message: str,   file_path: str,   mime_maintype: str,   mime_subtype: str,   provider: str,   sender_credentials: tuple,   subject: str = "sent using etext",   smtp_server: str = "smtp.gmail.com",   smtp_port: int = 465,):   sender_email, email_password = sender_credentials   receiver_email =f'{number}@{PROVIDERS.get(provider).get("sms")}'   email_message = MIMEMultipart()   email_message["Subject"] = subject   email_message["From"] = sender_email   email_message["To"] = receiver_email   email_message.attach(MIMEText(message, "plain"))

    申请免费试学名额    

在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!

上一篇: 闭包如何使用?能解决什么问题? 下一篇: mkdir和rm命令选项基础知识学习分享

相关推荐 更多

热门文章

  • 前端是什么
  • 前端开发的工作职责
  • 前端开发需要会什么?先掌握这三大核心关键技术
  • 前端开发的工作方向有哪些?
  • 简历加分-4步写出HR想要的简历
  • 程序员如何突击面试?两大招带你拿下面试官
  • 程序员面试技巧
  • 架构师的厉害之处竟然是这……
  • 架构师书籍推荐
  • 懂了这些,才能成为架构师
  • 查看更多

扫描二维码,了解更多信息

博学谷二维码