繁体   English   中英

为什么这些文字没有显示在我的手机上?

[英]Why isn't this text showing up on my phone?

这是原始帖子的链接: 为什么我不能在消息中发送冒号但可以发送分号??? (Python,SMTP模块)

这与当时的结肠有关。 我尝试以其他方式设置格式,而冒号使文本在手机上空白显示。 这是我正在使用的短信功能的简单版本。 如果可以的话,这是Verizon iPhone的SMTP。 我可以使用分号,并且可以,但是冒号不能:

import time
current = (str(time.strftime("%I:%M %p")))

print (current)

def Text():
    import smtplib
    ContentMatch = ("Content match, website checked at: ", current)
    username = ("EmailUser")
    password = ("Password1")
    fromaddr = ("Username@gmail.com")
    toaddrs  = ("PhoneNumber@vtext.com")
    message = (str(ContentMatch))
    # The actual mail send
    server = smtplib.SMTP('smtp.gmail.com:587')
    server.starttls()
    server.login(username,password)
    server.sendmail(fromaddr, toaddrs, message)
    server.quit()

Text()

您的邮件格式不正确。 消息字符串必须是RFC2822兼容的消息。 也就是说,它必须包括标题和可选主体。

尝试这个:

message = "From: %s\n\n%s\n"%(fromaddr, ContentMatch)

但是Python提供了特殊的类(例如email.mime.text.MIMEText )来格式化电子邮件消息,因此您不必手动执行此操作:

import time
import smtplib
from email.mime.text import MIMEText
from email.utils import formatdate

current = time.strftime("%I:%M %p")
message_text = "Content match, website checked at: %s" % current


def Text():
    # Parameters for sending
    username = "xxx"
    password = "xxx"
    fromaddr = "xxx@example.com"
    toaddr = "xxx@example.com"

    # Create the message. The only RFC2822-required headers
    # are 'Date' and 'From', but adding 'To' is polite
    message = MIMEText(message_text)
    message['Date'] = formatdate()
    message['From'] = fromaddr

    # Send the message
    server = smtplib.SMTP('smtp.gmail.com:587')
    server.starttls()
    server.login(username, password)
    server.sendmail(fromaddr, toaddr, message.as_string())
    server.quit()

Text()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM