run_server1.py 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. # -*- coding: utf-8 -*-
  2. """
  3. Created on Fri Jun 1 18:03:03 2018
  4. @author: DONG
  5. """
  6. import sys
  7. import os
  8. sys.path.append(os.path.abspath(".."))
  9. from flask import Flask, jsonify
  10. from flask import request
  11. import logging
  12. import time
  13. import pygame.freetype
  14. from PIL import Image
  15. from io import BytesIO
  16. import traceback
  17. import base64
  18. from moveCaptcha.recMoveX import findSuitX
  19. app = Flask(__name__)
  20. app.config['JSON_AS_ASCII'] = False
  21. from uuid import uuid4
  22. @app.route('/MoveXRec', methods=['POST'])
  23. def text_predict():
  24. start_time = time.time()
  25. # 初始化待返回结果
  26. try:
  27. WIDTH = 64
  28. HEIGHT = 64
  29. if request.form.get('im1') is None or request.form.get('im2') is None:
  30. return jsonify({"message":"参数不足"}),400
  31. b_im1 = base64.b64decode(request.form.get('im1'))
  32. b_im2 = base64.b64decode(request.form.get('im2'))
  33. _uuid = uuid4().hex
  34. # fontbytes = open("font.ttf","rb").read()
  35. im1 = Image.open(BytesIO(b_im1))
  36. im2 = Image.open(BytesIO(b_im2))
  37. im1.save("data/%s_1.png"%(_uuid))
  38. im2.save("data/%s_2.png"%(_uuid))
  39. x = findSuitX(im1,im2)
  40. result = {"x":x,"uuid":_uuid}
  41. print(result)
  42. except Exception as e:
  43. traceback.print_exc()
  44. return jsonify({"sucess":False}), 500
  45. return jsonify(result), 201
  46. @app.route('/erroruuid', methods=['POST'])
  47. def text_predict1():
  48. start_time = time.time()
  49. # 初始化待返回结果
  50. try:
  51. WIDTH = 64
  52. HEIGHT = 64
  53. if request.form.get('uuid') is None:
  54. return jsonify({"message":"参数不足"}),400
  55. _uuid = request.form.get('uuid')
  56. with open("error.txt","a") as f:
  57. f.write(_uuid)
  58. f.write("\n")
  59. result = {"uuid":_uuid}
  60. print(result)
  61. except Exception as e:
  62. traceback.print_exc()
  63. return jsonify({"sucess":False}), 500
  64. return jsonify(result), 201
  65. if __name__ == '__main__':
  66. app.run(host='0.0.0.0', port=12352, threaded=True, debug=True)
  67. # text_predict()