Python的yagmail模块发送邮件、附件以及SyntaxError: Non-UTF-8 code starting with ‘\xe6‘ in file

目录

一,需要模块:yagmail

二,用代码即可实现(三行即可)

三,详细说明

1,import yagmail 导入模块

2,yag = yagmail.SMTP("user", "password", "host")

3,yag.send(['xxxxxx@qq.com'], subject, content)

四,实例

五,中文报错SyntaxError: Non-UTF-8 code starting with '\xe6' in file


一,需要模块:yagmail

模块下载:
# MAC OS 环境:
pip3 install yagmail -i https://pypi.tuna.tsinghua.edu.cn/simple/

# Windows 环境:
pip install yagmail -i https://pypi.tuna.tsinghua.edu.cn/simple/

二,用代码即可实现(三行即可)

# 导入 yagmail 模块
import yagmail

# 连接邮箱服务器
yag = yagmail.SMTP(user='xxxxxx@qq.com', password='xxxxxx', host='smtp.qq.com')

# 邮件内容
yag.send(to=['xxxxxx@qq.com'], subject='Python 发送邮件', contents='人生苦短,我用 Python')

三,详细说明

1,import yagmail 导入模块

2,yag = yagmail.SMTP("user", "password", "host")

        (1)user 发件人邮箱也就是你自己的邮箱地址

        (2)password 是授权码,不是邮箱密码

        (3)授权码获取方式如下(以QQ邮箱为例):

登录QQ邮箱后,设置——>账户——>POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务——>

我们需要开启POP3/SMTP 服务——>生成授权码

 

 开启后会得到一个授权码,如果已经开启,可以点击下面的 生成授权码 重新获取新的授权码。生成授权码的界面如下,是一个 16 位的字符串,我们直接复制即可。注意,这个授权码和密码一样是极其隐私的,千万不要泄露出来。

3,yag.send(['xxxxxx@qq.com'], subject, content)

    (1)to收件人邮箱,可接收一个列表,传入多个收件人邮箱;

    (2)subject邮件主题;

   (3)contents邮件内容,可接收一个列表,传入多行文本或多个文件。如果我们把文件路径作为列表元素,那么该文件也会作为附件发送;如果 路径下这个文件不存在,那发送的邮件就会将存储路径作为文本直接显示。

四,实例

import yagmail
# coding:utf-8

sub = '主题'
countent = '内容'
path = r'D:\Progect\pythonProject\Hello.txt'    #文件所在路径

yag = yagmail.SMTP('12345@qq.com', 'xxxxxxxxxxxxxxxx', 'smtp.qq.com')

yag.send('54321@163.com', '主题', '内容')        #发送文本内容
yag.send('54321@163.com', sub, countent)        

yag.send('54321@163.com', '主题', path)          #发送文件

五,中文报错SyntaxError: Non-UTF-8 code starting with '\xe6' in file

如果有SyntaxError: Non-UTF-8 code starting with '\xe6' in file  报错的话,在代码最上面加上编码格式  

#coding:utf-8

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值