tx3bas commited on
Commit
2451bee
·
verified ·
1 Parent(s): dc0a213

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -21
app.py CHANGED
@@ -1,23 +1,18 @@
1
- import gradio as gr
2
- from datetime import datetime, timedelta
3
- import requests
4
- import json
5
 
6
- def wayback(website, days=365):
7
  if not website:
8
  return '😭 Error: introduce una url correcta'
9
 
10
- # Calcular la fecha de inicio basada en el número de días proporcionados
11
  end_date = datetime.now()
12
- start_date = end_date - timedelta(days=days)
13
  datefrom = start_date.strftime('%Y%m%d')
14
  dateto = end_date.strftime('%Y%m%d')
15
 
16
- # Construir la consulta a la Wayback Machine
17
- query = f"?url={website}&output=json&from={datefrom}&to={dateto}&limit=3000"
18
 
19
  try:
20
- response = requests.get(f"http://web.archive.org/cdx/search/cdx{query}")
21
  if response.status_code != 200:
22
  return f'😭 Error: Respuesta no exitosa con código de estado {response.status_code}'
23
  content = json.loads(response.text)
@@ -28,7 +23,6 @@ def wayback(website, days=365):
28
  except Exception as e:
29
  return f"😭 Error: {e}"
30
 
31
- # Procesar los resultados y devolverlos
32
  results = []
33
  for row in content[1:]:
34
  date, page, status = [row[i] for i in [1, 2, 4]]
@@ -37,14 +31,10 @@ def wayback(website, days=365):
37
  results.append(f"👓 {formatted_date} {formatted_wayback_url}")
38
  return "\n".join(results)
39
 
40
- # Crear la interfaz de Gradio
41
- iface = gr.Interface(
42
- fn=wayback,
43
- inputs=["text", "number"],
44
- outputs="text",
45
- title="Wayback Machine Lookup",
46
- description="Busca instantáneas de una página web en la Wayback Machine. Introduce la URL y el número de días hacia atrás."
47
- )
48
 
49
- # Lanzar la aplicación
50
- iface.launch()
 
1
+ def wayback(website, limit=None):
2
+ limit = 3000 if limit is None else limit
 
 
3
 
 
4
  if not website:
5
  return '😭 Error: introduce una url correcta'
6
 
 
7
  end_date = datetime.now()
8
+ start_date = end_date - timedelta(days=365)
9
  datefrom = start_date.strftime('%Y%m%d')
10
  dateto = end_date.strftime('%Y%m%d')
11
 
12
+ query = f"?url={website}&output=json&from={datefrom}&to={dateto}"
 
13
 
14
  try:
15
+ response = requests.get(f"http://web.archive.org/cdx/search/cdx{query}&limit={limit}")
16
  if response.status_code != 200:
17
  return f'😭 Error: Respuesta no exitosa con código de estado {response.status_code}'
18
  content = json.loads(response.text)
 
23
  except Exception as e:
24
  return f"😭 Error: {e}"
25
 
 
26
  results = []
27
  for row in content[1:]:
28
  date, page, status = [row[i] for i in [1, 2, 4]]
 
31
  results.append(f"👓 {formatted_date} {formatted_wayback_url}")
32
  return "\n".join(results)
33
 
34
+ iface = gr.Interface(fn=wayback,
35
+ inputs=["text", gr.Number(label="Límite", value=3000)],
36
+ outputs="text",
37
+ title="Wayback Machine Lookup",
38
+ description="Busca instantáneas de una página web en la Wayback Machine.")
 
 
 
39
 
40
+ iface.launch()