Flask 环境搭建

2023-05-16


引用自: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)  

 

转载于:https://www.cnblogs.com/Presley-lpc/p/9183186.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flask 环境搭建 的相关文章

  • Vue设置button的disable属性

    表单元素有一个disable属性 xff0c 用来控制该元素是否可用 1 这个属性在HTML里只有1个值 xff0c 用法就是 lt button disable 61 34 disable 34 gt 点击 lt button gt 经实
  • 用C++进行简单的文件I/O操作

    序论 我曾发表过文件输入输出的文章 xff0c 现在觉得有必要再写一点 文件 I O 在C 43 43 中比烤蛋糕简单多了 在这篇文章里 xff0c 我会详细解释ASCII和二进制文件的输入输出的每个细节 xff0c 值得注意的是 xff0
  • VC++鼠标画圈

    int r 61 100 int x0 61 gameRect left 43 pt x int y0 61 gameRect top 43 pt y int x y double n 61 0 MoveTo x0 y0 while n l
  • matlab练习程序(求向量间的旋转矩阵与四元数)

    问题是这样 xff0c 如果我们知道两个向量v1和v2 xff0c 计算从v1转到v2的旋转矩阵和四元数 xff0c 由于旋转矩阵和四元数可以互转 xff0c 所以我们先计算四元数 我们可以认为v1绕着向量u旋转 角度到v2 xff0c u
  • 用lighttpd搭建一个简易的http服务器

    1 安装lighttpd 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 cd wget http download lighttpd net lighttpd releases
  • 结构体(对齐规则及举例)

    概念 一种数据结构 xff1b C语言中聚合数据类型的一类 xff1b 可以被声明为变量 数组 指针等 xff0c 用以实现比较复杂的数据结构 xff1b 是一系列元素的集合 xff0c 这些元素被称为结构体成员 xff1b 结构体成员需要
  • C++解析头文件-Qt自动生成信号定义

    目录 一 概述二 实现思路三 代码讲解 1 类图2 QtCppDescription3 测试四 源代码 一 概述 上一篇文章C 43 43 解析头文件 Qt自动生成信号声明我们主要讲解了怎么去解析C 43 43 头文件 xff0c 然后在指
  • VC++6.0与VS2010的区别

    区别1 字符串的表达 void CMy123Dlg OnBnClickedButton1 MessageBox 34 你好 34 以前VC6 0写法 现在用不了 老版本用的多字节字符集 MessageBox L 34 你好 34 L 是 u
  • 存储过程出现ORA-06508错误

    一个存储过程平时执行正常 xff0c 刚才执行出ORA 06508错误 百思不得其解 xff0c 好像没有什么不正常的地方啊 xff01 后来找到了答案 重现这个错误如下 xff1a 执行一个存储过程 xff0c 其运行时间比较长 刚开始运
  • 从零构建TCP/IP协议

    从零构建TCP IP协议 这次叫PCT协议 这篇博客是读完 图解TCP IP协议 和 TCP IP协议详解卷一 xff1a 协议 之后的总结 我从0构建了一个可靠的双工的有序的基于流的协议 xff0c 叫做PCT协议 OSI七层模型和TCP
  • c语言 checksum,crc校验方法,用c语言实现源代码(CRC checksum method, using C language source code).doc...

    crc校验方法 用c语言实现源代码 CRC checksum method using C language source code crc校验方法 用c语言实现源代码 CRC checksum method using C languag
  • arm: 使用结构体操作寄存器

    使用结构体操作 寄存器 xff1a 寄存器赋值和取值的时候 xff0c 要注意寄存器的长度 xff0c 有的寄存器的值只有8位 还要注意 xff0c 使用volatile修饰寄存器变量 volatile 参考http www cnblogs
  • 基于嵌入式操作系统VxWorks的多任务并发程序设计(5)――中断与任务

    基于嵌入式操作系统 VxWorks 的多任务并发程序设计 xff08 5 xff09 中断与任务 作者 xff1a 宋宝华 e mail email 21cnbao 64 21cn com email 出处 xff1a 软件报 中断处理是整
  • 四旋翼电池、电机、螺旋桨选型与搭配(转)

    源 xff1a 四旋翼电池 电机 螺旋桨选型与搭配
  • 《C++ Primer Plus》第3章 处理数据 学习笔记

    C 43 43 的基本类型分为两组 xff1a 一组由存储为证书的值组成 xff0c 另一组由存储为浮点格式的值组成 整型之间通过存储键值时使用的呢存及有无符号来区分 整型从最小到最大依次是 xff1a bool char signed c
  • Microbit  Turnipbit  孩子也能做的声光控开关

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 最近一直在研究Turnipbit这块板子 xff0c 之前也做了几个小实验 xff0c 研究了下针脚 xff0c 发现光敏传感器和声音传感器针脚能对的上 xff0c 就做了
  • 串口通信的三种方式(查询、中断、DMA)

    PC机串口定义如下图 xff1a 一般的单片机串口应用只需3根信号线 xff1a 3脚TXD xff08 发送数据 xff09 2脚RXD xff08 接收数据 xff09 5脚SG xff08 信号地 xff09 其中单片机的TXD对应连
  • SQL SERVER 大小写敏感问题

    SQL SERVER大小写敏感问题 xff0c 其实是两个问题 xff1a 标识符 xff0c 例如表名和字段名 xff0c 是否区分大小写 xff1b 字符型字段进行比较时 xff0c 是否区分大小写 第一个问题 与SQL SERVER数
  • tcpreplay,tcprewrite

    安装指南 tcpreplay官方提供的下载地址为 http tcpreplay synfin net trac wiki Download 由于tcpreplay依赖libpcap库 所以安装tcpreplay之前必须先安装libpcap
  • 本文详解5G是个什么鬼,程序员都准备好了吗?

    无线移动通讯发展历史 最近5G的概念炒的如火如荼 xff0c 为此 xff0c 华为和高通还干了一仗 这篇文章从技术层面给大家分析 xff0c 什么是5G xff0c 它和4G比 xff0c 高级在哪里 xff1f 我们来看看移动互联网的技

随机推荐

  • python 调用 shell 时 设置环境变量

    2019独角兽企业重金招聘Python工程师标准 gt gt gt python调用shell 不设置shell的环境变量时 xff0c 对于中文等特殊字符会处理失败 xff0c 这时需要设置环境变量 调用shell xff0c 这里使用
  • 常用的ROS命令

    在这里记一下 xff0c 以免以后忘记了 打开ros master xff1a roscore 查看topic列表 xff1a rostopic list v 打印topic内容 xff1a rostopic echo topic 将bag
  • Rational Rose正逆向工程(类图转Java代码,Java代码转类图)

    xfeff xfeff 一 xff0c 正向工程 1 设置默认语言为Java xff0c Tools gt Options gt Notation gt default xff1a 选择Java 2 设置环境变量ClassPath xff0
  • Linux 下编译安装OpenCV

    Cmake的安装 OpenCV 2 2以后版本需要使用Cmake生成makefile文件 xff0c 因此需要先安装cmake ubuntu下安装cmake比较简单 xff0c apt get install cmake 如果觉得自带的版本
  • Python模块整理(三):子进程模块subprocess

    本来收集整理网络上相关资料后整理 xff1a 从python2 4版本开始 可以用subprocess这个模块来产生子进程 并连接到子进程的标准输入 输出 错误中去 xff0c 还可以得到子进程的返回值 subprocess意在替代其他几个
  • access$000方法和JAVA内部类的反编译

    反编译了几个内部类 xff0c 看到有对外部类access 000 access 100 access 200等方法的调用代码 xff0c 但反编译外部类时 xff0c 却看不到这些代码 这涉及到JAVA编译器中对内部类的处理方式 为了让内
  • c语言中寄存器设置方法,C 编程之——寄存器赋值操作

    通过这段时间的工作和学习 xff0c 我感觉在嵌入式硬件编程中 xff0c 大多数情况下都是对相应硬件的功能寄存器进行设置和操作 一 寄存器的设置和操作特性 1 xff0c 一个寄存器的每个位有其不同的意义 xff0c 进行不同的设置会使硬
  • 室内无人机全自动巡逻系统,或比固定摄像头省钱

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 两家欧洲公司开发了世界上第一款室内无人机监视自动巡逻系统 xff0c 可以实时转播录像 xff0c 并在发现入侵者时发出警报 无人机会在它所监测的建筑物的走廊和房间按照预定
  • 电子设计大赛可以用linux开发板嘛,【一转再转】电子设计大赛应该怎么准备?...

    最主要的是学习什么课程 电工电路基础 低频电子线路 数字电路 高频电子线路 电子测量 智能仪器原理及应用 传感器技术 电机与电气控制 信号与系统 单片机接口原理及应用 等等 所要学习的科目当然不能定局 xff0c 知识面越广越好 xff0c
  • px4固定翼无人机姿态控制理解

    学习px4代码也有一段时间了 xff0c 所以想写一写 xff0c 自己的一些学习心得吧 xff0c 也算是笔记吧 在px4这套代码中 xff0c 每一个功能都是一个模块 xff0c 例如姿态控制 xff0c 也就是一个应用程序 xff0c
  • PHP 模拟 HTTP 摘要认证(Digest )

    lt php header 34 Content type text html charset 61 utf 8 34 php摘要认证 users 61 39 dee 39 61 gt 39 123456 39 39 admin 39 61
  • c语言中strcat函数的作用,strcat函数的作用是什么?

    strcat函数的作用是复制一个字符串 xff0c 将这个字符串拼接在另一个字符串后面 strcat 函数接受两个字符串作为参数 xff0c 会把第二个字符串的备份附加在第一个字符串末尾 xff0c 并把拼接后形成的新字符串作为第一个字符串
  • 带参数宏定义和函数的区别

    define S a b a b area 61 S 3 2 int S int a int b int s s 61 a b return s 这两个有什么区别 define S a b a b area 61 S 3 2 尽量少使用宏定
  • http协议调试代理工具Fiddler

    Fiddler是一款WEB调试工具 它可以记录所有客户端到服务器端的HTTP请求 Fiddler启动时 会默认代理IE浏览器的127 0 0 1 8888 其它浏览器则要手动设置 工作原理 Fiddler是以代理WEB服务器的形式工作的 它
  • Windows脚本中等待几秒的替代方法

    用ping命令实现等待 等待的秒数可以用 n 参数来控制 如果要等待10秒 xff0c 参数是 n 11 ping n 11 127 0 0 1 gt nul 64 more 64 来自 ITPUB博客 xff0c 链接 xff1a htt
  • http协议之digest认证实现

    参考 http blog csdn net jszj article details 8918967 https wenku baidu com view 22be2dcf83d049649b6658ff html http blog cs
  • 请求头authorization_postman教程-08-认证(Authorization)

    这又是一个非常实用的功能 对我们做接口测试来说 经常要处理登录认证的情况 如果不用这个Authorization其实也能解决认证的问题 无非就是把要认证的数据按照要求在指定位置传入参数即可 比如我们之前测试的系统 登录后返回的token要在
  • 字符串连接函数strcat

    C 43 43 宝典 第6章数组与字符串 xff0c 本章将介绍一种数据集合类型 数组 与结构体不同 xff0c 数组是同一类型数据的集合 而且在内存中 xff0c 数组中的元素依次排列 xff0c 一个紧邻一个 本节为大家介绍字符串连接函
  • Python3.x爬虫教程:爬网页、爬图片、自己主动登录

    林炳文Evankaka原创作品 转载请注明出处http blog csdn net evankaka 摘要 xff1a 本文将使用Python3 4爬网页 爬图片 自己主动登录 并对HTTP协议做了一个简单的介绍 在进行爬虫之前 xff0c
  • Flask 环境搭建

    引用自 xff1a https www cnblogs com rongtangzi p 6623122 html bin env python coding utf 8 describe this script shoud install