引用自:https://www.cnblogs.com/rongtangzi/p/6623122.html

#!/bin/env python
# _*_coding:utf-8_*_
#!!!!!!!!!!!!describe:this script shoud install python-devel and pip install MySQL-python
import subprocess
import traceback
import sys
from flask import Flask
from flask import request
import threading
import MySQLdb
from datetime import datetime
import time app = Flask(__name__) def mysqlCmd(version,subversion,sid,event_type,extra_info):
if subversion:
subversion = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(int(subversion) / 1000)) event_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
event_time = str(event_time).replace("\"", "").replace("\'","")
conn=MySQLdb.connect(host='fof2.0.mysql.com',port=3306,db='py_crontab',user='py_fof',passwd='8Lakw26x',charset='utf8')
cs1=conn.cursor()
cs1.execute( '''insert into py_script_result_log(version,subversion,sid,event_type,extra_info,event_time)
values(%s,%s,%s,%s,%s,%s)''',(version,subversion,sid,event_type,extra_info,event_time))
conn.commit()
cs1.close()
conn.close() def runCmd(cmd):
res = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
sout,serr = res.communicate()
#print (sout,serr)
#return res.returncode, sout, serr, res.pid
return sout, serr def main(script,version,subversion,sid,event_type,extra_info=None):
mysqlCmd(version, subversion, sid, event_type, extra_info)
sout, serr = runCmd(script)
if len(serr.strip()) != 0:
event_type = 3
serr = str(serr).replace("\"", "").replace("\'","")
extra_info = "%s"%(serr)
mysqlCmd(version,subversion,sid,event_type,extra_info)
else:
event_type = 2
mysqlCmd(version,subversion,sid,event_type,extra_info) @app.route('/py_fof_2_1.py_fof_fund_company_detail_daily_2_1.sh',methods={"POST","GET"})
def index1():
script = 'sh py_fof_2_1.py_fof_fund_company_detail_daily_2_1.sh'
#获取变量
version = request.values.get("version")
try:
subversion = request.values.get("subversion")
except:
subversion = None
sid = request.values.get("sid")
res = program_start(script, version, subversion, sid)
return res @app.route('/py_fof_fund_manager_detail_daily_2_1.sh',methods={"POST","GET"})
def index2():
script = 'sh py_fof_fund_manager_detail_daily_2_1.sh'
version = request.values.get("version")
try:
subversion = request.values.get("subversion")
except:
subversion = None
sid = request.values.get("sid")
res = program_start(script, version, subversion, sid)
return res @app.route('/py_fof_monetary_funds_details_daily_2_1.sh',methods={"POST","GET"})
def index3():
script = 'sh py_fof_monetary_funds_details_daily_2_1.sh'
version = request.values.get("version")
try:
subversion = request.values.get("subversion")
except:
subversion = None
sid = request.values.get("sid")
res = program_start(script, version, subversion, sid)
return res
@app.route('/py_fof_non_monetary_funds_details_daily_2_1.sh',methods={"POST","GET"})
def index4():
script = 'sh py_fof_non_monetary_funds_details_daily_2_1.sh'
version = request.values.get("version")
try:
subversion = request.values.get("subversion")
except:
subversion = None
sid = request.values.get("sid")
res = program_start(script, version, subversion, sid)
return res def program_start(script, version, subversion, sid ):
event_type = 1
t = threading.Thread(target=main, args=(script, version, subversion, sid, event_type))
t.start()
return '<h3> execute success </h3>' if __name__ == '__main__':
try:
host = sys.argv[1]
port = int(sys.argv[2])
except BaseException:
print 'argv error,exit - {0}'.format(traceback.format_exc())
sys.exit(1)
app.run(host=host,port=port,debug=True)

Flask 环境搭建的更多相关文章

  1. ubuntu下python flask环境搭建

    ubuntu下python flask环境搭建 1. 安装pip sudo apt-get install python-dev pyhton-pip 2. 安装virtualenv sudo apt ...

  2. windows下的python flask环境搭建

    在Windows中搭建flask框架分为如下几步 1. 下载ez_setup.py文件,然后在cmd中执行 链接:http://pan.baidu.com/s/1qXOSeHu 密码:jkbw pyt ...

  3. 【selenium+python】之Python Flask 开发环境搭建(Windows)

    一.先安装python以及pip 二.其次, Python的虚拟环境安装: 在github上下载https://github.com/pypa/virtualenv/tree/master  zip文 ...

  4. 基于Flask框架搭建视频网站的学习日志(一)

    ------------恢复内容开始------------ 基于Flask框架搭建视频网站的学习日志(一)2020/02/01 一.Flask环境搭建 创建虚拟环境 初次搭建虚拟环境 搭建完虚拟环境 ...

  5. Ubuntu下nginx+uwsgi+flask的执行环境搭建

    选择web framwork是个非常艰难的事情, 主要分为轻量级和重量级框架. 因为没有搭建站点这样的须要, 所以回避SSH, Django这样的框架, 而选择一个轻量级框架. 自己也比較青睐pyth ...

  6. python服务器环境搭建Flask,uwsgi和nginx

    python服务器环境搭建Flask,uwsgi和nginx 环境配置 服务器配置  [部署系统环境Ubuntu] 使用python的Flask框架搭建好网页后台后,便要开始将网站部署到服务器平台了. ...

  7. Flask框架的学习与实战(一):开发环境搭建

    Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2.很多功能的实现都参考了django框架.由于项目需要,在 ...

  8. flask 开发环境搭建

    window下: 1)安装python 2)安装pip 3)使用pip install flask 如果成功安装使用pip list 既可以查看到flask的版本 ubuntu下的环境搭建 同样地使用 ...

  9. 云效(阿里云)流水线 + nginx + uWsgi + flask + python3 基础环境搭建 --备忘

    一.开发环境搭建 1.安装python3 yum -y groupinstall "Development tools" yum -y install zlib-devel bzi ...

随机推荐

  1. WIN10下安装USB转串口驱动出现“文件的哈希值不在指定的目录”的解决办法

    今天安装openJTAG驱动时出现“文件的哈希值不在指定的目录”,系统为WIN10专业版. 原因是驱动无数字签名,在WIN10中是不安全的驱动,所以显示哈希值不在范围内不能安装. 经查阅已经解决,发放 ...

  2. Linux 查看文件编码

    查看某个文件的编码格式:使用 vi 编辑器 打开文件: 按 Esc 输入 ” : set fileencoding “ 就会显示出来 文件的编码格式 : set fileencoding

  3. 顺序列表(栈/队列等)ADT[C++]

    #include<iostream> using namespace std; //ADT template<class T> class SeqList{ public: / ...

  4. HTML5 CSS JavaScript在网页中扮演的角色

    HTML (content layer) CSS (presentation layer) JavaScript (Interactive layer) 参考链接: [1] https://www.y ...

  5. python manage.py syncdb Unknown command: 'syncdb'问题解决方法

    在django1.9后的版本中,python manage.py syncdb命令修改为python manage.py migrate,执行正常. 选择sqlite可视化sqlitestudio-3 ...

  6. JavaScript练习 - 模态对话框

    模态对话框练习 <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  7. 【CXF】: No binding operation info while invoking unknown method with params unknown.

    CXF发布webservice之后访问报错: org.apache.cxf.interceptor.Fault: No binding operation info while invoking un ...

  8. Jetson tk1 刷机后要做的几件事

    参考简书文章: http://www.jianshu.com/p/997ede860d74 1. 查看Jetson TK1 L4T版本 head -n 1 /etc/nv_tegra_release ...

  9. 【转】Shell编程基础篇-下

    [转]Shell编程基础篇-下 1.1 条件表达式 1.1.1 文件判断 常用文件测试操作符 常用文件测试操作符 说明 -d文件,d的全拼为directory 文件存在且为目录则为真,即测试表达式成立 ...

  10. 【转】Shell编程基础篇-上

    [转]Shell编程基础篇-上 1.1 前言 1.1.1 为什么学Shell Shell脚本语言是实现Linux/UNIX系统管理及自动化运维所必备的重要工具, Linux/UNIX系统的底层及基础应 ...