python控制摄像头拍照_用Python控制摄像头拍照并发邮件
1 前言
为什么会有写这个程序的想法呢?
最初的想法是写一个可以用电脑前置摄像头拍照的程序,在舍友使用你电脑的时候,不经意间获取到一大堆奇葩舍友的表情包。
然后我又突发奇想,要不搞个开机启动吧,这样我就可以看到是谁开启了我的电脑啦。
然后,突(nao)发(dong)奇(da)想(kai)的我又想到万一我电脑不在身边怎么办?要不再加个邮件发送机制吧,开机拍到照片再邮件发送给我?哈哈
2 工具
deepin 15.9
好看好用的国产linux系统
python 2.7或者3.6
解释器,哪个版本都可以,我选择3.6
smtplib
用来发送邮件
用来构造邮件内容的库
opencv
用来调取摄像头拍摄照片
time
获取开机以及拍照的时间
os
判断网络连接
获取脚本路径
sys
判断网络是否联通
3 思路
1.用opencv库调用摄像头拍照保存为文件。
2.检查网络是否连接,未连接则图片保存到本地。
3.用email库构造邮件内容,把保存的照片以附件的形式插入到邮件内容中。
4.用smtplib库发送邮件给指定邮件接收者。
5.实现脚本开机自启动。
4 安装及导入所使用的包
首先当然是安装opencv啦。
其他的email、smtplib、sys、os、time为python默认安装的包,我们只需要导入即可。
如果是python3.6安装opencv就在终端输入:
pip3install opencv-python
如果是python2.7安装opencv,就在终端输入:
pipinstall opencv-python
安装完成后,我们导入必要的包。
各个包的作用在前文已经讲过,不再多言。
email 我们只需要部分功能,所以选择性导入
5 设置参数
将smtp服务器,登录邮箱账号及密码,收件人,脚本路径等设置为全局变量。方便以后程序移植与修改。
注:很多邮箱为了安全起见,不会使用真实的登录密码,而是要使用授权码,在QQ邮箱的设置里面可以找到生成授权码选项。
6 实现拍照
7 构造邮件内容
8 实现邮件发送
9 判断网络联通状态
判断网络联通状态的方法很多,我采用很简单很直接的ping。
10 主函数逻辑
如果网络连接正常,则拍照发邮件。
如果网络未连接,等待十秒钟再次测试,如果等待次数超过设置的最大次数,程序退出。
11 实现开机自启动
首先要写一个开机自启脚本,文件名为:autoStart.sh
脚本内容为
然后 在/etc/rc.local最后添加一行
./home/projects/sendemail/autoStart.sh
大功告成。
10 重启系统
代码都写好了,重启系统就可以收到邮件啦。
python控制摄像头拍照_用Python控制摄像头拍照并发邮件相关推荐
- python实现摄像头拍照_使用Python控制摄像头拍照并发邮件
o1 前言 为什么会有写这个程序的想法呢? 最初的想法是写一个可以用电脑前置摄像头拍照的程序,在舍友使用你电脑的时候,不经意间获取到一大堆奇葩舍友的表情包. 然后我又突发奇想,要不搞个开机启动吧,这样 ...
- python语音控制电脑程序_用Python编程实现语音控制电脑_天津SEO
天津SEO 电脑面前的你,是否也希望能让电脑听命于你? 当你累的时候,只需说一声"我累了",电脑就会放着优雅的轻音乐来让你放松. 或许你希望你在百忙之中,能让电脑郎读最新的NBA比 ...
- python实现屏幕录制_使用python调用ffmpeg的录制项目总结
录制项目终于做完,不用总是提醒自己抓紧时间这样来想问题了. 在完成之后带着一些满足感,回头看看哪些地方是需要改进的,哪些地方又是有更好的替代方案,自己又有哪些不足. 下面按照软件的各部分分别做作总结: ...
- python程序员现状_天才Python程序员身价上亿却被说挫,6个月减90斤,逆袭成文艺范男神!...
image 你对程序猿的印象是怎么样? 你所知道的程序员,是一种自嘲为码农的猿类 学习Python中有不明白推荐加入交流群 号:864573496 群里有志同道合的小伙伴,互帮互助, 群里有不错的视频 ...
- python类高级用法_十.python面向对象高级用法
1.反射 1.1 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的 ...
- python写机器人程序_用Python写的一个多线程机器人聊天程序
本人是从事php开发的, 近来想通过php实现即时通讯(兼容windows).后来发现实现起来特别麻烦, 就想到python.听说这家伙在什么地方都能发挥作用.所以想用python来做通讯模块...所 ...
- 以下选项中python用于异常处理结构_《Python 程序设计》复习题
目录 填空题 一.基础知识 二.序列 三.选择结构与循环结构和函数及面向对象.文件 选择题 一.Python 基础语法 二.基本数据类型 三.程序的控制结构 四.函数和代码复用 五.组合数据类型 六. ...
- python小老鼠编程_成都python函数学习教程,Python编写课程
1.urllib2/urllib实现urllib2和urllib是Python中的两个内置模块,要实现HTTP功能,实现方式是以urllib2为主,urllib为辅.1.1首先实现一个完整的请求与响应 ...
- python是脚本语言_上海python脚本语言课程
第 一阶段.Pyhton编程基础 Python基础/基本数据类型/数据类型转换/流程控制和循环结构/函数/字符串/列表和元组/字典.集合.文件操作/高阶函数和匿名函数/模块.递归函数/面向对象编程/封 ...
最新文章
- 深入理解分布式技术 - 分布式事务总结回顾
- 适合小白了解学习的DevOps实践
- java异常——分析堆栈跟踪元素+使用异常机制的技巧
- dojo 七 DOM dojo/dom
- 【java】java中文件监控WatchService使用
- word文档怎么到下一页去写_「word技巧」懂得这几个word排版小技巧,还怕效率不高?...
- 【数据仓库】数据集市
- pip 安装tensorflow==2.1太慢怎么办?(pip安装超时Read timed out)
- java控制结构_Java 控制结构与方法
- windows环境如何测试端口
- 浅谈核桃的栽培技术与种植管理方法
- Oracle KEEP的用法
- c语言游戏经典案例,C语言_编游戏案例精编.doc
- 【树莓派】树莓派3B+搭建Ubuntu
- 学习正则表达式 - 用 HTML 标记文本
- 橙单微服务的权限部分
- DNS篇之DNS协议详解
- 响应式网页设计_响应式网页设计–如何使网站在手机和平​​板电脑上看起来不错
- VB程序设计教程(第四版)龚沛曾-实验8-7
- 高仿土豆视频iOS版
热门文章
- android设置透明主题后背景为黑色,android – 设置主题Programmactically导致黑色背景...
- 最全链接拦截申诉入口大全
- ant-design中对单个或多个table列表数据进行动态列合并
- 卡通化图片python实现代码_媳妇儿喜欢玩某音中的动漫特效,那我就用python做一个图片转化软件。...
- 360证实将推移动通讯工具口信 类似微信米聊
- 【面经】联想大数据开发面经
- js打开新窗口的各种方法
- UI设计教程:几步教你如何创建一个漂亮又好吃的饼干
- Android应用程序访问linux驱动第三步:实现并向系统注册Service
- 基于ARM的嵌入式Bootloader实现自动升级