前言

今天这个案例,就是控制自己的摄像头拍照,并且把拍下来的照片,通过邮件发到自己的邮箱里。
想完成今天的这个案例,只要记住一个重点:你需要一个摄像头

思路

  1. 通过opencv调用摄像头拍照保存图像本地
  2. 用email库构造邮件内容,保存的图像以附件形式插入邮件内容
  3. 用smtplib库发送邮件到指定邮箱

开始代码

工具导入

import time
import cv2  # pip install opencv-python -i 镜像源网址
from email.mime.image import MIMEImage  # 用来构造邮件内容的库
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
import smtplib  # 发送邮件

调用摄像头,保存图片

拍照呢,是用手机的摄像头,软件用的是:IP摄像头(安卓),因为在同一个局域网内,打开APP,里面出现的网址就是摄像头的地址

def GetPicture():"""拍照保存图像:return:"""# 创建一个窗口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():"""邮件格式设置: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('D:/控制摄像头拍照并发送邮件/frames.jpg', 'rb').read()image = MIMEImage(SendImageFile)# 将收件人看见的附件照片名称改为people.png.image['Content-Disposition'] = 'attachment; filename = "people.png"'msg.attach(image)return msg.as_string()

邮件端口设置

授权码可以在这里领取

# 授权码
pwd = "******"   # 最好写自己的# 服务器接口
host = 'smtp.163.com'
port = 25sender = 'XXXX@163.com' # 最好写自己的
receiver = 'XXXX@qq.com' # 最好写自己的

发送邮件功能

def SendEmail(msg):"""发送邮件:param msg:邮件内容:return:"""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控制自己的手机摄像头拍照,并把照片自动发送到邮箱相关推荐

  1. Python黑客系列之——控制自己的手机摄像头拍照,并自动发送到邮箱。

    前言 嗨喽,大家好~今天教大家玩个花的,加入你手机被人偷了或者捡走了,那么如何找到这个人呢?通过定位系统可以,那么还有什么办法是可以让别人给你送回来的方法吗?这就是今天咱们的一个要实现的一个案例! 今 ...

  2. 【Python】控制自己的手机摄像头拍照,并自动发送到邮箱

    前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 今天这个案例,就是控制自己的摄像头拍照, 并且把拍下来的照片,通过邮件发到自己的邮箱里. 想完成今天的这个案例,只要记住一个重点:你需要一个摄像头 思路 ...

  3. AngularJS中使用HTML5手机摄像头拍照

    1. 项目背景 公司开发一个网站,在做用户头像修改的时候领导提到增加一个由摄像头拍照实现修改头像的功能.因为我们网站是基于Html5进行开发,所以就直接采用H5来实现拍照.起初觉得这个功能很简单,但是 ...

  4. H5调用手机摄像头拍照,如何压缩后上传

    H5调用手机摄像头拍照后,怎样压缩再上传? 实际的压缩功能,就是利用canvas画布功能,将图片进行裁剪后保存图片的base64数据流,然后上传. 案例全部代码,示下: <!DOCTYPE ht ...

  5. 原生html调手机拍照,如何让HTML5调用手机摄像头拍照——实践就是一切

    原文:如何让HTML5调用手机摄像头拍照--实践就是一切 NanShan 小编将思路提供给了大家,学编程最重要的是实践,我这虽然有完善的代码,但是希望大家都可以自己写出属于自己的代码 HTML5 Th ...

  6. Python之实现自动开启摄像头拍照,后面发送邮寄给个人

    Python之实现自动开启摄像头拍照,后面发送邮寄给个人 文章目录 Python之实现自动开启摄像头拍照,后面发送邮寄给个人 第一步,我们要开启电脑的摄像头实现拍照: 第二步,我们要发送邮件,就必须创 ...

  7. java 调用手机相册_微信公众号调用手机摄像头拍照和本地相册

    [实例简介] 微信公众号调用手机摄像头拍照和本地相册,上传服务器 [实例截图] [核心代码] 微信公众号调用手机摄像头拍照和本地相册(2) └── 微信公众号调用手机摄像头拍照和本地相册 └── 微信 ...

  8. html调起苹果手机摄像头_HTML5如何调用手机摄像头拍照实现方法介绍

    HTML5如何调用安卓手机摄像头拍照实现方法介绍.HTML5 The Media Capture API提供了对摄像头的可编程访问,可以直接用getUserMedia获得摄像头提供的视频流.其实实际上 ...

  9. 利用摄像头拍照并保存照片的程序(python实现,含UI界面)

    摘要:许多情况下我们需要用到摄像头获取图像,进而处理图像,这篇博文介绍利用pyqt5.OpenCV实现用电脑上连接的摄像头拍照并保存照片.为了使用和后续开发方便,这里利用pyqt5设计了个相机界面,后 ...

最新文章

  1. winform 界面 xml化_FlinkSQL 1.11 on Zeppelin平台化实践
  2. Java JDK 学习笔记:File类
  3. Java加密算法 AES
  4. 《C#高级编程》 读书心得1--核心C# 几点你可能没注意,但很基础的小东西。
  5. ubuntu软件的卸载和安装
  6. 看的一个pdf说的。。大型网站架构演变
  7. Webpack初学者介绍
  8. VS2010问题汇总
  9. Homework2-project review score of each team
  10. System.ComponentModel.Component : MarshalByRefObject, IComponent, IDisposable
  11. window下nginx反向代理配置
  12. (四)Maven构建多模块项目
  13. 学习逆向知识之用于游戏外挂的实现.第二讲,快速寻找植物大战僵尸阳光基址.以及动态基址跟静态基址的区别...
  14. 8种常被忽视的SQL错误用法
  15. Java—以当前系统时间生成随机数
  16. Maven安装教程配置
  17. 十大经典算法及其优化
  18. 一文详解工业相机和镜头选取
  19. python在地图上标注点_只要两步,用Python将地址标记在地图上!
  20. 好莱坞十大经典动作片

热门文章

  1. manjaro安装mpv
  2. 一文读懂责任分配矩阵,解决你80%的项目难题
  3. 电脑 屏幕尺子 量角器
  4. php分班算法,基于 python 实现的中小学随机化分班算法(思路、实现、代码以及打包好的可执行文件)...
  5. 11、分布式爬虫(一)
  6. 极客大学产品经理训练营 产品文档和原型 作业4
  7. vue+element UI的 table组件实现日历
  8. 翻译API新加法、瑞典、希腊、捷克文全球语言互译功能
  9. 深信服超融合基础架构管理平台--虚拟网络测试实践
  10. JavaScript前端代码规范