flask_app.py 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. from flask import Flask, request
  2. from mvp import Mvp
  3. import json
  4. from test_info import TestInfo
  5. from tongce import TongCe
  6. app = Flask(__name__)
  7. @app.route('/score', methods=['GET', 'POST'])
  8. def score():
  9. """
  10. 父选项对应的标准化值
  11. :return:
  12. """
  13. city = request.args.get('city', default=None, type=str)
  14. age = request.args.get('age', default=None, type=str)
  15. crowd = request.args.get('crowd', default=None, type=str)
  16. print(city, age, crowd)
  17. mvp = Mvp()
  18. scores = mvp.query_behavioral_info(city, age, crowd)
  19. mvp.close()
  20. return json.dumps(scores, ensure_ascii=False)
  21. @app.route('/scores', methods=['GET', 'POST'])
  22. def scores():
  23. mvp = Mvp()
  24. data = mvp.scores()
  25. return json.dumps(data, ensure_ascii=False)
  26. @app.route('/infos', methods=["GET", 'POST'])
  27. def get_city_age_crowd():
  28. """
  29. 测试数据中城市 年龄 人群分类信息
  30. :return:
  31. """
  32. mvp = Mvp()
  33. infos = {'城市': mvp.citys, '年龄段': mvp.age, '人群分类': mvp.crowd}
  34. mvp.close()
  35. return json.dumps(infos, ensure_ascii=False)
  36. @app.route('/crowd_people', methods=['GET', 'POST'])
  37. def crowd_people():
  38. """
  39. 人群分类人数统计
  40. :return:
  41. """
  42. mvp = Mvp()
  43. people_count = mvp.get_crowd_people()
  44. mvp.close()
  45. return json.dumps(people_count, ensure_ascii=False)
  46. @app.route('/set_behavior_tag', methods=['GET', 'POST'])
  47. def set_behavior_tag():
  48. """
  49. 模块标准化值
  50. :return:
  51. """
  52. mvp = Mvp()
  53. mvp.close()
  54. return json.dumps(mvp.module_scores, ensure_ascii=False)
  55. @app.route('/insert_into', methods=['GET', 'POST'])
  56. def insert_info():
  57. mvp = Mvp()
  58. mvp.insert()
  59. query_data = mvp.query_data()
  60. mvp.close()
  61. return json.dumps(query_data, ensure_ascii=False)
  62. @app.route('/shanghai_85', methods=['GET', 'POST'])
  63. def shanghai_85():
  64. mvp = Mvp()
  65. data = mvp.shanghai_85_module_score_insert()
  66. mvp.close()
  67. return json.dumps(data, ensure_ascii=False)
  68. @app.route('/tag_tree', methods=['GET', 'POST'])
  69. def tag_tree():
  70. mvp = Mvp()
  71. tags = mvp.tag_data
  72. mvp.close()
  73. return json.dumps(tags, ensure_ascii=False)
  74. @app.route('/update_data', methods=['GET', 'POST'])
  75. def update_data():
  76. message = None
  77. global mvp
  78. try:
  79. mvp = Mvp()
  80. message = mvp.update_data()
  81. except Exception as e:
  82. message['error'] = str(e)
  83. return json.dumps(message, ensure_ascii=False)
  84. finally:
  85. mvp.close()
  86. return json.dumps(message, ensure_ascii=False)
  87. @app.route('/people', methods=['GET', 'POST'])
  88. def people():
  89. mvp = Mvp()
  90. mvp.close()
  91. return json.dumps(mvp.people_data(), ensure_ascii=False)
  92. @app.route('/update_gender')
  93. def update_gender_rate():
  94. mvp = Mvp()
  95. try:
  96. mvp.update_gender_rate(ids=1)
  97. mvp.close()
  98. except Exception as e:
  99. mvp.close()
  100. return str(e)
  101. return '人群性别比列更新完成...'
  102. @app.route('/test_api', methods=['GET', 'POST'])
  103. def test_api():
  104. return '成功'
  105. @app.route('/testcase_info', methods=['GET', 'POST'])
  106. def testcase_info():
  107. testcase_id = request.args.get('id', default=0, type=int)
  108. ti = TestInfo()
  109. result = ti.test_detail_info(testcase_id)
  110. return json.dumps(result, ensure_ascii=False)
  111. @app.route('/get_uuids', methods=['GET', 'POST'])
  112. def get_uuids():
  113. city = request.args.get('city', default=None, type=str)
  114. age = request.args.get('age', default=None, type=str)
  115. crowd = request.args.get('crowd', default=None, type=str)
  116. mvp = Mvp()
  117. uuids = mvp.people_filter(city, age, crowd)
  118. mvp.close()
  119. return json.dumps(uuids, ensure_ascii=False)
  120. @app.route('/tongce', methods=['GET', 'POST'])
  121. def tongce():
  122. response = {}
  123. try:
  124. tongce = TongCe()
  125. result = tongce.get_question_info_from_db()
  126. response['code'] = 0
  127. response['message'] = '成功'
  128. response['data'] = result
  129. except Exception as e:
  130. response['code'] = 1
  131. response['message'] = '失败:' + str(e)
  132. return json.dumps(response, ensure_ascii=False)
  133. return json.dumps(response, ensure_ascii=False)
  134. if __name__ == '__main__':
  135. app.run(
  136. host='0.0.0.0',
  137. port=5001
  138. )