-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFFrequest_MySQL.py
56 lines (49 loc) · 1.98 KB
/
FFrequest_MySQL.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import mysql.connector
import requests
import datetime
# Get current hour
timeCode = datetime.datetime.now()
currentTime = timeCode.strftime("%H:%M")
currentHourStr = timeCode.strftime("%H")
currentHour = int(currentHourStr)
# Create Date-String
dateObj = datetime.date.today()
dateStr = dateObj.strftime("%d%b%Y")
# Connect to mySQL-Database
mydb = mysql.connector.connect(user='USER', password='PASSWORD',
host='HOSTIP',
database='DATABASE')
# Create Table and DB-Cursor
dbcursor = mydb.cursor()
dbcursor.execute(
"CREATE TABLE IF NOT EXISTS Auslastung" + dateStr + "(Zeit text, Gendarmenmarkt double, PrenzlauerBerg "
"double, Steglitz double, Wilmersdorf double, "
"Zehlendorf double)")
# API-Request @param clubNumber, @return utilization
def auslastung(clubnumber):
url = f"https://www.fitnessfirst.de/club/api/checkins/{clubnumber}"
data = requests.get(url).json()
checkins = data['data']['check_ins']
allowedPeople = data['data']['allowed_people']
utilization = round((checkins / allowedPeople) * 100, 1)
return utilization
if __name__ == "__main__":
# Get Utilization
auslastungGedarmenmarkt = auslastung(clubnumber="berlin12")
auslastungPrenzlauerBerg = auslastung(clubnumber="berlin2")
auslastungSteglitz = auslastung(clubnumber="berlin3")
auslastungWilmersdorf = auslastung(clubnumber="berlin10")
auslastungZehlendorf = auslastung(clubnumber="berlin11")
# Check Time and Copy data to database
if 23 > currentHour > 5:
dbcursor.execute(f'''INSERT INTO Auslastung{dateStr} VALUES ('{currentTime}',
'{auslastungGedarmenmarkt}',
'{auslastungPrenzlauerBerg}',
'{auslastungSteglitz}',
'{auslastungWilmersdorf}',
'{auslastungZehlendorf}')''')
mydb.commit()
dbcursor.close()
mydb.close()
else:
exit()