当前位置: 首页 > 工具软件 > PycURL > 使用案例 >

curl&pycurl发送邮件

颛孙昆
2023-12-01

curl 发送

  • MAILFROM 发送方(这里好像没用到)
  • MAILTO 接收方
  • USERNAME 用户名
  • PASSWORD 密码
  • smtp.examil.qq.com 是QQ企业邮的地址,QQ邮箱发送不方面
curl --url smtps://smtp.exmail.qq.com:465 --ssl-reqd --mail-from "MAILFROM" --mail-rcpt "MAILTO" --upload-file mail.txt --user "USERNAME:PASSWORD" --insecure -v

mail.txt 内容 (对方接收到显示的内容)

From: "User Name" <username@gmail.com>
To: "John Smith" <john@example.com>
Subject: This is a test

Hi John,
I’m sending this mail with curl thru my gmail account.
Bye!

pyCurl发送

import pycurl
try:
    from io import BytesIO
except ImportError:
    from StringIO import StringIO as BytesIO

HOST = "smtps://smtp.exmail.qq.com"
PORT = 465
USERNAME = "**"
PASSWORD = "**"
MAIL_FROM = "**"
MAIL_TO = "**"

c = pycurl.Curl()
c.setopt(pycurl.URL, HOST)
c.setopt(pycurl.PORT, PORT)
c.setopt(pycurl.TIMEOUT, 5)
c.setopt(pycurl.USERNAME, USERNAME)
c.setopt(pycurl.PASSWORD, PASSWORD)
c.setopt(pycurl.USE_SSL, pycurl.USESSL_ALL)
c.setopt(pycurl.SSL_VERIFYPEER, 0)
c.setopt(pycurl.SSL_VERIFYHOST, 0)
c.setopt(pycurl.MAIL_FROM, MAIL_FROM)
c.setopt(pycurl.MAIL_RCPT, [MAIL_TO])

message = '''\
From: "raspberry pi" <%s>
To: <%s>
Subject: PycURL Smtp example

Just for a test.
''' % (MAIL_FROM, MAIL_TO)

message = message.encode('ascii')

io = BytesIO(message)
c.setopt(pycurl.READDATA, io)
c.setopt(pycurl.UPLOAD, True)

c.setopt(pycurl.VERBOSE, True)
# c.setopt(pycurl.SSLVERSION, 0)
# c.setopt(pycurl.SSL_SESSIONID_CACHE, 0)

c.perform()
 类似资料: