Python analyser format de la date, de l'ignorer certaines parties de la chaîne

Je veux " pour analyser les dates dans ce format, mais ignorer certaines parties de la chaîne. 'Wed, 27 Oct 1770 22:17:00 GMT" De ce que j'ai recueillies, datetime ne prend pas en charge les fuseaux horaires très bien. Ce qui est bien, vraiment, je veux juste ignorer le fuseau horaire de la partie de la chaîne, sans avoir à faire de manipulation de chaîne. Est-il quelque chose que je peux remplacer %Z avec ci-dessous pour dire "n'importe quelle chaîne ici" et d'analyser les dates en tant que tel? Aussi, je ne comprends pas pourquoi il analyse les fuseaux horaires comme PST, GMT, mais pas de l'est. Il ne semble pas attacher tzinfo en tout cas, de toute façon, vous ne savez pas quels types de chaîne sont vraiment à la recherche pour le %Z partie.

>>> import datetime
>>> y = datetime.datetime.strptime('Wed, 27 Oct 1770 22:17:00 GMT', '%a, %d %b %Y %H:%M:%S %Z')
>>> y = datetime.datetime.strptime('Wed, 27 Oct 1770 22:17:00 PST', '%a, %d %b %Y %H:%M:%S %Z')
>>> y = datetime.datetime.strptime('Wed, 27 Oct 1770 22:17:00 EST', '%a, %d %b %Y %H:%M:%S %Z')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/brazil-pkg-cache/packages/Python/Python-2.5.1.17.1/RHEL5_64/DEV.STD.PTHREAD/build/lib/python2.5/_strptime.py", line 331, in strptime
    (data_string, format))
ValueError: time data did not match format:  data=Wed, 27 Oct 1770 22:17:00 EST  fmt=%a, %d %b %Y %H:%M:%S %Z

Remarque: dateutil n'est pas une option pour moi, je veux soutenir de nombreux formats et ne peut pas se permettre dateutil accidentellement interpréter les dates de mal. (c'est à dire dateutil semble deviner quand on voit les dates comme 01/02/2010, Feb 1? ou Jan 2?). En gros, je veux juste essayer d'accepter les formats je l'ai préciser dans la commande jusqu'à ce que je obtenir une correspondance.

OriginalL'auteur Alex Amato | 2010-10-29