007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)

  大家好,这里是滑稽研究所。随着暑假的到来,熊孩子们都放假了,家中的手办、手机、电脑都成为了他们的进攻目标。特别是我们贵重的电脑,很多时候被熊孩子们蹂躏之后他们还不承认。那怎么办?看我的!
  根据需求,我们需要电脑一被启动就调用摄像头进行一次拍摄来抓住我们的‘嫌疑人’,之后第一时间发送邮件通知我们——电脑被熊孩子进攻了!我们以前在做图像处理和个人网站搭建时,调用电脑摄像头和发送邮件的功能都学习过。我只会发送带图片的邮件怎么办?我不知道怎么让电脑一开机就自动运行我的程序怎么办?别着急,且看我一一道来。
  我们需要分别需要用到opencv和smtplib库来调用我们的摄像头拍摄以及发送邮件。在实现上面的功能之后,我们还需要把我们的程序打包成exe文件,放入我们的电脑启动项中,使我们的程序可以开机自启。OK,上代码!
源代码:

import cv2

import time

import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
from email.mime.image import MIMEImage

cap = cv2.VideoCapture(0)  # 注意:这个地方本文的图片里没有参数0,但是应该传入0
f, frame = cap.read()  # 此刻拍照
cv2.imwrite(r"拍摄图片的保存路径", frame)  # 将拍摄内容保存为png图片
cap.release()

time.sleep(1)

def send():
    sender = '发件人@qq.com'
    receivers = '收件人@qq.com'
    message =  MIMEMultipart('related')
    subject = '安全监控'
    message['Subject'] = subject
    message['From'] = sender
    message['To'] = receivers
    content = MIMEText('imageid','html','utf-8')
    message.attach(content)

    file=open(r"拍摄到的照片路径", "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()
        print ("邮件发送成功")
    except smtplib.SMTPException as e:
        print(e)
send()

  上面的代码实现了我们的拍摄和发送邮件通知的功能,之后我们把它打包成exe文件放入开机启动项即可。
在我的电脑里输入如下命令打开启动项:

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)_第1张图片
  把我们刚才打包好的exe程序放入该文件夹即可。我们重新启动电脑之后发现,程序正常启动,我们收到了一封名为安全监控的邮件,打开之后正是我们程序发送的,其中拍下了启动我们电脑的凶手 —— 一只阿拉斯加!
  运行结果:
007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)_第2张图片
007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)_第3张图片
  那怎么关闭这个启动程序?打开任务管理器,在启动里找到我们的程序,点击禁用即可。
007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)_第4张图片
  嗯,大家可以看到,非常的好用~
  好,那么本期文章就到这里结束了,我们下期再见呀。

  转载自:滑稽研究所
  阅读更多相关文章,请关注我们吧!
007间谍风云之谁动了我的电脑!(Python实现电脑开机监控)_第5张图片

你可能感兴趣的:(python,opencv,python,监控程序,opencv)