Advertisement
Guest User

Untitled

a guest
Nov 28th, 2011
305
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.63 KB | None | 0 0
  1. #!/usr/bin/env python
  2. from urllib.request import urlopen
  3. from xml.dom import minidom
  4. import sys
  5. import subprocess
  6.  
  7. location = "RSXX0063"
  8. partner = "1003666583"
  9. lic_key = "4128909340a9b2fc"
  10.  
  11. def main():
  12.     base = "http://xoap.weather.com/weather/local/"
  13.     urlf = "{0:s}{1:s}?cc=*&dayf=10&link=xoap&prod=xoap&unit=m&par={2:s}&key={3:s}"
  14.     url = urlf.format(base, location, partner, lic_key)
  15.     try:
  16.         usock = urlopen(url)
  17.         data = usock.read()
  18.         usock.close()
  19.     except Exception as e:
  20.         print("Server connection error: " + e.__str__())
  21.         return 1
  22.  
  23.     try:
  24.         weather = minidom.parseString(data).documentElement
  25.     except Exception as e:
  26.         self.logError("Error reading weather data: " + e.__str__())
  27.         return 1
  28.  
  29.     if len(weather.getElementsByTagName('err')) > 0:
  30.         print(url, "Error!")
  31.         raise(Exception)
  32.                                                    
  33.     cc = weather.getElementsByTagName('cc')[0]
  34.     tmp = cc.getElementsByTagName('tmp')[0].childNodes[0].data
  35.     icon = cc.getElementsByTagName('icon')[0].childNodes[0].data
  36.     moon = cc.getElementsByTagName('moon')[0]
  37.     moonic = moon.getElementsByTagName('icon')[0].childNodes[0].data
  38.  
  39.     if len(sys.argv) == 1:
  40.         print("Specify T, M or I")
  41.         return 1
  42.     else:
  43.         p = sys.argv[1]
  44.  
  45.     if p == "T":
  46.         print(tmp)
  47.     elif p == "I":
  48.         print("{0:02d}.png".format(int(icon)))
  49.     elif p == "M":
  50.         print("{0:02d}.png".format(int(moonic)))
  51.     else:
  52.         print("Only T,M and I are allowed")
  53.  
  54.     return 0
  55.  
  56. if __name__ == "__main__":
  57.     main()
  58.  
  59.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement