fschwartzer commited on
Commit
c5a97b3
1 Parent(s): e37f784

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -0
app.py CHANGED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import requests
3
+ import pandas as pd
4
+
5
+ def fetch_data_to_dataframe(query, limit=50):
6
+ BASE_URL = "https://api.mercadolibre.com/sites/MLB/search"
7
+ params = {'q': query, 'limit': limit}
8
+ response = requests.get(BASE_URL, params=params)
9
+ data = response.json()
10
+
11
+ if 'results' in data:
12
+ items = data['results']
13
+ df = pd.DataFrame(items)
14
+ df = df[['title', 'price', 'currency_id', 'condition', 'permalink']]
15
+ df.columns = ['Title', 'Price', 'Currency', 'Condition', 'Link']
16
+
17
+ median_price = df['Price'].median()
18
+ return median_price, df
19
+ else:
20
+ return 0, pd.DataFrame()
21
+
22
+ def gradio_app(query):
23
+ median_price, df = fetch_data_to_dataframe(query, 50)
24
+ return median_price, df
25
+
26
+ iface = gr.Interface(fn=gradio_app,
27
+ inputs=gr.inputs.Textbox(label="Insira a consulta de pesquisa"),
28
+ outputs=[gr.outputs.Textbox(label="Preço mediano"), gr.outputs.Dataframe(label="Resultados da pesquisa")],
29
+ title="Coletor de dados do Mercado Livre",
30
+ description="Este aplicativo busca dados do Mercado Livre com base na sua consulta de pesquisa e calcula o preço médio dos resultados.")
31
+
32
+ iface.launch()