¿Cómo especificar la zona horaria (UTC) al convertir a la hora de Unix? (Pitón)

Tengo una marca de tiempo utc en el formato IS8601 y estoy tratando de convertirlo a tiempo de Unix. Esta es mi sesión de consola:

In [9]: mydate
Out[9]: '2009-07-17T01:21:00.000Z'
In [10]: parseddate = iso8601.parse_date(mydate)

In [14]: ti = time.mktime(parseddate.timetuple())

In [25]: datetime.datetime.utcfromtimestamp(ti)
Out[25]: datetime.datetime(2009, 7, 17, 7, 21)
In [26]: datetime.datetime.fromtimestamp(ti)
Out[26]: datetime.datetime(2009, 7, 17, 2, 21)

In [27]: ti
Out[27]: 1247815260.0
In [28]: parseddate
Out[28]: datetime.datetime(2009, 7, 17, 1, 21, tzinfo=<iso8601.iso8601.Utc object at 0x01D74C70>)

Como puedes ver, no puedo recuperar el tiempo correcto. La hora está adelantada en uno si uso fromtimestamp (), y está adelantada en seis horas si uso utcfromtimestamp ()

¿Algún consejo?

¡Gracias!

Respuestas a la pregunta(4)

Su respuesta a la pregunta