Python一行代碼實現自動發郵件功能

1. 用Python每天給女神發送舔狗問候

用Python自動發送最基本的郵件(主題+收件人)

知識點

郵件結構

以263企業郵為例

郵件形式 內容
最基本 收件人+主題
最常用 收件人+主題+正文
一般流程申請郵件 收件人+主題+正文+抄送
發報表郵件 收件人+主題+抄送+附件
加說明報表郵件 收件人+主題+正文+抄送+附件

Python調用zmail模塊

import zmail
zmail.server('[email protected]','password').send_mail('[email protected]',{'subject':'我是你的舔狗1號'})

把收件人改成女神

import zmail
zmail.server('[email protected]','password').send_mail([('女神','[email protected]')],{'subject':'我是你的舔狗1號'})

作業:把收件人外顯名改成美國隊長

可能會遇到的問題

確認密碼沒錯仍然說密碼不對: 可能需要開通對應的SMTP專用密碼(授權碼),例如QQ郵箱

服務器無響應

部分比較特殊的郵件可能需要自行設置smtp服務器,一般是去找郵箱提供方,以263企業郵為例

這個時候需要寫作如下代碼

import zmail
zmail.server('[email protected]','password',smtp_host='smtp.263.net',smtp_port=25).send_mail('[email protected]',{'subject':'我是你的舔狗1號'})

擴展知識:api

例如舔狗語錄API:https://api.uomg.com/api/rand.qinghua

import requests
import json
import zmail
response = requests.get('https://api.uomg.com/api/rand.qinghua')
tiangou = json.loads(response.text)['content']
zmail.server('[email protected]','password').send_mail('[email protected]',{'subject':tiangou})

2. 用Python發每日播報

用Python自動發送最常用的郵件(主題+收件人+正文+抄送)

import zmail
mail = dict(
	subject='今日數據情況',
	content_text='今日新錄入名片100張,有效添加50張,添加率為50%'
)
zmail.server('[email protected]','password').send_mail('[email protected]',mail)

在此基礎上,重點突出添加率

帶格式的正文

import zmail
mail = dict(
	subject='今日數據情況',
	content_html='今日新錄入名片100張,有效添加50張,添加率為<strong>50%</strong>'
)
zmail.server('[email protected]','password').send_mail('[email protected]',mail)

註:需要額外的HTML基礎知識

如果有很多個收件人的時候

import zmail
mail = dict(
	subject='今日數據情況',
	content_text='今日新錄入名片100張,有效添加50張,添加率為50%'
)
zmail.server('[email protected]','password').send_mail(['[email protected]','[email protected]'],mail)

可能還要抄送老大

import zmail
mail = dict(
	subject='今日數據情況',
	content_text='今日新錄入名片100張,有效添加50張,添加率為50%'
)
zmail.server('[email protected]','password').send_mail('[email protected]',mail,cc='[email protected]')

作業:給抄送人也改一個別名,改成天山大佬

3. 用Python發送每日報表

用Python自動發送最常用的郵件(主題+收件人+正文+附件)

import zmail
mail = dict(
	subject='今日數據情況',
	content_text='今日新錄入名片100張,有效添加50張,添加率為50%.各組詳情請見附件',
	attachments=r'E:\Onedrive\桌面\報表.xlsx'
)
zmail.server('[email protected]','password').send_mail('[email protected]',mail)

如果有多個附件,代碼如下

import zmail
mail = dict(
	subject='今日數據情況',
	content_text='今日新錄入名片100張,有效添加50張,添加率為50%.各組詳情請見附件報表2',
	attachments=[r'E:\Onedrive\桌面\報表1.xlsx',r'E:\Onedrive\桌面\報表2.xlsx']
)
zmail.server('[email protected]','password').send_mail('[email protected]',mail)

作業:寫一份完整的郵件代碼,包含以下內容

多個收件人,收件人都外顯為姓名
多個抄送人,也帶上自己名字
多個附件,並在正文中註明附件作用
帶格式的正文:附件名使用斜體,添加率使用加粗,領導名字使用紅色加粗字體顯示
主題變成一個自動帶上當天日期的內容

總結

到此這篇關於Python一行代碼實現自動發郵件功能的文章就介紹到這瞭,更多相關Python自動發郵件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: