Вот пошаговое руководство по созданию веб-сайта, который будет оперативно анализировать тональность текста.

Все специалисты по обработке данных знают, насколько хорошо компьютеры анализируют текст, но большинство других людей этого не знает. Так что, будучи человеком из народа, я подумал, что дам им то, о чем они не подозревают, - веб-сайт, на котором они смогут анализировать свои собственные электронные книги.

О пользе сайта вы можете прочитать здесь. Но эта статья больше нацелена на всех техников и сосредоточена на том, как запускать скрипты Python при вводе пользователем и производить вывод - без сохранения ввода где-либо.

Это очень полезно, так как это полностью автоматизировано, пока серверы не ломаются (они могут - я понятия не имею), тогда это должно просто работать само. Никакого обслуживания.

Фон

Итак, цель игры заключалась в создании веб-сайта, который принимает вводимые пользователем данные, запускает на них скрипты Python, а затем возвращает их пользователю в удобном для использования виде. Оказывается, на самом деле не так просто запускать скрипты Python в Интернете, и я не нашел много справки в Интернете, но ниже все, что я нашел.

Лучшим подходом, который я нашел, было использование Flask - микро-веб-фреймворка, написанного на Python. Flask вместе с Django обычно используется в веб-разработке. А поскольку они написаны на Python, скрипты Python легко интегрировать в вашу маршрутизацию.

Я написал довольно популярную статью о том, как показывать графики Matplotlib и фреймы данных Panda раньше - если это кажется полезным, то, пожалуйста, ознакомьтесь с ним.

Напоминаем, что цель здесь - взять пользовательский ввод из HTML-формы, запустить на нем скрипт python и вывести результат в полностью автоматическом процессе.

Настраивать

Настройка этого проекта довольно проста. Сначала нам нужно импортировать все необходимые пакеты из Flask, как показано ниже (Строка 2). Затем мы инициализируем приложение (строка 5) - вы можете называть его как хотите, но по соглашению использовать dunder «имя». Только не называйте это Flask, так как это будет конфликтовать с самим Flask. И, наконец, мы используем декоратор маршрута, чтобы сообщить Flask, какой URL-адрес должен вызывать нашу функцию. В данном случае это просто «/» - значит наша начальная страница.

Как видно, мы вернули функцию «render_template», которая важна для любого приложения Flask. Он возвращает HTML-файл из папки шаблонов (для Flask требуется определенная папка шаблонов) и отображает его на указанной странице. Итак, вот HTML-код, который нам понадобится.

Как видите, это довольно простая HTML-страница, которую вы видели сто раз раньше. Однако нас интересуют строки 11–15. В строке 11 мы указываем начало нашей формы и закрываем ее на строке 15. Внутри формы у нас есть три тега div (строки 12,13 и 14). Строка 12 - это просто заголовок формы, который представляет собой не что иное, как текст, строка 13 - это выбор файла, а строка 14 - это кнопка отправки. Как вы можете видеть здесь, мы указали тип ввода как «файл» и специально указали файлы .txt.

Здесь важно указать «enctype =‘ multipart / form-data », чтобы Flask знал, как кодировать ввод. Что еще более важно, не забудьте указать method = «POST», чтобы Flask знал, что нужно запрашивать информацию, хранящуюся в форме.

Запуск скриптов Python на входах.

Теперь, когда у нас есть базовые компоненты нашего сайта, как мы запускаем скрипты Python на входах, а затем показываем пользователю результаты?

Что нам нужно сделать, так это создать еще один декоратор, который запускается только при получении запросов на публикацию.

Это именно то, что делает ниже. Вы можете вставить это прямо под оригинальным декоратором маршрута.

Итак, здесь, когда пользователь нажимает кнопку отправки, эта функция запускается, поскольку она активируется при использовании методов POST. Строка 5 затем использует библиотеку запросов для выбора введенного файла. Затем вы можете просто запустить свои сценарии python для этой переменной, как обычно в Python. После того, как вы выполнили манипуляции, вы можете вернуть переменные пользователю одним из множества способов. Вы можете использовать метод Response, как я сделал выше, или передать его переменной и вывести его непосредственно в другом шаблоне HTML, снова используя render_template (). Возможности безграничны.

Вы можете разместить свой веб-сайт разными способами, но я предпочитаю PythonAnywhere. Руководство о том, как это сделать, можно увидеть в конце моей статьи здесь.

Как уже упоминалось, вы можете увидеть рабочий пример на www.ebookanalyzer.com.

Я точно не веб-разработчик, так что извините за уродство.

Также, пожалуйста, дайте мне знать, если есть какие-либо ошибки, или вы можете увидеть какие-либо улучшения или более элегантные решения.

Если вам это понравилось, вот еще несколько подобных статей, которые я написал:







Ваше здоровье,

Джеймс