So now the Discord bot send a message when it find a subject call Lingua Italiana - I try to fix the api for school time table
This commit is contained in:
parent
bf041c0bbb
commit
f3a75fadc0
|
@ -11,9 +11,7 @@ load_dotenv() # Load .env file
|
||||||
DISCORD_TOKEN = os.getenv('DISCORD_TOKEN') # Discord token
|
DISCORD_TOKEN = os.getenv('DISCORD_TOKEN') # Discord token
|
||||||
PASSWORD_MONGODB = os.getenv('PASSWORD_MONGODB') # Password for MongoDB
|
PASSWORD_MONGODB = os.getenv('PASSWORD_MONGODB') # Password for MongoDB
|
||||||
URL_MONGODB = os.getenv('URL_MONGODB') # URL for MongoDB
|
URL_MONGODB = os.getenv('URL_MONGODB') # URL for MongoDB
|
||||||
mongo_url = "mongodb+srv://elci:" + \
|
mongo_url = "mongodb+srv://elci:" + urllib.parse.quote_plus(PASSWORD_MONGODB) + URL_MONGODB # URL for MongoDB (with password)
|
||||||
urllib.parse.quote_plus(PASSWORD_MONGODB) + \
|
|
||||||
URL_MONGODB # URL for MongoDB (with password)
|
|
||||||
client = pymongo.MongoClient(mongo_url) # Connect to MongoDB
|
client = pymongo.MongoClient(mongo_url) # Connect to MongoDB
|
||||||
database = client["website-class"] # Database name
|
database = client["website-class"] # Database name
|
||||||
# Collection school time table current
|
# Collection school time table current
|
||||||
|
@ -21,10 +19,13 @@ collection = database["school-time-table"]
|
||||||
|
|
||||||
bot = discord.Bot()
|
bot = discord.Bot()
|
||||||
|
|
||||||
|
@bot.event
|
||||||
|
async def on_ready():
|
||||||
|
print('We have logged in as {0.user}'.format(bot))
|
||||||
|
bot.loop.create_task(orario())
|
||||||
|
|
||||||
|
|
||||||
@tasks.loop(seconds=1)
|
@tasks.loop(seconds=1)
|
||||||
async def orario(ctx):
|
async def orario():
|
||||||
documents = collection.find()
|
documents = collection.find()
|
||||||
|
|
||||||
# Iterate through the documents
|
# Iterate through the documents
|
||||||
|
@ -32,14 +33,8 @@ async def orario(ctx):
|
||||||
for day in document['School Subject']:
|
for day in document['School Subject']:
|
||||||
for i, subject in enumerate(document['School Subject'][day]):
|
for i, subject in enumerate(document['School Subject'][day]):
|
||||||
if subject['Subject'] == "CALF1 LINGUA ITALIANA":
|
if subject['Subject'] == "CALF1 LINGUA ITALIANA":
|
||||||
print(f"Subject found: {subject['Subject']} at index: {i}")
|
channel = bot.get_channel(1063753802638954519)
|
||||||
# Send a message on channel #general with the subject found and the index of the subject
|
#await ctx.send(f"Subject found: {subject['Subject']} at index: {i}")
|
||||||
channel = bot.get_channel(1063753802638954519).send("bot is online")
|
await channel.send(f"Hours school: {i}, Subject: {subject['Subject']}, Teacher: {subject['Teacher']}, Room: {subject['Room']}")
|
||||||
await ctx.send(f"Subject found: {subject['Subject']} at index: {i}")
|
|
||||||
|
|
||||||
|
|
||||||
@bot.command()
|
|
||||||
async def testpy(ctx):
|
|
||||||
bot.loop.create_task(orario(ctx))
|
|
||||||
await ctx.send("testpy")
|
|
||||||
bot.run(DISCORD_TOKEN)
|
bot.run(DISCORD_TOKEN)
|
|
@ -42,204 +42,252 @@ def update_time_school():
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"Tuesday": [
|
"Tuesday": [
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"Wednesday": [
|
"Wednesday": [
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"Thursday": [
|
"Thursday": [
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"Friday": [
|
"Friday": [
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"Saturday": [
|
"Saturday": [
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"Subject": "null",
|
"Subject": "null",
|
||||||
"Teacher": "null",
|
"Teacher": "null",
|
||||||
|
"Room": "null",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
@ -249,10 +297,14 @@ def update_time_school():
|
||||||
x = collection_archive.insert_one(mydict) # Add collection on collection (archive-school-time-table)
|
x = collection_archive.insert_one(mydict) # Add collection on collection (archive-school-time-table)
|
||||||
check_repeat = 0
|
check_repeat = 0
|
||||||
check_repeat_teacher = 0
|
check_repeat_teacher = 0
|
||||||
|
check_repeat_room = 0
|
||||||
dont_repeat = 0
|
dont_repeat = 0
|
||||||
dont_repeat_teacher = 0
|
dont_repeat_teacher = 0
|
||||||
|
dont_repeat_room = 0
|
||||||
gagaga_teacher = 0
|
gagaga_teacher = 0
|
||||||
|
gagaga_room = 0
|
||||||
number_teacher = 1
|
number_teacher = 1
|
||||||
|
number_room = 1
|
||||||
number = 1
|
number = 1
|
||||||
current_day = None
|
current_day = None
|
||||||
day_counter = 0
|
day_counter = 0
|
||||||
|
@ -270,6 +322,7 @@ def update_time_school():
|
||||||
day = str(ws.cell(row=i, column=3).value) # Get day from excel file
|
day = str(ws.cell(row=i, column=3).value) # Get day from excel file
|
||||||
school_subject = ws.cell(row=i, column=column).value # Get school subject from excel file
|
school_subject = ws.cell(row=i, column=column).value # Get school subject from excel file
|
||||||
teacher = ws.cell(row=i, column=column+1).value
|
teacher = ws.cell(row=i, column=column+1).value
|
||||||
|
room = ws.cell(row=i, column=column+2)
|
||||||
if dont_repeat == 9:
|
if dont_repeat == 9:
|
||||||
check_repeat += 1 # 13
|
check_repeat += 1 # 13
|
||||||
if check_repeat == 5:
|
if check_repeat == 5:
|
||||||
|
@ -409,7 +462,7 @@ def update_time_school():
|
||||||
collection_archive.update_one(
|
collection_archive.update_one(
|
||||||
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
||||||
{ "$set": {
|
{ "$set": {
|
||||||
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Subject": school_subject,
|
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Teacher": teacher,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
@ -439,7 +492,7 @@ def update_time_school():
|
||||||
collection_archive.update_one(
|
collection_archive.update_one(
|
||||||
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
||||||
{ "$set": {
|
{ "$set": {
|
||||||
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Subject": school_subject,
|
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Teacher": teacher,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
@ -451,4 +504,78 @@ def update_time_school():
|
||||||
if gagaga_teacher == 8:
|
if gagaga_teacher == 8:
|
||||||
gagaga_teacher = 0
|
gagaga_teacher = 0
|
||||||
|
|
||||||
|
#Search room school
|
||||||
|
if dont_repeat_room == 9:
|
||||||
|
check_repeat_room += 1
|
||||||
|
if check_repeat_room == 5:
|
||||||
|
check_repeat_room = 0
|
||||||
|
dont_repeat_room = 0
|
||||||
|
#number = 1
|
||||||
|
else:
|
||||||
|
if day == "None":
|
||||||
|
if room == 0:
|
||||||
|
number_room += 1
|
||||||
|
gagaga_room += 1
|
||||||
|
dont_repeat_room += 1
|
||||||
|
if number_room == 9:
|
||||||
|
number_room = 1
|
||||||
|
if gagaga_room == 9:
|
||||||
|
gagaga_room = 0
|
||||||
|
else:
|
||||||
|
find_document_school_time_table = list(collection.find({}, {"Date": long_date}))
|
||||||
|
find_document_archive_school_time_table = list(collection_archive.find({}, {"Date": long_date}))
|
||||||
|
array_document_school_time_table = find_document_school_time_table[0]["_id"]
|
||||||
|
array_document_archive_school_time_table = find_document_archive_school_time_table[0]["_id"]
|
||||||
|
collection.update_one(
|
||||||
|
{ "_id": ObjectId(array_document_school_time_table)},
|
||||||
|
{ "$set": {
|
||||||
|
"School Subject." + array_test[0] + "." + str(gagaga_teacher) + ".Room": room,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
collection_archive.update_one(
|
||||||
|
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
||||||
|
{ "$set": {
|
||||||
|
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Room": room,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
number_room += 1
|
||||||
|
gagaga_room += 1
|
||||||
|
dont_repeat_room += 1
|
||||||
|
if number_room == 9:
|
||||||
|
number_room = 1
|
||||||
|
if gagaga_room == 8:
|
||||||
|
gagaga_room = 0
|
||||||
|
else:
|
||||||
|
datetime_obj = datetime.datetime.strptime(day, "%Y-%m-%d %H:%M:%S").strftime("%d %m %Y")
|
||||||
|
convert_date_to_day = datetime.datetime.strptime(datetime_obj, '%d %m %Y').strftime('%A')
|
||||||
|
array_test = []
|
||||||
|
array_test.append(convert_date_to_day)
|
||||||
|
find_document_school_time_table = list(collection.find({}, {"Date": long_date}))
|
||||||
|
find_document_archive_school_time_table = list(collection_archive.find({}, {"Date": long_date}))
|
||||||
|
array_document_school_time_table = find_document_school_time_table[0]["_id"]
|
||||||
|
array_document_archive_school_time_table = find_document_archive_school_time_table[0]["_id"]
|
||||||
|
collection.update_one(
|
||||||
|
{ "_id": ObjectId(array_document_school_time_table)},
|
||||||
|
{ "$set": {
|
||||||
|
"School Subject." + array_test[0] + "." + str(gagaga_teacher)+ ".Room": room,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
collection_archive.update_one(
|
||||||
|
{ "_id": ObjectId(array_document_archive_school_time_table)},
|
||||||
|
{ "$set": {
|
||||||
|
"School Subject." + array_test[0] + "." + str(gagaga)+ ".Room": room,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
number_room += 1
|
||||||
|
gagaga_room += 1
|
||||||
|
dont_repeat_room += 1
|
||||||
|
if number_room == 9:
|
||||||
|
number_room = 1
|
||||||
|
if gagaga_room == 8:
|
||||||
|
gagaga_room = 0
|
||||||
|
|
||||||
update_time_school()
|
update_time_school()
|
|
@ -0,0 +1,36 @@
|
||||||
|
from flask import Flask, render_template, request, redirect, session, url_for, jsonify
|
||||||
|
from dotenv import load_dotenv
|
||||||
|
from pymongo import MongoClient
|
||||||
|
import requests
|
||||||
|
import os
|
||||||
|
import urllib
|
||||||
|
import pymongo
|
||||||
|
import datetime
|
||||||
|
import requests
|
||||||
|
import time
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
load_dotenv() #Load .env file
|
||||||
|
PASSWORD_MONGODB = os.getenv('PASSWORD_MONGODB') #Password for MongoDB
|
||||||
|
URL_MONGODB = os.getenv('URL_MONGODB') #URL for MongoDB
|
||||||
|
mongo_url = "mongodb+srv://elci:gWB3EL%25W%405%5EA%40PGvvYRt@stefano-cluster.iphin.mongodb.net/website-class"
|
||||||
|
print(mongo_url) #URL for MongoDB (with password)
|
||||||
|
client = MongoClient(mongo_url) #Connect to MongoDB
|
||||||
|
database = client["website-class"] #Database name
|
||||||
|
collection = database["school-time-table"]
|
||||||
|
db = client.get_database()
|
||||||
|
|
||||||
|
@app.route("/", methods=["GET"])
|
||||||
|
def get_subjects():
|
||||||
|
schedule_collection = db.schedule
|
||||||
|
|
||||||
|
# Utilizza il metodo find() per recuperare tutti i documenti della collezione
|
||||||
|
# e li converte in una lista
|
||||||
|
schedule = list(schedule_collection.find())
|
||||||
|
|
||||||
|
# Restituisce la risposta come una stringa JSON
|
||||||
|
return jsonify(schedule)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
app.run()
|
|
@ -1,127 +0,0 @@
|
||||||
from flask import Flask, render_template, request, redirect, session, url_for, jsonify
|
|
||||||
from dotenv import load_dotenv
|
|
||||||
import requests
|
|
||||||
import os
|
|
||||||
import urllib
|
|
||||||
import pymongo
|
|
||||||
import datetime
|
|
||||||
import requests
|
|
||||||
import time
|
|
||||||
|
|
||||||
app = Flask(__name__)
|
|
||||||
|
|
||||||
load_dotenv() #Load .env file
|
|
||||||
PASSWORD_MONGODB = os.getenv('PASSWORD_MONGODB') #Password for MongoDB
|
|
||||||
URL_MONGODB = os.getenv('URL_MONGODB') #URL for MongoDB
|
|
||||||
mongo_url = "mongodb+srv://elci:" + urllib.parse.quote_plus(PASSWORD_MONGODB) + URL_MONGODB #URL for MongoDB (with password)
|
|
||||||
client = pymongo.MongoClient(mongo_url) #Connect to MongoDB
|
|
||||||
database = client["website-class"] #Database name
|
|
||||||
collection = database["school-time-table"]
|
|
||||||
|
|
||||||
@app.route('/', methods = ['GET', 'POST'])
|
|
||||||
def api():
|
|
||||||
current_time = datetime.datetime.now()
|
|
||||||
day = str(current_time.day)
|
|
||||||
month = str(current_time.month)
|
|
||||||
year = str(current_time.year)
|
|
||||||
hour = str(current_time.hour)
|
|
||||||
minute = str(current_time.minute)
|
|
||||||
long_date = day + "-" + month + "-" + year + " " + hour + ":" + minute
|
|
||||||
#Search school subject
|
|
||||||
collection_find_schoolsubject = list(collection.find({}, {"Date": long_date ,"School Subject": 1,}))
|
|
||||||
array_schoolsubject = collection_find_schoolsubject[0]['School Subject']
|
|
||||||
#Search teacher
|
|
||||||
collection_find_teacher = list(collection.find({}, {"Date": long_date ,"Teacher": 1,}))
|
|
||||||
array_teacher = collection_find_teacher[0]['Teacher']
|
|
||||||
|
|
||||||
test = {
|
|
||||||
"subject" : {
|
|
||||||
"monday": {
|
|
||||||
"Subject 1": array_schoolsubject[0],
|
|
||||||
"Subject 2": array_schoolsubject[1],
|
|
||||||
"Subject 3": array_schoolsubject[2],
|
|
||||||
"Subject 4": array_schoolsubject[3],
|
|
||||||
"Subject 5": array_schoolsubject[4],
|
|
||||||
"Subject 6": array_schoolsubject[5],
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"Subject 1": array_schoolsubject[14],
|
|
||||||
"Subject 2": array_schoolsubject[15],
|
|
||||||
"Subject 3": array_schoolsubject[16],
|
|
||||||
"Subject 4": array_schoolsubject[17],
|
|
||||||
"Subject 5": array_schoolsubject[18],
|
|
||||||
"Subject 6": array_schoolsubject[19],
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"Subject 1": array_schoolsubject[12],
|
|
||||||
"Subject 2": array_schoolsubject[13],
|
|
||||||
"Subject 3": array_schoolsubject[14],
|
|
||||||
"Subject 4": array_schoolsubject[15],
|
|
||||||
"Subject 5": array_schoolsubject[16],
|
|
||||||
"Subject 6": array_schoolsubject[17],
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"Subject 1": array_schoolsubject[28],
|
|
||||||
"Subject 2": array_schoolsubject[29],
|
|
||||||
"Subject 3": array_schoolsubject[30],
|
|
||||||
"Subject 4": array_schoolsubject[31],
|
|
||||||
"Subject 5": array_schoolsubject[32],
|
|
||||||
"Subject 6": array_schoolsubject[33],
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"Subject 1": array_schoolsubject[42],
|
|
||||||
"Subject 2": array_schoolsubject[43],
|
|
||||||
"Subject 3": array_schoolsubject[44],
|
|
||||||
"Subject 4": array_schoolsubject[45],
|
|
||||||
"Subject 5": array_schoolsubject[46],
|
|
||||||
"Subject 6": array_schoolsubject[47],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"teacher": {
|
|
||||||
"monday": {
|
|
||||||
"Teacher 1": array_teacher[0],
|
|
||||||
"Teacher 2": array_teacher[1],
|
|
||||||
"Teacher 3": array_teacher[2],
|
|
||||||
"Teacher 4": array_teacher[3],
|
|
||||||
"Teacher 5": array_teacher[4],
|
|
||||||
"Teacher 6": array_teacher[5],
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"Teacher 1": array_teacher[14],
|
|
||||||
"Teacher 2": array_teacher[15],
|
|
||||||
"Teacher 3": array_teacher[16],
|
|
||||||
"Teacher 4": array_teacher[17],
|
|
||||||
"Teacher 5": array_teacher[18],
|
|
||||||
"Teacher 6": array_teacher[19],
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"Teacher 1": array_teacher[28],
|
|
||||||
"Teacher 2": array_teacher[29],
|
|
||||||
"Teacher 3": array_teacher[30],
|
|
||||||
"Teacher 4": array_teacher[31],
|
|
||||||
"Teacher 5": array_teacher[32],
|
|
||||||
"Teacher 6": array_teacher[33],
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"Teacher 1": array_teacher[42],
|
|
||||||
"Teacher 2": array_teacher[43],
|
|
||||||
"Teacher 3": array_teacher[44],
|
|
||||||
"Teacher 4": array_teacher[45],
|
|
||||||
"Teacher 5": array_teacher[46],
|
|
||||||
"Teacher 6": array_teacher[47],
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"Teacher 1": array_teacher[56],
|
|
||||||
"Teacher 2": array_teacher[57],
|
|
||||||
"Teacher 3": array_teacher[58],
|
|
||||||
"Teacher 4": array_teacher[59],
|
|
||||||
"Teacher 5": array_teacher[60],
|
|
||||||
"Teacher 6": array_teacher[61],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
return jsonify(test)
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
app.run()
|
|
Loading…
Reference in New Issue