server.py 1.13 KB
from kospacing.kospacing import spacing
#from pykospacing import spacing
import time
from flask import (Flask, request, Response, jsonify)
from flask_cors import CORS, cross_origin
import json
import http.client
import urllib.parse
# from gensim.models import FastText
import re
from numpy import dot
from numpy.linalg import norm

app = Flask(__name__)
CORS(app)

print('Korean Spacing server loading...')

@app.route('/', methods=['POST'])
@cross_origin()
def calculateSpace():
    print(request.json)
    if request.is_json:
        data = request.json.get('text')
    else:
        return jsonify(success=False, error="Expected application/json POST data")
    
    try:
        start = time.time()
        result = spacing(data)
        end = time.time() - start
        return jsonify(sucess=True, response=dict(result = result, prev = data, time = end))
    except Exception as e:
        print(e)
        return jsonify(success=False, error=e)


if __name__ == '__main__':
    # in production, the app is spawned by uWSGI reverse-proxied by Nginx listening on port 2150 for server-local meaning-lookups
    app.run('0.0.0.0', port=10500, debug=True)