Brak opisu

funciones.py 999B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import time
  2. from datetime import datetime, date
  3. def valida_fecha(fecha):
  4. valid = False
  5. while not valid:
  6. fechaSplit=fecha.split("-")
  7. try:
  8. d = date(int(fechaSplit[0]), int(fechaSplit[1]), int(fechaSplit[2]))
  9. valid=True
  10. except ValueError as ve:
  11. error=str(ve)
  12. # print(error)
  13. if "year" in error:
  14. fecha = "2000-"+fechaSplit[1]+"-"+fechaSplit[2]
  15. elif "must" in error: #manejar el mes
  16. mes=int(fechaSplit[1])-1
  17. # print(mes)
  18. fecha = fechaSplit[0]+"-"+str(mes)+"-"+fechaSplit[2]
  19. elif "day" in error:
  20. dia=int(fechaSplit[2])-1
  21. fecha = fechaSplit[0]+"-"+fechaSplit[1]+"-"+str(dia)
  22. unixtime = time.mktime(d.timetuple())
  23. timestamp2 = date.fromtimestamp(unixtime)
  24. return timestamp2
  25. return d
  26. # esta funcion es para usar los campos tipo 'datetime' sin los segundos.
  27. def valida_fecha_2(fecha):
  28. fecha = fecha.split(" ")
  29. dia = fecha[0]
  30. hora = fecha[1]
  31. hora = hora.split(":")
  32. minuto = hora[1]
  33. hora = hora[0]
  34. d = dia + 'T' + hora + ':' + minuto
  35. return d