Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Приложение на KivyMD (Python, PythonAnyWhere)

007sunchela Знаток (413), открыт 1 неделю назад
Сервер и база данных лежат на PythonAnyWhere
Проблема в том, что запрос обрабатывается не очень быстро
Можно ли его как-то ускорить?

Код на сервере:
from flask import Flask, jsonify
import mysql.connector

app = Flask(__name__)

def get_connection():
return mysql.connector.connect(
host="007sunchela.mysql.pythonanywhere-services.com",
user="007sunchela",
password="03zurami",
database="007sunchela$testing"
)

@app.route("/data", methods=["GET"])
def get_data():
query = "SELECT title FROM data"
with get_connection() as connection:
with connection.cursor() as cursor:
cursor.execute(query)
data = cursor.fetchall()
return jsonify({"data": data})

Код на клиенте:
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
from kivymd.app import MDApp
from kivymd.uix.button import MDRaisedButton
from kivymd.uix.list import OneLineListItem
import requests

KV = '''
BoxLayout:
orientation: 'vertical'

ScrollView:
MDList:
id: data_list

MDRaisedButton:
text: "Получить данные"
size_hint_y: None
height: "48dp"
on_release: app.get_data()
'''


class MainApp(MDApp):
def build(self):
return Builder.load_string(KV)

def get_data(self):
response = requests.get("https://007sunchela.pythonanywhere.com/data")
if response.status_code == 200:
data = response.json()["data"]
self.root.ids.data_list.clear_widgets()
for item in data:
self.root.ids.data_list.add_widget(
OneLineListItem(text=item[0])
)
else:
print("Ошибка при получении данных")


MainApp().run()
 П 
Похожие вопросы