Python 综合应用小项目一
数据库报错重连机制
利用异常捕获来获取mysql断开的报错,然后再重连
import MySQLdb as mysql class DB:
def __init__(self,host,user,passwd,db_name):
self.conn = None
self.cursor = None
self.host = host
self.user = user
self.passwd = passwd
self.db_name = db_name
self.connect()
def connect(self):
self.conn = mysql.connect(host=self.host,user=self.user,passwd=self.passwd,db=self.db_name)
self.conn.autocommit(True)
self.cursor = self.conn.cursor() def execute(self,sql):
try:
self.cursor.execute(sql)
return self.cursor
except mysql.OperationalError:
print 'reconnect db'
self.connect()
return self.execute(sql)
def list(self,table_name,col_name='*'):
sql = 'select %s from %s'%(col_name,table_name)
res = self.execute(sql)
return res.fetchall() db = DB(host='59.110.12.*',user='****',passwd='*****',db_name='******')
Flask 模板继承
语法:
layout.html文件:
<p>layout2的内容</p>
{% block body %} {% endblock %} <p>layout2的其他内容</p>
pageA.html文件
{% extends 'layout.html' %}
{% block body %}
PageA 自己的内容
{% endblock %}
pageA去继承layout.html的内容,让其在自己的页面显示。另外还可以填丛自己的内容
标题高亮处理

如这些标题需要点击时会被着色。如何处理呢。
class='active' 可以使之有色,我们可以通过js来判断,点击了哪个,给哪个上颜色。

可以通过全局变量location来获取到当前点击的哪个图标
属性选择器


这两段代码实现了高亮显示,和标题的变化
$page经过find后,得到的就是用户/机房/机器,所以要使用.parent来渲染着一层,不用的话,只会用户/机房/机器
被着色。
find的用法:
find() 方法获得当前元素集合中每个元素的后代,通过选择器、jQuery 对象或元素来筛选。

parent的用法:
parent() 获得当前匹配元素集合中每个元素的父元素,使用选择器进行筛选是可选的。

实现所有add工作的统一接口
思路:
无论是添加用户、机房还是机器,都可以用到同一个addapi 去操作数据库
已添加idc机房为例,前端需要传递过来,”需要操作数据库的表“,然后就是“操作标的内容:名称、电话.....”
命令 :'insert into xx (name,mobile) values ("123","asd")'
现在我们把它改变成,无论是添加用户、还是机器都可以用到模式
insert into %s (%s) values (%s)"%(table_name,col_names,values)
如此一来就实现了用户、机房、机器、统一添加的接口了,后面的工作就是要处理一下前端传过来的数据
flask实现的代码:
@app.route('/addapi',methods=['POST'])
def addapi():
res_dict = request.form.to_dict()
#以字典形式接手,格式:{'mobile': u'bb', 'table_name': u'idc', 'name': u'bb'}
table_name = res_dict.pop('table_name')
#弹出表名字段,这样table_name就是需要操作的表名了
#现在res_dict就变成了:{'mobile': u'bb', 'name': u'bb'}
#now:
#res_dict:{'mobile': u'bb', 'name': u'bb'}
#table_name='idc'
#然后传递给数据库是处理
add_res = db.add(table_name,res_dict)
return json.dumps(add_res)
#因为flask只支持字符串,所以得dumps下
flask_web.py
Python 综合应用小项目一的更多相关文章
- python网页爬虫小项目开发
这是我最近接的一个小项目,花了是整整四天多时间. 任务是将http://www.examcoo.com/index/detail/mid/7网站下所有的试卷里的试题全部提取出来,首先按照题型进行分类, ...
- 纯Python综合图像处理小工具(3)10种滤镜算法
<背景> 滤镜处理是图像处理中一种非常常见的方法.比如photoshop中的滤镜效果,除了自带的滤镜,还扩展了很多第三方的滤镜效果插件,可以对图像做丰富多样的变换:很多手机app实现了实 ...
- [Python]Python入坑小项目推荐- Flask example minitwit
知乎上看到的Python练手项目推荐,链接见:https://www.zhihu.com/question/29372574,不知道是我自己懒得看还是理解力不行,这些项目真的是...太大了呀~~~~ ...
- python flask实现小项目方法
本文目的是为了完成一个项目用到的flask基本知识,例子会逐渐加深.最好对着源码,一步一步走. 下载源码,运行 pip install -r requirements.txt 建立环境 python ...
- python 的一些小项目
1.在线教育平台(视频播放) 2.仿微信网页版(语音.视频.文字聊天) 3.高德API + Python 解决租房问题 4.仿知乎 5.Django打造文件分享系统.文件管理.搜索引擎(仿云盘) 6. ...
- Python基础--01小项目体现的基础知识
part1:猜拳游戏 #coding=utf-8 #当有汉语时可能编译器不认识,需要定义代码 ''' 多行注释 写这个程序是为了熟悉python的基本语法 这是第一个小例子包含简单的if判断,循环和输 ...
- 纯Python综合图像处理小工具(4)自定义像素级处理(剪纸滤镜)
上一节介绍了python PIL库自带的10种滤镜处理,现成的库函数虽然用起来方便,但是对于图像处理的各种实际需求,还需要开发者开发自定义的滤镜算法.本文将给大家介绍如何使用PIL对图像进行自定义 ...
- 纯Python综合图像处理小工具(1)分通道直方图
平时工作经常需要做些图像分析,需要给图像分通道,计算各个通道的直方图分布特点,这个事儿photoshop也能做,但是用起来不方便,且需要电脑上安装有PS软件,如果用OpenCV, 更是需要在visua ...
- 纯Python综合图像处理小工具(2)图像增强
<背景> 这次分享的脚本是对图像进行增强处理,包含对图像像素的色彩增强.亮度增强.对比度增强.图像尖锐化等增强操作,主要基于PIL包的lambda和ImageEnhance模块. 使用方法 ...
随机推荐
- IO(File、递归)
第1章 File 1.1 IO概述 回想之前写过的程序,数据都是在内存中,一旦程序运行结束,这些数据都没有了,等下次再想使用这些数据,可是已经没有了.那怎么办呢?能不能把运算完的数据都保存下来,下 ...
- 只用jsp实现同样的Servlet功能
Jsp最终都会转化成java形式的Servlet执行,因此也可以说Jsp的本质就是Servlet,在jsp执行后,会在服务器上(例如tomcat中)生成.java以及.class文件.具体执行过程如下 ...
- MVC与Holla聊天工具
MVC 是一种设计模式, 它将应用划分为 3 个部分 : 数据( 模型). 展现层( 视图) 和用 户交互层( 控制器). 换句话说, 一个事件的发生是这样的过程 : 1. 用户和应用产生交互. 2. ...
- easyui常用控件及参数说明
CSS类定义: div easyui-window window窗口样式 属性如下: 1) modal:是否生成模态窗口.tru ...
- 解决首次在eclipse中使用maven构建hadoop等项目时报Missing artifact sun.jdk:tools:jar:1.5.0的问题
问题原因: eclipse中的maven插件默认没有引用环境变量,所以找不到jdk的路径,也就找不到tool.jar. 解决办法: 步骤如下: 1.关闭eclips 2.在eclipse的解压目录中与 ...
- ACM的数学基础
懒得整理了,请勿往下看. (一)欧拉函数 设n为正整数,以φ(n)表示不超过n且与n互素的正整数的个数,称为n的欧拉函数值,这里函数φ:N→N,n→φ(n)称为欧拉函数.有如下一些性质: (1)欧拉 ...
- BZOJ 2539: [Ctsc2000]丘比特的烦恼
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 695 Solved: 260[Submit][Status][Discuss] Description ...
- C基础的练习集及测试答案(1-15)
练习题:注:标有(课堂)字样的为课上练习,其他为课下练习基础题(50题)1.(课堂)编写程序,输出“XXX欢迎来到动物园!”(XXX是自己的名字). //1.(课堂)编写程序,输出“XXX欢迎来到动物 ...
- 程序员的智囊库系列之3--分布式文件系统(Distributed file systems)
程序员的智囊库系列之3--分布式文件系统(Distributed file systems) 这是程序员的智囊库系列的第三篇文章.上一篇文章本来打算介绍几个搭建网站的框架,但由于这部分的内容较多,还需 ...
- [神经网络]一步一步使用Mobile-Net完成视觉识别(二)
1.环境配置 2.数据集获取 3.训练集获取 4.训练 5.调用测试训练结果 6.代码讲解 本文是第二篇,调用官方例子并获取数据集. 上一节里面记得我们需要配置PYTHONPATH,大家应该发现,每次 ...