Skip to content

Instantly share code, notes, and snippets.

@jpadilla
Created November 13, 2012 11:19
Show Gist options
  • Select an option

  • Save jpadilla/4065288 to your computer and use it in GitHub Desktop.

Select an option

Save jpadilla/4065288 to your computer and use it in GitHub Desktop.
7 lines, no external requirements (7 lines, 28 words, 605 chars)
import urllib2
from xml.dom.minidom import parseString
import time
print '\nGOVERNOR\nISLAND WIDE RESULTS\n', '-' * 19
while True:
print '\n%s\n' % (parseString(urllib2.urlopen('http://div1.ceepur.org/REYDI_NocheDelEvento/data/GOBERNADOR_ISLA.xml').read()).getElementsByTagName('date')[0].childNodes[0].data)
print '\n\n'.join(map(lambda entry: '%(name)s (%(party)s) => %(votes)s (%(percent)s%%)' % entry, [{'party': option.getElementsByTagName('pe')[0].getElementsByTagName('es')[0].childNodes[0].data.title(), 'name': option.getElementsByTagName('name')[0].getElementsByTagName('es')[0].childNodes[0].data, 'votes': format(int(option.getElementsByTagName('votes')[0].childNodes[0].data), ',d'), 'percent': format(float(option.getElementsByTagName('votes')[0].childNodes[0].data) / int(sum([int(option.getElementsByTagName('votes')[0].childNodes[0].data) for option in parseString(urllib2.urlopen('http://div1.ceepur.org/REYDI_NocheDelEvento/data/GOBERNADOR_ISLA.xml').read()).getElementsByTagName('option')])) * 100, '.3')} for option in parseString(urllib2.urlopen('http://div1.ceepur.org/REYDI_NocheDelEvento/data/GOBERNADOR_ISLA.xml').read()).getElementsByTagName('option')]))
time.sleep(120)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment