tracinginsights commited on
Commit
a2d3266
·
1 Parent(s): 9c52e01

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +25 -1
main.py CHANGED
@@ -1,7 +1,31 @@
1
  from fastapi import FastAPI
2
 
 
 
 
 
 
3
  app = FastAPI()
4
 
5
  @app.get("/")
6
  def read_root():
7
- return {"Hello": "World!"}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  from fastapi import FastAPI
2
 
3
+ from fastapi.responses import HTMLResponse
4
+
5
+ import fastf1
6
+ import pandas as pd
7
+
8
  app = FastAPI()
9
 
10
  @app.get("/")
11
  def read_root():
12
+ return {"Hello": "World!"}
13
+
14
+ @app.get("/{year}/{race}/{session}")
15
+ async def get_data(year: int, race: int, session: str):
16
+ f1session = fastf1.get_session(year, race, session)
17
+ f1session.load(telemetry=False, weather=False, messages=False)
18
+ # Load all laps with telemetry
19
+ laps = f1session.laps
20
+ laps['Sector1Time'] = laps['Sector1Time'].dt.total_seconds()
21
+ laps['Sector2Time'] = laps['Sector2Time'].dt.total_seconds()
22
+ laps['Sector3Time'] = laps['Sector3Time'].dt.total_seconds()
23
+ laps['LapTime_in_seconds'] = laps['LapTime'].dt.total_seconds()
24
+ laps['laptime_sum_sectortimes'] = laps.Sector1Time + \
25
+ laps.Sector2Time + laps.Sector3Time
26
+
27
+ # convert laps to csv
28
+ laps.to_csv('laps.csv', index=False)
29
+ # return laps
30
+ # return FileResponse(path='laps.csv', filename='laps.csv')
31
+ return HTMLResponse(content=laps.to_html(), status_code=200)