【Raspberry pi+python+mysql】红外传感器-发邮件-存数据库
1、mysql
http://dev.mysql.com/doc/refman/5.5/en/tutorial.html
mysql+python
http://dev.mysql.com/doc/connector-python/en/connector-python-examples.html
先打开数据库连接:
conn=mdb.connect(host="localhost",user='root',passwd='******',db='sensor',charset='utf8')
再取得指针
cur=conn.cursor()
执行sql语句字符串
sql="insert into infrared_sensor(record_time,in_range) values(now(),'%s')"%param
cur.execute(sql)
提交事务,关闭指针,关闭连接
conn.commit()
cur.close()
conn.close()
# -*- coding: utf-8 -*-
"""
Created on Mon Feb 3 21:23:08 2014 @author: pi
""" import smtplib
from email.mime.text import MIMEText
import RPi.GPIO as gpio
import MySQLdb as mdb
import time mail_to="*******@qq.com" def store_in_database(param):
conn=mdb.connect(host="localhost",user='root',passwd='******',db='sensor',charset='utf8')
cur=conn.cursor()
sql="insert into infrared_sensor(record_time,in_range) values(now(),'%s')"%param
cur.execute(sql)
conn.commit()
cur.close()
conn.close() def send_mail(to_list,title,content):
mail_host="smtp.126.com"
mail_user="*****"
mail_pass="******"
mail_postfix="126.com"
me=mail_user+"<"+mail_user+"@"+mail_postfix+">"
msg=MIMEText(content)
msg['Subject']=title
msg['From']=mail_user
msg['To']=to_list mail=smtplib.SMTP()
mail.connect(mail_host)
mail.login(mail_user,mail_pass)
mail.sendmail(me,to_list,msg.as_string())
mail.close() def is_anybody_home():
gpio.setwarnings(False)
gpio.setmode(gpio.BOARD)
gpio.setup(22,gpio.IN)
if gpio.input(22)==1:
return 1
else:
return 0 current_time="%d" % time.localtime().tm_hour+":"+ "%d" % time.localtime().tm_min if is_anybody_home()==1:
send_mail(mail_to,"Is someone in sensor range?--"+current_time,"Yes--"+current_time)
param="Yes"
store_in_database(param)
else:
send_mail(mail_to,"Is someone in sensor range?--"+current_time,"No--"+current_time)
param="No"
store_in_database(param)
【Raspberry pi+python+mysql】红外传感器-发邮件-存数据库的更多相关文章
- (RaspBerry Pi) Python GPIO 基本操作
目前打算由潛入深慢慢學習RaspBerry Pi, 所以先由最容易下手的Python進入樹莓派的世界 首先要使用 GPIO 需要利用RPI.GPIO package想當然爾必須先安裝 所以先執行下列命 ...
- 手把手教你使用Python轻松搞定发邮件
前言 现在生活节奏加快,人们之间交流方式也有了天差地别,为了更加便捷的交流沟通,电子邮件产生了,众所周知,电子邮件其实就是客户端和服务器端发送接受数据一样,他有一个发信和一个收信的功能,电子邮件的通信 ...
- Python+selenium自动循环发邮件
Python源代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import ...
- python使用网易邮箱发邮件
# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText import email.mime.multip ...
- 用Python的smtp模块发邮件的示例
# -*- coding: UTF-8 -*- import smtplib from email.mime.multipart import MIMEMultipart from email.mim ...
- Python 小练习三 发邮件
import smtplib,os from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipar ...
- Python+selenium整合自动发邮件功能
主要实现的目的是:自动将测试报告以邮件的形式通知相关人员 from HTMLTestRunner import HTMLTestRunner import HTMLTestReport from em ...
- 检测MYSQL不同步发邮件通知的脚本
脚本代码如下:#!/bin/bash ...
- python 向qq邮箱发邮件
#coding:utf-8 ''' Created on 2017-1-12 @author: xiaochun ''' import smtplib from email.mime.text imp ...
随机推荐
- 【转】spring MVC入门示例(hello world demo)
部分内容来自网络:<第二章 Spring MVC入门 —— 跟开涛学SpringMVC > 1. Spring MVC介绍 Spring Web MVC是一种基于Java的实现了Web M ...
- UVa145 Gondwanaland Telecom
Time limit: 3.000 seconds 限时:3.000秒 Problem 问题 Gondwanaland Telecom makes charges for calls accordin ...
- CCF-201512-3 绘图
问题描写叙述 用 ASCII 字符来绘图是一件有趣的事情.并形成了一门被称为 ASCII Art 的艺术.比如,下图是用 ASCII 字符画出来的 CSPRO 字样. .._._.._.._-_.. ...
- KVM Run Process之KVM核心流程
在"KVM Run Process之Qemu核心流程"一文中讲到Qemu通过KVM_RUN调用KVM提供的API发起KVM的启动,从这里进入到了内核空间执行,本文主要讲述内核中KV ...
- JDBC:数据库操作:处理大对象CLOB数据
目标: 了解大对象处理基本原理, 掌握CLOB数据的读,写操作. 可以使用CLOB类处理大文本数据. 大对象处理主要指CLOB和BLOB两种类型字段.可以大量存储文字. 要想在程序中处理这样的大数据操 ...
- 一款基于Netty开发的WebSocket服务器
代码地址如下:http://www.demodashi.com/demo/13577.html 一款基于Netty开发的WebSocket服务器 这是一款基于Netty框架开发的服务端,通信协议为We ...
- 【转】C#播放H264裸码流
原文地址:https://www.cnblogs.com/cangyue080180/p/5873351.html 要播放H264裸码流,可以分拆为以下三个工作: 1.解码H264裸码流获取YUV数据 ...
- 【搞机】Apple Pencil 开箱
前言 上次入手了新的iPad Pro .好开心呢. 然后发现官方的笔不错呢~ 后来,苹果官方的12期免息分期又回来啦~ 买买买!!! 上图 体验 官方的笔真的不愧叫Pencil ,完美模拟铅笔的手感. ...
- Python 统计代码的行数,Python脚本 统计代码
# coding=utf-8 import os import time # 需要统计的文件夹或者文件,这是在windows下运行的,如果使用Linux系统可以使用 basedir = '/app/l ...
- Windows下Python添加MySQLdb扩展模块
[更新 2012-09-16] 这里可以下载已经打包好的EXE文件,http://sourceforge.net/projects/mysql-python/(国内需穿越才可访问) DBank备份下载 ...