Python-Flask: передавать данные в машинный скрипт python и возвращать результаты

Мои знания в веб-карманах довольно плохие. У меня есть модель машинного обучения в python, и она берет набор строк как результат ввода и возврата. После поиска в Интернете я столкнулся с Flask . Но я не знаю, как на самом деле создать флеш-приложение, чтобы фактически взять строку и позволить пользователю отправлять и передавать эту строку на мой компьютер, изучая скрипт python и возвращая результаты. Это все, что я до сих пор

 import threading import subprocess import os import sys from flask import Flask from flask import render_template, abort app = Flask(__name__) app.debug = True def run_script(): theproc = subprocess.Popen([sys.executable, "ML_script.py"]) theproc.communicate() if __name__ == "__main__": app.run() 

Если вы можете указать пример или предоставить решение / скелет, который будет фантастическим.

  • Интерактивные взломы Tornado celery
  • Как конкатенировать видео в фильме?
  • флажок-кеш memoize параметры строки запроса URL-адреса также
  • Как использовать матрицу изображений и веса для создания состязательных изображений в TensorFlow?
  • требуется плавать? Ошибка с round () в Python
  • есть метод сглаживания для python PIL
  • Вычисление аналогичного цвета с помощью python
  • Ruby's method_missing в Python
  • One Solution collect form web for “Python-Flask: передавать данные в машинный скрипт python и возвращать результаты”

    Вы можете использовать свои функции обучения в компьютере, как и любая другая функция Python, нет необходимости в subprocess . Настройте приложение:

     from flask import Flask from flask import render_template, abort, jsonify, request,redirect, json from my_app.machine_learning import analyzer app = Flask(__name__) app.debug = True @app.route('/') def index(): return render_template('index.html') @app.route('/learning', methods=['POST']) def learning(): data = json.loads(request.data) # data == {"userInput": "whatever text you entered"} response = analyzer(data) return jsonify(response) if __name__ == '__main__': app.run() 

    Я использовал стенд в имени для вашего модуля машинного обучения, но analyzer() должен быть функцией в этом модуле, которая вызывает все ваши другие функции, необходимые для выполнения ваших вычислений, и возвращает словарь, в котором есть ваши результаты. Так что-то вроде этого:

     def analyzer(data): vocab = build_vocab(training_data) cl = train_classifier(vocab, trianing_data) results = cl.predict(data) results = format_results_to_dict() return results 

    Шаблон довольно прост:

     <!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script src="../static/script.js"></script> </script> </head> <body> <h1>Calculation</h1> <h1>Test Page</h1> <input id="user-input" placeholder="Text to be analyzed"></input> <p id="results">Results will go here<p> <button id="submit">Submit</button> </body> </html> 

    И сценарий JS, чтобы связать все это вместе:

     $(document).ready(function(){ $("#submit").click(function(event){ var uInput = $("#user-input").val(); $.ajax({ type: "POST", url: '/learning', data: JSON.stringify({userInput: uInput}), contentType: 'application/json', success: function(response){ $("#results").text(response.results); }, }); }); }); 
    Interesting Posts

    Python: как получить доступ к файлу из другого каталога

    У Python есть встроенная функция для отмене многострочной строки?

    Интуитивная интерполяция между неравномерно разнесенными точками

    Проверка JQuery – проверка доступности электронной почты и имени пользователя с сервера Django

    Интерактивный matplotlib с помощью ipywidgets

    Найти индекс последнего вхождения подстроки в строку

    Добавить информацию в matplotlib Панель инструментов навигации / строка состояния?

    Почему node.js нужен python

    Использование «уменьшить» в списке словарей

    Преобразование строки в список в Python

    Python – Как проверить монотонность списка

    Объект 'str' не поддерживает назначение элемента в Python

    Python разбил список на n групп во всех возможных комбинациях длины и элементов группы внутри группы

    написание рамки данных pandas в существующую книгу

    Конкатенация строки и целого числа в python

    Python - лучший язык программирования в мире.