|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!
您需要 登录 才可以下载或查看,没有账号?注册
x
- # coding= UTF-8
: U: j; [6 {1 l6 ?, C - import json
5 ]9 G) T2 W' ?$ E; F3 m; e - import sqlite3
2 e! }4 ~! ]. M, g2 ? - import datetime
, d: z9 G; N& V/ \/ w# q - from flask import Flask,render_template, request
, u& c, R6 a/ f3 c7 X, U - DATABASE = 'data/data.db'5 r6 [* y$ F7 e+ Z
- app = Flask(__name__)4 j `( o2 i4 v5 z
- @app.route("/")
' v; |! D" o4 n p$ r - def hello():8 B" `, W8 m, H' j5 y0 `
- db = sqlite3.connect(DATABASE)
5 {# J9 V& W2 ]1 C" i - cur = db.cursor()
4 T3 p) P+ k% V* m/ k& O - cur.execute("SELECT * FROM sensorlog WHERE sensorid =1")
5 |0 C( x$ c1 E - data = cur.fetchall()
4 c0 Z: u$ F: K, U' d7 d" I - cur.close()
) W6 L7 {* J0 D, F6 A9 ^5 L$ f' T - db.close()
* F9 ]( ~3 d7 L# v7 G9 \ - temp1 = data[len(data) - 1]) `- [7 q( W- m9 h. C0 P
- temp=temp1[2]
$ [% @; p. B! Q# f - return render_template('vews.html', data=data,temp=temp): Q0 w: w2 e3 g* u2 f
& r8 E* |/ F4 p8 j- #Adding data
1 X5 g0 V8 {- _& D3 O% w - @app.route("/input",methods=['POST','GET'])3 v1 f9 w4 T2 z
- def add_data():
$ W- d8 W& B& n1 e& Z - if request.method == 'POST':$ W. c% d$ t0 p, }
- sensorid = int(request.form.get('id'))
8 d# D8 n8 T9 Q: o" ^ - sensorvalue = float(request.form.get('val'))
! ?- i U& I) M: U - else: Y( ~1 Q/ R+ y2 d- `, X
- sensorid = int(request.args.get('id'))
1 [$ |. r/ O& Q2 F+ D' T+ C- Y6 Q - sensorvalue = float(request.args.get('val'))
s# D: W, | g" C3 k - nowtime = datetime.datetime.now()
. G7 [ |1 a7 a1 T - nowtime = nowtime.strftime('%Y-%m-%d %H:%M:%S')- B: r- {& D/ T' F+ S9 c
- db = sqlite3.connect(DATABASE)
) r/ _+ V) q+ @ - cur = db.cursor()
; D9 ?& t. U' v( R5 |6 U/ ~5 ] - cur.execute("INSERT INTO sensorlog(sensorid,sensorvalue,updatetime) VALUES(%d,%f,'%s')" %(sensorid,sensorvalue,nowtime))% k- x# A; u; P
- db.commit()
- m6 h! P+ z5 p w - cur.execute("SELECT * FROM sensorlist where sensorid = %d"% sensorid)
7 u4 U) J, f9 Q( J d - rv = cur.fetchall()3 {" M0 N& _, G5 s, S1 F
- cur.close()
; ~6 E$ O. ?9 _9 F4 @( f - db.close(): H7 j C5 P4 \2 t
- maxrv = rv[0][2]1 o- t1 s, c1 R) n3 p' R8 j
- minrv = rv[0][3]! R }: L% I$ r; w1 @2 `
- if sensorvalue > maxrv or sensorvalue < minrv:
; W* u! F* Q' G- F# F: B5 D. R - return '0'
% N, ^. b0 @( H# Q% n* X$ Q - else:# a4 H7 T. h( C. h
- return '1'! z! n( _1 ^+ |
- ( j; \2 N5 f6 v- a1 C, Y
- if __name__ == "__main__":
& Y; f/ t! e& q0 O8 O ~( ?- F2 c% ` - app.run(host="0.0.0.0", port=8080,debug=True,threaded=True)! T2 D1 w b$ {! y( V
复制代码 |
|