培訓(xùn)啦 Python

如何使用Python發(fā)送MMS消息?

教培參考

教育培訓(xùn)行業(yè)知識型媒體

發(fā)布時間: 2025年05月22日 19:14

2025年【Python】報考條件/培訓(xùn)費(fèi)用/專業(yè)咨詢 >>

Python報考條件是什么?Python培訓(xùn)費(fèi)用是多少?Python專業(yè)課程都有哪些?

點(diǎn)擊咨詢

如何使用Python發(fā)送MMS消息?MMS(Multimedia Messaging Service多媒體消息服務(wù))與文本消息基本相同,只不過嵌入了圖像、視頻或 PDF 文件等多媒體,可以通過文本消息發(fā)送這些多媒體。

使用Python發(fā)送MMS消息

與代碼與發(fā)送 SMS 消息基本類似,從同一段代碼入手:

main.pydef send_mms_via_email(number:str,message:str,provider:str,sender_credentials:tuple,subject:str="sentusingetext",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")}'

為了發(fā)送 MMS 消息,我們還需要添加三個參數(shù):

file_path:由于我們需要一個文件來發(fā)送多媒體消息,因此需要再添加一個參數(shù)用以表示文件的路徑。

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="sentusingetext",smtp_server:str="smtp.gmail.com",smtp_port: int = 465,):

此外,我們還需要導(dǎo)入發(fā)送 MMS 的工具函數(shù):

main.pyfromemailimportencodersfrom email.mime.base import MIMEbasefrom email.mime.multipart importMIMEMultipartfrom email.mime.text import MIMETextfrom os.path import basename

接下來,寫發(fā)送電子郵件的函數(shù)。發(fā)送的郵件不需要顯示主題、收件人和消息,但郵件應(yīng)該包含多個部分:第一部分,消息本身;第二部分,電子郵件的附件。

回顧移動提供商列表,你可能會注意到一些提供商不支持發(fā)送多媒體消息,或者使用同一個域名和支持 SMS 的密鑰發(fā)送短消息和多媒體消息。

例如,T-Mobile 沒有 MMS 密鑰,但實際上它支持 MMS 密鑰,這意味著我們可以使用同一個短信域來 SMS 和 MMS。與此同時,AT&T 既有 SMS 域也有 MMS 域。因此,你需要根據(jù)發(fā)送的內(nèi)容選擇合適的域名。

與上述 email_message 方法類似,但這次我們使用 MIMEMultipart。此外,我們還需要使用 email_message 添加主題、收件人和發(fā)件人。

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="sentusingetext",smtp_server:str="smtp.gmail.com"smtp_port:int=465,):sender_email,email_password=sender_credentialsreceiver_email=f'{number}@{PROVIDERS.get(provider).get("sms")}'email_message=MIMEMultipart()email_message["Subject"]=subjectemail_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_credentialsreceiver_email =f'{number}@{PROVIDERS.get(provider).get("sms")}'email_message = MIMEMultipart()email_message["Subject"] = subjectemail_message["From"] = sender_emailemail_message["To"] = receiver_email   email_message.attach(MIMEText(message,"plain"))
溫馨提示:
本文【如何使用Python發(fā)送MMS消息?】由作者教培參考提供。該文觀點(diǎn)僅代表作者本人,培訓(xùn)啦系信息發(fā)布平臺,僅提供信息存儲空間服務(wù),若存在侵權(quán)問題,請及時聯(lián)系管理員或作者進(jìn)行刪除。
我們采用的作品包括內(nèi)容和圖片部分來源于網(wǎng)絡(luò)用戶投稿,我們不確定投稿用戶享有完全著作權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果侵犯了您的權(quán)利,請聯(lián)系我站將及時刪除。
內(nèi)容侵權(quán)、違法和不良信息舉報
Copyright @ 2025 培訓(xùn)啦 All Rights Reserved 版權(quán)所有.