You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python发送短信时文本下方出现空行的问题求助

解决邮件/短信内容末尾空行问题

你的问题出在两个地方:一是构造内容时末尾多了个不必要的冒号,二是纯文本格式的内容如果带多余符号,会被客户端或短信网关解析出额外空行。

直接给你修正后的代码,同时补上你漏掉的pandas导入(不然代码跑不起来):

import smtplib
import pandas as pd  # 补上缺失的pandas导入
from time import sleep

SenderAddress = "blahblah@gmail.com"
password = "niun2idjnwe"

e = pd.read_excel("Email.xlsx")
emails = e['Emails'].values
server = smtplib.SMTP("smtp.mail.ru", 587)
server.starttls()
server.login(SenderAddress, password)
msg = "Hey"
subject = ""
# 去掉末尾多余的冒号,避免触发不必要的格式解析
body = "Subject:{}\n\n{}".format(subject, msg)
for email in emails:
    server.sendmail(SenderAddress, email, body)
    sleep(5)

server.quit()

如果是通过邮件网关发送短信,还可以对消息内容做首尾空白清理,防止隐性换行:

body = "Subject:{}\n\n{}".format(subject, msg.strip())

原理很简单:你原来的{}:会在内容末尾加个冒号,有些客户端会自动在符号后补换行;另外确保内容本身没有多余的换行或空格,就能解决末尾空行的问题。

内容的提问来源于stack exchange,提问作者sludge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 14:52:04