diff --git a/xmlevents.py b/xmlevents.py
index 541ceb0..bfe42dc 100755
--- a/xmlevents.py
+++ b/xmlevents.py
@@ -11,7 +11,7 @@
from datetime import datetime, timedelta
if len(sys.argv) != 4:
- print("Usage: xmlevents.py ")
+ print "Usage: xmlevents.py "
sys.exit(1)
cmd, file, key, urlname = sys.argv
@@ -34,15 +34,12 @@ def text(name):
else: return None
t_event_id = text("t_event_id")
- print(t_event_id) # print event id now in case something goes wrong
try: dt = datetime.strptime(text("t_event_date").rstrip("0")[:-1], '%Y-%m-%d %H:%M:%S')
except: dt = None
if dt == None:
- print "bad time format: %s" % text("t_event_date")
- elif dt < now:
- print "skipping past event"
- else:
+ print "t_event_id %s - Bad time format: %s" % (t_event_id, text("t_event_date"))
+ elif dt > now:
# default to event create
endpoint = "/ew/event"
conn = HTTPConnection(host)
@@ -52,7 +49,10 @@ def text(name):
"udf_t_event_id": t_event_id,
"key": key}))
res = conn.getresponse()
- assert res.status == 200 # abort if not an okay response
+ if res.status != 200:
+ # abort processing as this indicates there may be a service problem
+ print "Error querying t_event_id %s:\n%s\nExport halted." % (t_event_id, res.read())
+ sys.exit(1)
resdoc = xml.dom.minidom.parseString(res.read())
for item in resdoc.getElementsByTagName("item")[:1]:
for id_node in [ch for ch in item.childNodes if ch.tagName.lower() == "id"][:1]:
@@ -65,6 +65,8 @@ def text(name):
"local_time": int(time.mktime(dt.timetuple())) * 1000,
"zip": text("t_store_zip_code"),
"address1": text("t_store_address"),
+ "city": text("t_store_city"),
+ "state": text("t_store_state"),
"venue_name": "[OFFICIAL] " + "%s %s %s" % (first or "", last or "", text("t_event_type")),
"title": text("t_short_description"), # not visible on site
"description": desc,
@@ -74,5 +76,6 @@ def text(name):
headers = {"Content-type": "application/x-www-form-urlencoded"}
conn.request("POST", endpoint, urllib.urlencode(params), headers)
res = conn.getresponse()
- print res.read() # may be useful for debugging
- assert res.status in [200,201] # abort if not an okay/created response
+ if res.status not in [200,201]:
+ # most likely bad input, continue processing...
+ print "t_event_id %s - Unable to add event:\n%s" % (t_event_id, res.read())