tx3bas commited on
Commit
8d8b7f9
·
verified ·
1 Parent(s): 179f419

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -13
app.py CHANGED
@@ -3,21 +3,21 @@ from datetime import datetime, timedelta
3
  import requests
4
  import json
5
 
6
- def wayback(website, limit=None):
7
- limit = 3000 if limit is None else limit
8
-
9
  if not website:
10
  return '😭 Error: introduce una url correcta'
11
 
 
12
  end_date = datetime.now()
13
- start_date = end_date - timedelta(days=365)
14
  datefrom = start_date.strftime('%Y%m%d')
15
  dateto = end_date.strftime('%Y%m%d')
16
 
17
- query = f"?url={website}&output=json&from={datefrom}&to={dateto}"
 
18
 
19
  try:
20
- response = requests.get(f"http://web.archive.org/cdx/search/cdx{query}&limit={limit}")
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,6 +28,7 @@ def wayback(website, limit=None):
28
  except Exception as e:
29
  return f"😭 Error: {e}"
30
 
 
31
  results = []
32
  for row in content[1:]:
33
  date, page, status = [row[i] for i in [1, 2, 4]]
@@ -36,10 +37,14 @@ def wayback(website, limit=None):
36
  results.append(f"👓 {formatted_date} {formatted_wayback_url}")
37
  return "\n".join(results)
38
 
39
- iface = gr.Interface(fn=wayback,
40
- inputs=["text", gr.Number(label="Límite", value=3000)],
41
- outputs="text",
42
- title="Wayback Machine Lookup",
43
- description="Busca instantáneas de una página web en la Wayback Machine.")
44
-
45
- iface.launch()
 
 
 
 
 
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 con un límite fijo de 3000 resultados
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
  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
  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 (predeterminado a 365 días)."
47
+ )
48
+
49
+ # Lanzar la aplicación
50
+ iface.launch()