Создание простой веб-страницы с Python, где содержимое шаблона заполняется из базы данных (или кадра данных pandas) на основе запроса - PullRequest
0 голосов
/ 21 ноября 2018

Я использую python в основном для анализа данных, поэтому я довольно привык к пандам.Но помимо базового HTML, у меня мало опыта в веб-разработке.

Для работы я хочу создать очень простую веб-страницу, которая на основе адреса / запроса заполняет страницу шаблона информацией из базы данных SQL.(даже если он должен быть сначала в кадре данных или CSV, на данный момент это нормально).Я выполнил поиск, но я просто не знаю, какие ключевые слова нужно спросить (поэтому извините, если это дубликат или название не так ясно, как могло бы быть).

Что я воображаю (большинствопростой пример, извините за недостаток знаний здесь!).Пример кадра данных:

import pandas as pd
df = pd.DataFrame(index=[1,2,3], columns=["Header","Body"], data=[["a","b"],["c","d"],["e","f"]])
Out[1]: 
  Header Body
1      a    b
2      c    d
3      e    f

Пользователь вставляет страницу, ссылаясь на индекс 2 :

"example.com/database.html?id=2" # Or whatever the syntax is.

Output-page: (Так как id = 2, занимает строку данныхданные из index = 2, поэтому "c" и "d")

<html><body>
Header<br>
c<p>
Body<br>
d<p>
</body></html>

Это должно быть довольно просто, верно?Но с чего мне начать?Какая библиотека Python?Я слышал о Джанго и Фляске, но не слишком ли они для этого?Есть ли пример, которому я мог бы следовать?И, наконец, как работает синтаксис для адреса веб-страницы?

Приветствия!

PS: я понимаю, что мне, вероятно, следует просто запросить базу данных SQL напрямую и вырезать посредников панд, простоЯ более знаком с пандами, поэтому пример выше.

Редактировать: я словом.

1 Ответ

0 голосов
/ 21 ноября 2018

Вы можете начать с колбы, ее легко настроить и много хороших ресурсов онлайн, Начните с этого минимального веб-приложения http://flask.pocoo.org/docs/1.0/quickstart/

Пример фрагмента

@app.route('/database')
def database():
    id = request.args.get('id') #if key doesn't exist, returns None
    df = pd.DataFrame(index=[1,2,3], columns=["Header","Body"], data=[["a","b"],["c","d"],["e","f"]])
    header = df[id].get("Header")
    body = df[id].get("Body")

    return '''<html><body>Header<br>{}<p>Body<br>d<p></body></html>'''.format(header, body)

Для более подробной информациивеб-страница добавить шаблон.Удачи

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...