前言
老铁们,这个是正经的教程,不要拿来乱用,可以自己用自己的电脑或者手机试,但是别搞别人,懂的都懂!
本文思路
通过opencv调用摄像头拍照保存图像本地用email库构造邮件内容,保存的图像以附件形式插入邮件内容用smtplib库发送邮件到指定邮箱
代码部分
模块导入
授权码(最好写自己的)
服务器接口
拍照保存图像
邮件格式设置
发送邮件
全部代码
import timeimport cv2 # pip install opencv-python -i 镜像源网址from email.mime.image import MIMEImage # 用来构造邮件内容的库from email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartimport smtplib # 发送邮件# 授权码pwd = "******" # 最好写自己的# 服务器接口host = ''port = 25sender = '******@' # 最好写自己的receiver = '****@' # 最好写自己的def GetPicture():# 创建一个窗口cv2.namedWindow('camera', 1)# 调用摄像头 IP摄像头APPvideo = "http://admin:admin@192.168.3.32:8081/video"cap = cv2.VideoCapture(video)while True:success, img = cap.read()cv2.imshow("camera", img)# 按键处理key = cv2.waitKey(10)if key == 27:# escbreakif key == 32:# 空格fileaname = 'frames.jpg'cv2.imwrite(fileaname, img)# 释放摄像头cap.release()# 关闭窗口cv2.destroyWindow("camera")def SetMsg():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('D:/控制摄像头拍照并发送邮件/frames.jpg', 'rb').read()image = MIMEImage(SendImageFile)# 将收件人看见的附件照片名称改为people.png.image['Content-Disposition'] = 'attachment; filename = "people.png"'msg.attach(image)return msg.as_string()def SendEmail(msg):smtp = smtplib.SMTP()smtp.connect(host,port=25)smtp.login(sender, pwd)smtp.sendmail(sender, receiver, msg)time.sleep(2)smtp.quit()if __name__ == '__main__':# 1.拍照保存GetPicture()# 2.设置邮件格式msg = SetMsg()# 3.发送邮件SendEmail(msg)
铁子们快去试试吧~ 还有什么问题都可以私信我!
如果觉得《用python控制手机电脑拍照自动发送邮箱》对你有帮助,请点赞、收藏,并留下你的观点哦!