上班时间干别的事情是不太好的,如果被别人看到的话会很大程度上影响个人的前进的步伐。但是如果工作做的差不多了,那么闲着也是闲着。反正cpu资源浪费一天就是一天的折旧,那还不如多学点东西。我们之前的过程都需要点击运行,然后出来一个图。这种方式目标太大,容易被人发现。那么我们做个定时任务。然后把图片不显示,而是保存为图片。运营结束之后将图片放到邮件里,然后发送到手机。相对短信需要花费金钱来说,邮件最好了。
通过摸索实践,作者实现了发送邮件的功能。
import time
from PIL import ImageGrab
import smtplib
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.header import Header
endDate=time.strftime('%Y-%m-%d',time.localtime(time.time()))
# img = ImageGrab.grab()
# img.save('E:\\12.png')
my_sender = '123@qq.com' # 发件人邮箱账号
my_pass = 'tmugmde3333ad' # 发件人邮箱密码
my_user = '123@qq.com' # 收件人邮箱账号,我这边发送给自己
sender = “123@qq.com”
receivers = ['123@qq.com'] # 接收邮件,可设置为你的QQ邮箱或者其他邮箱
msgRoot = MIMEMultipart('related')
msgRoot['From'] = Header(str(endDate)+" 大盘趋势", 'utf-8')
msgRoot['To'] = Header("测试", 'utf-8')
subject = str(endDate)+' 趋势'
msgRoot['Subject'] = Header(subject, 'utf-8')
msgAlternative = MIMEMultipart('alternative')
msgRoot.attach(msgAlternative)
mail_msg = """
<p>大盘趋势</p>
<p>图片演示:</p>
<p><img src="cid:image1"></p>
"""
msgAlternative.attach(MIMEText(mail_msg, 'html', 'utf-8'))
# 指定图片为当前目录
fp = open('E:\\12.png', 'rb')
msgImage = MIMEImage(fp.read())
fp.close()
# 定义图片 ID,在 HTML 文本中引用
msgImage.add_header('Content-ID', '<image1>')
msgRoot.attach(msgImage)
try:
smtpObj = smtplib.SMTP()
smtpObj.connect('smtp.qq.com', 25) # 25 为 SMTP 端口号
smtpObj.login(my_user,my_pass)
smtpObj.sendmail(sender, receivers, msgRoot.as_string())
print("邮件发送成功")
except smtplib.SMTPException:
print("Error: 无法发送邮件")
对于定时任务来说太简单了,网上资料一大推还不带坑的那种。ply保存图片也是。