From 4d9c2b0a47dd9336d9df7222013ade0c1763856d Mon Sep 17 00:00:00 2001 From: Filipp Lepalaan Date: Tue, 16 Jul 2013 16:44:20 +0300 Subject: Return date in standard format in GsxDateElement.__repr__ --- gsxws/objectify.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gsxws') diff --git a/gsxws/objectify.py b/gsxws/objectify.py index f1dd7ae..fd6ceda 100644 --- a/gsxws/objectify.py +++ b/gsxws/objectify.py @@ -4,7 +4,7 @@ import os import re import base64 import tempfile -from lxml import objectify +from lxml import objectify, etree from lxml.objectify import StringElement from datetime import datetime @@ -57,6 +57,9 @@ class GsxDateElement(GsxElement): except (ValueError, TypeError): pass + def __repr__(self): + return str(datetime.strftime(self.pyval, '%Y-%m-%d')) + class GsxBooleanElement(GsxElement): @property @@ -95,7 +98,7 @@ class GsxTimestampElement(GsxElement): return datetime.strptime(self.text, "%d-%b-%y %H:%M:%S") -class GsxClassLookup(objectify.ObjectifyElementClassLookup): +class GsxClassLookup(etree.CustomElementClassLookup): def lookup(self, node_type, document, namespace, name): if name == 'dispatchSentDate': return GsxDatetimeElement @@ -116,7 +119,7 @@ class GsxClassLookup(objectify.ObjectifyElementClassLookup): def parse(root, response): """ >>> parse('../tests/warranty_status.xml', 'warrantyDetailInfo').estimatedPurchaseDate - Sdt7tXp2XytTEVwHBeDx6lHTXI3w9s+M + 2010-08-25 """ parser = objectify.makeparser(remove_blank_text=True) parser.set_element_class_lookup(GsxClassLookup()) -- cgit v1.2.3