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】红外传感器-发邮件-存数据库的更多相关文章

  1. (RaspBerry Pi) Python GPIO 基本操作

    目前打算由潛入深慢慢學習RaspBerry Pi, 所以先由最容易下手的Python進入樹莓派的世界 首先要使用 GPIO 需要利用RPI.GPIO package想當然爾必須先安裝 所以先執行下列命 ...

  2. 手把手教你使用Python轻松搞定发邮件

    前言 现在生活节奏加快,人们之间交流方式也有了天差地别,为了更加便捷的交流沟通,电子邮件产生了,众所周知,电子邮件其实就是客户端和服务器端发送接受数据一样,他有一个发信和一个收信的功能,电子邮件的通信 ...

  3. Python+selenium自动循环发邮件

    Python源代码如下: # coding=utf-8 from selenium import webdriver from time import sleep from random import ...

  4. python使用网易邮箱发邮件

    # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText import email.mime.multip ...

  5. 用Python的smtp模块发邮件的示例

    # -*- coding: UTF-8 -*- import smtplib from email.mime.multipart import MIMEMultipart from email.mim ...

  6. Python 小练习三 发邮件

    import smtplib,os from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipar ...

  7. Python+selenium整合自动发邮件功能

    主要实现的目的是:自动将测试报告以邮件的形式通知相关人员 from HTMLTestRunner import HTMLTestRunner import HTMLTestReport from em ...

  8. 检测MYSQL不同步发邮件通知的脚本

    脚本代码如下:#!/bin/bash                                                                                   ...

  9. python 向qq邮箱发邮件

    #coding:utf-8 ''' Created on 2017-1-12 @author: xiaochun ''' import smtplib from email.mime.text imp ...

随机推荐

  1. 【MVC5】使用权限+角色

    1.在Ticket中设置用户角色 在权限的Ticket中设置用户的角色(这里是逗号分割). List<string> roles = new List<string>(); i ...

  2. 安装kubernetes dashboard

    一.kubernetes dashboard kubernetes dashboard是k8s的web管理界面 二.安装 k8s的版本为1.5 1.创建dashboard-controller.yam ...

  3. 开机自启动:从busybox到debian

    需要在mint上设置opensips的开机自启动,翻了半天资料还是一知半解.最后在opensips的官方文档,查到用下面的语句,添加自启动成功.不过貌似还是会有启动不成功,没有仔细测试过. updat ...

  4. Android出现“Read-only file system”解决办法

    操作设备文件系统上的文件结果遇到"... Read-only file system". 解决办法: 1. 最简单的,adb remount 2. 不行的话,adb shell s ...

  5. 增强for循环、Map接口遍历、可变參数方法

    增强for循环 1.for循环能做得事情.增强for循环大部分都能做(假设要想获得下标的时候就必须使用简单for循环了) 2.增强for有时候可以方便的处理集合遍历的问题,可是集合的标准遍历是使用迭代 ...

  6. Android Shell Cmd

    1. view android version: grep ro.build.version.sdk= system/build.prop getprop ro.build.version.relea ...

  7. 企业信息系统集成框架(设计思路)C模式

    1.客户端.h文件 #pragma once #include<stdlib.h> //A程序员定义接口形式和调用模式 //初始化句柄 typedef int(*Init_Socket)( ...

  8. 论Top与ROW_NUMBER读取第一页的效率问题及拼接sql查询条件

    http://www.cnblogs.com/Leo_wl/p/4921799.html SELECT TOP * FROM users WHERE nID> And nID< ORDER ...

  9. python字符串操作,以及对应的C#实现

    --IndexOf-- python: inx = str.find("aa") c#: var inx = str.IndexOf("aa"); --Last ...

  10. [转]鼠标和键盘模拟API

    几乎所有的游戏中都使用了鼠标来改变角色的位置和方向,玩家仅用一个小小的鼠标,就可以使角色畅游天下. 那么,我们如何实现在没有玩家的参与下角色也可以自动行走呢.其实实现这个并不难,仅仅几个Windows ...