Código de Python - Convertir cualquier fecha a formato ISO 8601

Imágen de perfil

Convertir cualquier fecha a formato ISO 8601gráfica de visualizaciones


Python

Actualizado el 10 de Enero del 2018 por xve (Publicado el 27 de Junio del 2016)
1.500 visualizaciones desde el 27 de Junio del 2016. Una media de 21 por semana
Función para convertir cualquier fecha en formato ISO 8601

Requerimientos

Python 2.6, 2.7, 3.x

Versión 1.0

Actualizado el 12 de Febrero del 2018 (Publicado el 27 de Junio del 2016)gráfica de visualizaciones de la versión: Versión 1.0
1.501 visualizaciones desde el 27 de Junio del 2016. Una media de 21 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import dateutil.parser as parser
import datetime
 
def convertToISO8601(text):
	"""
	Tiene que recibir una cadena con la fecha
	Devuelve la fecha en formato ISO 8601 o vacio si hay algun error
	"""
	try:
		text=str(text)
		date = (parser.parse(text))
		dateIsoFormat=date.isoformat()
		if dateIsoFormat.find("+",10)==-1 and dateIsoFormat.find("-",10)==-1:
			dateIsoFormat+="+00:00"
		return dateIsoFormat
	except:
		return ""
 
 
print(convertToISO8601("2016-05-22")) # 2016-05-22T00:00:00+00:00
print(convertToISO8601("2016-05-22 00:00:00")) # 2016-05-22T00:00:00+00:00
print(convertToISO8601("2016-05-22 10:12:25")) # 2016-05-22T10:12:25+00:00
print(convertToISO8601("2016-05-22T10:12:25")) # 2016-05-22T10:12:25+00:00
print(convertToISO8601("2016-05-22T10:12:25+01:00")) # 2016-05-22T10:12:25+01:00
print(convertToISO8601("Thu, 22 May 2016 10:12:25 +0100")) # 2016-05-22T10:12:25+01:00
print(convertToISO8601(datetime.datetime.today())) # 2018-01-10T12:05:16.178871+00:00
print(convertToISO8601("fecha erronea"))



Comentarios sobre la versión: Versión 1.0 (0)


No hay comentarios
 

Comentar la versión: Versión 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s3563