rioanggara commited on
Commit
2487585
·
1 Parent(s): 160fe8a
Files changed (1) hide show
  1. app.py +12 -3
app.py CHANGED
@@ -2,6 +2,7 @@ import gradio as gr
2
  import requests
3
  import pandas as pd
4
  import matplotlib.pyplot as plt
 
5
 
6
  API_KEY = "PJRAUD6KHJ2O097X"
7
 
@@ -13,7 +14,15 @@ def get_stock_data(symbol, start_date, end_date):
13
  if "Time Series (Daily)" in data:
14
  df = pd.DataFrame(data["Time Series (Daily)"]).T
15
  df.index = pd.to_datetime(df.index)
16
- df = df.loc[start_date:end_date]
 
 
 
 
 
 
 
 
17
  df.columns = ["Open", "High", "Low", "Close", "Volume"]
18
 
19
  # Plotting
@@ -35,8 +44,8 @@ iface = gr.Interface(
35
  fn=get_stock_data,
36
  inputs=[
37
  gr.Textbox(label="Stock Symbol", placeholder="Enter a stock symbol (like AAPL, MSFT)"),
38
- gr.Date(label="Start Date"),
39
- gr.Date(label="End Date")
40
  ],
41
  outputs=["html", "plot"],
42
  title="Personalized Stock Market Data App",
 
2
  import requests
3
  import pandas as pd
4
  import matplotlib.pyplot as plt
5
+ from datetime import datetime
6
 
7
  API_KEY = "PJRAUD6KHJ2O097X"
8
 
 
14
  if "Time Series (Daily)" in data:
15
  df = pd.DataFrame(data["Time Series (Daily)"]).T
16
  df.index = pd.to_datetime(df.index)
17
+
18
+ # Convert input dates to datetime
19
+ try:
20
+ start_datetime = datetime.strptime(start_date, '%Y-%m-%d')
21
+ end_datetime = datetime.strptime(end_date, '%Y-%m-%d')
22
+ df = df.loc[start_datetime:end_datetime]
23
+ except ValueError:
24
+ return "Invalid date format. Please use YYYY-MM-DD.", None
25
+
26
  df.columns = ["Open", "High", "Low", "Close", "Volume"]
27
 
28
  # Plotting
 
44
  fn=get_stock_data,
45
  inputs=[
46
  gr.Textbox(label="Stock Symbol", placeholder="Enter a stock symbol (like AAPL, MSFT)"),
47
+ gr.Textbox(label="Start Date", placeholder="YYYY-MM-DD"),
48
+ gr.Textbox(label="End Date", placeholder="YYYY-MM-DD")
49
  ],
50
  outputs=["html", "plot"],
51
  title="Personalized Stock Market Data App",