Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os , datetime, urllib
- from xml.dom.minidom import parse
- from time import sleep
- _sec = 30
- _urls = ["http://jenn001.game.wurmonline.com/battles/stats.xml",
- "http://wild001.game.wurmonline.com/battles/stats.xml",
- "http://freedom001.game.wurmonline.com/battles/stats.xml",
- "http://freedom002.game.wurmonline.com/battles/stats.xml",
- "http://freedom003.game.wurmonline.com/battles/stats.xml",
- "http://freedom004.game.wurmonline.com/battles/stats.xml",
- "http://freedom005.game.wurmonline.com/battles/stats.xml",
- "http://freedom006.game.wurmonline.com/battles/stats.xml",
- "http://freedom007.game.wurmonline.com/battles/stats.xml",
- "http://elevation.wurmonline.com/battles/stats.xml"]
- _serversList = []
- #Clear
- def _clear():
- #windows
- os.system('cls')
- #linux
- #os.system('clear')
- #Sleep
- def _sleep():
- sleep(_sec)
- #Populate
- def _populate():
- for index in range(0, len(_urls)):
- try:
- ourl = urllib.urlopen(_urls[index])
- xml = parse(ourl)
- lupdated = datetime.datetime.fromtimestamp(int(xml.getElementsByTagName('timestamp')[0].firstChild.nodeValue)).strftime("%B %d, %Y")
- status = xml.getElementsByTagName('status')[0].firstChild.nodeValue
- m, s = divmod(int(xml.getElementsByTagName('uptime')[0].firstChild.nodeValue), 60)
- h, m = divmod(m, 60)
- d, h = divmod(h, 24)
- uptime = "%d days, %d hours and %d minutes" % (d, h, m)
- wurmtime = xml.getElementsByTagName('wurmtime')[0].firstChild.nodeValue
- servers = xml.getElementsByTagName('server')
- name = servers[index].attributes['name'].value
- players = servers[index].attributes['players'].value
- maxplayers = servers[index].attributes['maxplayers'].value
- _serversList.append({'lupdated':lupdated,'status':status,'uptime':uptime,'wurmtime':wurmtime,'name':name,'players':players,'maxplayers':maxplayers})
- except Exception as e:
- print e
- #Populate
- def _unpopulate():
- global _serversList
- _serversList = []
- #Monitor
- def _monitor():
- for s in _serversList:
- print "------------------------------------------------------------------------------"
- print " Server: ".ljust(15) + s['name']
- print " Last Updated: ".ljust(15) + s['lupdated']
- print " Status: ".ljust(15) + s['status']
- print " Uptime: ".ljust(15) + s['uptime']
- print " Wurm Time: ".ljust(15) + s['wurmtime']
- print " Players: ".ljust(15) + s['players'] + " / " + s['maxplayers']
- print "------------------------------------------------------------------------------"
- #Init
- while 1:
- _populate()
- _clear()
- _monitor()
- _unpopulate()
- _sleep()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement