加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

吴俊杰“在线数字气象站”-马峰老师使用摄像头拍照并实时传送至邮箱2

(2023-04-03 16:53:14)
分类: 研究-学习
import cv2
import time
import smtplib
from email.mime.image import MIMEImage
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
folder = 'D:/img/pic/'   # 定义图片路径(Mind+中运行时需要指定到固定位置)

def GetPicture():#拍照保存图像
    camera = cv2.VideoCapture(0, cv2.CAP_DSHOW) #win7一定需要后面的参数
    camera.set(3, 1080)  #设置图像像素大小  #不是随机设置,这样的参数好像实际显示是1024*768
    camera.set(4, 720)
    success,img = camera.read()
    cv2.imshow("camera",img)
    cv2.imwrite(folder + name +".jpg",img) 
    cv2.waitKey(1000)
    camera.release()#释放摄像头
    cv2.destroyWindow("camera")# 关闭窗口

def setMsg():#       邮件格式设置
    msg = MIMEMultipart('mixed')
    msg['Subject'] = '镇江温度信息-定时照片'
    msg['From'] = sender  #发送方
    msg['To'] = receiver  #接收方
    
    #邮件正文
    text = name+'镇江温度信息'
    text_plain = MIMEText (text,'plain','utf-8')
    msg.attach(text_plain)
   
    #图片附件
    SendImageFile = open("D:/img/pic/"+ name + ".jpg",'rb').read()
    image = MIMEImage(SendImageFile)
    image['content-Disposition'] = 'attachment;filename=photo'+name+'.jpg'
    msg.attach(image)
    return msg.as_string()

def SendEmail(msg):#    发送邮件
    smtp = smtplib.SMTP()
    smtp.connect(host)
    smtp.login(sender,pwd)
    smtp.sendmail(sender,receiver,msg())
    smtp.quit()

pwd = 'gkywkfbptzbvcbah'# 授权码  设置在邮箱的“设置”-“账户”-“开启服务:POP3/SMTP服务 ”中,开启pop3服务后,获得授权码
host = 'smtp.qq.com'
port = 25
sender = '215593206@qq.com'
receiver = '25081836@qq.com'

while(True):
    name = time.strftime("%Y%m%d-%H%M%S",time.localtime())
    GetPicture()
    msg = setMsg
    SendEmail(msg)
    cv2.waitKey(10000)

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有