file_utils.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import sys
  2. from flask import Flask, request
  3. from werkzeug.utils import secure_filename
  4. import os
  5. from alibabacloud_sample.sample import Sample
  6. app = Flask(__name__)
  7. app.config['UPLOAD_FOLDER'] = 'uploads' # 替换为你的上传文件夹路径
  8. @app.route('/api/upload', methods=['POST'])
  9. def upload_file():
  10. file_type = request.form.get('type')
  11. if 'file' not in request.files:
  12. return "No file part"
  13. file = request.files['file']
  14. if file.filename == '':
  15. return "No selected file"
  16. if file: # 这里可以加文件类型判断逻辑
  17. directory = os.path.join(app.config['UPLOAD_FOLDER'])
  18. if not os.path.exists(directory):
  19. os.makedirs(directory)
  20. print(f"Directory '{directory}' created successfully.")
  21. else:
  22. print(f"Directory '{directory}' already exists.")
  23. filename = secure_filename(file.filename)
  24. print(f'filename: {filename}')
  25. file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
  26. # 识别
  27. far, ticket_number = Sample.main(sys.argv[1:], filename, file_type)
  28. return f'{far}, {ticket_number}'
  29. # return 'upload success'
  30. @app.route('/api/ocr', methods=['GET'])
  31. def get_pic_content():
  32. far, ticket_number = Sample.main(sys.argv[1:], 'uploads/20240301172645.jpg', 'TrainTicket')
  33. return f'{far}, {ticket_number}'
  34. @app.route('/', methods=['GET'])
  35. def hello():
  36. return {
  37. 'message': 'Hello World!'
  38. }
  39. if __name__ == '__main__':
  40. # app.run(host='0.0.0.0', port=8000, debug=True)
  41. app.run(port=8000, debug=True)