python邮件发送和正则表达式

一、 邮件发送

1. 开通邮箱SMTP服务,并获取 授权码

这个账户是你要使用此邮箱发送邮件的账户,密码不是平时登录邮箱的密码,而是开通 POP3/SMTP 功能后设置的客户端授权密码。

这里以 126 邮箱为例:

2 安装

pip3  install  yagmail

3. 基本用法

import shmail
sh = shmail.SMTP(user='自己的账号',password='账号的授权码',host='smtp.126.com',  # 邮局的 smtp 地址port='端口号',       # 邮局的 smtp 端口smtp_ssl=False)sh.send(to='收件箱账号',subject='邮件主题',contents='邮件内容')

4. 实例

下面是以我的 126 邮箱为例, 使用系统密钥环的方式,向我的 163邮箱发送了一封邮件。

import shmail# 这个要刚才已经成功开通 SMTP 的邮箱账号
email_user = 'shanhai@126.com'# 这个必须是客户端授权码,不是登录密码
email_pwd  = 'yourpassword'# 这个可以从邮件服务提供商获取
email_host = 'smtp.126.com'# 邮件正文
email_content = """你不是我喜欢的那种人却慢慢变成我喜欢的那个人"""sh = shmail.SMTP(user=email_user,password=email_pwd,host=email_host,port=25,smtp_ssl=False)
sh.send(to='shanhai@163.com',subject='山海',contents=email_content)

这样就愉快的发送了一封测试邮件到 docker@163.com 的邮箱。


5. 群发附件并且给邮件内容加密

给多个人发送只需要把关键字参数 to 的值改成列表即可,列表中放入需要通知的人的邮箱地址。

email_users=["user1@163.com", "user2@126.com"]to=email_users

希望加密邮件内容,也很简单。
大部分运营上提供的加密邮件接收的端口是 465,把端口改成 465
其实 smtp_ssl=True 这个参数不传也行,因为默认的就是 True

实例图片

保存上面的图片到本地,作为测试之用。

这里保存的名称是 山海.jpg

附件和内容可以都放到一个列表中

contents=[email_content, email_image]

代码

import shmailemail_user = 'shanhai@126.com'
email_pwd  ='yourpassword'
email_host = 'smtp.126.com'email_content = """你不讲真心话
我却在大冒险"""email_image = "./拥抱.jgp"sh = shmail.SMTP(user=email_user,password=email_pwd,host=email_host,port=465,smtp_ssl=True)
sh.send(to=['shanhai@163.com','1508213483@qq.com'],subject='山海',contents=email_content,attachments=email_image
)

邮件收到显示:

有的时候,发送的邮件会被识别为垃圾邮件^_^

在发送邮件内容的列表中,假如是有效的路径,就会作为附件发送,假如不是有效路径,就会作为普通文字发送。

二、发送钉钉消息

钉钉自定义机器人 API 官方文档

1. 自定义机器人




2. 发送给群内所有人

郑重警告⚠️

每个机器人每分钟只可以发送 20 条信息,多了,会被禁止使用 10 分钟.

pip3 install  requests
import requestscontent = {"msgtype": "text","text": {"content": "shanhai 出发!" # 这里必须包含之前定义关键字 },"at": {# 发送给群里的所有人"isAtAll": True}
}headers = {"Content-Type": "application/json;charset=utf-8"}url = "https://oapi.dingtalk.com/robot/send?access_token=你自己的 token"r = requests.post(url=url,headers=headers,json=content)
print(r.content.decode())

3. 发给指定的人

需要知道他们的注册钉钉时候使用的手机号

import requestscontent = {"msgtype": "text","text": {"content": "shark 出发!"},"at": {"atMobiles": [# 单独 @ 某个人,使用绑定的手机号,# 多个人用户英文逗号隔开"131xxxxxx811","137xxxxxxxxx"]}
}headers = {"Content-Type": "application/json;charset=utf-8"}url = "https://oapi.dingtalk.com/robot/send?access_token=你自己的 token"r = requests.post(url=url,headers=headers,json=content)
print(r.content.decode(encoding="utf-8"))  # 指定字符编码

python邮件发送和正则表达式(1)相关推荐

  1. Python邮件发送SMATP模块详细总结(含qq邮箱及163邮箱服务开启及授权码获取,多附件发送)

    Python实现电子邮件发送 在生活中或许我们多数都在用微信或者是QQ,但是工作中就会涉及邮件了,我也是最近在工作中用到了,所以找了些资料,有的较为完备有的就特别零散,所以自己也来整理分享一下.这里主 ...

  2. python邮件发送哪个好_最全总结!聊聊 Python 发送邮件的几种方式

    1. 前言 邮件,作为最正式规范的沟通方式,在日常办公过程中经常被用到 我们都知道 Python内置了对 SMTP 的支持,可以发送纯文本.富文本.HTML 等格式的邮件 本文将聊聊利用 Python ...

  3. [Python] [邮件发送] 用Python的smtplib和email库进行邮件发送

    目录 1.Intro 2.Details 3.Theory 4.Environment 5.Source 6.Conclusion 1.Intro 眼看就到了12月中旬,除了帮朋友码竞赛题,前半个月可 ...

  4. python邮件发送

    最近设计了一个小的应用程序,主要是根据文件中邮件地址发送一份excel中内容,并且在接受方收到邮件都是以网页的格式呈现的. 下面主要是对python发送邮件涉及到的部分知识点做个总结 一.先介绍一下S ...

  5. Python 邮件发送之嵌套图片发送附件

    哎呀,马上就要五一小长假了,想想都有点小激动,嘿嘿~约那个妹子出去嗨? 人事:五一,4号,5号在公司加班,全体加班. 我:我TM,WTF?  怀着悲愤的心情,写下这个邮件发送,没事的时候给她发点垃圾邮 ...

  6. Python 邮件发送

    python发送各类邮件的主要方法 python中email模块使得处理邮件变得比较简单,今天着重学习了一下发送邮件的具体做法,这里写写自己的的心得,也请高手给些指点.     一.相关模块介绍 发送 ...

  7. python邮件发送csv附件_Python2.7 smtplib发送带附件邮件报错STARTTLS解决方法

    最近在SIOMP系统中添加一项功能时,即自动发送带附件邮件到指定邮箱时,发现在发送时报错:错误信息:STARTTLS extension not supported by server.很是奇怪,但发 ...

  8. python邮件发送脚本

    转自:http://phinecos.cnblogs.com/ 1 #!/usr/bin/python 2 #coding=utf-8 3 4 #@author:dengyike 5 #@date:2 ...

  9. python邮件发送和图片

    ​        上班时间干别的事情是不太好的,如果被别人看到的话会很大程度上影响个人的前进的步伐.但是如果工作做的差不多了,那么闲着也是闲着.反正cpu资源浪费一天就是一天的折旧,那还不如多学点东西 ...

最新文章

  1. linux 安装java10
  2. 安卓开发之使用viewpager+fragment实现滚动tab页
  3. 【HDU 1576】 A/B
  4. spring boot pom配置_125 SpringCloud服务配置中心
  5. mysql 允许其他主机访问权限_允许其他主机访问本机MySQL
  6. java.lang.NoClassDefFoundError: hudson/tasks/Mailer$UserProperty
  7. ci/cd heroku_在Heroku上部署Dash或Flask Web应用程序。 简易CI / CD。
  8. HTML5 webfont字体图标的使用
  9. python post与get的区别_Python Requests库 Get和Post的区别和Http常见状态码
  10. 使用Ionic3创建原生app系统入门
  11. 全球首个用户分享区块链+AI大数据体系,专业跨境医疗机构“海医通”发布XMC“海医链”
  12. Redis入门指南笔记
  13. 视频号推荐机制:可社交裂变冷启动
  14. python 豆瓣高分电影爬虫
  15. 困扰我许久的痛楚:闭包
  16. 惠普电脑锁屏快捷键怎么设置?
  17. Threats to Validity_追逐梦想的顾咏丰_新浪博客
  18. Pytest 基础教程
  19. (java)输入一个正整数n(1≤n≤6)和n阶方阵A,交换方阵A中的最大值与最小值位置。假定方阵A中的最大值与最小值都唯一。
  20. 模拟德州扑克对战游戏

热门文章

  1. 满满的大片既视感,还原 Pwn2Own 黑客大赛首日战况
  2. angualr8观察者模式_理解观察者模式——用Angular的httpClient来解释观察者
  3. Yelp Dataset(Yelp业务-评论-用户数据集)
  4. 教师资格证面试 计算机应用,请问下,中职类教师资格证,科目是计算机应用。可..._教师招聘考试_帮考网...
  5. pdf转txt java_pdf转换txt怎么操作?pdf文件可以转换成txt文件吗?
  6. 手机扫一扫ocr识别技术
  7. Google Capture The Flag 2019 (Quals) WP
  8. 程序员去哪里找靠谱的兼职?(附项目库)
  9. aix查看lv_AIX详细的VG,LV扩容步骤
  10. 技术宅记录下看过的番