# -*- coding: utf-8 -*- """ Created on Fri Jun 1 18:03:03 2018 @author: DONG """ import sys import os sys.path.append(os.path.abspath("..")) from flask import Flask, jsonify from flask import request import logging import time import pygame.freetype from PIL import Image from io import BytesIO import traceback import base64 from moveCaptcha.recMoveX import findSuitX app = Flask(__name__) app.config['JSON_AS_ASCII'] = False from uuid import uuid4 @app.route('/MoveXRec', methods=['POST']) def text_predict(): start_time = time.time() # 初始化待返回结果 try: WIDTH = 64 HEIGHT = 64 if request.form.get('im1') is None or request.form.get('im2') is None: return jsonify({"message":"参数不足"}),400 b_im1 = base64.b64decode(request.form.get('im1')) b_im2 = base64.b64decode(request.form.get('im2')) _uuid = uuid4().hex # fontbytes = open("font.ttf","rb").read() im1 = Image.open(BytesIO(b_im1)) im2 = Image.open(BytesIO(b_im2)) im1.save("data/%s_1.png"%(_uuid)) im2.save("data/%s_2.png"%(_uuid)) x = findSuitX(im1,im2) result = {"x":x,"uuid":_uuid} print(result) except Exception as e: traceback.print_exc() return jsonify({"sucess":False}), 500 return jsonify(result), 201 @app.route('/erroruuid', methods=['POST']) def text_predict1(): start_time = time.time() # 初始化待返回结果 try: WIDTH = 64 HEIGHT = 64 if request.form.get('uuid') is None: return jsonify({"message":"参数不足"}),400 _uuid = request.form.get('uuid') with open("error.txt","a") as f: f.write(_uuid) f.write("\n") result = {"uuid":_uuid} print(result) except Exception as e: traceback.print_exc() return jsonify({"sucess":False}), 500 return jsonify(result), 201 if __name__ == '__main__': app.run(host='0.0.0.0', port=12352, threaded=True, debug=True) # text_predict()