import requests
import json
import os
URL_SERVIDOR = "https://[Log in to view URL]"
HEADERS = {"User-Agent": "Mozilla/5.0"}
def descargar_de_web():
print("\nDescargando datos de la web a tu PC...")
try:
res = requests.get(f"{URL_SERVIDOR}/api/datos", headers=HEADERS, timeout=10)
if res.status_code == 200:
datos = res.json()
inventario_dict = {}
for p in datos.get("productos", []):
inventario_dict[p["nombre"]] = {
"precio": float(p["precio"]),
"cantidad": int(p["cantidad"])
}
contenido = {
"inventario": inventario_dict,
"ventas": datos.get("ventas", [])
}
with open("inventario.json", "w", encoding="utf-8") as f:
json.dump(contenido, f, indent=4)
print("¡Listo! Tu archivo 'inventario.json' local se ha actualizado con lo de la web.")
else:
print("Error al descargar desde el servidor.")
except Exception as e:
print("Error de conexión:", e)
def subir_a_web():
if os.path.exists("inventario.json"):
with open("inventario.json", "r", encoding="utf-8") as f:
datos = json.load(f)
print("\nSubiendo datos de tu PC a la web...")
try:
res = requests.post(f"{URL_SERVIDOR}/api/sincronizar_todo", json=datos, headers=HEADERS, timeout=10)
if res.status_code == 200:
print("¡Listo! Tu página web se ha actualizado con los datos de tu PC.")
else:
print("Error al subir los datos:", res.text)
except Exception as e:
print("Error de conexión:", e)
else:
print("No se encontró el archivo 'inventario.json' en esta carpeta.")
if __name__ == "__main__":
print("========================================")
print(" GESTOR DE SINCRONIZACIÓN - PAPELERÍA ")
print("========================================")
print("1. Traer datos de la Web a la PC (Descargar)")
print("2. Mandar datos de la PC a la Web (Subir)")
opcion = input("\nElige una opción (1 o 2): ").strip()
if opcion == "1":
descargar_de_web()
elif opcion == "2":
subir_a_web()
else:
print("Opción no válida.")
To embed this project on your website, copy the following code and paste it into your website's HTML: