这篇文章主要介绍了python怎么实现调用摄像头并拍照发邮箱,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
python的五大特点:1.简单易学,开发程序时,专注的是解决问题,而不是搞明白语言本身。2.面向对象,与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。3.可移植性,Python程序无需修改就可以在各种平台上运行。4.解释性,Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。5.开源,Python是 FLOSS(自由/开放源码软件)之一。
1、通过opencv调用摄像头拍照保存图像到本地
2、用email库构造邮件内容,保存图片以附件形式插入邮件内容
3、用smtplib库发送邮件到指定邮箱
4、生成 .exe 文件
5、设置开机自启(每次开机自动运行,启动相机,拍下照片发送到指定邮箱)
import cv2 # pip install opencv-python -i {指定镜像源} 控制摄像头 from email.mime.image imort MIMEImage #用来构造邮件内容的库 from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart import smtplib #发送邮件
系统:Windows10
软件:Miniconda3-latest-Windows-x86_64
模块:opencv-python smtplib numpy email pyinstaller
pyinstaller -F -w path/camera.py
1.右击exe 创建快捷方式
2.win+r 输入以下命令 shell:startup 点击确定打开一个文件夹
3.将生成的快捷文件复制到打开的文件中,下次开机exe程序就会自动启动
python代码实现调用摄像头,并拍照发送邮件
camera.py
import cv2 from email.mime.image import MIMEImage from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart # import smtplib #发送邮件 import smtplib from smtplib import SMTP import time host = 'smtp.qq.com' #邮箱的接口 port = '25' #端口 pwd = 'neelrhh88******ch' #授权码 sender = '邮箱地址' #发送方 receiver = "邮箱地址" #接收方 path = r'./' #图像保存路径 images = time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime()) def GetPicture(): """ 拍照保存图像 """ #创建一个窗口camera cv2.namedWindow('camera',1) #'1' 表示窗口不能随意拖动 #调用摄像头 cap = cv2.VideoCapture(0) ret,frame = cap.read() #读取摄像头内容 cv2.imwrite(path+images+".jpg",frame) #保存到磁盘 #释放摄像头 cap.release() #关闭窗口 cv2.destroyWindow("camera") def SetMsg(): ''' 设置邮件格式 :return: ''' msg = MIMEMultipart('mixed') #标题 msg['Subject'] = '电脑已开机' msg['From'] = sender msg['To'] = receiver #邮件正文内容 text = '电脑已开机,请查收图片确认是否为本人' text_plain = MIMEText(text,'plain','utf-8') #正文转码 msg.attach(text_plain) #图片 SendImageFile = open(path+images+'.jpg','rb').read() image = MIMEImage(SendImageFile) image['Content-Disposition'] = 'attachment;filename="people.jpg"' msg.attach(image) return msg.as_string() def SendEmail(msg): ''' 发送邮件 :msg :邮件内容 :return ''' try: smtp = smtplib.SMTP_SSL(host,port) #创建一个邮件服务 # smtp.connect(host) smtp.login(sender,pwd) smtp.sendmail(sender,receiver,msg) time.sleep(3) smtp.quit() #退出邮件服务 except smtplib.SMTPException as e: print("e") #实现开机自启动 #打包实现启动 例:exe if __name__ == '__main__': # 1.拍照保存 GetPicture() # 2. 设置邮件格式 msg = SetMsg() # 3. 发送邮件 SendEmail(msg)
感谢你能够认真阅读完这篇文章,希望小编分享的“python怎么实现调用摄像头并拍照发邮箱”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。